/* ==========================================================================================
   PHYSIOTHERAPIST INDIA 2.0 — pti2-home.css (Phase C homepage). NOT DEPLOYED.
   Loads after ../phase-b/pti2.css and ../phase-c-art/art.css. Only what the homepage needs
   beyond those two: section rhythm, the hero layout, card media, tile grid, learn collections,
   guided-path cards, the review table status and the editorial panel. Tokens are pti2.css's.
   Wrapper: <div class="pti2-home ptipg"> (ptipg brings the shared type, sections, tables).
   ========================================================================================== */

.pti .pti2-home{ overflow-x:clip; }
.pti .pti2-home .p2h-sec{ padding-block:clamp(56px,40px + 3.4vw,88px); }
.pti .pti2-home .p2h-head{ max-width:46rem; margin-bottom:var(--pti-s6); }
.pti .pti2-home .p2h-head h2{ margin:0 0 var(--pti-s3); }
.pti .pti2-home .p2h-head > p:not(.ptipg__eyebrow){ max-width:40em; }
.pti .pti2-home .p2h-more{ margin:var(--pti-s6) 0 0; text-align:center; }
.pti .pti2-home .p2h-more .pti-btn svg, .pti .pti2-home .pti-btn--text svg{ width:18px; height:18px; }
.pti .pti2-home .pti-card h3 a{ color:inherit; text-decoration:none; }
.pti .pti2-home .pti-card h3 a:hover{ text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:4px; }

/* "Proposed" marker for items awaiting Dr Pandey's approval (removed by build_home.py --final) */
.pti .pti2-home .p2h-draft{ display:inline-flex; align-items:center; gap:10px; margin:var(--pti-s4) 0 0!important;
  padding:6px 12px 6px 6px; border:1px dashed var(--pti-amber-line); border-radius:var(--pti-r-ctl); background:var(--pti-amber-tint);
  font-size:var(--pti-fs-small)!important; color:var(--pti-ink)!important; }
.pti .pti2-home .p2h-draft span{ padding:2px 8px; border-radius:var(--pti-r-chip); background:var(--pti-amber); color:#fff;
  font-weight:700; font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; }


/* 1. HERO ------------------------------------------------------------------------------------ */
.pti .pti2-home .p2h-hero{ padding-block:clamp(40px,24px + 4vw,88px) clamp(32px,20px + 3vw,64px); }
.pti .pti2-home .p2h-hero .ptipg__w{ max-width:calc(var(--pti-container) + 2 * var(--pti-gutter)); }   /* pti2.css narrows hero columns to the 720 px reading width */
.pti .pti2-home .p2h-hero__grid{ display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:var(--pti-s6); align-items:center; }
.pti .pti2-home .p2h-hero h1{ font-size:var(--pti-fs-display); line-height:var(--pti-lh-tight); max-width:none; margin:0 0 var(--pti-s4); letter-spacing:-.012em; }
.pti .pti2-home .p2h-h1__l{ display:block; }
.pti .pti2-home .p2h-hero__lede{ font-size:clamp(1.0625rem,1rem + .3vw,1.25rem); line-height:1.6; max-width:32em; margin:0; color:var(--pti-on-dark-soft); }
.pti .pti2-home .p2h-hero__art{ justify-self:end; width:100%; max-width:540px; }
.pti .pti2-home .p2h-hero__btns{ margin-top:var(--pti-s5); }
/* the search button stays blue on its white field (pti-dark would turn every primary button white) */
.pti .pti2-home .p2h-search .pti-search__form .pti-btn--primary{ background:var(--pti-blue)!important; color:#fff!important; border-color:var(--pti-blue)!important; }
.pti .pti2-home .p2h-search .pti-search__form .pti-btn--primary:hover{ background:var(--pti-blue-strong)!important; border-color:var(--pti-blue-strong)!important; }
.pti .pti2-home .p2h-search .pti-search__form .pti-btn--primary:focus-visible{ outline-color:var(--pti-blue); }
.pti .pti2-home .pti-search__popular .pti-chips{ display:contents; }
.pti .pti2-home .pti-search__popular li{ margin:0; padding:0; }
@media (max-width:1023px){
  .pti .pti2-home .p2h-hero__grid{ grid-template-columns:1fr; }
  .pti .pti2-home .p2h-hero__art{ justify-self:center; max-width:420px; }
}
/* Phones. Fixes the Phase C art note "hero search placeholder cut off at 390 px": the placeholder is short
   enough for the field (about 282 px wide at 390), the icon inset is tighter, and the button sits below. */
@media (max-width:599px){
  .pti .pti2-home .p2h-h1__l{ display:inline; }
  .pti .pti2-home .p2h-hero__art{ max-width:300px; }
  .pti .pti2-home .p2h-search .pti-search__field{ padding-left:40px; padding-right:12px; background-position:12px 50%; font-size:1rem; text-overflow:ellipsis; }
  .pti .pti2-home .p2h-search .pti-search__form .pti-btn{ width:100%; }
  .pti .pti2-home .p2h-hero__btns .pti-btn{ flex:1 1 100%; }
}


/* 2. AUDIENCE CARDS -------------------------------------------------------------------------- */
.pti .pti2-home .p2h-aud{ padding:0; overflow:hidden; }
.pti .pti2-home .p2h-aud__media{ padding:16px 16px 0; background:linear-gradient(180deg,var(--pti-bg),#fff); border-bottom:1px solid var(--pti-line); }
.pti .pti2-home .p2h-aud[data-accent="blue"] .p2h-aud__media{ background:linear-gradient(180deg,var(--pti-tint-blue),#fff); }
.pti .pti2-home .p2h-aud[data-accent="teal"] .p2h-aud__media{ background:linear-gradient(180deg,var(--pti-tint-teal),#fff); }
.pti .pti2-home .p2h-aud__body{ display:flex; flex-direction:column; flex:1; padding:var(--pti-s5) var(--pti-s5) var(--pti-s4); }
.pti .pti2-home .p2h-aud__body > p{ margin:0 0 var(--pti-s4); }
.pti .pti2-home .p2h-aud .pti-card__links{ margin:auto 0 0; }
.pti .pti2-home .pti-card__links li:last-child a{ border-bottom:0; }
.pti .pti2-home .pti-card__links a::after{ content:""; flex:none; width:7px; height:7px; margin:0 4px 0 12px; border-top:2px solid var(--pti-muted);
  border-right:2px solid var(--pti-muted); transform:rotate(45deg); transition:transform var(--pti-dur) var(--pti-ease),border-color var(--pti-dur) var(--pti-ease); }
.pti .pti2-home .pti-card__links a:hover::after{ border-color:var(--pti-blue-strong); transform:translateX(3px) rotate(45deg); }


/* 3. SPECIALTY TILES (layout from the approved art preview) ----------------------------------- */
.pti .pti2-home .p2h-divider{ margin-block:-20px; }
.pti .pti2-home .p2h-tiles{ display:flex; flex-wrap:wrap; justify-content:center; gap:var(--pti-s4); margin:0; padding:0; list-style:none; }
.pti .pti2-home .p2h-tiles > li{ flex:0 1 calc((100% - 3 * var(--pti-s4)) / 4 - 1px); margin:0; padding:0; }
.pti .pti2-home .p2h-tile{ align-items:center; text-align:center; gap:var(--pti-s3); height:100%; padding:var(--pti-s5) var(--pti-s4); }
.pti .pti2-home .p2h-tile h3{ font:700 1.0625rem/1.3 var(--pti-font-ui)!important; color:var(--pti-ink)!important; margin:0; }
.pti .pti2-home .p2h-tile p{ margin:0; font-size:var(--pti-fs-small); font-weight:500; color:var(--pti-teal-text); }
@media (max-width:599px){
  .pti .pti2-home .p2h-tiles{ gap:var(--pti-s3); }
  .pti .pti2-home .p2h-tiles > li{ flex-basis:calc((100% - var(--pti-s3)) / 2 - 1px); }
  .pti .pti2-home .p2h-tile{ padding:var(--pti-s4) var(--pti-s3); }
}


/* 4. BODY EXPLORER --------------------------------------------------------------------------- */
.pti .pti2-home .p2h-explorer{ grid-template-columns:minmax(0,380px) minmax(0,1fr); align-items:start; }
.pti .pti2-home .p2h-explorer__fig{ padding:var(--pti-s4);
  background:linear-gradient(180deg,var(--pti-tint-teal),#fff 70%); border:1px solid var(--pti-line); border-radius:var(--pti-r-card); }
.pti .pti2-home .p2h-panel{ margin-bottom:var(--pti-s6); }
.pti .pti2-home .p2h-panel[hidden], .pti .pti2-home .p2h-panel .pa-panel__hint[hidden]{ display:none; }
.pti .pti2-home .p2h-panel .pa-panel__hint{ display:flex; align-items:center; min-height:48px; }
.pti .pti2-home .p2h-panel .pa-panel__name{ font-family:var(--pti-font-display); font-size:1.5rem; }
.pti .pti2-home .p2h-panel__group{ margin:0 0 var(--pti-s4); }
.pti .pti2-home .p2h-panel__group:last-child{ margin-bottom:0; }
.pti .pti2-home .p2h-panel__group h4, .pti .pti2-home .p2h-label{ margin:0 0 var(--pti-s2)!important; font:700 .75rem/1.3 var(--pti-font-ui)!important;
  letter-spacing:.1em; text-transform:uppercase; color:var(--pti-teal-text)!important; }
.pti .pti2-home .p2h-panel__group ul{ margin:0; border-top:1px solid var(--pti-line); }
.pti .pti2-home .p2h-panel__group a{ display:flex; align-items:center; min-height:44px; border-bottom:1px solid var(--pti-line);
  color:var(--pti-ink); font-weight:500; text-decoration:none; }
.pti .pti2-home .p2h-panel__group a:hover{ color:var(--pti-blue-strong); text-decoration:underline; text-underline-offset:3px; }
.pti .pti2-home .p2h-regions{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:0 var(--pti-s6); margin:0; }
.pti .pti2-home .p2h-regions > li{ padding:12px 0 14px; border-bottom:1px solid var(--pti-line); }
.pti .pti2-home .p2h-region__name{ margin:0 0 4px!important; font:700 var(--pti-fs-ui)/1.4 var(--pti-font-ui)!important; color:var(--pti-navy)!important; }
.pti .pti2-home .p2h-region__links{ display:flex; flex-wrap:wrap; gap:0 14px; margin:0; font-size:var(--pti-fs-small); line-height:1.5; }
.pti .pti2-home .p2h-region__links a{ display:inline-flex; align-items:center; min-height:32px; }
@media (pointer:coarse){ .pti .pti2-home .p2h-region__links a{ min-height:44px; } }
@media (max-width:767px){
  .pti .pti2-home .p2h-explorer{ grid-template-columns:1fr; }
}


/* 5. FEATURED GUIDES ------------------------------------------------------------------------- */
.pti .pti2-home .p2h-guide .p2h-guide__spec{ margin:0 0 var(--pti-s2); font:700 .75rem/1.3 var(--pti-font-ui); letter-spacing:.1em;
  text-transform:uppercase; color:var(--pti-teal-text); }
.pti .pti2-home .p2h-guide h3{ margin-bottom:var(--pti-s2); }
.pti .pti2-home .p2h-guide .pti-card__meta{ margin-top:auto; padding-top:var(--pti-s3); border-top:1px solid var(--pti-line); margin-bottom:0; }
.pti .pti2-home .p2h-guide .pti-card__meta span{ gap:6px; }
.pti .pti2-home .p2h-guide .pti-card__foot{ margin:0; padding-top:var(--pti-s2); }


/* 6. LEARN BY SUBJECT ------------------------------------------------------------------------ */
.pti .pti2-home .p2h-colls{ display:grid; gap:var(--pti-s3); }
.pti .pti2-home .p2h-coll{ background:#fff; border:1px solid var(--pti-line); border-left:4px solid var(--tone,var(--pti-teal));
  border-radius:var(--pti-r-card); box-shadow:var(--pti-shadow-1); }
.pti .pti2-home .p2h-coll[data-group="1"]{ --tone:var(--pti-blue); }
.pti .pti2-home .p2h-coll[data-group="2"]{ --tone:var(--pti-navy); }
.pti .pti2-home .p2h-coll[data-group="3"]{ --tone:#64748B; }
.pti .pti2-home .p2h-coll > summary{ display:flex; align-items:center; gap:var(--pti-s3); min-height:64px; padding:12px 64px 12px var(--pti-s5);
  position:relative; list-style:none; cursor:pointer; }
.pti .pti2-home .p2h-coll > summary::-webkit-details-marker{ display:none; }
.pti .pti2-home .p2h-coll > summary::after{ content:""; position:absolute; right:20px; top:50%; width:28px; height:28px; margin-top:-14px; border-radius:50%;
  border:1.5px solid var(--pti-line-strong);
  background:linear-gradient(var(--pti-navy),var(--pti-navy)) center / 11px 2px no-repeat, linear-gradient(var(--pti-navy),var(--pti-navy)) center / 2px 11px no-repeat;
  transition:transform var(--pti-dur) var(--pti-ease); }
.pti .pti2-home .p2h-coll[open] > summary::after{ transform:rotate(45deg); }
.pti .pti2-home .p2h-coll__name{ font:700 1.375rem/1.25 var(--pti-font-display); color:var(--pti-navy); }
.pti .pti2-home .p2h-coll__count{ padding:3px 10px; border-radius:var(--pti-r-chip); background:var(--pti-tint-blue); color:var(--pti-navy);
  font:500 .8125rem/1.3 var(--pti-font-ui); white-space:nowrap; }
.pti .pti2-home .p2h-subjects{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1px; margin:0 var(--pti-s5) var(--pti-s5);
  background:var(--pti-line); border:1px solid var(--pti-line); border-radius:var(--pti-r-ctl); overflow:hidden; }
.pti .pti2-home .p2h-subj{ display:flex; flex-direction:column; gap:4px; padding:14px 16px; background:#fff; }
.pti .pti2-home .p2h-subj > a{ font-weight:700; color:var(--pti-navy); text-decoration:none; line-height:1.35; }
.pti .pti2-home .p2h-subj > a:hover{ color:var(--pti-blue-strong); text-decoration:underline; text-underline-offset:3px; }
.pti .pti2-home .p2h-subj__blurb{ font-size:var(--pti-fs-small); line-height:1.5; color:var(--pti-muted-strong); }
.pti .pti2-home .p2h-subj__meta{ margin-top:auto; padding-top:4px; font-size:.8125rem; font-weight:500; color:var(--pti-teal-text); }
.pti .pti2-home .p2h-subj--prep .p2h-subj__meta{ color:var(--pti-muted); font-style:italic; font-weight:400; }
@media (max-width:599px){
  .pti .pti2-home .p2h-coll > summary{ padding-left:var(--pti-s4); flex-wrap:wrap; gap:4px 10px; }
  .pti .pti2-home .p2h-coll__name{ font-size:1.1875rem; }
  .pti .pti2-home .p2h-subjects{ margin:0 var(--pti-s3) var(--pti-s3); }
}


/* 7. CLINICAL TOOLS -------------------------------------------------------------------------- */
.pti .pti2-home .p2h-tool{ border-top:3px solid var(--pti-teal); }
.pti .pti2-home .p2h-tool__count{ margin:0 0 var(--pti-s2)!important; font-size:var(--pti-fs-small)!important; color:var(--pti-muted-strong)!important; }
.pti .pti2-home .p2h-tool__count b{ font:700 2.25rem/1 var(--pti-font-display); color:var(--pti-navy); margin-right:4px; font-variant-numeric:lining-nums; }
.pti .pti2-home .p2h-tool h3{ font-size:1.25rem!important; }
.pti .pti2-home .p2h-tool > p:not(.pti-card__foot):not(.p2h-tool__count){ font-size:var(--pti-fs-ui-sm); }
.pti .pti2-home .p2h-tool .pti-card__links{ margin-top:auto; }
.pti .pti2-home .p2h-tool .pti-card__foot{ margin:0; }
@media (min-width:1024px){ .pti .pti2-home .p2h-tools{ gap:var(--pti-s4); } .pti .pti2-home .p2h-tools > *{ flex-basis:calc((100% - 3 * var(--pti-s4)) / 4); } }


/* 8. GUIDED COLLECTIONS ---------------------------------------------------------------------- */
.pti .pti2-home .p2h-paths{ display:grid; gap:var(--pti-s5); }
.pti .pti2-home .p2h-path{ padding:var(--pti-s5) var(--pti-s6) var(--pti-s6); background:#fff; border:1px solid var(--pti-line);
  border-radius:var(--pti-r-card); box-shadow:var(--pti-shadow-1); }
.pti .pti2-home .p2h-path h3{ font:700 1.375rem/1.25 var(--pti-font-display)!important; color:var(--pti-navy)!important; margin:0 0 4px; }
.pti .pti2-home .p2h-path > p{ margin:0 0 var(--pti-s2); font-size:var(--pti-fs-ui-sm); color:var(--pti-muted-strong); max-width:46em; }
.pti .pti2-home .pa-gpath__steps li{ display:flex; flex-direction:column; align-items:center; gap:2px; line-height:1.35; }
.pti .pti2-home .pa-gpath__steps a{ font-weight:700; color:var(--pti-navy); text-decoration:none; }
.pti .pti2-home .pa-gpath__steps a:hover{ color:var(--pti-blue-strong); text-decoration:underline; text-underline-offset:3px; }
.pti .pti2-home .p2h-step__type{ font-size:.8125rem; color:var(--pti-muted); }
.pti .pti2-home .pa-gpath__steps li::before{ margin-bottom:2px; }
@media (max-width:767px){
  .pti .pti2-home .p2h-path{ padding:var(--pti-s5) var(--pti-s4); }
  .pti .pti2-home .pa-gpath__steps{ padding-left:40px; margin-top:var(--pti-s4); }   /* art.css value; .ptipg's list reset would zero it */
  .pti .pti2-home .pa-gpath__steps li{ align-items:flex-start; }
}


/* 9. RECENTLY REVIEWED ----------------------------------------------------------------------- */
.pti .pti2-home .p2h-table{ margin:0; box-shadow:var(--pti-shadow-1); }
.pti .pti2-home .p2h-table table{ min-width:720px; font-size:var(--pti-fs-ui-sm); }
.pti .pti2-home .p2h-table tbody th{ font-weight:700; text-align:left; padding:12px 16px; vertical-align:top;
  background:transparent!important; border:0!important; border-bottom:1px solid var(--pti-line)!important; font-size:var(--pti-fs-ui-sm)!important; }
.pti .pti2-home .p2h-table tbody tr:nth-child(even) th{ background:rgba(247,250,252,.9)!important; }
.pti .pti2-home .p2h-table tbody tr:last-child th{ border-bottom:0!important; }
.pti .pti2-home .p2h-table tbody td:first-child{ font-weight:500; color:var(--pti-muted-strong); white-space:nowrap; }
.pti .pti2-home .p2h-table td:nth-child(3), .pti .pti2-home .p2h-table td:nth-child(4){ white-space:nowrap; }
.pti .pti2-home .p2h-status{ display:inline-flex; align-items:center; gap:6px; font-weight:700; color:var(--pti-green); white-space:nowrap; }
.pti .pti2-home .p2h-status .pti-icon{ width:18px; height:18px; }
.pti .pti2-home .p2h-status--over{ color:var(--pti-red); }

/* Phones: each row becomes a small card (labels from data-label), so nothing hides behind a horizontal scroll */
@media (max-width:599px){
  .pti .pti2-home .p2h-table{ overflow:visible; background:#fff; }
  .pti .pti2-home .p2h-table table{ min-width:0; }
  .pti .pti2-home .p2h-table thead{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .pti .pti2-home .p2h-table tr{ display:grid; grid-template-columns:auto 1fr; gap:2px 12px; padding:14px 16px; border-bottom:1px solid var(--pti-line); }
  .pti .pti2-home .p2h-table tbody tr:last-child{ border-bottom:0; }
  .pti .pti2-home .p2h-table tbody th, .pti .pti2-home .p2h-table td{ display:contents; padding:0; border:0!important; background:none!important; }
  .pti .pti2-home .p2h-table tbody th{ grid-column:1 / -1; }
  .pti .pti2-home .p2h-table tbody th a{ grid-column:1 / -1; order:-1; margin-bottom:4px; font-size:1rem; }
  .pti .pti2-home .p2h-table td::before{ content:attr(data-label); font-size:.8125rem; font-weight:500; color:var(--pti-muted); }
  .pti .pti2-home .p2h-table tbody tr:nth-child(even){ background:var(--pti-bg); }
  .pti .pti2-home .p2h-table tbody td:first-child{ font-weight:400; }
}

/* 10. EDITORIAL STANDARDS -------------------------------------------------------------------- */
.pti .pti2-home .p2h-ed__grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--pti-s7); align-items:start; }
.pti .pti2-home .p2h-ed__intro h2{ margin:0 0 var(--pti-s4); }
.pti .pti2-home .p2h-ed__lede{ font:700 1.25rem/1.5 var(--pti-font-display); color:var(--pti-navy); }
.pti .pti2-home .p2h-ed__small{ font-size:var(--pti-fs-small); color:var(--pti-muted-strong); }
.pti .pti2-home .p2h-ed__intro .pti-btns{ margin:var(--pti-s5) 0 var(--pti-s4); }
.pti .pti2-home .p2h-ed__report{ display:flex; align-items:flex-start; gap:10px; margin:0; font-size:var(--pti-fs-ui-sm); color:var(--pti-muted-strong); }
.pti .pti2-home .p2h-ed__report .pti-icon{ margin-top:3px; color:var(--pti-teal-text); }
.pti .pti2-home .p2h-trust{ display:grid; gap:0; margin:0; background:#fff; border:1px solid var(--pti-line); border-radius:var(--pti-r-card); box-shadow:var(--pti-shadow-1); }
.pti .pti2-home .p2h-trust__item{ display:flex; gap:var(--pti-s4); padding:var(--pti-s4) var(--pti-s5); border-bottom:1px solid var(--pti-line); }
.pti .pti2-home .p2h-trust__item:last-child{ border-bottom:0; }
.pti .pti2-home .p2h-trust__item > .pti-icon{ width:26px; height:26px; margin-top:2px; color:var(--pti-teal-text); }
.pti .pti2-home .p2h-trust__item h3{ margin:0 0 2px!important; font:700 var(--pti-fs-ui)/1.4 var(--pti-font-ui)!important; color:var(--pti-navy)!important; }
.pti .pti2-home .p2h-trust__item p{ margin:0; font-size:var(--pti-fs-ui-sm); line-height:1.6; color:var(--pti-muted-strong); }
.pti .pti2-home .p2h-wont{ margin-top:var(--pti-s7); padding:var(--pti-s5) var(--pti-s6) var(--pti-s6); background:var(--pti-bg); border:1px solid var(--pti-line); border-radius:var(--pti-r-card); }
.pti .pti2-home .p2h-wont h3{ font:700 1.25rem/1.3 var(--pti-font-display)!important; color:var(--pti-navy)!important; margin:0 0 var(--pti-s4); }
.pti .pti2-home .p2h-wont ul{ display:grid; grid-template-columns:1fr 1fr; gap:12px var(--pti-s6); margin:0; }
.pti .pti2-home .p2h-wont li{ display:flex; gap:10px; font-size:var(--pti-fs-ui-sm); line-height:1.55; }
.pti .pti2-home .p2h-wont li .pti-icon{ width:20px; height:20px; margin-top:1px; color:var(--pti-red); }
@media (max-width:1023px){ .pti .pti2-home .p2h-ed__grid{ grid-template-columns:1fr; gap:var(--pti-s6); } }
@media (max-width:767px){ .pti .pti2-home .p2h-wont ul{ grid-template-columns:1fr; } }
@media (max-width:599px){ .pti .pti2-home .p2h-wont{ padding:var(--pti-s5) var(--pti-s4); } }

@media (prefers-reduced-motion:reduce){
  .pti .pti2-home .pti-card__links a:hover::after{ transform:rotate(45deg); }
}
