/* ==========================================================================
   Praneva Multispeciality Clinic — site.css
   Brand: Deep Teal #275757 · Gold #D0AA69 · Beige #F9EEE3
   Signature: the crescent arc from the monogram, used as the structural
   device throughout — dividers, card corners, hero frame, eyebrow glyphs.
   ========================================================================== */

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/fraunces-variable.woff2') format('woff2-variations');
}

@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/fraunces-italic-variable.woff2') format('woff2-variations');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/manrope-variable.woff2') format('woff2-variations');
}

/* ---------- Tokens ---------- */
:root{
  --teal-900:#14302F;
  --teal-950:#0B2423;
  --teal-800:#1D4342;
  --teal-700:#275757;
  --teal-500:#3E7676;
  --teal-300:#93B7B7;
  --teal-100:#E3EEEC;
  --teal-050:#F1F7F5;

  --gold-800:#8C6A34;
  --gold-700:#A9823F;
  --gold-500:#D0AA69;
  --gold-300:#E8CD9F;
  --gold-100:#F5E9D2;

  --beige:#F9EEE3;
  --beige-deep:#F2E3D3;
  --paper:#FFFCF8;
  --ink:#14302F;
  --ink-soft:#4A6462;
  --wa:#25D366;

  --shell:min(1180px, 100% - 2.5rem);
  --shell-narrow:min(760px, 100% - 2.5rem);

  --r-sm:10px;
  --r-md:18px;
  --r-arc:38px;

  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  --shadow-sm:0 1px 2px rgba(20,48,47,.05), 0 6px 18px -10px rgba(20,48,47,.18);
  --shadow-md:0 2px 6px rgba(20,48,47,.06), 0 22px 44px -26px rgba(20,48,47,.35);
  --shadow-lg:0 30px 70px -40px rgba(20,48,47,.55);

  --header-h:70px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:calc(var(--header-h) + 12px)}
body{
  margin:0;
  background:var(--beige);
  color:var(--ink);
  font-family:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:clamp(1rem,.97rem + .16vw,1.075rem);
  line-height:1.62;
  font-weight:400;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img,svg,iframe{max-width:100%; display:block}
a{color:inherit}
button{font:inherit; color:inherit}

/* ---------- Type ---------- */
h1,h2,h3,h4,.display{
  font-family:"Fraunces","Iowan Old Style",Georgia,serif;
  font-weight:600;
  font-variation-settings:"SOFT" 0,"WONK" 1,"opsz" 40;
  line-height:1.08;
  letter-spacing:-.015em;
  margin:0 0 .5em;
  color:var(--teal-900);
  text-wrap:balance;
}
h1{font-size:clamp(2.35rem,1.6rem + 3.4vw,4.15rem)}
h2{font-size:clamp(1.85rem,1.35rem + 2.1vw,3rem)}
h3{font-size:clamp(1.2rem,1.06rem + .6vw,1.55rem); letter-spacing:-.008em}
h4{font-size:1.02rem; font-family:"Manrope",sans-serif; font-weight:700; letter-spacing:0}
p{margin:0 0 1.05em; text-wrap:pretty}
p:last-child{margin-bottom:0}
strong{font-weight:700; color:var(--teal-900)}

.eyebrow{
  display:inline-flex; align-items:center; gap:.6rem;
  font-family:"Manrope",sans-serif;
  font-size:.7rem; font-weight:700;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold-800); margin:0 0 1.1rem;
}
.eyebrow::before{
  content:""; width:26px; height:13px; flex:none;
  border:1.5px solid var(--gold-500); border-bottom:0;
  border-radius:26px 26px 0 0;
}
.eyebrow--light{color:var(--gold-300)}
.eyebrow--light::before{border-color:var(--gold-500)}

.lede{font-size:clamp(1.05rem,1rem + .35vw,1.25rem); color:var(--ink-soft); line-height:1.6}
.muted{color:var(--ink-soft)}
.serif-note{font-family:"Fraunces",Georgia,serif; font-style:italic; font-weight:400}

/* ---------- Layout ---------- */
.shell{width:var(--shell); margin-inline:auto}
.shell-narrow{width:var(--shell-narrow); margin-inline:auto}
section{position:relative}
.band{padding:clamp(3.6rem,2rem + 7vw,7rem) 0; position:relative}
.band--beige{background:var(--beige)}
.band--paper{background:var(--paper)}
.band--teal{background:var(--teal-700); color:var(--beige)}
.band--teal h2,.band--teal h3{color:var(--paper)}
.band--teal .muted,.band--teal .lede{color:var(--teal-300)}
.band--deep{background:var(--teal-900); color:var(--beige)}
.band--deep h2,.band--deep h3{color:var(--paper)}
.band--deep .muted,.band--deep .lede{color:var(--teal-300)}
.band--tint{background:var(--teal-100)}

.stack>*+*{margin-top:1.05rem}
.grid{display:grid; gap:clamp(1rem,.6rem + 1.2vw,1.6rem)}
.g-2{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
.g-3{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}
.g-4{grid-template-columns:repeat(auto-fit,minmax(min(195px,100%),1fr))}
.split{display:grid; gap:clamp(1.8rem,1rem + 3vw,3.6rem); align-items:center}
@media(min-width:900px){ .split{grid-template-columns:1.05fr .95fr} .split--flip>*:first-child{order:2} }

.section-head{max-width:44rem; margin-bottom:clamp(2rem,1.2rem + 2vw,3.2rem)}
.section-head--center{margin-inline:auto; text-align:center}
.section-head--center .eyebrow{justify-content:center}

/* ---------- Arc dividers (no straight edges between sections) ---------- */
.arc{display:block; width:100%; height:clamp(46px,7vw,104px); position:relative; z-index:2; margin-bottom:-1px}
.arc--flip{transform:rotate(180deg); margin-top:-1px; margin-bottom:0}
.arc svg{display:block; width:100%; height:100%}

/* ---------- Header ---------- */
.hdr{
  position:fixed; inset:0 0 auto 0; z-index:90;
  height:var(--header-h);
  display:flex; align-items:center;
  transition:background .45s var(--ease), box-shadow .45s var(--ease), backdrop-filter .45s;
}
.hdr__in{width:var(--shell); margin-inline:auto; display:flex; align-items:center; gap:1rem}
.hdr.is-stuck{
  background:rgba(20,48,47,.94);
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
  box-shadow:0 1px 0 rgba(208,170,105,.28), 0 16px 34px -28px rgba(0,0,0,.9);
}

.brand{display:flex; align-items:center; gap:.6rem; text-decoration:none; margin-right:auto; min-width:0}
.brand__plaque{
  width:40px; height:40px; flex:none;
  display:grid; place-items:center;
  border-radius:12px;
  background:transparent;
  transition:background .45s var(--ease), box-shadow .45s var(--ease), padding .45s var(--ease);
}
.brand__plaque img{width:100%; height:auto}
.hdr.is-stuck .brand__plaque{
  background:var(--beige);
  padding:4px;
  box-shadow:0 0 0 1px rgba(208,170,105,.5);
}
.brand__txt{display:flex; flex-direction:column; line-height:1; min-width:0}
.brand__name{
  font-family:"Fraunces",Georgia,serif; font-weight:600;
  font-size:1.09rem; letter-spacing:.19em; text-transform:uppercase;
  color:var(--teal-900); transition:color .45s var(--ease);
  white-space:nowrap;
}
.brand__sub{
  font-size:.53rem; font-weight:700; letter-spacing:.185em; text-transform:uppercase;
  color:var(--gold-800); margin-top:.28rem; transition:color .45s var(--ease);
  white-space:nowrap;
}
.hdr.is-stuck .brand__name{color:var(--paper)}
.hdr.is-stuck .brand__sub{color:var(--gold-500)}

.nav{display:none; align-items:center; gap:.15rem}
@media(min-width:1000px){ .nav{display:flex} }
.nav a{
  position:relative; text-decoration:none; padding:.5rem .72rem; border-radius:8px;
  font-size:.845rem; font-weight:600; color:var(--teal-800);
  transition:color .25s var(--ease), background .25s var(--ease);
  white-space:nowrap;
}
.nav a::after{
  content:""; position:absolute; left:.72rem; right:.72rem; bottom:.28rem; height:1.5px;
  background:var(--gold-500); transform:scaleX(0); transform-origin:left;
  transition:transform .34s var(--ease);
}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--gold-800)}
.hdr.is-stuck .nav a{color:var(--teal-100)}
.hdr.is-stuck .nav a:hover{color:#fff}
.hdr.is-stuck .nav a[aria-current="page"]{color:var(--gold-300)}

.hdr__cta{display:none}
@media(min-width:1180px){ .hdr__cta{display:inline-flex; margin-left:.5rem} }

.burger{
  display:grid; place-items:center; width:44px; height:44px; flex:none;
  background:transparent; border:1px solid rgba(39,87,87,.28); border-radius:11px;
  cursor:pointer; transition:border-color .3s, background .3s;
}
@media(min-width:1000px){ .burger{display:none} }
.hdr.is-stuck .burger{border-color:rgba(208,170,105,.5)}
.burger span{display:block; width:17px; height:1.6px; background:var(--teal-800); border-radius:2px; transition:transform .34s var(--ease), opacity .2s, background .45s}
.burger span+span{margin-top:4.4px}
.hdr.is-stuck .burger span{background:var(--beige)}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* mobile drawer */
.drawer{
  position:fixed; inset:0; z-index:89;
  background:var(--teal-900);
  display:flex; flex-direction:column; justify-content:center;
  padding:calc(var(--header-h) + 1.4rem) 1.5rem 2rem;
  opacity:0; visibility:hidden; transform:translateY(-14px);
  transition:opacity .38s var(--ease), transform .38s var(--ease), visibility .38s;
  overflow-y:auto;
}
.drawer.is-open{opacity:1; visibility:visible; transform:none}
@media(max-height:780px){ .drawer{justify-content:flex-start} .drawer a{font-size:1.24rem; padding:.5rem 0} }
.drawer a{
  display:block; text-decoration:none; color:var(--beige);
  font-family:"Fraunces",Georgia,serif; font-size:1.5rem; font-weight:500;
  padding:.62rem 0; border-bottom:1px solid rgba(208,170,105,.2);
  opacity:0; transform:translateY(12px);
}
.drawer.is-open a{animation:drawerIn .5s var(--ease-out) forwards}
.drawer a small{display:block; font-family:"Manrope",sans-serif; font-size:.72rem; letter-spacing:.13em; text-transform:uppercase; color:var(--teal-300); margin-top:.2rem; font-weight:600}
@keyframes drawerIn{to{opacity:1; transform:none}}
.drawer__cta{margin-top:1.6rem}

/* ---------- Buttons ---------- */
.btn{
  --btn-bg:var(--teal-700); --btn-fg:var(--paper); --btn-bd:var(--teal-700);
  position:relative; overflow:hidden;
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  padding:.86rem 1.5rem; border-radius:100px;
  background:var(--btn-bg); color:var(--btn-fg); border:1.5px solid var(--btn-bd);
  font-size:.9rem; font-weight:700; letter-spacing:.01em;
  text-decoration:none; cursor:pointer;
  transition:transform .3s var(--ease);
  box-shadow:var(--shadow-sm);
}
.btn svg{width:18px; height:18px; flex:none}
.btn::after{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background:radial-gradient(120px 60px at var(--mx,50%) var(--my,50%), rgba(255,255,255,.22), transparent 70%);
  opacity:0; transition:opacity .35s;
}
.btn:hover{transform:translateY(-2px); box-shadow:var(--shadow-md)}
.btn:hover::after{opacity:1}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:2.5px solid var(--gold-700); outline-offset:3px}

.btn--wa{--btn-bg:var(--wa); --btn-bd:var(--wa); --btn-fg:#06301A}
.btn--gold{--btn-bg:var(--gold-500); --btn-bd:var(--gold-500); --btn-fg:var(--teal-900)}
.btn--ghost{--btn-bg:transparent; --btn-fg:var(--teal-800); --btn-bd:rgba(39,87,87,.32); box-shadow:none}
.btn--ghost:hover{--btn-bd:var(--teal-700); background:rgba(39,87,87,.05)}
.btn--onteal{--btn-bg:transparent; --btn-fg:var(--beige); --btn-bd:rgba(208,170,105,.55); box-shadow:none}
.btn--onteal:hover{--btn-bg:rgba(208,170,105,.14); --btn-bd:var(--gold-500)}
.btn--sm{padding:.6rem 1.05rem; font-size:.8rem}
.btn--wide{width:100%}

.btn-row{display:flex; flex-wrap:wrap; gap:.7rem}
.btn-row--center{justify-content:center}

/* ---------- Status pill ---------- */
.status{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.42rem .9rem .42rem .68rem; border-radius:100px;
  background:rgba(255,255,255,.72); border:1px solid rgba(39,87,87,.16);
  font-size:.78rem; font-weight:700; letter-spacing:.01em; color:var(--teal-800);
  backdrop-filter:blur(6px);
}
.status svg{width:15px; height:15px; flex:none; color:var(--gold-800)}
.status--dark svg{color:var(--gold-500)}
.status__dot{width:8px; height:8px; border-radius:50%; background:var(--teal-300); flex:none; position:relative}
.status.is-open .status__dot{background:#1FA463}
.status.is-open .status__dot::after{
  content:""; position:absolute; inset:-4px; border-radius:50%;
  border:1.5px solid #1FA463; animation:ping 2.2s var(--ease) infinite; will-change:transform,opacity;
}
.status.is-shut .status__dot{background:var(--gold-700)}
@keyframes ping{0%{transform:translateZ(0) scale(.6); opacity:.9}70%,100%{transform:translateZ(0) scale(1.5); opacity:0}}
.status--dark{background:rgba(255,255,255,.08); border-color:rgba(208,170,105,.34); color:var(--beige)}

/* ---------- Hero ---------- */
.hero{
  position:relative; overflow:hidden;
  padding:calc(var(--header-h) + clamp(2.6rem,1.4rem + 5vw,5.2rem)) 0 clamp(2.6rem,1.6rem + 4vw,5rem);
  background:
    radial-gradient(120% 78% at 82% 8%, var(--gold-100) 0%, rgba(245,233,210,0) 58%),
    radial-gradient(100% 70% at 4% 96%, var(--teal-100) 0%, rgba(227,238,236,0) 55%),
    var(--beige);
}
.hero__arc{
  position:absolute; z-index:0; pointer-events:none;
  width:min(112vw,1000px); aspect-ratio:1; right:-30%; top:-16%;
  border:2px solid var(--gold-500); border-radius:50%;
  border-right-color:transparent; border-bottom-color:transparent;
  opacity:.42;
  will-change:transform;
}
.hero__arc--2{
  right:auto; left:-42%; top:auto; bottom:-46%;
  width:min(90vw,760px); border:1.5px solid var(--teal-300);
  border-left-color:transparent; border-top-color:transparent; opacity:.5;
}
.hero__in{position:relative; z-index:1}
.breadcrumb-shell{position:relative;z-index:2;margin-bottom:clamp(1rem,.7rem + 1vw,1.5rem)}
.breadcrumb{position:relative;z-index:2;color:var(--ink-soft);font-size:.78rem;font-weight:700;letter-spacing:.02em}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;list-style:none;margin:0;padding:0}
.breadcrumb li{display:flex;align-items:center;gap:.45rem}
.breadcrumb li+li::before{content:"/";color:var(--gold-700);font-weight:500}
.breadcrumb a{color:var(--teal-700);text-decoration-thickness:1px;text-underline-offset:.2em}
.breadcrumb [aria-current="page"]{color:var(--ink-soft)}
.hero h1{margin-bottom:.32em}
.hero h1 .accent{
  color:var(--gold-700); font-style:italic; font-variation-settings:"SOFT" 0,"WONK" 1,"opsz" 40;
}
.hero__lede{max-width:33rem; margin-bottom:1.7rem}
.hero__meta{display:flex; flex-wrap:wrap; gap:.6rem; margin-bottom:1.7rem}

/* Hero duo — the two consultants, the actual proposition */
.duo{display:grid; gap:.9rem}
@media(min-width:560px){ .duo{grid-template-columns:1fr 1fr} }
.duo__card{
  position:relative; overflow:hidden;
  background:var(--paper);
  border:1px solid rgba(208,170,105,.4);
  border-radius:var(--r-arc) var(--r-sm) var(--r-arc) var(--r-sm);
  padding:1.3rem 1.25rem 1.15rem;
  text-decoration:none; display:block;
  box-shadow:var(--shadow-sm);
  transition:transform .42s var(--ease), box-shadow .42s var(--ease), border-color .42s;
}
.duo__card::before{
  content:""; position:absolute; right:-46px; top:-46px; width:118px; height:118px;
  border:1.5px solid var(--gold-300); border-radius:50%;
  transition:transform .6s var(--ease-out), border-color .5s;
}
.duo__card:hover{transform:translateY(-5px); box-shadow:var(--shadow-md); border-color:var(--gold-500)}
.duo__card:hover::before{transform:scale(1.22) rotate(28deg); border-color:var(--gold-500)}
.duo__role{font-size:.68rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; color:var(--gold-800); display:block; margin-bottom:.35rem}
.duo__name{font-family:"Fraunces",Georgia,serif; font-size:1.32rem; font-weight:600; color:var(--teal-900); display:block; line-height:1.15; margin-bottom:.3rem}
.duo__qual{font-size:.82rem; color:var(--ink-soft); line-height:1.45; display:block}
.duo__go{display:inline-flex; align-items:center; gap:.35rem; margin-top:.8rem; font-size:.79rem; font-weight:700; color:var(--teal-700)}
.duo__go svg{width:14px; height:14px; transition:transform .32s var(--ease)}
.duo__card:hover .duo__go svg{transform:translateX(4px)}

/* ---------- Cards ---------- */
.card{
  position:relative;
  background:var(--paper);
  border:1px solid rgba(39,87,87,.13);
  border-radius:var(--r-arc) var(--r-sm) var(--r-arc) var(--r-sm);
  padding:clamp(1.3rem,1rem + 1vw,1.9rem);
  box-shadow:var(--shadow-sm);
  transition:transform .42s var(--ease), box-shadow .42s var(--ease), border-color .42s;
}
.card--link{text-decoration:none; display:block}
.card--link:hover{transform:translateY(-5px); box-shadow:var(--shadow-md); border-color:var(--gold-500)}
.card--tint{background:var(--teal-100); border-color:rgba(39,87,87,.16)}
.card--onteal{background:rgba(255,255,255,.055); border-color:rgba(208,170,105,.26); box-shadow:none}
.card--onteal h3,.card--onteal h4{color:var(--paper)}
.card--onteal p{color:var(--teal-300)}
.card__icon{
  width:46px; height:46px; border-radius:14px; display:grid; place-items:center;
  background:var(--gold-100); color:var(--gold-800); margin-bottom:1rem;
  border:1px solid var(--gold-300);
  transition:transform .4s var(--ease-out), background .3s;
}
.card--link:hover .card__icon{transform:rotate(-7deg) scale(1.07); background:var(--gold-300)}
.card__icon svg{width:22px; height:22px}
.card--onteal .card__icon{background:rgba(208,170,105,.15); color:var(--gold-300); border-color:rgba(208,170,105,.3)}
.card h3{margin-bottom:.4rem}
.card p{font-size:.94rem; color:var(--ink-soft)}

.pill-list{display:flex; flex-wrap:wrap; gap:.42rem; margin:.9rem 0 0; padding:0; list-style:none}
.pill-list li{
  font-size:.775rem; font-weight:600; padding:.34rem .74rem; border-radius:100px;
  background:var(--teal-100); color:var(--teal-800); border:1px solid rgba(39,87,87,.12);
  transition:background .25s, transform .25s;
}
.pill-list li:hover{background:var(--gold-100); transform:translateY(-1px)}
.band--teal .pill-list li,.band--deep .pill-list li{background:rgba(255,255,255,.07); color:var(--gold-100); border-color:rgba(208,170,105,.24)}

/* ---------- Accordion (expandable service menus) ---------- */
.acc{border-top:1px solid rgba(39,87,87,.16)}
.acc__item{border-bottom:1px solid rgba(39,87,87,.16)}
.acc__btn{
  width:100%; display:flex; align-items:center; gap:1rem; justify-content:space-between;
  background:none; border:0; cursor:pointer; text-align:left;
  padding:1.15rem .3rem; color:var(--teal-900);
  font-family:"Fraunces",Georgia,serif; font-size:clamp(1.05rem,.98rem + .3vw,1.25rem); font-weight:600;
  transition:color .25s, padding-left .3s var(--ease);
}
.acc__btn:hover{color:var(--gold-800); padding-left:.72rem}
.acc__btn:focus-visible{outline:2.5px solid var(--gold-700); outline-offset:2px; border-radius:6px}
.acc__sign{
  width:30px; height:30px; flex:none; border-radius:50%;
  border:1.5px solid var(--gold-500); display:grid; place-items:center;
  transition:transform .42s var(--ease), background .3s;
  position:relative;
}
.acc__sign::before,.acc__sign::after{
  content:""; position:absolute; background:var(--gold-800); border-radius:2px;
  transition:transform .42s var(--ease), opacity .3s;
}
.acc__sign::before{width:11px; height:1.7px}
.acc__sign::after{width:1.7px; height:11px}
.acc__btn[aria-expanded="true"] .acc__sign{background:var(--gold-500); transform:rotate(135deg)}
.acc__btn[aria-expanded="true"] .acc__sign::after{opacity:0}
.acc__panel{overflow:hidden; height:0; transition:height .45s var(--ease)}
.acc__inner{padding:0 .3rem 1.5rem; max-width:56rem}
.acc__inner p{font-size:.96rem; color:var(--ink-soft)}
.band--teal .acc,.band--teal .acc__item,.band--deep .acc,.band--deep .acc__item{border-color:rgba(208,170,105,.24)}
.band--teal .acc__btn,.band--deep .acc__btn{color:var(--paper)}
.band--teal .acc__inner p,.band--deep .acc__inner p{color:var(--teal-300)}

/* ---------- Detail rows / facts ---------- */
.facts{list-style:none; margin:0; padding:0; display:grid; gap:.05rem}
.facts li{display:flex; gap:1rem; padding:.82rem 0; border-bottom:1px solid rgba(39,87,87,.13); align-items:flex-start}
.facts li:last-child{border-bottom:0}
.facts dt,.facts .k{
  flex:none; width:8.4rem; font-size:.72rem; font-weight:800; letter-spacing:.13em;
  text-transform:uppercase; color:var(--gold-800); padding-top:.22rem;
}
.facts .v{font-size:.96rem}
.band--teal .facts li,.band--deep .facts li{border-color:rgba(208,170,105,.2)}
.band--teal .facts .k,.band--deep .facts .k{color:var(--gold-300)}

/* ---------- Timeline (credentials) ---------- */
.tl{list-style:none; margin:0; padding:0 0 0 1.6rem; position:relative}
.tl::before{content:""; position:absolute; left:4px; top:.5rem; bottom:.5rem; width:1.5px; background:linear-gradient(var(--gold-500),rgba(208,170,105,.12))}
.tl li{position:relative; padding:0 0 1.35rem}
.tl li:last-child{padding-bottom:0}
.tl li::before{
  content:""; position:absolute; left:-1.6rem; top:.42rem; width:9px; height:9px;
  border-radius:50%; background:var(--beige); border:2px solid var(--gold-500);
}
.tl b{display:block; font-size:.98rem; color:var(--teal-900)}
.tl span{font-size:.86rem; color:var(--ink-soft)}
.band--teal .tl li::before,.band--deep .tl li::before{background:var(--teal-700)}
.band--teal .tl b,.band--deep .tl b{color:var(--paper)}
.band--teal .tl span,.band--deep .tl span{color:var(--teal-300)}

/* ---------- Big CTA band ---------- */
.cta{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,var(--teal-800),var(--teal-900) 62%);
  color:var(--beige);
  border-radius:var(--r-arc);
  padding:clamp(1.9rem,1.2rem + 3vw,3.3rem);
  box-shadow:var(--shadow-lg);
}
.cta::before{
  content:""; position:absolute; width:420px; height:420px; right:-140px; top:-190px;
  border:1.5px solid rgba(208,170,105,.34); border-radius:50%;
}
.cta::after{
  content:""; position:absolute; width:280px; height:280px; left:-120px; bottom:-170px;
  border:1.5px solid rgba(147,183,183,.26); border-radius:50%;
}
.cta__in{position:relative; z-index:1; max-width:40rem}
.cta h2{color:var(--paper); margin-bottom:.45em}
.cta p{color:var(--teal-300)}

/* ---------- Floating actions ---------- */
.floaties{
  position:fixed; z-index:80; right:14px; bottom:14px;
  display:flex; flex-direction:column-reverse; gap:.6rem; align-items:flex-end;
}
@supports(padding:env(safe-area-inset-bottom)){
  .floaties{bottom:calc(14px + env(safe-area-inset-bottom))}
}
.js .float{
  width:54px; height:54px; border-radius:50%;
  display:grid; place-items:center; text-decoration:none;
  box-shadow:0 8px 26px -8px rgba(20,48,47,.55);
  transform:translateY(18px) scale(.85); opacity:0;
  transition:transform .5s var(--ease-out), opacity .4s, box-shadow .3s, width .38s var(--ease);
  position:relative;
}
.floaties.is-in .float{transform:none; opacity:1}
.floaties.is-in .float:nth-child(2){transition-delay:.07s}
.float:hover{box-shadow:0 12px 32px -8px rgba(20,48,47,.7)}
.float:focus-visible{outline:3px solid var(--gold-500); outline-offset:3px}
.float svg{width:26px; height:26px}
.float--wa{background:var(--wa); color:#fff}
.float--g{background:var(--paper); color:var(--teal-800); border:1px solid rgba(39,87,87,.16)}
.float__tip{
  position:absolute; right:calc(100% + 10px); top:50%; transform:translateY(-50%) translateX(8px);
  background:var(--teal-900); color:var(--beige); font-size:.74rem; font-weight:700;
  padding:.42rem .7rem; border-radius:8px; white-space:nowrap; pointer-events:none;
  opacity:0; transition:opacity .3s, transform .3s var(--ease);
}
.float:hover .float__tip{opacity:1; transform:translateY(-50%)}
@media(max-width:640px){ .float__tip{display:none} }

/* ---------- Landing (QR arrival) ---------- */
.arrive{
  min-height:100svh; display:flex; flex-direction:column;
  padding:calc(var(--header-h) + 1.4rem) 0 2rem;
  position:relative; overflow:hidden;
  background:
    radial-gradient(115% 60% at 80% 0%, var(--gold-100), rgba(245,233,210,0) 60%),
    var(--beige);
}
.arrive__arc{
  position:absolute; width:min(120vw,860px); aspect-ratio:1; right:-38%; top:-24%;
  border:2px solid var(--gold-500); border-radius:50%;
  border-right-color:transparent; border-bottom-color:transparent; opacity:.38; pointer-events:none;
}
.tiles{display:grid; gap:.72rem; grid-template-columns:1fr 1fr}
.tile{
  position:relative; overflow:hidden;
  display:flex; flex-direction:column; justify-content:space-between; gap:1.1rem;
  min-height:118px; padding:1rem 1.05rem;
  text-decoration:none; border-radius:var(--r-arc) var(--r-sm) var(--r-arc) var(--r-sm);
  background:var(--paper); border:1px solid rgba(39,87,87,.14);
  box-shadow:var(--shadow-sm);
  transition:transform .34s var(--ease), box-shadow .34s var(--ease), background .34s;
}
.tile:active{transform:scale(.975)}
.tile:hover{transform:translateY(-4px); box-shadow:var(--shadow-md)}
.tile svg{width:24px; height:24px; color:var(--gold-800)}
.tile b{font-family:"Fraunces",Georgia,serif; font-size:1.06rem; font-weight:600; color:var(--teal-900); line-height:1.2}
.tile small{display:block; font-size:.76rem; color:var(--ink-soft); margin-top:.16rem; font-weight:500}
.tile--wa{background:var(--wa); border-color:var(--wa); grid-column:1/-1; min-height:auto; flex-direction:row; align-items:center}
.tile--wa svg,.tile--wa b{color:#06301A}
.tile--wa small{color:rgba(6,48,26,.72)}
.tile--wa>div{flex:1}

/* ---------- Map + footer ---------- */
.map{
  border-radius:var(--r-arc) var(--r-sm) var(--r-arc) var(--r-sm);
  overflow:hidden; border:1px solid rgba(208,170,105,.35);
  background:var(--teal-800); min-height:260px; position:relative;
}
.map iframe{display:block;width:100%; height:100%; min-height:260px; border:0; filter:saturate(.85)}
.map__load{
  position:absolute; inset:0; width:100%; min-height:260px; border:0; padding:0; overflow:hidden;
  display:grid; place-items:center; cursor:pointer; color:var(--beige); font:inherit; text-align:center;
  background:
    linear-gradient(32deg,transparent 0 31%,rgba(236,215,175,.18) 31% 33%,transparent 33% 67%,rgba(147,183,183,.16) 67% 69%,transparent 69%),
    linear-gradient(145deg,rgba(255,255,255,.06),transparent 42%),
    var(--teal-800);
}
.map__load::before,.map__load::after{content:"";position:absolute;pointer-events:none}
.map__load::before{
  width:78%; height:1px; left:11%; top:48%; background:rgba(236,215,175,.34);
  transform:rotate(-14deg); transform-origin:center;
  box-shadow:0 -54px 0 rgba(147,183,183,.16),0 58px 0 rgba(147,183,183,.14);
}
.map__load::after{
  width:160px; aspect-ratio:1; right:-42px; top:-52px; border:1px solid rgba(236,215,175,.24); border-radius:50%;
  box-shadow:0 0 0 34px rgba(236,215,175,.035),0 0 0 68px rgba(236,215,175,.025);
}
.map__facade-content{position:relative;z-index:1;display:grid;justify-items:center;gap:.38rem;padding:1.4rem}
.map__facade-content strong{font-family:"Fraunces",Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--paper)}
.map__facade-content span{font-size:.73rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-300)}
.map__pin{width:42px;height:42px;color:var(--gold-300);margin-bottom:.15rem}
.map__load:hover .map__facade-content strong,.map__load:focus-visible .map__facade-content strong{color:var(--gold-300)}
.map__load:focus-visible{outline:3px solid var(--gold-500);outline-offset:-5px}
.map__noscript{position:absolute;inset:auto 1rem 1rem;z-index:2;margin:0;padding:.65rem .8rem;border-radius:10px;background:rgba(11,36,35,.9);color:var(--teal-100);font-size:.72rem;text-align:center}

.ftr{background:var(--teal-900); color:var(--teal-300); padding:clamp(3rem,2rem + 3vw,4.6rem) 0 1.6rem; position:relative}
.ftr__grid{display:grid; gap:clamp(1.6rem,1rem + 2.4vw,3rem)}
@media(min-width:860px){ .ftr__grid{grid-template-columns:1.05fr .95fr} }
.ftr h4{color:var(--paper); font-size:.74rem; letter-spacing:.19em; text-transform:uppercase; margin-bottom:.9rem; color:var(--gold-300)}
.ftr a{color:var(--teal-100); text-decoration:none; transition:color .25s}
.ftr a:hover{color:var(--gold-300)}
.ftr__brand{display:flex; align-items:center; gap:.7rem; margin-bottom:1.1rem}
.ftr__brand .brand__plaque{background:var(--beige); padding:5px; width:46px; height:46px; box-shadow:0 0 0 1px rgba(208,170,105,.45)}
.ftr__brand .brand__name{color:var(--paper)}
.ftr__brand .brand__sub{color:var(--gold-500)}
.ftr__list{list-style:none; margin:0; padding:0; display:grid; gap:.55rem; font-size:.92rem}
.ftr__list li{display:flex; gap:.7rem; align-items:flex-start}
.ftr__list svg{width:17px; height:17px; flex:none; margin-top:.22rem; color:var(--gold-500)}
.ftr__cols{display:grid; gap:1.4rem; grid-template-columns:1fr 1fr; margin-top:1.6rem}
.ftr__cols ul{list-style:none; margin:0; padding:0; display:grid; gap:.45rem; font-size:.9rem}
.ftr__base{
  margin-top:2.4rem; padding-top:1.3rem; border-top:1px solid rgba(208,170,105,.2);
  display:flex; flex-wrap:wrap; gap:.7rem 1.4rem; justify-content:space-between;
  font-size:.78rem; color:rgba(147,183,183,.75);
}

/* ---------- Reveal animation ---------- */
.js [data-rev]{opacity:0; transform:translateY(26px); transition:opacity .8s var(--ease-out), transform .8s var(--ease-out)}
.js [data-rev].is-in{opacity:1; transform:none}
.js [data-rev="left"]{transform:translateX(-28px)}
.js [data-rev="right"]{transform:translateX(28px)}
.js [data-rev="scale"]{transform:scale(.955)}
.js [data-rev].is-in{transform:none}

.js .stagger>*{opacity:0; transform:translateY(22px); transition:opacity .7s var(--ease-out), transform .7s var(--ease-out)}
.js .stagger.is-in>*{opacity:1; transform:none}
.stagger.is-in>*:nth-child(1){transition-delay:.02s}
.stagger.is-in>*:nth-child(2){transition-delay:.09s}
.stagger.is-in>*:nth-child(3){transition-delay:.16s}
.stagger.is-in>*:nth-child(4){transition-delay:.23s}
.stagger.is-in>*:nth-child(5){transition-delay:.3s}
.stagger.is-in>*:nth-child(6){transition-delay:.37s}
.stagger.is-in>*:nth-child(7){transition-delay:.44s}
.stagger.is-in>*:nth-child(8){transition-delay:.51s}

.par{will-change:transform}

/* ---------- Misc ---------- */
.skip{position:absolute; left:-9999px; top:0; background:var(--teal-900); color:#fff; padding:.8rem 1.2rem; z-index:200; border-radius:0 0 10px 0}
.skip:focus{left:0}
.note{
  font-size:.82rem; color:var(--ink-soft); border-left:2px solid var(--gold-500);
  padding-left:.9rem; margin-top:1.3rem;
}
.band--teal .note,.band--deep .note{color:var(--teal-300)}
.centered{text-align:center}
.mt-lg{margin-top:clamp(1.8rem,1rem + 2vw,2.8rem)}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important}
  [data-rev],.stagger>*{opacity:1 !important; transform:none !important}
  .float{opacity:1 !important; transform:none !important}
}

@media print{
  .js [data-rev],.js .stagger>*,[data-rev],.stagger>*{opacity:1 !important;transform:none !important;transition:none !important}
  .float{opacity:1 !important;transform:none !important;transition:none !important}
}

/* ========================================================================
   2026 premium clinical redesign
   Editorial typography, photographic depth and quiet motion. The existing
   component system remains intact so every QR destination stays dependable.
   ======================================================================== */
:root{
  --champagne:#ECD7AF;
  --copper:#B98248;
  --night:#0B2423;
  --glass:rgba(255,252,248,.72);
  --hairline:rgba(208,170,105,.32);
  --scroll:0;
}
body::before{
  content:"";position:fixed;z-index:150;left:0;top:0;width:calc(var(--scroll)*1%);height:3px;
  background:linear-gradient(90deg,var(--gold-700),var(--gold-300));
  box-shadow:0 0 18px rgba(208,170,105,.75);pointer-events:none;
}
body::after{
  content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;opacity:.25;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
}
.hdr{border-bottom:1px solid transparent}
.hdr.is-stuck{border-color:rgba(208,170,105,.2)}
.hero{isolation:isolate;background:
  radial-gradient(70% 120% at 91% 8%,rgba(232,205,159,.52),transparent 64%),
  radial-gradient(50% 70% at 3% 100%,rgba(147,183,183,.24),transparent 70%),
  var(--beige)}
.hero h1{font-size:clamp(3rem,2rem + 4.9vw,6.6rem);line-height:.96;letter-spacing:-.042em}
.hero h1 .accent{display:inline-block;background:linear-gradient(120deg,var(--gold-800),var(--copper));
  -webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.hero__lede{max-width:47rem;font-size:clamp(1.08rem,.98rem + .48vw,1.38rem)}
.hero__grid{display:grid;align-items:center;gap:clamp(2rem,3vw,4.5rem)}
@media(min-width:960px){.hero__grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}}
.hero__copy{position:relative;z-index:2}
.hero__proof{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.25rem 0 0}
.proof-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.46rem .74rem;border-radius:999px;
  background:rgba(255,252,248,.66);border:1px solid var(--hairline);backdrop-filter:blur(8px);
  color:var(--teal-800);font-size:.75rem;font-weight:750;letter-spacing:.03em}
.proof-pill::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold-700);box-shadow:0 0 0 4px rgba(208,170,105,.13)}
.portrait-stage{position:relative;min-height:clamp(430px,53vw,650px);display:grid;place-items:center;perspective:1200px}
.portrait-stage::before{content:"";position:absolute;width:83%;aspect-ratio:1;border:1px solid rgba(208,170,105,.55);border-radius:50%;
  border-right-color:transparent;transform:rotate(-20deg);animation:orbit 18s linear infinite;will-change:transform;backface-visibility:hidden}
.portrait-stage::after{content:"";position:absolute;width:61%;aspect-ratio:1;border:1px dashed rgba(39,87,87,.28);border-radius:50%;
  transform:rotate(22deg);animation:orbit 25s linear infinite reverse;will-change:transform;backface-visibility:hidden}
@keyframes orbit{to{transform:rotateZ(340deg)}}
.portrait-pair{position:relative;z-index:2;width:min(100%,520px);height:clamp(400px,47vw,590px)}
.portrait-card{position:absolute;overflow:hidden;background:var(--paper);box-shadow:0 35px 80px -35px rgba(11,36,35,.58);
  border:1px solid rgba(255,255,255,.7);transition:transform .65s var(--ease-out),box-shadow .45s var(--ease)}
.portrait-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out),filter .5s}
.portrait-card:hover img{transform:scale(1.035)}
.portrait-card--praful{left:0;top:0;width:58%;height:82%;border-radius:120px 16px 90px 16px;transform:rotate(-2.5deg)}
.portrait-card--neha{right:0;bottom:0;width:55%;height:76%;border-radius:16px 110px 16px 82px;transform:rotate(2.2deg)}
.portrait-card__label{position:absolute;left:12px;right:12px;bottom:12px;padding:.75rem .85rem;border-radius:12px;
  background:rgba(11,36,35,.84);backdrop-filter:blur(12px);color:#fff;font-size:.76rem;line-height:1.35}
.portrait-card__label b{display:block;color:var(--gold-300);font-family:"Fraunces",Georgia,serif;font-size:1.03rem}
.hero-monogram{position:absolute;right:-4%;top:8%;font:600 clamp(7rem,18vw,14rem)/1 "Fraunces",serif;color:rgba(208,170,105,.11);z-index:-1}

.trust-marquee{overflow:hidden;background:var(--night);color:var(--champagne);border-block:1px solid rgba(208,170,105,.25);padding:.82rem 0}
.trust-marquee__track{display:flex;width:max-content;gap:2.2rem;animation:marquee 34s linear infinite;will-change:transform}
.trust-marquee__track span{display:inline-flex;align-items:center;gap:2.2rem;font-size:.72rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.trust-marquee__track span::after{content:"✦";color:var(--gold-500);font-size:.62rem}
@keyframes marquee{to{transform:translate3d(-50%,0,0)}}

.competence-grid{display:grid;gap:1rem}
@media(min-width:850px){.competence-grid{grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto}.competence-grid>.feature-card:first-child{grid-row:1/3}}
.feature-card{position:relative;min-height:260px;padding:clamp(1.5rem,3vw,2.5rem);overflow:hidden;border-radius:28px 8px 28px 8px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,252,248,.66));border:1px solid var(--hairline);box-shadow:var(--shadow-md)}
.feature-card--deep{background:linear-gradient(145deg,var(--teal-900),var(--teal-700));color:var(--teal-100)}
.feature-card--deep h2,.feature-card--deep h3{color:#fff}.feature-card--deep .lede{color:var(--teal-100)}
.feature-card__number{display:block;margin-bottom:1rem;font:600 clamp(3.6rem,7vw,7rem)/.85 "Fraunces",serif;color:var(--gold-500);letter-spacing:-.055em}
.feature-card__halo{position:absolute;width:260px;height:260px;border:1px solid rgba(208,170,105,.25);border-radius:50%;right:-95px;bottom:-125px}

.doctor-showcase{display:grid;gap:clamp(1.2rem,3vw,2rem)}
@media(min-width:850px){.doctor-showcase{grid-template-columns:1fr 1fr}}
.doctor-feature{position:relative;display:grid;grid-template-columns:minmax(120px,40%) 1fr;min-height:370px;overflow:hidden;
  border-radius:34px 10px 34px 10px;background:var(--paper);border:1px solid rgba(39,87,87,.13);box-shadow:var(--shadow-lg);text-decoration:none}
.doctor-feature__image{overflow:hidden;background:var(--teal-100)}
.doctor-feature__image img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out),filter .5s}
.doctor-feature__body{padding:clamp(1.25rem,2.5vw,2.1rem);display:flex;flex-direction:column;justify-content:center}
.doctor-feature:hover .doctor-feature__image img{transform:scale(1.055)}
.doctor-feature::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,var(--gold-700),var(--gold-300));transform:scaleX(.16);transform-origin:left;transition:transform .6s var(--ease-out)}
.doctor-feature:hover::after{transform:scaleX(1)}
.doctor-home-card{overflow:hidden;padding-top:0!important}
.doctor-home-card__image{width:calc(100% + 3rem);max-width:none;height:330px;object-fit:cover;margin:-1px -1.5rem 1.4rem;filter:saturate(.8);transition:transform .9s var(--ease-out),filter .45s}
.doctor-home-card:hover .doctor-home-card__image{transform:scale(1.035);filter:saturate(.95)}
#doctors .physician-service{display:none}
#doctors .grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin-inline:auto}
@media(max-width:700px){#doctors .grid{grid-template-columns:1fr}.doctor-home-card__image{height:370px}}
.mini-proof{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}
.mini-proof span{font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .5rem;border-radius:7px;background:var(--teal-100);color:var(--teal-800)}
@media(max-width:620px){.doctor-feature{grid-template-columns:1fr}.doctor-feature__image{height:330px}.doctor-feature__body{min-height:270px}}

.service-visual-grid{display:grid;gap:1rem}
@media(min-width:760px){.service-visual-grid{grid-template-columns:repeat(2,1fr)}}
.service-visual{position:relative;display:flex;min-height:410px;overflow:hidden;border-radius:30px 8px 30px 8px;text-decoration:none;background:var(--night);box-shadow:var(--shadow-md)}
.service-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.04);transition:transform 1.2s var(--ease-out),filter .55s}
.service-visual::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(8,35,34,.04) 18%,rgba(8,35,34,.9) 88%)}
.service-visual__body{position:relative;z-index:2;align-self:flex-end;padding:clamp(1.35rem,3vw,2.2rem);color:var(--teal-100)}
.service-visual h3{font-size:clamp(1.7rem,2.6vw,2.5rem);color:#fff}.service-visual p{max-width:34rem;font-size:.94rem}
.service-visual:hover img{transform:scale(1.055);filter:saturate(.85) contrast(1.05)}
.service-visual .duo__go{color:var(--gold-300)}
.service-card{overflow:hidden;padding-top:0!important}
.service-card__image{width:calc(100% + 3rem);max-width:none;height:220px;object-fit:cover;margin:-1px -1.5rem 1.35rem;filter:saturate(.72) contrast(1.04);transition:transform .9s var(--ease-out),filter .45s}
.service-card:hover .service-card__image{transform:scale(1.045);filter:saturate(.92) contrast(1.04)}
.service-hero-photo{position:relative;min-height:500px;margin:0;overflow:hidden;border-radius:100px 16px 86px 16px;background:var(--teal-100);box-shadow:var(--shadow-lg);border:1px solid rgba(208,170,105,.45);transition:transform .5s var(--ease-out)}
.service-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.74) contrast(1.03)}
.service-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(11,36,35,.78))}
.service-hero-photo figcaption{position:absolute;z-index:2;left:1.2rem;right:1.2rem;bottom:1.1rem;color:#fff;font-size:.78rem;line-height:1.45}
@media(max-width:959px){.service-hero-photo{min-height:390px;max-width:650px}}

.profile-photo-card{position:relative;overflow:hidden;min-height:540px;border-radius:130px 18px 110px 18px;background:var(--teal-100);box-shadow:var(--shadow-lg);border:1px solid rgba(208,170,105,.45)}
.profile-photo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-photo-card__seal{position:absolute;right:1rem;bottom:1rem;width:108px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;padding:.8rem;
  background:rgba(11,36,35,.9);backdrop-filter:blur(10px);border:1px solid rgba(208,170,105,.5);color:var(--gold-300);font-size:.59rem;font-weight:800;line-height:1.35;letter-spacing:.09em;text-transform:uppercase}
.social-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
.social-link{display:inline-flex;align-items:center;gap:.45rem;border-bottom:1px solid var(--gold-500);padding:.35rem 0;text-decoration:none;font-size:.82rem;font-weight:750;color:var(--teal-800)}
.social-link svg{width:17px;height:17px}

.rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(205px,100%),1fr));gap:.85rem}
.rank-card{padding:1.35rem;border:1px solid rgba(208,170,105,.32);border-radius:18px 6px 18px 6px;background:rgba(255,252,248,.06);min-height:155px}
.rank-card b{display:block;font:600 2.25rem/1 "Fraunces",serif;color:var(--gold-300);margin-bottom:.65rem}
.rank-card span{font-size:.82rem;line-height:1.45;color:var(--teal-100)}
.academic-bento{display:grid;gap:1rem;align-items:stretch}
@media(min-width:840px){.academic-bento{grid-template-columns:.82fr 1.18fr}}
.academic-image{position:relative;overflow:hidden;min-height:430px;border-radius:28px 8px 28px 8px;background:var(--teal-800)}
.academic-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.82)}
.academic-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(11,36,35,.76))}
.academic-image figcaption{position:absolute;z-index:2;left:1.2rem;right:1.2rem;bottom:1rem;color:#fff;font-size:.78rem}
.academic-panel{padding:clamp(1.4rem,3vw,2.4rem);border-radius:8px 28px 8px 28px;background:var(--paper);border:1px solid var(--hairline)}
.achievement-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.achievement-list li{display:grid;grid-template-columns:24px 1fr;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(39,87,87,.11);font-size:.9rem}
.achievement-list li::before{content:"✦";color:var(--gold-700)}
.publication-list{display:grid;gap:.65rem;counter-reset:pub}
.publication-list li{list-style:none;position:relative;padding:.85rem .95rem .85rem 3rem;background:rgba(255,252,248,.05);border:1px solid rgba(208,170,105,.16);border-radius:10px;font-size:.82rem;line-height:1.5;color:var(--teal-100)}
.publication-list li::before{counter-increment:pub;content:counter(pub,decimal-leading-zero);position:absolute;left:.85rem;top:.85rem;color:var(--gold-500);font-weight:800;font-size:.68rem;letter-spacing:.08em}
.publication-list cite{font-style:normal;color:var(--gold-300)}
.pub-disclosure{border:1px solid var(--hairline);border-radius:24px 7px 24px 7px;overflow:hidden;background:var(--teal-900);box-shadow:var(--shadow-md)}
.pub-disclosure summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.35rem;color:#fff;font-weight:750}
.pub-disclosure summary::-webkit-details-marker{display:none}
.pub-disclosure summary::after{content:"+";color:var(--gold-300);font:500 1.7rem/1 "Fraunces",serif;transition:transform .3s}
.pub-disclosure[open] summary::after{transform:rotate(45deg)}
.pub-disclosure summary span{margin-left:auto;color:var(--gold-300);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.pub-disclosure .publication-list{padding:0 1rem 1rem;margin:0}
.timeline-correct .tl{display:flex;flex-direction:column}
.timeline-correct .tl li{order:initial}

.ihc-feature{display:grid;gap:1rem;align-items:stretch}
@media(min-width:830px){.ihc-feature{grid-template-columns:1.15fr .85fr}}
.ihc-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:.75rem;min-height:480px}
.ihc-gallery figure{margin:0;position:relative;overflow:hidden;border-radius:26px 8px 26px 8px;background:var(--teal-800)}
.ihc-gallery figure:last-child{border-radius:8px 26px 8px 26px}
.ihc-gallery img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.ihc-copy{padding:clamp(1.4rem,3vw,2.5rem);border-radius:8px 28px 8px 28px;background:linear-gradient(145deg,var(--teal-900),var(--teal-700));color:var(--teal-100)}
.ihc-copy h2,.ihc-copy h3{color:#fff}

.arrive{background:radial-gradient(80% 60% at 100% 0%,rgba(232,205,159,.62),transparent 70%),radial-gradient(65% 65% at 0 100%,rgba(147,183,183,.28),transparent 70%),var(--beige)}
.arrive .tile{backdrop-filter:blur(10px);background:rgba(255,252,248,.78)}
.arrive .tile--wa{background:var(--wa)}
.landing-specialists{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.landing-specialist{display:flex;align-items:center;gap:.8rem;padding:.75rem;border-radius:18px 6px 18px 6px;background:var(--paper);border:1px solid var(--hairline);text-decoration:none}
.landing-specialist img{width:54px;height:64px;border-radius:14px 4px 14px 4px;object-fit:cover}
.landing-specialist img[alt*="Praful"]{object-position:50% 25%}.landing-specialist img[alt*="Neha"]{object-position:50% 14%}
.landing-specialist b{font:600 .98rem/1.2 "Fraunces",serif}.landing-specialist small{display:block;color:var(--ink-soft);font-size:.66rem;margin-top:.2rem}
.arrive .landing-primary-duplicate{display:none}

.card{transition:transform .45s var(--ease-out),box-shadow .45s var(--ease),border-color .45s}
.card:hover{border-color:rgba(208,170,105,.55)}
.card--link:hover{transform:translateY(-6px)}
.band--paper,.band--tint,.band--beige{isolation:isolate}
.band--paper::before,.band--tint::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(42% 45% at 94% 7%,rgba(208,170,105,.08),transparent 75%)}
.section-head h2{letter-spacing:-.035em}

@media(max-width:760px){
  .hero h1{font-size:clamp(2.7rem,12vw,4.4rem)}
  .portrait-stage{min-height:470px}.portrait-pair{height:455px}
  .portrait-card--praful{width:61%;height:80%}.portrait-card--neha{width:58%;height:73%}
  .ihc-gallery{min-height:420px;grid-template-columns:1fr}.ihc-gallery figure:last-child{display:none}
  .landing-specialists{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .portrait-stage::before,.portrait-stage::after,.trust-marquee__track{animation:none!important}
}

/* ========================================================================
   Praneva editorial system — competence made visible
   ======================================================================== */
.hero--home h1{font-size:clamp(3.15rem,5.4vw,6rem);line-height:.92;letter-spacing:-.055em}
.hero--home h1 .accent{font-size:.78em;line-height:1.01;margin-top:.12em}
.hero--home h1 .hero-emphasis{white-space:nowrap}
.hero--home h1 .hero-line{display:block;margin-top:.16em}
.portrait-card--praful img{object-position:50% 28%}
.portrait-card--neha img{object-position:50% 16%}
.doctor-home-card__image--praful{object-position:50% 27%}
.doctor-home-card__image--neha{object-position:50% 17%}
.profile-photo-card img[alt*="Neha"]{object-position:50% 13%}
.profile-photo-card img[alt*="Praful"]{object-position:50% 28%}

.care-ecosystem{position:relative;overflow:hidden;padding:clamp(2.5rem,5vw,5.5rem) 0;background:var(--night);color:#fff;border-block:1px solid rgba(208,170,105,.25)}
.care-ecosystem::before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 50% 50%,rgba(61,123,118,.34),transparent 42%),radial-gradient(circle at 14% 20%,rgba(208,170,105,.15),transparent 24%);pointer-events:none}
.care-map{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.92fr) minmax(0,1fr);grid-template-rows:auto auto auto;gap:1rem;align-items:center;min-height:500px;isolation:isolate}
.care-map__lines{position:absolute;inset:12% 16%;z-index:-1;pointer-events:none}
.care-map__lines span{position:absolute;left:50%;top:50%;background:linear-gradient(90deg,transparent,rgba(208,170,105,.68),transparent);transform:translate(-50%,-50%)}
.care-map__lines span:first-child{width:100%;height:1px}.care-map__lines span:last-child{width:1px;height:100%;background:linear-gradient(180deg,transparent,rgba(208,170,105,.68),transparent)}
.care-map__core{grid-column:2;grid-row:2;justify-self:center;position:relative;width:min(100%,260px);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;padding:1.5rem;background:radial-gradient(circle at 35% 28%,#2c6965,var(--teal-950) 68%);border:1px solid rgba(239,211,157,.72);box-shadow:0 0 0 16px rgba(208,170,105,.06),0 28px 80px rgba(0,0,0,.36)}
.care-map__core::before,.care-map__core::after{content:"";position:absolute;inset:-27px;border:1px solid rgba(208,170,105,.28);border-radius:50%;animation:carePulse 4.8s ease-in-out infinite;will-change:transform,opacity;backface-visibility:hidden}
.care-map__core::after{inset:-52px;border-style:dashed;animation-delay:-2.4s}
.care-map__kicker{font-size:.6rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-300);margin-bottom:.45rem}
.care-map__core strong{font:600 clamp(1.7rem,2.6vw,2.35rem)/1.02 "Fraunces",serif;color:#fff}
.care-map__core small{max-width:13rem;margin:.65rem auto 0;color:var(--teal-100);font-size:.7rem;line-height:1.45}
.care-map__node{position:relative;display:block;padding:1.1rem 1.2rem;border:1px solid rgba(208,170,105,.28);border-radius:20px 6px 20px 6px;background:rgba(255,252,248,.06);backdrop-filter:blur(10px);text-decoration:none;color:var(--teal-100);transition:transform .45s var(--ease-out),background .35s,border-color .35s;max-width:360px}
.care-map__node>span{display:block;color:var(--gold-500);font-size:.61rem;font-weight:800;letter-spacing:.16em;margin-bottom:.45rem}
.care-map__node b{display:block;color:#fff;font:600 clamp(1.15rem,1.8vw,1.55rem)/1.1 "Fraunces",serif;margin-bottom:.35rem}
.care-map__node small{display:block;font-size:.69rem;line-height:1.45;color:var(--teal-100)}
.care-map__node:hover{transform:translateY(-6px);background:rgba(255,252,248,.1);border-color:rgba(239,211,157,.65)}
.care-map__node--oncology{grid-column:2;grid-row:1;justify-self:center;text-align:center}
.care-map__node--neurology{grid-column:3;grid-row:2;justify-self:end}
.care-map__node--diagnostics{grid-column:2;grid-row:3;justify-self:center;text-align:center}
.care-map__node--physician{grid-column:1;grid-row:2;justify-self:start}
@keyframes carePulse{0%,100%{opacity:.38;transform:translateZ(0) scale(.97)}50%{opacity:.8;transform:translateZ(0) scale(1.03)}}

.care-story__grid{display:grid;gap:clamp(2rem,5vw,5rem);align-items:center}
@media(min-width:900px){.care-story__grid{grid-template-columns:.78fr 1.22fr}.care-values{grid-column:1/-1}}
.care-story__copy h2{font-size:clamp(2.8rem,5.5vw,5.7rem);line-height:.93;letter-spacing:-.052em}
.accent-text{color:var(--gold-800);font-style:italic}
.clarity-seal{position:relative;margin-top:2rem;width:min(100%,320px);padding:1.15rem 1.25rem 1.15rem 5.3rem;border:1px solid rgba(168,120,55,.28);border-radius:70px 10px 70px 10px;background:linear-gradient(135deg,rgba(248,235,217,.9),rgba(255,252,248,.8))}
.clarity-seal::before{content:"C";position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:3.4rem;height:3.4rem;border-radius:50%;display:grid;place-items:center;background:var(--teal-900);color:var(--gold-300);font:italic 600 1.9rem/1 "Fraunces",serif;box-shadow:0 0 0 7px rgba(20,63,61,.08)}
.clarity-seal span,.clarity-seal small{display:block;font-size:.66rem;line-height:1.35;color:var(--ink-soft)}
.clarity-seal strong{display:block;font:600 1.45rem/1.05 "Fraunces",serif;color:var(--teal-900);margin:.15rem 0}
.journey-diagram{position:relative;list-style:none;margin:0;padding:clamp(1.2rem,3vw,2.1rem);border:1px solid var(--hairline);border-radius:34px 10px 34px 10px;background:rgba(255,252,248,.72);box-shadow:var(--shadow-lg);display:grid;gap:.75rem;overflow:hidden}
.journey-diagram::before{content:"";position:absolute;left:3.85rem;top:3.7rem;bottom:3.7rem;width:1px;background:linear-gradient(var(--gold-700),var(--teal-500),var(--gold-700))}
.journey-diagram>li:not(.journey-diagram__spine){position:relative;z-index:2;display:grid;grid-template-columns:3.1rem 1fr;gap:1rem;align-items:center;padding:1rem;border-radius:18px 6px 18px 6px;transition:transform .35s var(--ease-out),background .35s}
.journey-diagram>li:not(.journey-diagram__spine):hover{transform:translateX(8px);background:var(--teal-050)}
.journey-diagram>li>span{width:3.1rem;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--teal-900);color:var(--gold-300);font-size:.69rem;font-weight:800;letter-spacing:.08em;border:5px solid var(--paper);box-shadow:0 0 0 1px var(--gold-500)}
.journey-diagram b{display:block;color:var(--teal-900);font:600 clamp(1.15rem,1.8vw,1.5rem)/1.15 "Fraunces",serif}.journey-diagram small{display:block;margin-top:.3rem;color:var(--ink-soft);line-height:1.5}
.journey-diagram__spine{position:absolute!important;right:-2.4rem;top:50%;transform:rotate(90deg);color:rgba(20,63,61,.3);font-size:.58rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.journey-diagram__spine span{all:unset!important}
.care-values{display:grid;gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:24px 7px 24px 7px;overflow:hidden}
@media(min-width:720px){.care-values{grid-template-columns:repeat(3,1fr)}}
.care-values>div{padding:1.25rem 1.35rem;background:var(--paper)}.care-values b{display:block;font:600 1.15rem/1.15 "Fraunces",serif;color:var(--teal-900);margin-bottom:.35rem}.care-values span{font-size:.76rem;line-height:1.5;color:var(--ink-soft)}

.credential-stage{display:grid;gap:1rem;grid-template-columns:repeat(12,1fr)}
.credential-monument{position:relative;overflow:hidden;min-height:270px;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid rgba(208,170,105,.34);border-radius:28px 8px 28px 8px;background:linear-gradient(145deg,rgba(255,252,248,.1),rgba(255,252,248,.035));box-shadow:inset 0 1px rgba(255,255,255,.1);grid-column:span 4;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .5s var(--ease-out),border-color .4s,background .4s}
.credential-monument--primary{grid-column:span 8;background:radial-gradient(circle at 84% 15%,rgba(208,170,105,.18),transparent 34%),linear-gradient(145deg,#173f3d,#0a2827)}
.credential-monument:hover{transform:translateY(-7px);border-color:rgba(239,211,157,.76);background-color:rgba(255,252,248,.08)}
.credential-monument b{display:block;font:600 clamp(3.8rem,8vw,8.8rem)/.78 "Fraunces",serif;letter-spacing:-.065em;color:var(--gold-300);margin-bottom:1.1rem}.credential-monument:not(.credential-monument--primary) b{font-size:clamp(2.8rem,5vw,5.2rem)}
.credential-monument h3{color:#fff;font-size:clamp(1.25rem,2vw,1.8rem);margin-bottom:.45rem}.credential-monument p{color:var(--teal-100);font-size:.78rem;max-width:35rem;margin:0}
.credential-monument__halo{position:absolute;width:280px;aspect-ratio:1;border:1px solid rgba(239,211,157,.2);border-radius:50%;right:-40px;top:-90px;box-shadow:0 0 0 25px rgba(208,170,105,.04),0 0 0 55px rgba(208,170,105,.025);animation:haloDrift 9s ease-in-out infinite;will-change:transform;backface-visibility:hidden}
.credential-signature{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.8rem 1.1rem;margin-top:1.5rem;color:var(--teal-100);font-size:.66rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.credential-signature i{width:22px;height:1px;background:var(--gold-500)}
@keyframes haloDrift{50%{transform:translate3d(-18px,22px,0) scale(1.08)}}

.service-card__image[src$=".svg"],.service-hero-photo img[src$=".svg"]{filter:none;background:var(--teal-900)}
.service-card:hover .service-card__image[src$=".svg"]{filter:none;transform:scale(1.025)}
.service-hero-photo img[src$=".svg"]{object-fit:cover}

@media(max-width:900px){
  .care-map{grid-template-columns:1fr 1fr;grid-template-rows:auto;min-height:0}.care-map__core{grid-column:1/-1;grid-row:1;width:230px;margin-bottom:1.2rem}.care-map__node{max-width:none;align-self:stretch}.care-map__node--oncology{grid-column:1;grid-row:2}.care-map__node--neurology{grid-column:2;grid-row:2}.care-map__node--diagnostics{grid-column:1;grid-row:3}.care-map__node--physician{grid-column:2;grid-row:3}.care-map__lines{display:none}
  .credential-monument,.credential-monument--primary{grid-column:span 6}
}
@media(max-width:620px){
  .hero--home h1{font-size:clamp(2.55rem,12vw,4.25rem)}.hero--home h1 .accent{font-size:.8em}
  .care-map{grid-template-columns:1fr}.care-map__core,.care-map__node--oncology,.care-map__node--neurology,.care-map__node--diagnostics,.care-map__node--physician{grid-column:1;grid-row:auto;justify-self:stretch;text-align:left}.care-map__core{justify-self:center;text-align:center}.care-map__node{padding:1rem}
  .journey-diagram{padding:1rem}.journey-diagram::before{left:3.25rem}.journey-diagram>li:not(.journey-diagram__spine){grid-template-columns:2.6rem 1fr;padding:.85rem .5rem}.journey-diagram>li>span{width:2.6rem}.journey-diagram__spine{display:none}
  .credential-monument,.credential-monument--primary{grid-column:1/-1;min-height:230px}.credential-monument b,.credential-monument:not(.credential-monument--primary) b{font-size:clamp(3.3rem,18vw,5.2rem)}
}
@media(prefers-reduced-motion:reduce){.care-map__core::before,.care-map__core::after,.credential-monument__halo{animation:none!important}}

.neuro-field{overflow:hidden}
.neuro-spectrum{position:relative;min-height:680px;max-width:1040px;margin:1rem auto 0}
.neuro-spectrum__paths{position:absolute;left:50%;top:50%;width:560px;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid rgba(39,87,87,.2);border-radius:50%;background:repeating-conic-gradient(from -30deg,rgba(168,120,55,.42) 0 1deg,transparent 1deg 60deg);-webkit-mask:radial-gradient(circle,transparent 0 31%,#000 32% 100%);mask:radial-gradient(circle,transparent 0 31%,#000 32% 100%)}
.neuro-spectrum__paths::before,.neuro-spectrum__paths::after{content:"";position:absolute;border:1px dashed rgba(39,87,87,.17);border-radius:50%;inset:12%;animation:orbit 45s linear infinite;will-change:transform;backface-visibility:hidden}
.neuro-spectrum__paths::after{inset:27%;animation-direction:reverse;animation-duration:31s}
.neuro-spectrum__core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:245px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;padding:1.4rem;background:radial-gradient(circle at 35% 28%,#377873,var(--teal-950) 70%);border:1px solid var(--gold-500);box-shadow:0 24px 70px rgba(11,36,35,.28),0 0 0 18px rgba(208,170,105,.07);color:#fff;z-index:2}
.neuro-spectrum__core span{font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-300)}.neuro-spectrum__core strong{font:600 2.35rem/1 "Fraunces",serif;margin:.35rem 0}.neuro-spectrum__core small{font-size:.64rem;color:var(--teal-100)}
.neuro-spectrum__node{position:absolute;width:230px;min-height:112px;padding:1.05rem 1.15rem;border-radius:20px 6px 20px 6px;background:rgba(255,252,248,.88);backdrop-filter:blur(10px);border:1px solid rgba(39,87,87,.14);box-shadow:var(--shadow-md);transition:transform .4s var(--ease-out),border-color .35s;z-index:2}
.neuro-spectrum__node:hover{transform:translateY(-6px);border-color:rgba(168,120,55,.48)}
.neuro-spectrum__node b{display:block;font:600 1.14rem/1.15 "Fraunces",serif;color:var(--teal-900);margin-bottom:.35rem}.neuro-spectrum__node small{font-size:.69rem;line-height:1.4;color:var(--ink-soft)}
.neuro-spectrum__node--1{left:50%;top:1%;transform:translateX(-50%)}.neuro-spectrum__node--1:hover{transform:translateX(-50%) translateY(-6px)}
.neuro-spectrum__node--2{right:2%;top:20%}.neuro-spectrum__node--3{right:2%;bottom:18%}
.neuro-spectrum__node--4{left:50%;bottom:0;transform:translateX(-50%)}.neuro-spectrum__node--4:hover{transform:translateX(-50%) translateY(-6px)}
.neuro-spectrum__node--5{left:2%;bottom:18%}.neuro-spectrum__node--6{left:2%;top:20%}
@media(max-width:860px){
  .neuro-spectrum{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;min-height:0}.neuro-spectrum__paths{display:none}.neuro-spectrum__core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;justify-self:center;margin-bottom:1rem}.neuro-spectrum__node{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto;transform:none!important}.neuro-spectrum__node:hover{transform:translateY(-4px)!important}
}
@media(max-width:560px){.neuro-spectrum{grid-template-columns:1fr}.neuro-spectrum__core{grid-column:1}}
@media(prefers-reduced-motion:reduce){.neuro-spectrum__paths::before,.neuro-spectrum__paths::after{animation:none!important}}

.research-atlas{display:grid;gap:1rem;margin-bottom:1.2rem}
@media(min-width:860px){.research-atlas{grid-template-columns:.8fr 1.1fr .9fr;align-items:stretch}}
.research-atlas__metric,.research-atlas__orbit,.research-atlas blockquote{position:relative;min-height:310px;margin:0;padding:clamp(1.35rem,3vw,2rem);overflow:hidden;border:1px solid var(--hairline);border-radius:28px 8px 28px 8px}
.research-atlas__metric{display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,var(--teal-900),var(--teal-700));color:#fff}
.research-atlas__metric::before{content:"";position:absolute;width:220px;aspect-ratio:1;right:-70px;top:-80px;border:1px solid rgba(239,211,157,.25);border-radius:50%;box-shadow:0 0 0 24px rgba(208,170,105,.05),0 0 0 52px rgba(208,170,105,.03)}
.research-atlas__metric>span{font-size:.63rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-300)}.research-atlas__metric strong{font:600 clamp(6rem,12vw,10rem)/.76 "Fraunces",serif;color:var(--gold-300);letter-spacing:-.08em;margin:.65rem 0 1rem}.research-atlas__metric b{font:600 1.3rem/1.1 "Fraunces",serif}.research-atlas__metric small{margin-top:.35rem;color:var(--teal-100);font-size:.7rem}
.research-atlas__orbit{background:radial-gradient(circle at center,rgba(208,170,105,.18),transparent 27%),var(--beige)}
.research-atlas__orbit::before,.research-atlas__orbit::after{content:"";position:absolute;left:50%;top:50%;translate:-50% -50%;width:72%;aspect-ratio:1;border:1px solid rgba(39,87,87,.2);border-radius:50%}.research-atlas__orbit::after{width:45%;border-style:dashed;animation:orbit 28s linear infinite;will-change:transform;backface-visibility:hidden}
.research-atlas__core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--teal-900);color:var(--gold-300);font:italic 600 3rem/1 "Fraunces",serif;box-shadow:0 0 0 12px rgba(20,63,61,.08);z-index:2}
.research-atlas__orbit span{position:absolute;z-index:3;padding:.45rem .6rem;border-radius:999px;background:rgba(255,252,248,.9);border:1px solid rgba(39,87,87,.16);font-size:.61rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--teal-800);box-shadow:0 8px 20px rgba(11,36,35,.08)}
.research-atlas__orbit span:nth-of-type(1){left:50%;top:7%;transform:translateX(-50%)}.research-atlas__orbit span:nth-of-type(2){right:5%;top:28%}.research-atlas__orbit span:nth-of-type(3){right:7%;bottom:20%}.research-atlas__orbit span:nth-of-type(4){left:50%;bottom:6%;transform:translateX(-50%)}.research-atlas__orbit span:nth-of-type(5){left:3%;bottom:22%}.research-atlas__orbit span:nth-of-type(6){left:2%;top:26%}
.research-atlas blockquote{display:flex;align-items:flex-end;background:linear-gradient(145deg,#f8ead8,#fffaf4);font:italic 600 clamp(1.6rem,2.6vw,2.35rem)/1.12 "Fraunces",serif;color:var(--teal-900);letter-spacing:-.025em}
.research-atlas blockquote::before{content:"“";position:absolute;left:1rem;top:-.5rem;font:600 8rem/1 "Fraunces",serif;color:rgba(168,120,55,.18)}

.publication-browser{overflow:hidden;border:1px solid rgba(208,170,105,.3);border-radius:30px 8px 30px 8px;background:radial-gradient(circle at 96% 3%,rgba(208,170,105,.13),transparent 22%),var(--teal-950);box-shadow:var(--shadow-lg)}
.publication-browser__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.2rem;padding:1.5rem 1.5rem 1rem}.publication-browser__head h3{color:#fff;font-size:clamp(1.7rem,3vw,2.5rem);margin:0}.publication-browser__head>p{color:var(--gold-300);font-size:.71rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:0}
.pub-filters{display:flex;gap:.5rem;overflow-x:auto;padding:.3rem 1.5rem 1.25rem;scrollbar-width:thin}.pub-filters button{flex:0 0 auto;appearance:none;border:1px solid rgba(208,170,105,.25);border-radius:999px;background:rgba(255,252,248,.05);color:var(--teal-100);padding:.55rem .75rem;font:700 .67rem/1.1 "Manrope",sans-serif;cursor:pointer;transition:background .25s,border-color .25s,color .25s}.pub-filters button span{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;padding:0 .25rem;margin-left:.3rem;border-radius:999px;background:rgba(255,255,255,.08);font-size:.58rem}.pub-filters button[aria-pressed="true"]{background:var(--gold-500);border-color:var(--gold-500);color:var(--teal-950)}
.publication-browser .publication-list{max-height:720px;overflow:auto;padding:0 1rem 1rem;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));scrollbar-color:var(--gold-500) rgba(255,255,255,.06)}
.publication-browser .publication-list li{padding-top:2.25rem}.publication-browser .publication-list li::after{content:attr(data-topic);position:absolute;left:3rem;top:.82rem;color:var(--gold-300);font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.publication-browser .publication-list li[hidden]{display:none!important}
.publication-browser.is-expanded .publication-list,.publication-browser.is-filtered .publication-list{max-height:none}
.publication-browser__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(208,170,105,.17);color:var(--teal-100);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.publication-browser__footer button{appearance:none;border:0;border-bottom:1px solid var(--gold-500);background:none;color:var(--gold-300);font:800 .68rem/1 "Manrope",sans-serif;padding:.35rem 0;cursor:pointer}
@media(max-width:700px){.publication-browser__head{align-items:flex-start;flex-direction:column}.publication-browser .publication-list{grid-template-columns:1fr;max-height:760px}.publication-browser__footer{align-items:flex-start;flex-direction:column}.research-atlas__metric,.research-atlas__orbit,.research-atlas blockquote{min-height:280px}}
@media(prefers-reduced-motion:reduce){.research-atlas__orbit::after{animation:none!important}}

/* ========================================================================
   Mobile-first clinical editorial layer
   The phone experience is deliberately composed, not a shrunken desktop.
   ======================================================================== */

/* Symptom-to-question atlas: useful content carried by visual objects. */
.question-atlas{
  position:relative;
  overflow:hidden;
  padding:clamp(3.4rem,2.2rem + 5vw,6rem) 0;
  background:
    radial-gradient(48% 68% at 100% 0%,rgba(208,170,105,.17),transparent 72%),
    radial-gradient(42% 62% at 0 100%,rgba(62,118,118,.13),transparent 72%),
    var(--paper);
}
.question-atlas::before{
  content:"";
  position:absolute;
  width:420px;
  aspect-ratio:1;
  right:-250px;
  top:-220px;
  border:1px solid rgba(208,170,105,.24);
  border-radius:50%;
  box-shadow:0 0 0 36px rgba(208,170,105,.035),0 0 0 82px rgba(208,170,105,.02);
}
.question-atlas__intro{max-width:48rem;margin-bottom:clamp(1.7rem,1.2rem + 2vw,2.8rem)}
.question-atlas__intro h2{max-width:42rem}
.question-atlas__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.question-card{
  position:relative;
  min-height:340px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:clamp(1.35rem,2.8vw,2.15rem);
  border:1px solid rgba(39,87,87,.14);
  border-radius:32px 8px 32px 8px;
  background:linear-gradient(150deg,rgba(255,252,248,.97),rgba(245,233,210,.7));
  color:var(--ink-soft);
  text-decoration:none;
  box-shadow:var(--shadow-md);
  isolation:isolate;
  transition:transform .5s var(--ease-out),border-color .35s,box-shadow .35s;
}
.question-card:nth-child(2),.question-card:nth-child(3){border-radius:8px 32px 8px 32px}
.question-card:hover{transform:translateY(-6px);border-color:rgba(168,120,55,.55);box-shadow:var(--shadow-lg)}
.question-card__visual{
  position:absolute;
  z-index:-1;
  inset:0 0 auto auto;
  width:58%;
  aspect-ratio:1.12;
  color:var(--gold-700);
  opacity:.94;
}
.question-card__visual svg{width:100%;height:100%}
.question-card__visual::after{
  content:"";
  position:absolute;
  inset:16% 13%;
  border:1px solid rgba(208,170,105,.2);
  border-radius:50%;
}
.question-card--neuro .question-card__visual{color:var(--teal-500)}
.question-card--physician .question-card__visual{color:var(--copper)}
.question-card--diagnostics .question-card__visual{color:var(--teal-700)}
.question-card__index{font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-800);margin-bottom:.8rem}
.question-card h3{max-width:29rem;font-size:clamp(1.45rem,2.4vw,2.05rem);margin-bottom:.55rem}
.question-card p{max-width:34rem;font-size:.86rem;line-height:1.55;margin-bottom:1rem}
.question-card__tags{display:flex;flex-wrap:wrap;gap:.38rem}
.question-card__tags span{padding:.32rem .48rem;border-radius:999px;background:rgba(20,63,61,.07);font-size:.62rem;font-weight:750;letter-spacing:.04em;color:var(--teal-800)}
.question-atlas__thesis{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:1rem;
  margin-top:1rem;
  padding:1rem 1.15rem;
  border:1px solid rgba(208,170,105,.3);
  border-radius:18px 6px 18px 6px;
  background:var(--teal-900);
  color:var(--teal-100);
}
.question-atlas__thesis svg{width:32px;height:32px;color:var(--gold-300)}
.question-atlas__thesis b{display:block;color:#fff;font:600 1.15rem/1.15 "Fraunces",serif}
.question-atlas__thesis small{display:block;margin-top:.22rem;font-size:.72rem;line-height:1.45;color:var(--teal-300)}
.question-atlas__thesis a{color:var(--gold-300);font-size:.72rem;font-weight:800;text-decoration:none;border-bottom:1px solid var(--gold-500);white-space:nowrap}

/* A compact visual argument placed directly beneath each doctor hero. */
.clinical-lens{padding:1rem 0;background:var(--night);border-block:1px solid rgba(208,170,105,.22);color:#fff}
.clinical-lens__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(208,170,105,.2);border:1px solid rgba(208,170,105,.2);border-radius:24px 7px 24px 7px;overflow:hidden}
.clinical-lens__item{position:relative;min-height:170px;padding:1.25rem 1.2rem 1.2rem 4.7rem;background:linear-gradient(145deg,#123938,var(--teal-950));overflow:hidden}
.clinical-lens__item::before{content:attr(data-mark);position:absolute;left:1rem;top:1.1rem;width:2.8rem;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(239,211,157,.5);color:var(--gold-300);font:italic 600 1.35rem/1 "Fraunces",serif;box-shadow:0 0 0 7px rgba(208,170,105,.05)}
.clinical-lens__item::after{content:"";position:absolute;width:150px;aspect-ratio:1;right:-105px;bottom:-112px;border:1px solid rgba(147,183,183,.14);border-radius:50%}
.clinical-lens__item b{display:block;color:#fff;font:600 1.2rem/1.16 "Fraunces",serif;margin-bottom:.4rem}
.clinical-lens__item span{display:block;color:var(--teal-300);font-size:.73rem;line-height:1.5}

/* Phone care dock: thumb-reachable, safe-area aware, and never duplicated. */
.mobile-dock{display:none}

@media(max-width:959px){
  :root{
    --header-h:60px;
    --shell:min(100% - 2rem,760px);
    --shell-narrow:min(100% - 2rem,760px);
    --r-arc:26px;
  }

  body{font-size:1rem;line-height:1.56;padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
  h1{font-size:clamp(2.22rem,10.4vw,3.5rem);line-height:.99;letter-spacing:-.038em}
  h2{font-size:clamp(1.85rem,8vw,2.65rem);line-height:1.02;letter-spacing:-.032em}
  h3{line-height:1.1}
  .lede{font-size:1rem;line-height:1.55}
  .band{padding:3.45rem 0}
  .arc{height:30px}
  .section-head{margin-bottom:1.65rem}
  .section-head .lede{font-size:.98rem}

  .hdr{
    height:var(--header-h);
    background:rgba(249,238,227,.94);
    backdrop-filter:saturate(135%) blur(14px);
    -webkit-backdrop-filter:saturate(135%) blur(14px);
    border-bottom:1px solid rgba(39,87,87,.11);
    box-shadow:0 8px 28px -24px rgba(20,48,47,.8);
  }
  .hdr.is-stuck{background:rgba(20,48,47,.96)}
  .hdr__in{width:calc(100% - 1.25rem);min-width:0;gap:.55rem}
  .brand{flex:1 1 auto;max-width:calc(100% - 52px);gap:.48rem;overflow:hidden}
  .brand__txt{max-width:100%;overflow:hidden}
  .brand__plaque{width:34px;height:36px;border-radius:9px}
  .brand__plaque img{width:100%;height:100%;object-fit:contain;aspect-ratio:434/456}
  .brand__name{font-size:.94rem;letter-spacing:.135em}
  .brand__sub{font-size:.43rem;letter-spacing:.13em;margin-top:.2rem}
  .hdr__cta{display:none!important}
  .burger{width:40px;height:40px;border-radius:10px;margin-left:0}
  .drawer{padding:calc(var(--header-h) + 1rem) 1.2rem calc(5.7rem + env(safe-area-inset-bottom,0px));justify-content:flex-start}
  .drawer nav{margin-top:.25rem}
  .drawer a{font-size:1.25rem;padding:.5rem 0}
  .drawer a small{font-size:.59rem;margin-top:.12rem}
  .drawer .drawer__cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    min-height:46px;
    margin-top:1rem;
    padding:.72rem 1rem;
    font-family:"Manrope",sans-serif;
    font-size:.82rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.01em;
  }
  .drawer .drawer__cta svg{width:18px;height:18px;flex:none}

  .hero{
    padding:calc(var(--header-h) + 1.7rem) 0 2.8rem;
    background:
      radial-gradient(95% 58% at 102% 0%,rgba(232,205,159,.62),transparent 70%),
      radial-gradient(86% 55% at -10% 100%,rgba(147,183,183,.25),transparent 72%),
      var(--beige);
  }
  .hero__arc{width:520px;right:-360px;top:-170px;opacity:.34}
  .hero__arc--2{display:none}
  /*
   * A one-column CSS grid normally has an automatic minimum track width.
   * Long proof pills were therefore making the "mobile" column 500–660px
   * wide and the phone viewport simply clipped it.  Force a true fluid track.
   */
  .hero__grid,.hero .split{
    grid-template-columns:minmax(0,1fr)!important;
    gap:1.55rem;
    min-width:0;
  }
  .hero__grid>*,.hero .split>*,.hero__copy{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .hero__proof{min-width:0;max-width:calc(100% + 2rem)}
  .hero .btn-row{min-width:0;max-width:100%}
  .hero--home h1{font-size:clamp(2.25rem,10.4vw,3rem);line-height:.98;letter-spacing:-.042em}
  .hero--home h1 .hero-emphasis{white-space:normal}
  .hero--home h1 .accent{font-size:.82em;line-height:1.04}
  .hero__lede{margin-bottom:1.15rem;max-width:39rem}
  .hero__proof{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:max-content;
    gap:.45rem;
    margin:1rem -1rem 0;
    padding:0 1rem .25rem;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .hero__proof::-webkit-scrollbar{display:none}
  .proof-pill{scroll-snap-align:start;font-size:.68rem;padding:.42rem .62rem;white-space:nowrap}
  .hero__meta{margin:1rem 0 1.1rem;gap:.45rem}
  .hero__meta .status:nth-child(n+2){display:none}
  .status{font-size:.72rem;padding:.4rem .68rem}
  .hero .btn-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
  .hero .btn-row .btn{width:100%;min-width:0;min-height:46px;padding:.72rem .78rem;font-size:.78rem}
  .hero .btn-row .btn:first-child{grid-column:1/-1}
  .hero--home .btn-row .btn--ghost{display:none}
  .btn-row{gap:.55rem}
  .btn{min-height:44px;padding:.74rem 1rem;font-size:.82rem}

  /* Home portrait editorial — two people, not two full-screen posters. */
  .portrait-stage{min-height:0;height:258px;margin-top:.25rem;perspective:none;overflow:visible}
  .portrait-stage::before,.portrait-stage::after,.hero-monogram{display:none}
  .portrait-pair{width:100%;height:258px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
  .portrait-card,.portrait-card--praful,.portrait-card--neha{
    position:relative;
    inset:auto;
    width:auto;
    height:258px;
    transform:none!important;
    border-radius:54px 8px 42px 8px;
    box-shadow:0 18px 42px -24px rgba(11,36,35,.58);
  }
  .portrait-card--neha{border-radius:8px 54px 8px 42px}
  .portrait-card__label{left:7px;right:7px;bottom:7px;padding:.55rem .58rem;border-radius:9px;font-size:.59rem;line-height:1.32}
  .portrait-card__label,.portrait-card__label b{min-width:0;overflow-wrap:anywhere}
  .portrait-card__label b{font-size:.82rem;margin-bottom:.08rem}
  .portrait-card--praful img{object-position:50% 22%}
  .portrait-card--neha img{object-position:50% 13%}

  /* Doctor and service heroes are capped before they become a scroll wall. */
  .profile-photo-card{
    width:100%;
    min-width:0;
    min-height:0;
    height:min(91vw,360px);
    border-radius:68px 10px 56px 10px;
    box-shadow:0 20px 46px -30px rgba(11,36,35,.62);
  }
  .profile-photo-card__seal{width:86px;right:.7rem;bottom:.7rem;padding:.62rem;font-size:.49rem;line-height:1.32}
  .profile-photo-card img[alt*="Praful"]{object-position:50% 23%}
  .profile-photo-card img[alt*="Neha"]{object-position:50% 12%}
  .service-hero-photo{min-height:0;height:min(78vw,330px);max-width:none;border-radius:60px 10px 50px 10px}
  .service-hero-photo figcaption{left:.85rem;right:.85rem;bottom:.72rem;font-size:.67rem}

  /* Dense proof becomes visual bento instead of tall repeated cards. */
  #doctors .grid{grid-template-columns:1fr;gap:.8rem}
  .doctor-home-card{
    display:grid!important;
    grid-template-columns:104px minmax(0,1fr);
    align-content:start;
    column-gap:.9rem;
    padding:1rem!important;
    border-radius:24px 7px 24px 7px;
  }
  .doctor-home-card>*{min-width:0;max-width:100%}
  .doctor-home-card p,.doctor-home-card h3,.doctor-home-card .mini-proof span{overflow-wrap:anywhere}
  .doctor-home-card__image{
    grid-column:1;
    grid-row:1/8;
    width:104px;
    max-width:104px;
    height:150px;
    margin:0;
    border-radius:34px 7px 30px 7px;
  }
  .doctor-home-card>.card__icon{display:none}
  .doctor-home-card>.eyebrow,.doctor-home-card>h3,.doctor-home-card>p,.doctor-home-card>.mini-proof,.doctor-home-card>.duo__go{grid-column:2;margin-left:0}
  .doctor-home-card>.eyebrow{font-size:.57rem;letter-spacing:.12em;margin-bottom:.34rem}
  .doctor-home-card>.eyebrow::before{display:none}
  .doctor-home-card>h3{font-size:1.28rem;margin-bottom:.3rem}
  .doctor-home-card>p{font-size:.72rem!important;line-height:1.42;margin-bottom:.45rem!important}
  .doctor-home-card>.mini-proof{gap:.25rem;margin:.2rem 0 .4rem}
  .doctor-home-card>.mini-proof span{font-size:.5rem;padding:.25rem .34rem}
  .doctor-home-card>.duo__go{font-size:.68rem;margin-top:.1rem}

  .service-card{
    display:grid!important;
    grid-template-columns:84px minmax(0,1fr);
    column-gap:.9rem;
    padding:1rem!important;
    border-radius:24px 7px 24px 7px;
  }
  .service-card__image{grid-column:1;grid-row:1/4;width:84px;max-width:84px;height:96px;margin:0;border-radius:20px 5px 20px 5px}
  .service-card>.card__icon{display:none}
  .service-card>h3,.service-card>p,.service-card>.duo__go{grid-column:2}
  .service-card>h3{font-size:1.22rem;margin-bottom:.35rem}
  .service-card>p{font-size:.72rem;line-height:1.45;margin-bottom:.45rem}
  .service-card>.duo__go{font-size:.68rem;margin-top:0}

  .care-story__grid{grid-template-columns:minmax(0,1fr)!important;min-width:0}
  .care-story__grid>*{min-width:0;max-width:100%}
  .care-map{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem;min-width:0;min-height:0}
  .care-map__core{grid-column:1/-1!important;grid-row:auto!important;width:170px!important;margin:0 auto 1.2rem!important;padding:1rem}
  .care-map__core::before{inset:-16px}.care-map__core::after{inset:-32px}
  .care-map__core strong{font-size:1.45rem}.care-map__core small{font-size:.58rem}.care-map__kicker{font-size:.5rem}
  .care-map__node,.care-map__node--oncology,.care-map__node--neurology,.care-map__node--diagnostics,.care-map__node--physician{
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:stretch!important;
    min-height:126px;
    padding:.85rem!important;
    text-align:left!important;
    border-radius:18px 5px 18px 5px;
  }
  .care-map__node b{font-size:1rem}.care-map__node small{font-size:.61rem}.care-map__node>span{font-size:.5rem;margin-bottom:.32rem}
  .care-story__copy h2{font-size:clamp(2.15rem,11vw,3.15rem);line-height:.95}
  .clarity-seal{margin-top:1.3rem;padding:.9rem 1rem .9rem 4.55rem}
  .clarity-seal::before{width:2.9rem;height:2.9rem}
  .journey-diagram{border-radius:24px 7px 24px 7px}
  .care-values{border-radius:20px 6px 20px 6px}

  .credential-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
  .credential-monument,.credential-monument--primary{grid-column:auto!important;min-height:178px!important;padding:1.05rem!important;border-radius:20px 6px 20px 6px}
  .credential-monument--primary{grid-column:1/-1!important;min-height:210px!important}
  .credential-monument b,.credential-monument:not(.credential-monument--primary) b{font-size:2.75rem!important;margin-bottom:.65rem}
  .credential-monument--primary b{font-size:4rem!important}
  .credential-monument h3{font-size:1.05rem}.credential-monument p{font-size:.63rem}

  .rank-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
  .rank-card{min-height:132px;padding:1rem;border-radius:16px 5px 16px 5px}
  .rank-card b{font-size:1.8rem}.rank-card span{font-size:.68rem;line-height:1.4}
  .neuro-spectrum{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem}
  .neuro-spectrum__core{grid-column:1/-1!important;width:178px;margin-bottom:.7rem;padding:1rem}
  .neuro-spectrum__core strong{font-size:1.7rem}.neuro-spectrum__core small{font-size:.53rem}
  .neuro-spectrum__node{min-height:124px;padding:.85rem;border-radius:17px 5px 17px 5px}
  .neuro-spectrum__node b{font-size:.98rem}.neuro-spectrum__node small{font-size:.61rem}

  .question-atlas__grid{grid-template-columns:1fr;gap:.75rem}
  .question-card{min-height:286px;padding:1.2rem;border-radius:24px 7px 24px 7px}
  .question-card:nth-child(2),.question-card:nth-child(3){border-radius:7px 24px 7px 24px}
  .question-card__visual{width:66%;right:-4%;top:-4%}
  .question-card h3{font-size:1.45rem;max-width:18rem}
  .question-card p{font-size:.78rem;max-width:21rem}
  .question-atlas__thesis{grid-template-columns:auto 1fr;padding:.85rem;border-radius:16px 5px 16px 5px}
  .question-atlas__thesis a{grid-column:2;justify-self:start}
  .clinical-lens{padding:.65rem 0}
  .clinical-lens__grid{grid-template-columns:1fr;border-radius:20px 6px 20px 6px}
  .clinical-lens__item{min-height:116px;padding:1rem .95rem 1rem 4.2rem}
  .clinical-lens__item::before{width:2.45rem;font-size:1.15rem}
  .clinical-lens__item b{font-size:1.05rem}.clinical-lens__item span{font-size:.68rem}

  .tiles{gap:.6rem}
  .tile{min-height:104px;padding:.85rem;border-radius:22px 6px 22px 6px}
  .tile--wa{min-height:74px}
  .tile b{font-size:.96rem}.tile small{font-size:.68rem}
  .arrive{min-height:auto;padding:calc(var(--header-h) + 1.2rem) 0 2rem}
  .arrive>.shell{gap:1rem!important}
  .arrive h1{font-size:clamp(1.9rem,8.7vw,2.55rem)!important;line-height:1.02}
  .arrive .lede{font-size:.9rem;line-height:1.48}
  .landing-specialists{gap:.55rem}
  .landing-specialist{padding:.65rem}.landing-specialist img{width:48px;height:56px}.landing-specialist b{font-size:.9rem}.landing-specialist small{font-size:.6rem}

  .facts li{display:grid;grid-template-columns:1fr;gap:.25rem;padding:.72rem 0}
  .facts dt,.facts .k{width:auto;padding:0;font-size:.62rem}
  .facts .v{font-size:.86rem}
  .ftr{padding-top:3rem}
  .ftr__cols{grid-template-columns:1fr;gap:1rem}
  .ftr__base{margin-top:1.7rem}

  .floaties{display:none!important}
  .mobile-dock{
    position:fixed;
    z-index:100;
    left:10px;
    right:10px;
    bottom:calc(8px + env(safe-area-inset-bottom,0px));
    display:grid;
    grid-template-columns:1fr 1.35fr 1fr;
    min-height:60px;
    padding:5px;
    border:1px solid rgba(208,170,105,.34);
    border-radius:20px;
    background:rgba(11,36,35,.95);
    backdrop-filter:saturate(145%) blur(16px);
    -webkit-backdrop-filter:saturate(145%) blur(16px);
    box-shadow:0 18px 42px -18px rgba(0,0,0,.75);
    transition:opacity .32s var(--ease),transform .42s var(--ease-out);
  }
  .mobile-dock--delayed{opacity:0;transform:translateY(calc(100% + 18px));pointer-events:none}
  .mobile-dock--delayed.is-visible{opacity:1;transform:none;pointer-events:auto}
  .drawer-open .mobile-dock{opacity:0!important;transform:translateY(calc(100% + 18px))!important;pointer-events:none!important}
  .mobile-dock a{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    min-width:0;
    border-radius:15px;
    color:var(--teal-100);
    text-decoration:none;
    font-size:.59rem;
    font-weight:800;
    letter-spacing:.04em;
  }
  .mobile-dock a svg{width:20px;height:20px;color:var(--gold-300)}
  .mobile-dock__primary{background:var(--wa)!important;color:#06301A!important}
  .mobile-dock__primary svg{color:#06301A!important}

  /* Keep later-page media useful without turning it into another full viewport. */
  .academic-image{min-height:320px}
  .ihc-gallery{min-height:300px}
  .service-visual{min-height:320px}
  .map,.map iframe,.map__load{min-height:220px}
}

@media(max-width:370px){
  :root{--shell:min(100% - 1.4rem,760px);--shell-narrow:min(100% - 1.4rem,760px)}
  .brand{max-width:165px}.brand__name{font-size:.86rem}.brand__sub{letter-spacing:.09em}
  .portrait-stage,.portrait-pair,.portrait-card,.portrait-card--praful,.portrait-card--neha{height:232px}
  .care-map__node{min-height:118px}
  .care-map__node b{font-size:.92rem}
  .rank-grid{grid-template-columns:1fr}
  .rank-card{min-height:112px}
}
