/* Muswellbrook Doctors — page template styles
   GENERATED by _wp_assets.py from the static build.
   Do not hand-edit: regenerate instead, or the two will drift. */
/* ═══ 01 HERO ═══ */
#hero{height:100svh;min-height:600px;position:relative;background:var(--euc-3);overflow:hidden}
/* ═══ 02d ADHD ASSESSMENT ═══ */
#adhd{background:linear-gradient(165deg,var(--euc) 0%,var(--euc-3) 78%);color:var(--tx-i);
 padding:clamp(52px,5.8vw,88px) 0 clamp(46px,5.2vw,78px);position:relative;overflow:hidden}
#adhd:before{content:"";position:absolute;right:-8%;top:-30%;width:52%;height:160%;pointer-events:none;
 background:radial-gradient(closest-side,rgba(52,185,215,.20),rgba(52,185,215,0) 70%)}
.adw{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(26px,3.4vw,56px);align-items:center}
@media(max-width:940px){.adw{grid-template-columns:1fr;gap:30px}}
#adhd .adh{color:#fff;max-width:15ch}
#adhd .adld{color:#DCE6F5;max-width:52ch;margin-top:16px}
.adfee{margin-top:clamp(20px,2.3vw,30px);border:1px solid rgba(247,196,71,.5);border-radius:14px;
 background:rgba(247,196,71,.10);padding:clamp(15px,1.7vw,20px) clamp(16px,1.8vw,22px)}
.adfl{display:inline-block;padding:6px 13px;border-radius:100px;background:var(--yl);color:#4A3705;
 font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.adfee p{margin-top:11px;font-size:13.6px;line-height:1.6;color:#E7EEF9}
.adcta{margin-top:clamp(20px,2.3vw,28px);display:flex;flex-wrap:wrap;gap:11px}
.add{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:20px;overflow:hidden;
 backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
 transition:transform .55s var(--e),box-shadow .55s var(--e)}
.add:hover{transform:translateY(-5px);box-shadow:0 32px 62px -34px rgba(0,0,0,.75)}
.addp{position:relative;aspect-ratio:4/3.9;overflow:hidden;background:var(--euc-2)}
.addp .fr{position:absolute;inset:0}
.addp img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 1.1s var(--e)}
.add:hover .addp img{transform:scale(1.05)}
.addb{padding:clamp(16px,1.8vw,22px)}
.addb b{display:block;font-size:clamp(16px,1.4vw,18.5px);font-weight:700;color:#fff;line-height:1.25}
.addb span{display:block;margin-top:5px;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--cy-lt)}
.addb p{margin-top:11px;font-size:13px;line-height:1.6;color:#C9D6EA}
.addl{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:10px 17px;border-radius:100px;
 background:var(--yl);color:#4A3705;font-size:11.5px;font-weight:700;transition:gap .4s var(--e),background .35s}
.addl s{text-decoration:none}
.addl:hover{gap:12px;background:var(--yl-lt)}
.adnote{margin-top:clamp(26px,3vw,38px);max-width:74ch;font-size:13.6px;line-height:1.7;color:#B9C8E0;
 padding-left:16px;border-left:2px solid var(--yl)}
#adhd .ntb{color:#8FA2C0;border-color:rgba(255,255,255,.18)}
.stg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px);
 margin-top:clamp(34px,3.8vw,54px);padding-top:clamp(28px,3.2vw,42px);border-top:1px solid var(--ln)}
@media(max-width:760px){.stg{grid-template-columns:1fr;gap:10px}}
.sti{position:relative;display:block;padding:clamp(16px,1.8vw,24px) clamp(16px,1.8vw,24px) clamp(20px,2.2vw,28px);
 border-radius:16px;background:#fff;border:1px solid transparent;opacity:0;
 transition:transform .45s var(--e),box-shadow .45s var(--e),border-color .35s,background .35s}
.stg.go .sti{animation-name:statdrop;animation-duration:1.05s;animation-timing-function:cubic-bezier(.2,.9,.25,1);
 animation-fill-mode:both;animation-delay:calc(var(--i,0) * 150ms)}
@keyframes statdrop{
 0%{opacity:0;transform:translateY(-46px) scale(.92)}
 45%{opacity:1;transform:translateY(11px) scale(1.03)}
 62%{transform:translateY(-7px) scale(.99)}
 78%{transform:translateY(4px) scale(1.008)}
 90%{transform:translateY(-2px)}
 100%{opacity:1;transform:none}
}
.sti:hover{transform:translateY(-5px);background:var(--ivory-2);border-color:rgba(247,196,71,.7);
 box-shadow:0 22px 44px -28px rgba(34,63,122,.5)}
.sti:focus-visible{outline:2px solid var(--cy);outline-offset:2px}
.sti b{display:block;font-family:var(--fd);font-weight:800;letter-spacing:-.03em;line-height:1;
 font-size:clamp(42px,5vw,68px);color:var(--euc);font-variant-numeric:tabular-nums;
 transition:color .4s,transform .5s var(--e)}
.sti:hover b{transform:scale(1.04)}
.sti b i{font-style:normal;font-size:.5em;margin-left:2px;vertical-align:.08em}
.sti:nth-child(1) b i{color:var(--cy-dp)}
.sti:nth-child(2) b{color:var(--cy-dp)}
.sti:nth-child(2) b i{color:var(--yl-dp)}
.sti:nth-child(3) b i{color:var(--yl-dp)}
.sti:hover b{color:var(--cy-dp)}
.sti:nth-child(2):hover b{color:var(--euc)}
.sti span{display:block;margin-top:12px;font-size:13px;line-height:1.5;color:var(--tx-2);max-width:24ch}
.sti>s{position:absolute;left:clamp(16px,1.8vw,24px);bottom:clamp(13px,1.4vw,18px);height:3px;width:34px;
 border-radius:3px;background:var(--yl);text-decoration:none;transform:scaleX(.32);transform-origin:left;
 transition:transform .55s var(--e3)}
.sti:hover>s{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.stg.go .sti{animation-name:none;opacity:1}}
.stym{position:relative;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(0,1fr);
 gap:clamp(8px,.9vw,13px);aspect-ratio:1/1.02}
@media(max-width:960px){.stym{aspect-ratio:1/.82}}
@media(max-width:560px){.stym{aspect-ratio:1/1.1}}
.sm1{grid-column:1/5;grid-row:1/3}
.sm2{grid-column:5/7;grid-row:1/4}
.sm3{grid-column:1/3;grid-row:3/6}
.sm4{grid-column:3/7;grid-row:4/6}
.stcap{position:absolute;left:clamp(-6px,-.4vw,0px);bottom:clamp(-16px,-1.3vw,-10px);z-index:6;
 background:#fff;border:1px solid var(--ln);border-radius:14px;padding:13px 20px;
 box-shadow:0 18px 34px -18px rgba(34,63,122,.5);text-align:left}
/* ── "Connect with us" — icon-led tiles that unfold into cards ───────────
   At rest the icon is the tile. On hover/focus the icon shrinks into the
   top-left corner and the card is masked open from the icon's own footprint
   (clip-path inset starting as a pill where the icon sits), so the card reads
   as unfolding out of the icon rather than fading in beneath it.

   The expanded state has three triggers, all mapped to one selector list:
     .cx:hover / .cx:focus-visible   pointer and keyboard
     .cx.on                          set by JS on touch, and permanently below
                                     900px and under prefers-reduced-motion
   Contrast under the veil is solved numerically in _build_connect.py — the
   veil stops and the halo/pill opacities are not arbitrary. */
.cxg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.5vw,22px);
 margin-top:clamp(28px,3.2vw,44px)}
.cx{position:relative;display:block;overflow:hidden;isolation:isolate;
 min-height:clamp(300px,25vw,356px);border-radius:24px;
 -webkit-tap-highlight-color:transparent;
 box-shadow:0 20px 44px -30px rgba(15,28,60,.55);
 transition:transform .6s var(--e),box-shadow .6s var(--e)}
.cx:focus-visible{outline:3px solid var(--cy);outline-offset:4px}
.cx:hover,.cx:focus-visible{transform:translateY(-8px);box-shadow:0 40px 70px -34px rgba(15,28,60,.62)}
/* the coloured field, gently drifting so the tile reads as live before touch */
.cxbg{position:absolute;inset:0;z-index:0;background-size:230% 230%;background-position:12% 50%;
 animation:cxdrift 17s ease-in-out infinite;transition:background-position 1.2s var(--e)}
@keyframes cxdrift{0%,100%{background-position:10% 46%}50%{background-position:74% 58%}}
/* the veil that buys the text its contrast; only present once the card opens */
.cxvl{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .5s var(--e)}
/* the icon: oversized and centred at rest, a corner badge once open */
.cxic{position:absolute;left:50%;top:44%;z-index:3;width:clamp(112px,10vw,136px);
 height:clamp(112px,10vw,136px);display:grid;place-items:center;transform:translate(-50%,-50%);
 transform-origin:0 0;
 transition:left .62s var(--e),top .62s var(--e),transform .62s var(--e)}
.cxih{position:absolute;left:-42%;top:-42%;width:184%;height:184%;border-radius:50%;
 transition:opacity .5s var(--e)}
.cxig{position:relative;display:grid;place-items:center;width:100%;height:100%;
 animation:cxfloat 7s ease-in-out infinite}
@keyframes cxfloat{0%,100%{transform:translateY(-4px)}50%{transform:translateY(4px)}}
.cxig svg{width:70%;height:70%;overflow:visible;
 filter:drop-shadow(0 8px 20px rgba(8,14,32,.34))}
.cxig svg .gl{fill:#fff}
.cxig svg .gs{fill:none;stroke:#fff;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
/* the resting platform label, on its own pill so small text still clears AA */
.cxpl{position:absolute;left:50%;top:calc(44% + clamp(74px,6.6vw,90px));z-index:3;
 transform:translateX(-50%);padding:6px 15px;border-radius:999px;white-space:nowrap;
 font-size:10.2px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#fff;
 transition:opacity .34s var(--e),transform .5s var(--e)}
/* the card, masked open from where the icon was */
/* The card stays in normal flow — it is masked open, not positioned open.
   That matters twice over: the tile height is content-driven so nothing can
   ever be clipped by overflow:hidden (the Google card is the tallest, with
   five children), and because the content occupies the same space in both
   states there is no layout shift at all when a tile opens. */
.cxc{position:relative;z-index:4;display:block;opacity:0;
 padding:clamp(22px,2.2vw,30px);
 padding-top:calc(clamp(22px,2.2vw,30px) + clamp(112px,10vw,136px) * .4 + 20px);
 clip-path:inset(38% 34% 44% 34% round 999px);
 -webkit-clip-path:inset(38% 34% 44% 34% round 999px);
 transition:clip-path .62s var(--e),-webkit-clip-path .62s var(--e),opacity .3s ease .04s}
.cxc>*{opacity:0;transform:translateY(11px);
 transition:opacity .42s var(--e),transform .48s var(--e)}
.cxc b{display:block;font-family:var(--fd);font-weight:800;text-transform:uppercase;
 letter-spacing:.012em;font-size:clamp(15.5px,1.35vw,19px);line-height:1.16;color:#fff;max-width:17ch}
.cxp{display:block;margin-top:10px;font-size:clamp(12.4px,1vw,13.6px);line-height:1.56;
 color:rgba(255,255,255,.94);max-width:31ch}
.cxa{display:flex;align-items:center;justify-content:space-between;gap:12px;
 margin-top:clamp(16px,1.7vw,22px)}
.cxab{display:inline-block;padding:9px 18px;border-radius:100px;border:1px solid rgba(255,255,255,.46);
 font-size:11.4px;font-weight:700;letter-spacing:.03em;color:#fff;
 transition:background .42s,color .42s,border-color .42s}
.cxa>s{text-decoration:none;font-size:19px;line-height:1;color:#fff;
 transform:translateX(calc(var(--ax,0) * 9px));transition:transform .34s var(--e)}
.cxn{display:block;margin-top:12px;font-size:11px;line-height:1.5;letter-spacing:.005em}
/* ── the open state ─────────────────────────────────────────────────── */
.cx:hover .cxvl,.cx:focus-visible .cxvl,.cx.on .cxvl{opacity:1}
.cx:hover .cxic,.cx:focus-visible .cxic,.cx.on .cxic{
 left:clamp(22px,2.2vw,30px);top:clamp(22px,2.2vw,30px);transform:translate(0,0) scale(.4)}
.cx:hover .cxih,.cx:focus-visible .cxih,.cx.on .cxih{opacity:0}
.cx:hover .cxig,.cx:focus-visible .cxig,.cx.on .cxig{animation:none;transform:none}
.cx:hover .cxpl,.cx:focus-visible .cxpl,.cx.on .cxpl{opacity:0;transform:translateX(-50%) translateY(-8px)}
.cx:hover .cxc,.cx:focus-visible .cxc,.cx.on .cxc{opacity:1;
 clip-path:inset(0 0 0 0 round 24px);-webkit-clip-path:inset(0 0 0 0 round 24px)}
.cx:hover .cxc>*,.cx:focus-visible .cxc>*,.cx.on .cxc>*{opacity:1;transform:none}
/* heading first, copy immediately after, CTA and arrow last */
.cx:hover .cxc b,.cx:focus-visible .cxc b,.cx.on .cxc b{transition-delay:.12s}
.cx:hover .cxc .cxp,.cx:focus-visible .cxc .cxp,.cx.on .cxc .cxp{transition-delay:.2s}
.cx:hover .cxc .cxst,.cx:focus-visible .cxc .cxst,.cx.on .cxc .cxst{transition-delay:.25s}
.cx:hover .cxc .cxa,.cx:focus-visible .cxc .cxa,.cx.on .cxc .cxa{transition-delay:.3s}
.cx:hover .cxc .cxn,.cx:focus-visible .cxc .cxn,.cx.on .cxc .cxn{transition-delay:.36s}
.cx:hover .cxab,.cx:focus-visible .cxab,.cx.on:hover .cxab{background:#fff;border-color:#fff}
/* ── Facebook ───────────────────────────────────────────────────────── */
.cx-fb .cxbg{background:linear-gradient(134deg,#1B6FE0 0%,#1257B8 52%,#0B3F8C 100%)}
.cx-fb .cxvl{background:linear-gradient(180deg,rgba(18,4,42,0) 0%,rgba(18,4,42,.34) 34%,
 rgba(18,4,42,.62) 58%,rgba(18,4,42,.70) 78%,rgba(18,4,42,.76) 100%)}
.cx-fb .cxih{background:radial-gradient(circle,rgba(6,26,64,.46) 0%,rgba(6,26,64,.34) 44%,rgba(6,26,64,0) 71%)}
.cx-fb .cxpl{background:rgba(6,22,56,.60)}
.cx-fb:hover .cxab,.cx-fb:focus-visible .cxab{color:#1257B8}
/* ── Instagram ──────────────────────────────────────────────────────── */
.cx-ig .cxbg{background:linear-gradient(128deg,#FEDA75 0%,#FA7E1E 24%,#D62976 52%,#962FBF 76%,#4F5BD5 100%)}
.cx-ig .cxvl{background:linear-gradient(180deg,rgba(18,4,42,0) 0%,rgba(18,4,42,.36) 34%,
 rgba(18,4,42,.62) 58%,rgba(18,4,42,.70) 78%,rgba(18,4,42,.76) 100%)}
.cx-ig .cxih{background:radial-gradient(circle,rgba(18,4,42,.50) 0%,rgba(18,4,42,.40) 44%,rgba(18,4,42,0) 71%)}
.cx-ig .cxpl{background:rgba(18,4,42,.62)}
.cx-ig:hover .cxab,.cx-ig:focus-visible .cxab{color:#B32A6B}
/* ── Google — light card, so it gets its own text colours ───────────── */
.cx-gg{border:1px solid var(--ln);box-shadow:0 20px 44px -32px rgba(34,63,122,.6)}
.cx-gg .cxbg{background:linear-gradient(140deg,#fff 0%,#F7F9FD 46%,#EEF3FB 100%);animation-duration:21s}
.cx-gg:after{content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:5;
 background:linear-gradient(90deg,#4285F4 0 25%,#EA4335 25% 50%,#FBBC05 50% 75%,#34A853 75% 100%)}
.cx-gg .cxvl{background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.62) 40%,
 rgba(255,255,255,.9) 100%)}
.cx-gg .cxih{background:radial-gradient(circle,rgba(52,185,215,.20) 0%,rgba(52,185,215,.09) 46%,rgba(52,185,215,0) 72%)}
.cx-gg .cxig svg{filter:drop-shadow(0 8px 18px rgba(34,63,122,.20))}
.cx-gg .cxpl{background:rgba(34,63,122,.09);color:var(--euc)}
.cx-gg .cxc b{color:var(--euc)}
.cx-gg .cxp{color:var(--tx-2)}
/* --tx-3 (#8B97AA) measures only 2.65:1 on this card, so the fine print
   gets its own colour rather than the site token */
.cx-gg .cxn{color:#55637A}
.cx-gg .cxab{border-color:var(--ln);color:var(--euc)}
.cx-gg .cxa>s{color:var(--cy-dp)}
.cx-gg:hover .cxab,.cx-gg:focus-visible .cxab{background:var(--euc);border-color:var(--euc);color:#fff}
.cx-gg:hover,.cx-gg:focus-visible{border-color:var(--cy)}
/* the stars are a Google cue, not a rating of this clinic — they are empty
   outlines, carry no number and are hidden from assistive technology */
.cxst{display:flex;gap:5px;margin-top:13px}
.cxst .gstar{width:15px;height:15px;fill:none;stroke:#FBBC05;stroke-width:1.7;
 stroke-linejoin:round;opacity:.9}
.cx-gg:hover .gstar,.cx-gg:focus-visible .gstar,.cx-gg.on .gstar{animation:cxpop .5s var(--e) both;
 animation-delay:calc(.3s + var(--s))}
@keyframes cxpop{0%{transform:scale(.4) rotate(-18deg);opacity:0}
 60%{transform:scale(1.14) rotate(3deg);opacity:1}100%{transform:none;opacity:.9}}
/* ── touch, small screens, reduced motion: the card simply stays open ── */
@media(max-width:900px){
  .cxg{grid-template-columns:1fr}
  .cx{min-height:0}
  .cxc{padding:clamp(20px,5vw,26px);
   padding-top:calc(clamp(20px,5vw,26px) + clamp(112px,10vw,136px) * .46 + 16px)}
  .cx .cxic{left:clamp(20px,5vw,26px);top:clamp(20px,5vw,26px);transform:translate(0,0) scale(.46)}
  .cx .cxih,.cx .cxpl{opacity:0}
  .cx .cxvl{opacity:1}
  .cx .cxig{animation:none;transform:none}
  .cx .cxc{opacity:1;clip-path:inset(0 0 0 0 round 24px);-webkit-clip-path:inset(0 0 0 0 round 24px)}
  .cx .cxc>*{opacity:1;transform:none}
  .cx:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .cxbg,.cxig,.cxst .gstar{animation:none!important}
  .cx,.cxvl,.cxic,.cxc,.cxc>*,.cxa>s,.cxpl,.cxih{transition:none!important}
  .cx:hover,.cx:focus-visible{transform:none}
  .cx .cxic{left:clamp(22px,2.2vw,30px);top:clamp(22px,2.2vw,30px);transform:translate(0,0) scale(.4)}
  .cx .cxih,.cx .cxpl{opacity:0}
  .cx .cxvl{opacity:1}
  .cx .cxc{opacity:1;clip-path:none;-webkit-clip-path:none}
  .cx .cxc>*{opacity:1;transform:none}
}
/* ═══ MEGA MENU ═══ */
.mega{border-radius:0 0 clamp(14px,1.6vw,22px) clamp(14px,1.6vw,22px)}
.megain{max-width:var(--mw);margin:0 auto;padding:clamp(24px,2.6vw,38px) var(--pd) clamp(18px,2vw,26px);
 display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.4vw,42px)}
@media(max-width:1000px){.megain{grid-template-columns:repeat(2,1fr)}}
.mgc h6{font-family:var(--fu);font-size:10.5px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;
 color:var(--tx-3);margin-bottom:14px;padding-bottom:0;border-bottom:0}
.mgc a{position:relative;display:block;padding:6.5px 0 6.5px 17px;font-size:14px;font-weight:500;
 line-height:1.35;color:var(--tx);transition:color .25s,padding-left .25s var(--e)}
.mgc a:before{content:"";position:absolute;left:0;top:13px;width:6px;height:6px;border-radius:50%}
.mgc.c0 a:before{background:var(--yl)}
.mgc.c1 a:before{background:var(--cy)}
.mgc.c2 a:before{background:var(--yl-dp)}
.mgc.c3 a:before{background:var(--cy-dp)}
.mgc a:hover{color:var(--cy-dp);padding-left:21px}
.mgf{max-width:var(--mw);margin:0 auto;padding:clamp(16px,1.8vw,24px) var(--pd) clamp(20px,2.2vw,30px);
 border-top:1px solid var(--ln);display:flex;align-items:center;justify-content:space-between;
 gap:clamp(16px,2vw,32px);flex-wrap:wrap}
.mega .mgb{display:inline-flex;align-items:center;margin-top:0;padding:12px 24px;border-radius:100px;
 background:var(--euc);color:#fff;font-size:13.5px;font-weight:600;letter-spacing:0;text-transform:none;
 transition:background .3s}
.mega .mgb:hover{background:var(--cy-dp);color:#fff;padding-left:24px}
@media(max-width:700px){.mgf{flex-direction:column;align-items:flex-start}}
/* ═══ ABOUT PAGE ═══ */
.bcr{padding:calc(var(--hh,112px) + 22px) 0 0;background:var(--ivory)}
.bcr .wr{display:flex;align-items:center;gap:10px;font-size:11.5px;letter-spacing:.04em;color:var(--tx-3)}
.bcr a{color:var(--cy-dp);font-weight:600}
.bcr a:hover{color:var(--euc)}
.bcr s{text-decoration:none;opacity:.5}
/* hero — photos left, copy right */
#abhero{background:var(--ivory);padding-top:clamp(22px,2.6vw,34px)}
.abh{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(30px,4.4vw,74px);align-items:center}
@media(max-width:960px){.abh{grid-template-columns:1fr;gap:34px}}
.abhr{display:flex;flex-direction:column;gap:clamp(14px,1.6vw,24px)}
.abrow{position:relative}
/* the photo is shown whole — no crop — so the frame follows the image ratio */
.abp{position:relative;border-radius:20px;overflow:hidden;
 box-shadow:0 24px 50px -32px rgba(34,63,122,.6);transition:transform .6s var(--e),box-shadow .6s var(--e)}
.abp:hover{transform:translateY(-5px);box-shadow:0 34px 62px -30px rgba(34,63,122,.62)}
.abp .fr{position:relative;display:block;height:auto;aspect-ratio:auto;background:none}
/* the global frame rule pins images absolute + object-fit:cover — undo both here
   so the whole photograph shows and the frame takes its natural height */
.abp .fr>img{position:static;inset:auto;display:block;width:100%;height:auto;
 object-fit:fill;object-position:center;transition:transform 1.1s var(--e)}
.abp:hover img{transform:scale(1.04)}
.abhl{position:relative}
.abring{position:absolute;right:-4%;top:-16%;width:clamp(180px,22vw,300px);aspect-ratio:1;border-radius:50%;
 border:1px solid rgba(52,185,215,.35);pointer-events:none;z-index:0}
.abhl>*{position:relative;z-index:1}
#abhero h1{max-width:13ch}
.abhl .ld{margin-top:18px;max-width:46ch}
.abcta{margin-top:clamp(24px,2.8vw,34px);display:flex;flex-wrap:wrap;gap:12px}
/* approach — numbered rows */
.tmbar{background:var(--mg);border-top:2px solid var(--my);border-bottom:2px solid var(--my);
 height:var(--mbh);overflow:hidden;display:flex;align-items:center}
#approach{background:var(--ivory-2)}
.aph{max-width:17ch}
.apld{margin-top:16px;max-width:52ch}
.apl{position:relative;margin-top:clamp(28px,3.4vw,46px);padding-left:clamp(16px,2.2vw,34px);
 border-top:1px solid var(--ln)}
.aprail{position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--ln);border-radius:2px;overflow:hidden}
.aprail i{display:block;width:100%;height:0;background:linear-gradient(180deg,var(--yl),var(--yl-dp));
 transition:height .25s linear}
.apr{border-bottom:1px solid var(--ln)}
.aprh{display:grid;width:100%;text-align:left;background:none;border:0;cursor:pointer;
 grid-template-columns:clamp(72px,10vw,140px) minmax(0,1fr) 30px;gap:clamp(12px,2.2vw,36px);
 align-items:start;padding:clamp(24px,3vw,42px) clamp(6px,1vw,16px) clamp(24px,3vw,42px) 0;
 transition:padding-left .5s var(--e3),background .45s var(--e)}
.apr:hover .aprh,.apr.on .aprh{background:rgba(255,255,255,.72);padding-left:clamp(10px,1.4vw,22px)}
.aprh:focus-visible{outline:2px solid var(--cy);outline-offset:-3px}
@media(max-width:660px){.aprh{grid-template-columns:1fr 30px;gap:8px}
 .apn{grid-column:1/3}}
.apn{font-family:var(--fd);font-weight:800;font-size:clamp(38px,5vw,66px);line-height:.9;
 color:rgba(247,196,71,.55);letter-spacing:-.03em;
 transition:color .45s,transform .55s var(--e3)}
.apr:hover .apn,.apr.on .apn{color:var(--yl);transform:translateY(-3px) scale(1.06)}
.apr h3{font-family:var(--fu);font-size:clamp(18px,1.9vw,25px);font-weight:700;color:var(--euc);
 line-height:1.2;transition:color .4s}
.apr:hover h3,.apr.on h3{color:var(--cy-dp)}
.apr p{margin-top:11px;font-size:14.2px;line-height:1.68;color:var(--tx-2);max-width:62ch}
.app{position:relative;width:28px;height:28px;margin-top:6px;border-radius:50%;background:var(--ivory-3);
 text-decoration:none;transition:background .4s,transform .5s var(--e)}
.apr:hover .app{background:rgba(247,196,71,.45)}
.apr.on .app{background:var(--euc)}
.app:before,.app:after{content:"";position:absolute;left:50%;top:50%;background:var(--euc);border-radius:2px;
 transform:translate(-50%,-50%);transition:transform .45s var(--e3),background .4s}
.app:before{width:11px;height:1.8px}
.app:after{width:1.8px;height:11px}
.apr.on .app:before,.apr.on .app:after{background:#fff}
.apr.on .app:after{transform:translate(-50%,-50%) rotate(90deg)}
.aprd{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--e3)}
.apr.on .aprd{grid-template-rows:1fr}
.aprdi{overflow:hidden}
.aprd p{margin:0 0 clamp(22px,2.6vw,34px) clamp(84px,12.2vw,176px);padding:15px 20px;
 border-left:3px solid var(--yl);background:rgba(247,196,71,.1);border-radius:0 12px 12px 0;
 font-size:13.8px;line-height:1.7;color:var(--tx-2);max-width:62ch}
@media(max-width:660px){.aprd p{margin-left:0}}
@media(prefers-reduced-motion:reduce){.aprd{transition:none}.aprail i{transition:none}}
.apcta{margin-top:clamp(24px,2.8vw,38px);padding:clamp(20px,2.4vw,32px);border-radius:18px;background:#fff;
 border:1px solid var(--ln);display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;
 box-shadow:0 20px 44px -32px rgba(34,63,122,.5)}
.apcta b{display:block;font-family:var(--fd);font-weight:700;font-size:clamp(17px,1.7vw,22px);color:var(--euc);letter-spacing:-.01em}
.apcta span{display:block;margin-top:7px;font-size:13.4px;line-height:1.55;color:var(--tx-2);max-width:48ch}
.apcb{display:flex;flex-wrap:wrap;gap:11px}
/* the clinic */
#clinic{background:var(--ivory)}
.clg{display:grid;grid-template-columns:1fr 1.02fr;gap:clamp(24px,3.4vw,58px);align-items:start;margin-top:clamp(22px,2.6vw,34px)}
@media(max-width:940px){.clg{grid-template-columns:1fr}}
.cll h2{max-width:14ch}
.cll .ld{margin-top:16px;max-width:44ch}
.clfh{margin-top:clamp(26px,3vw,40px);font-family:var(--fd);font-size:11px;font-weight:800;
 letter-spacing:.2em;text-transform:uppercase;color:var(--tx-3)}
.clfl{margin-top:14px;list-style:none;border-top:1px solid var(--ln)}
.clfl li{display:flex;gap:13px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--ln);
 font-size:14px;line-height:1.5;color:var(--tx-2)}
.clfl li s{flex:0 0 auto;width:19px;height:19px;margin-top:1px;border-radius:50%;background:rgba(247,196,71,.28);
 text-decoration:none;position:relative}
.clfl li s:after{content:"";position:absolute;left:6.5px;top:4.5px;width:5px;height:9px;
 border:2px solid var(--yl-dp);border-top:0;border-left:0;transform:rotate(42deg)}
.clfn{margin-top:16px;font-size:12.4px;line-height:1.65;color:var(--tx-3);max-width:52ch}
.clm{display:flex;flex-direction:column;gap:clamp(12px,1.4vw,18px)}
.clm .vmap{aspect-ratio:16/12.4;flex:0 0 auto;min-height:0}
.clm .vshot{flex:0 0 auto;aspect-ratio:16/7.4;min-height:0;border-radius:18px}
.clad{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(16px,1.8vw,22px)}
.clad b{display:block;font-size:14.5px;font-weight:700;color:var(--euc);line-height:1.3}
.clad span{display:block;margin-top:7px;font-size:12.8px;line-height:1.6;color:var(--tx-2)}
#team{background:var(--ivory-2)}
.ahp{margin-top:clamp(24px,2.8vw,36px);font-size:12.8px;line-height:1.7;color:var(--tx-2);max-width:76ch;
 padding-left:16px;border-left:2px solid var(--cy)}
.ahp a{color:var(--cy-dp);font-weight:600;border-bottom:1px solid rgba(18,127,160,.4)}
/* FAQ — cards with a left accent rule */
#faq{background:var(--ivory)}
.fqg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px);margin-top:clamp(28px,3.2vw,44px)}
@media(max-width:900px){.fqg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.fqg{grid-template-columns:1fr}}
.fqc{background:#fff;border:1px solid var(--ln);border-left:4px solid var(--yl);border-radius:0 16px 16px 0;
 padding:clamp(18px,2vw,26px);transition:transform .45s var(--e),box-shadow .45s var(--e),border-left-color .4s}
.fqc:hover{transform:translateY(-4px);border-left-color:var(--cy);box-shadow:0 22px 44px -28px rgba(34,63,122,.5)}
.fqc h3{font-family:var(--fd);font-size:clamp(13.5px,1.2vw,15.5px);font-weight:800;letter-spacing:.01em;
 text-transform:uppercase;color:var(--euc);line-height:1.3}
.fqc p{margin-top:11px;font-size:13.6px;line-height:1.68;color:var(--tx-2)}
/* closing band */
/* photo band — keeps this clearly separate from the flat navy footer */
.abend{position:relative;overflow:hidden;background:var(--euc-3);
 padding:clamp(72px,8vw,124px) 0;text-align:center;border-top:3px solid var(--yl)}
.abebg{position:absolute;inset:-6% 0;height:112%;z-index:0}
.abeov{position:absolute;inset:0;z-index:1;background:
 linear-gradient(180deg,rgba(9,20,45,.86) 0%,rgba(10,22,50,.74) 42%,rgba(9,20,45,.92) 100%)}
.abend .wr{position:relative;z-index:3}
.abec{display:flex;flex-direction:column;align-items:center}
.abee{font-size:10.5px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--cy-lt)}
.abend h2{margin-top:18px;color:#fff;max-width:16ch}
.abend h2 .it{color:var(--yl)}
.abes{margin-top:20px;font-size:13.6px;line-height:1.7;color:#C2D1E8;max-width:58ch}
.abeb{margin-top:clamp(24px,2.8vw,34px);display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.bn.abgh{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45);box-shadow:none}
.bn.abgh:hover{background:rgba(255,255,255,.15);border-color:#fff}
.aben{margin-top:clamp(22px,2.4vw,30px);font-size:13px;color:#A8BAD4}
.aben a{color:var(--yl);font-weight:600;border-bottom:1px solid rgba(247,196,71,.5)}
.aben a:hover{color:#fff;border-color:#fff}
.fsl{background:var(--euc-3);color:#C8D6EE;padding:clamp(34px,4vw,56px) 0 clamp(26px,3vw,40px);
 border-top:1px solid rgba(255,255,255,.10)}
.fsl h3{font-family:var(--fu);font-size:9.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
 color:var(--yl);margin:0 0 11px}
/* natural-flow frames: the img now lives inside <picture>, so the
   direct-child rules above no longer match — restate them for picture */
.abp .fr picture,.thpi .fr picture{position:static;inset:auto;display:block}
.abp .fr picture>img,.thpi .fr picture>img{position:static;inset:auto;display:block;
 width:100%;height:auto;object-fit:fill;object-position:center;transition:transform 1.1s var(--e)}
/* ═══ CONTACT ═══ */
.tmbar{background:var(--mg);border-top:2px solid var(--my);border-bottom:2px solid var(--my);
 height:var(--mbh);overflow:hidden;display:flex;align-items:center}
.bcr{padding:calc(var(--hh,112px) + 22px) 0 0;background:var(--ivory)}
#chero{background:linear-gradient(178deg,var(--ivory) 0%,var(--ivory-2) 100%);padding-top:clamp(20px,2.4vw,32px)}
.chh{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(28px,4vw,66px);align-items:center}
@media(max-width:960px){.chh{grid-template-columns:1fr;gap:30px}}
.chl{position:relative}
.chring{position:absolute;left:-6%;top:-14%;width:clamp(170px,20vw,280px);aspect-ratio:1;border-radius:50%;
 border:1px solid rgba(52,185,215,.32);pointer-events:none;z-index:0}
.chl>*{position:relative;z-index:1}
#chero h1{max-width:13ch}
.chl .ld{margin-top:18px;max-width:46ch}
.chf{background:linear-gradient(158deg,var(--euc) 0%,var(--euc-3) 100%);color:var(--tx-i);border-radius:22px;
 padding:clamp(24px,2.8vw,38px);box-shadow:0 30px 64px -38px rgba(34,63,122,.72)}
.chf>b{display:block;font-family:var(--fd);font-weight:800;font-size:clamp(17px,1.7vw,22px);color:#fff;letter-spacing:-.01em}
.chf>p{margin-top:10px;font-size:13.2px;line-height:1.6;color:#B9C8E0;max-width:40ch}
.chfl{margin-top:clamp(18px,2vw,26px);list-style:none}
.chfl li{border-top:1px solid rgba(255,255,255,.15)}
.chfl a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;
 transition:padding-left .45s var(--e3)}
.chfl a:hover{padding-left:8px}
.chfl span{font-size:14px;font-weight:600;color:#fff}
.chfl i{font-style:normal;font-size:12.6px;font-weight:700;color:var(--yl);text-align:right}
.chfl a:hover i{color:var(--cy-lt)}
#about-enquiry{background:var(--ivory)}
.chh2{max-width:26ch}
.chtc{display:flex;flex-wrap:wrap;gap:9px;margin-top:clamp(24px,2.8vw,38px)}
.chtc button{padding:12px 20px;border-radius:100px;border:1px solid var(--ln);background:#fff;cursor:pointer;
 font-size:12.8px;font-weight:600;color:var(--tx-2);
 transition:background .35s,color .35s,border-color .35s,transform .35s var(--e)}
.chtc button:hover{transform:translateY(-2px);border-color:var(--yl);background:rgba(247,196,71,.14)}
.chtc button.on{background:var(--euc);border-color:var(--euc);color:#fff;box-shadow:inset 0 -3px 0 var(--yl)}
.chtc button:focus-visible{outline:2px solid var(--cy);outline-offset:2px}
.chtp{display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(18px,2.4vw,40px);align-items:start;
 margin-top:clamp(20px,2.4vw,32px);background:#fff;border:1px solid var(--ln);border-radius:20px;
 padding:clamp(22px,2.6vw,38px);box-shadow:0 26px 54px -34px rgba(34,63,122,.5)}
@media(max-width:820px){.chtp{grid-template-columns:1fr;gap:20px}}
.chtpl b{display:block;font-family:var(--fd);font-weight:800;font-size:clamp(18px,1.8vw,24px);color:var(--euc);letter-spacing:-.012em}
.chtpl p{margin-top:12px;font-size:14.2px;line-height:1.72;color:var(--tx-2);max-width:56ch}
.chtpb{margin-top:clamp(20px,2.2vw,28px);display:flex;flex-wrap:wrap;gap:11px}
.chtpg{background:var(--ivory-2);border:1px solid var(--ln);border-radius:16px;padding:clamp(18px,2vw,24px)}
.chtpg span{display:block;font-size:9.6px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--yl-dp)}
.chtpg p{margin-top:11px;font-size:13.2px;line-height:1.68;color:var(--tx-2)}
#visit{background:var(--ivory-2)}
.chv{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(18px,2.4vw,36px);align-items:start;
 margin-top:clamp(24px,2.8vw,40px)}
@media(max-width:940px){.chv{grid-template-columns:1fr}}
.chvl{display:flex;flex-direction:column;gap:clamp(12px,1.4vw,18px)}
.chvl .vmap{aspect-ratio:16/10.6;flex:0 0 auto;min-height:0}
.chad{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
 background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(16px,1.8vw,22px)}
.chad b{display:block;font-size:14.5px;font-weight:700;color:var(--euc)}
.chad span{display:block;margin-top:6px;font-size:12.6px;color:var(--tx-2)}
.chsh{position:relative;display:block;overflow:hidden;border-radius:18px;aspect-ratio:16/7.4;
 box-shadow:0 22px 50px -34px rgba(34,63,122,.6)}
.chsh .fr{position:absolute;inset:0}
.chsh img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--e)}
.chsh:hover img{transform:scale(1.055)}
.chsh:before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;
 background:linear-gradient(180deg,rgba(18,33,69,.05) 0%,rgba(18,33,69,.04) 46%,rgba(18,33,69,.82) 100%)}
.chvr{background:linear-gradient(158deg,var(--euc) 0%,var(--euc-3) 100%);color:var(--tx-i);border-radius:22px;
 padding:clamp(22px,2.6vw,34px);box-shadow:0 30px 64px -38px rgba(34,63,122,.72)}
.chvre{display:block;font-size:9.8px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--yl)}
.chvr #hrs{margin-top:16px}
.chvn{margin-top:16px;font-size:12.4px;line-height:1.6;color:#A8BAD4}
.chvl2{margin-top:16px;list-style:none;padding-top:16px;border-top:1px solid rgba(255,255,255,.14)}
.chvl2 li{position:relative;padding:8px 0 8px 20px;font-size:13.2px;line-height:1.55;color:#DCE6F5}
.chvl2 li:before{content:"";position:absolute;left:0;top:15px;width:7px;height:7px;border-radius:50%;background:var(--yl)}
#wider{background:var(--ivory)}
.ahp{margin-top:clamp(24px,2.8vw,36px);font-size:12.8px;line-height:1.7;color:var(--tx-2);max-width:76ch;padding-left:16px;border-left:2px solid var(--cy)}
#careers{background:var(--ivory-2)}
.tcw{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(20px,2.6vw,42px);align-items:stretch}
@media(max-width:900px){.tcw{grid-template-columns:1fr}}
.tcl{background:linear-gradient(158deg,var(--euc) 0%,var(--euc-3) 100%);color:var(--tx-i);border-radius:22px;padding:clamp(26px,3vw,44px);box-shadow:0 30px 64px -38px rgba(34,63,122,.7);display:flex;flex-direction:column;justify-content:center}
#careers .tch{color:#fff;max-width:16ch;margin-top:16px}
.tcl p{margin-top:16px;font-size:14px;line-height:1.7;color:#DCE6F5;max-width:48ch}
.tcb{margin-top:clamp(22px,2.6vw,32px);display:flex;flex-wrap:wrap;gap:11px}
.tcp{position:relative;border-radius:22px;overflow:hidden;min-height:clamp(240px,26vw,380px)}
.tcp .fr{position:absolute;inset:0}
.tcp img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e)}
.tcp:hover img{transform:scale(1.05)}
.abend{position:relative;overflow:hidden;background:var(--euc-3);padding:clamp(72px,8vw,124px) 0;text-align:center;border-top:3px solid var(--yl)}
.abeov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(9,20,45,.86) 0%,rgba(10,22,50,.74) 42%,rgba(9,20,45,.92) 100%)}
.apcta{margin-top:clamp(24px,2.8vw,38px);padding:clamp(20px,2.4vw,32px);border-radius:18px;background:#fff;border:1px solid var(--ln);display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;box-shadow:0 20px 44px -32px rgba(34,63,122,.5)}
.tmbar{background:var(--mg);border-top:2px solid var(--my);border-bottom:2px solid var(--my);
 height:var(--mbh);overflow:hidden;display:flex;align-items:center}
/* ═══ HEALTH JOURNAL PAGE ═══ */
#jhero{background:linear-gradient(178deg,var(--ivory) 0%,var(--ivory-2) 62%,#EEF4FA 100%);
 padding:calc(var(--hh,112px) + clamp(30px,3.6vw,54px)) 0 clamp(30px,3.6vw,54px)}
.jhg{display:grid;grid-template-columns:1.32fr .68fr;gap:clamp(24px,3.2vw,58px);align-items:start}
@media(max-width:940px){.jhg{grid-template-columns:1fr}}
.jhbc{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
 color:var(--tx-3);margin-bottom:clamp(16px,1.8vw,24px)}
.jhbc a{color:var(--cy-dp);font-weight:700}
.jhbc s{text-decoration:none;opacity:.5}
#jhero h1{max-width:15ch;color:var(--euc)}
#jhero h1 .it{color:var(--cy-dp)}
#jhero .ld{margin-top:18px;max-width:52ch}
.jsl{margin-top:clamp(24px,2.6vw,34px);display:block;font-size:10.4px;font-weight:800;
 letter-spacing:.17em;text-transform:uppercase;color:var(--yl-dp)}
.jsearch{position:relative;margin-top:12px;max-width:420px}
.jsearch s{position:absolute;left:16px;top:50%;translate:0 -50%;color:var(--tx-3);font-size:15px;
 text-decoration:none;pointer-events:none}
.jsearch input{width:100%;padding:14px 42px;border-radius:100px;border:1px solid var(--ln);background:#fff;
 font-family:var(--fu);font-size:13.5px;color:var(--tx);outline:none;transition:border-color .35s,box-shadow .35s}
.jsearch input::placeholder{color:var(--tx-3)}
.jsearch input:focus{border-color:var(--yl);box-shadow:0 0 0 4px rgba(247,196,71,.28)}
.jsearch button{position:absolute;right:10px;top:50%;translate:0 -50%;width:26px;height:26px;border-radius:50%;
 color:var(--tx-3);font-size:17px;line-height:1;opacity:0;pointer-events:none;transition:opacity .3s}
.jsearch.has button{opacity:1;pointer-events:auto}
.jsearch button:hover{background:var(--ln);color:var(--euc)}
.jstart{background:#fff;border:1px solid var(--ln);border-radius:18px;padding:clamp(18px,1.9vw,24px);
 box-shadow:0 22px 44px -34px rgba(34,63,122,.5)}
.jstart>b{display:block;font-family:var(--fu);font-size:15.4px;font-weight:700;color:var(--euc);margin-bottom:6px}
.jstart a{display:flex;align-items:center;justify-content:space-between;gap:14px;
 padding:13px 0;border-bottom:1px solid var(--ln);font-size:13.6px;line-height:1.4;color:var(--euc);
 font-weight:600;transition:color .3s}
.jstart a:last-child{border-bottom:0;padding-bottom:2px}
.jstart a:hover{color:var(--cy-dp)}
.jstart a i{flex-shrink:0;font-style:normal;padding:4px 10px;border-radius:100px;background:var(--ivory-2);
 border:1px solid var(--ln);font-size:10.4px;font-weight:700;color:var(--tx-3)}
.jbb{margin-top:14px;background:#fff;border:1px solid var(--ln);border-radius:18px;
 padding:clamp(15px,1.5vw,19px);display:flex;align-items:center;gap:14px}
.jbb img{width:66px;height:auto;flex-shrink:0}
.jbb span{font-size:12.6px;line-height:1.55;color:var(--tx-2)}
#jbrowse{background:var(--ivory)}
.jchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(20px,2.2vw,30px)}
.jchips button{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;border-radius:100px;
 border:1px solid var(--ln);background:#fff;font-size:12.2px;font-weight:600;color:var(--tx-2);
 transition:background .35s,color .35s,border-color .35s,transform .35s var(--e)}
.jchips button i{font-style:normal;min-width:20px;padding:2px 6px;border-radius:100px;
 background:var(--ivory-2);border:1px solid var(--ln);font-size:10.2px;font-weight:700;color:var(--tx-3);text-align:center}
.jchips button:hover{transform:translateY(-2px);border-color:var(--yl);background:rgba(247,196,71,.12)}
.jchips button.on{background:var(--euc);border-color:var(--euc);color:#fff}
.jchips button.on i{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);color:#fff}
.jshow{margin-top:18px;font-size:13.4px;color:var(--tx-2)}
.jshow b{color:var(--euc);font-weight:700}
.jfeat{margin-top:clamp(18px,2vw,26px);display:grid;grid-template-columns:auto 1fr;gap:clamp(18px,2vw,30px);
 align-items:start;background:#fff;border:1px solid var(--ln);border-radius:20px;
 padding:clamp(20px,2.2vw,30px);transition:transform .45s var(--e),box-shadow .45s var(--e),border-color .35s}
.jfeat:hover{transform:translateY(-4px);border-color:rgba(52,185,215,.55);box-shadow:0 26px 52px -32px rgba(34,63,122,.5)}
@media(max-width:700px){.jfeat{grid-template-columns:1fr}}
.jfic{width:clamp(86px,9vw,116px);aspect-ratio:1/1;border-radius:14px;display:grid;place-items:center}
.jfic svg{width:46%;height:46%;fill:none;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.jfm{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:10.6px;font-weight:700;
 letter-spacing:.13em;text-transform:uppercase;color:var(--tx-3)}
.jfp{padding:5px 12px;border-radius:100px;background:var(--yl);color:#4A3705;letter-spacing:.13em}
.jfeat h3{margin-top:13px;font-family:var(--fu);font-weight:700;letter-spacing:-.018em;
 font-size:clamp(20px,2.05vw,29px);line-height:1.18;color:var(--euc);max-width:22ch}
.jfeat p{margin-top:11px;font-size:14.6px;line-height:1.62;color:var(--tx-2);max-width:62ch}
.jfr{margin-top:16px;display:inline-flex;align-items:center;gap:9px;font-size:12.6px;font-weight:700;
 transition:gap .4s var(--e)}
.jfeat:hover .jfr{gap:14px}
.jgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,24px);margin-top:clamp(16px,1.8vw,24px)}
@media(max-width:940px){.jgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.jgrid{grid-template-columns:1fr}}
.jc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--ln);border-radius:18px;
 overflow:hidden;transition:transform .5s var(--e),box-shadow .5s var(--e),border-color .4s}
.jc:hover{transform:translateY(-6px);border-color:rgba(52,185,215,.55);box-shadow:0 28px 56px -32px rgba(34,63,122,.5)}
.jc.hide{display:none}
.jci{aspect-ratio:16/8.6;display:grid;place-items:center}
.jci svg{width:clamp(52px,5.4vw,72px);height:clamp(52px,5.4vw,72px);fill:none;stroke-width:1.15;
 stroke-linecap:round;stroke-linejoin:round;transition:transform .6s var(--e)}
.jc:hover .jci svg{transform:scale(1.07)}
.jcb{flex:1;display:flex;flex-direction:column;padding:clamp(16px,1.7vw,22px)}
.jcm{display:flex;align-items:center;gap:8px;font-size:10.2px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.jcm s{text-decoration:none;color:var(--ln-2,#C9D2E0)}
.jcm em{font-style:normal;color:var(--tx-3);font-weight:600;letter-spacing:.09em}
.jcb h4{margin-top:11px;font-family:var(--fu);font-size:clamp(15.6px,1.4vw,18.4px);font-weight:700;
 line-height:1.25;letter-spacing:-.012em;color:var(--euc)}
.jcx{margin-top:10px;font-size:13.4px;line-height:1.6;color:var(--tx-2)}
.jcr{margin-top:auto;padding-top:clamp(14px,1.5vw,19px);display:inline-flex;align-items:center;gap:8px;
 font-size:12.2px;font-weight:700;transition:gap .4s var(--e)}
.jc:hover .jcr{gap:13px}
.jnone{display:none;margin-top:24px;font-size:14.5px;color:var(--tx-2)}
.jnone a{color:var(--cy-dp);font-weight:600}
.jnone.on{display:block}
.jpan{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,24px);margin-top:clamp(30px,3.4vw,48px)}
@media(max-width:820px){.jpan{grid-template-columns:1fr}}
.jp{background:#fff;border:1px solid var(--ln);border-radius:20px;padding:clamp(20px,2.1vw,28px)}
.jp>b{display:block;font-family:var(--fu);font-size:15.4px;font-weight:700;color:var(--euc);margin-bottom:6px}
.jp button,.jp .jprow{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;
 padding:13px 0;border-bottom:1px solid var(--ln);font-size:13.8px;color:var(--euc);text-align:left;
 transition:color .3s}
.jp button:last-of-type,.jp .jprow:last-of-type{border-bottom:0}
.jp button:hover{color:var(--cy-dp)}
.jp button i{font-style:normal;min-width:22px;padding:3px 8px;border-radius:100px;background:var(--ivory-2);
 border:1px solid var(--ln);font-size:10.4px;font-weight:700;color:var(--tx-3);text-align:center}
.jp .jprow b{font-weight:700}
.jp .jprow span{color:var(--tx-2)}
.jpn{margin-top:16px;font-size:12.8px;line-height:1.65;color:var(--tx-2)}
.jpn a{color:var(--cy-dp);font-weight:600;border-bottom:1px solid rgba(52,185,215,.4)}
#jtopics{background:var(--ivory-2)}
.jtg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px);margin-top:clamp(24px,2.8vw,38px)}
@media(max-width:860px){.jtg{grid-template-columns:1fr}}
.jt{background:#fff;border:1px solid var(--ln);border-radius:18px;padding:clamp(18px,1.9vw,26px);
 display:flex;flex-direction:column;transition:transform .45s var(--e),border-color .35s,box-shadow .45s var(--e)}
.jt:hover{transform:translateY(-5px);border-color:rgba(247,196,71,.75);box-shadow:0 24px 46px -30px rgba(34,63,122,.5)}
.jt svg{width:30px;height:30px;fill:none;stroke:var(--cy-dp);stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.jt b{display:block;margin-top:14px;font-family:var(--fu);font-size:16.4px;font-weight:700;color:var(--euc)}
.jt span{display:block;margin-top:9px;font-size:13.4px;line-height:1.6;color:var(--tx-2)}
.jt u{margin-top:auto;padding-top:16px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;
 font-size:10.4px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--yl-dp)}
.jt u s{text-decoration:none;transition:transform .4s var(--e)}
.jt:hover u s{transform:translateX(3px)}
/* article card tints */
.tk0{background:linear-gradient(150deg,#E6F6F1,#D2EEE6)}
.tk0 svg{stroke:#3E8F79}
.tk1{background:linear-gradient(150deg,#E3F3F9,#CDE9F4)}
.tk1 svg{stroke:#2A7E9B}
.tk2{background:linear-gradient(150deg,#FDF3DC,#FAE7BC)}
.tk2 svg{stroke:#9A7413}
.tk3{background:linear-gradient(150deg,#FBEBF1,#F6D8E4)}
.tk3 svg{stroke:#A85074}
.tk4{background:linear-gradient(150deg,#E7EDF9,#D3DFF3)}
.tk4 svg{stroke:#3B5C9E}
.tk5{background:linear-gradient(150deg,#EFEBF8,#DFD8F1)}
.tk5 svg{stroke:#6355A0}
.ct0{color:#3E8F79}
.ct1{color:#2A7E9B}
.ct2{color:#9A7413}
.ct3{color:#A85074}
.ct4{color:#3B5C9E}
.ct5{color:#6355A0}
/* ═══ SERVICES PAGE ═══ */
#sintro{background:var(--ivory)}
.sctr{max-width:74ch;margin:0 auto;text-align:center}
.sctr .st{justify-content:center}
.sctr h2{margin:0 auto}
.sctr .ld{margin:18px auto 0;max-width:62ch}
.scats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(30px,3.4vw,46px)}
@media(max-width:860px){.scats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.scats{grid-template-columns:1fr}}
.scat{position:relative;text-align:left;background:#fff;border:1px solid var(--ln);border-radius:16px;
 padding:clamp(16px,1.7vw,22px);cursor:pointer;overflow:hidden;
 transition:transform .45s var(--e),box-shadow .45s var(--e),border-color .35s}
.scat:after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--yl-dp),var(--yl) 45%,var(--yl-lt));
 transform:scaleX(0);transform-origin:left;transition:transform .6s var(--e3)}
.scat:hover,.scat:focus-visible{transform:translateY(-4px);border-color:rgba(247,196,71,.75);box-shadow:0 20px 40px -26px rgba(34,63,122,.5)}
.scat:hover:after,.scat:focus-visible:after{transform:scaleX(1)}
.scat b{display:block;font-family:var(--fu);font-size:clamp(15px,1.25vw,17.4px);font-weight:700;line-height:1.25;color:var(--euc)}
.scat i{display:block;margin-top:8px;font-style:normal;font-size:13.2px;line-height:1.55;color:var(--tx-2)}
.scat u{display:inline-flex;align-items:center;gap:7px;margin-top:13px;text-decoration:none;
 font-size:10.4px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--yl-dp)}
.scat u s{text-decoration:none;transition:transform .4s var(--e)}
.scat:hover u s{transform:translateX(3px)}
#browse{background:var(--ivory-2)}
#onsite{background:var(--ivory)}
.sosg{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,2.6vw,44px);align-items:center;margin-top:clamp(24px,2.8vw,38px)}
@media(max-width:900px){.sosg{grid-template-columns:1fr}}
.sosl{display:grid;gap:clamp(10px,1.1vw,14px)}
.sos{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(15px,1.5vw,20px);
 transition:transform .45s var(--e),border-color .35s,box-shadow .45s var(--e)}
.sos:hover{transform:translateY(-3px);border-color:rgba(247,196,71,.7);box-shadow:0 18px 36px -26px rgba(34,63,122,.45)}
.sos b{display:block;font-size:9.6px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--yl-dp)}
.sos p{margin-top:8px;font-family:var(--fu);font-size:14.6px;font-weight:700;line-height:1.3;color:var(--euc)}
.sos small{display:block;margin-top:7px;font-size:12.6px;line-height:1.6;font-weight:400;color:var(--tx-2)}
.sosv{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:1.5/1;min-height:260px}
.sosv .fr{position:absolute;inset:0}
.sosc{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:clamp(16px,1.8vw,24px);
 background:linear-gradient(180deg,rgba(18,33,69,0) 0%,rgba(18,33,69,.86) 100%);color:#fff}
.sosc b{display:block;font-family:var(--fu);font-size:15.4px;font-weight:700}
.sosc span{display:block;margin-top:5px;font-size:12.6px;color:rgba(255,255,255,.8)}
/* ═══ PATIENT INFO & FEES ═══ */
#pihero,#shero,#jhero{position:relative;overflow:hidden;background:var(--euc-3);min-height:clamp(560px,78vh,760px);
 display:flex;align-items:center;padding:calc(var(--hh,112px) + clamp(40px,5vw,74px)) 0 clamp(40px,5vw,74px)}
.pibg{position:absolute;inset:-5% 0;height:110%;z-index:0}
.piov{position:absolute;inset:0;z-index:1;background:
 linear-gradient(100deg,rgba(9,20,45,.90) 0%,rgba(9,20,45,.80) 42%,rgba(11,24,52,.52) 70%,rgba(11,24,52,.30) 100%),
 linear-gradient(180deg,rgba(14,28,60,.55) 0%,rgba(14,28,60,.20) 34%,rgba(14,28,60,.70) 100%)}
.pihc{position:relative;z-index:3}
.pibc{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
 color:rgba(255,255,255,.62);margin-bottom:clamp(18px,2vw,26px)}
.pibc a{color:var(--yl);font-weight:700}
.pibc s{text-decoration:none;opacity:.5}
#pihero h1,#shero h1,#jhero h1{color:#fff;max-width:17ch;text-shadow:0 2px 22px rgba(7,16,38,.5)}
#pihero h1 .it,#shero h1 .it,#jhero h1 .it{color:var(--yl)}
#pihero .ld,#shero .ld,#jhero .ld{margin-top:20px;max-width:52ch;color:#DDE6F5;text-shadow:0 1px 14px rgba(7,16,38,.5)}
.pihb{margin-top:clamp(24px,2.8vw,34px);display:flex;flex-wrap:wrap;gap:12px}
.pihn{margin-top:clamp(22px,2.4vw,30px);font-size:12.4px;color:rgba(255,255,255,.72)}
#onpage{background:var(--ivory)}
.pih2{max-width:16ch}
#onpage .pil{margin-top:16px;max-width:54ch}
.pinav{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(26px,3vw,40px)}
@media(max-width:820px){.pinav{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.pinav{grid-template-columns:1fr}}
.pinl{display:flex;align-items:center;gap:13px;padding:clamp(14px,1.6vw,19px) clamp(15px,1.7vw,20px);
 background:#fff;border:1px solid var(--ln);border-radius:14px;font-size:13.6px;font-weight:600;color:var(--euc);
 transition:transform .45s var(--e),box-shadow .45s var(--e),border-color .35s,background .35s}
.pinl span{font-family:var(--fd);font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--yl-dp)}
.pinl s{margin-left:auto;text-decoration:none;color:var(--cy-dp);opacity:0;transform:translateX(-4px);
 transition:opacity .35s,transform .45s var(--e)}
.pinl:hover{transform:translateY(-4px);border-color:rgba(247,196,71,.8);background:var(--ivory-2);
 box-shadow:0 20px 40px -28px rgba(34,63,122,.5)}
.pinl:hover s{opacity:1;transform:none}
.pirow{display:grid;grid-template-columns:clamp(130px,16vw,220px) minmax(0,1fr);gap:clamp(16px,2.6vw,44px);align-items:start}
@media(max-width:820px){.pirow{grid-template-columns:1fr;gap:16px}}
.pilab{display:flex;flex-direction:column;gap:14px}
.piic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(52,185,215,.14)}
.piic svg{width:19px;height:19px;fill:none;stroke:var(--cy-dp);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pibody h2{color:var(--euc)}
.pibody>p{margin-top:16px;font-size:14.6px;line-height:1.75;color:var(--tx-2);max-width:62ch}
.pibody>p b{color:var(--euc)}
.picard{margin-top:clamp(20px,2.4vw,30px);background:#fff;border:1px solid var(--ln);border-left:4px solid var(--cy);
 border-radius:0 16px 16px 0;padding:clamp(18px,2vw,26px);box-shadow:0 20px 42px -32px rgba(34,63,122,.5)}
.picard>b{display:block;font-size:14.5px;font-weight:700;color:var(--euc)}
.pilist{margin-top:14px;list-style:none}
.pilist li{position:relative;padding:8px 0 8px 24px;font-size:13.8px;line-height:1.6;color:var(--tx-2)}
.pilist li:before{content:"";position:absolute;left:2px;top:15px;width:7px;height:7px;border-radius:2px;
 background:var(--yl);transform:rotate(45deg)}
.pilist li b{color:var(--euc)}
.pilist2 li{padding-left:22px}
.pitip{margin-top:clamp(16px,1.8vw,22px);padding:15px 20px;border-radius:12px;background:rgba(52,185,215,.12);
 font-size:13.4px;line-height:1.65;color:var(--tx-2);max-width:60ch}
.pinote{margin-top:clamp(16px,1.8vw,22px);font-size:13.4px;line-height:1.7;color:var(--tx-2);max-width:60ch}
.pinote a{color:var(--cy-dp);font-weight:600;border-bottom:1px solid rgba(18,127,160,.4)}
.pibk{margin-top:clamp(20px,2.4vw,30px);padding:clamp(18px,2.2vw,28px);border-radius:16px;
 background:linear-gradient(120deg,rgba(52,185,215,.13),rgba(247,196,71,.16));border:1px solid var(--ln);
 display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.pibk b{display:block;font-family:var(--fd);font-weight:700;font-size:clamp(15.5px,1.5vw,19px);color:var(--euc)}
.pibk span{display:block;margin-top:6px;font-size:13.2px;line-height:1.55;color:var(--tx-2);max-width:44ch}
.pibkb{display:flex;flex-wrap:wrap;gap:10px}
#cost{background:var(--ivory-2)}
.picost{margin-top:clamp(26px,3vw,40px);background:#fff;border:1px solid var(--ln);border-radius:20px;
 padding:clamp(18px,2.2vw,30px);box-shadow:0 26px 54px -34px rgba(34,63,122,.5)}
.picc{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
@media(max-width:860px){.picc{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.picc{grid-template-columns:1fr}}
.picc button{padding:13px 16px;border-radius:12px;border:1px solid var(--ln);background:var(--ivory-2);
 text-align:left;cursor:pointer;font-size:12.8px;font-weight:600;color:var(--tx-2);
 transition:background .35s,color .35s,border-color .35s,transform .35s var(--e)}
.picc button:hover{transform:translateY(-2px);border-color:var(--yl);background:rgba(247,196,71,.14)}
.picc button.on{background:var(--euc);border-color:var(--euc);color:#fff;box-shadow:inset 0 -3px 0 var(--yl)}
.picc button:focus-visible{outline:2px solid var(--cy);outline-offset:2px}
.picp{margin-top:clamp(16px,1.8vw,22px);border-left:4px solid var(--yl);border-radius:0 14px 14px 0;
 background:rgba(247,196,71,.10);padding:clamp(18px,2vw,26px)}
.picpg{display:inline-block;padding:5px 12px;border-radius:100px;background:#fff;border:1px solid var(--ln);
 font-size:9.6px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--yl-dp)}
.picp b{display:block;margin-top:12px;font-family:var(--fu);font-size:clamp(15.5px,1.5vw,18.5px);
 font-weight:700;color:var(--euc);line-height:1.25}
.picp p{margin-top:11px;font-size:13.8px;line-height:1.7;color:var(--tx-2);max-width:66ch}
.picb{margin-top:clamp(18px,2vw,26px);display:flex;flex-wrap:wrap;gap:11px}
#fees{background:var(--ivory)}
.pimc{display:flex;gap:clamp(14px,1.6vw,20px);align-items:center;background:#fff;border:1px solid var(--ln);
 border-radius:16px;padding:clamp(16px,1.8vw,22px);box-shadow:0 20px 44px -32px rgba(34,63,122,.5);
 margin-bottom:clamp(22px,2.6vw,32px);max-width:640px}
.pimci{flex:0 0 auto;display:flex;padding:7px;border-radius:12px;background:var(--yl-lt)}
.pimci img{display:block;height:62px;width:auto;border-radius:6px;background:#fff;padding:7px 9px}
.pimce{display:block;font-size:9.4px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--tx-3)}
.pimc b{display:block;margin-top:5px;font-size:14.5px;font-weight:700;color:var(--euc)}
.pimc p{margin-top:7px;font-size:12.6px;line-height:1.6;color:var(--tx-2)}
#info{background:var(--ivory-2)}
.piacc{margin-top:clamp(26px,3vw,42px);border-top:1px solid var(--ln)}
.piai{border-bottom:1px solid var(--ln)}
.piah{display:flex;width:100%;align-items:center;gap:16px;justify-content:space-between;text-align:left;
 padding:clamp(16px,1.8vw,22px) clamp(4px,1vw,14px);background:none;border:0;cursor:pointer;
 transition:background .4s,padding-left .5s var(--e3)}
.piai:hover .piah,.piai.on .piah{background:rgba(255,255,255,.7);padding-left:clamp(10px,1.4vw,20px)}
.piah:focus-visible{outline:2px solid var(--cy);outline-offset:-3px}
.piat i{display:block;font-style:normal;font-size:9.4px;font-weight:800;letter-spacing:.17em;
 text-transform:uppercase;color:var(--cy-dp)}
.piat b{display:block;margin-top:6px;font-family:var(--fu);font-size:clamp(15.5px,1.5vw,19px);
 font-weight:700;color:var(--euc);line-height:1.28}
.piap{position:relative;flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--ivory-3);
 text-decoration:none;transition:background .4s}
.piai:hover .piap{background:rgba(247,196,71,.45)}
.piai.on .piap{background:var(--euc)}
.piap:before,.piap:after{content:"";position:absolute;left:50%;top:50%;background:var(--euc);border-radius:2px;
 transform:translate(-50%,-50%);transition:transform .45s var(--e3),background .4s}
.piap:before{width:11px;height:1.8px}
.piap:after{width:1.8px;height:11px}
.piai.on .piap:before,.piai.on .piap:after{background:#fff}
.piai.on .piap:after{transform:translate(-50%,-50%) rotate(90deg)}
.piab{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--e3)}
.piai.on .piab{grid-template-rows:1fr}
.piabi{overflow:hidden}
.piab p{padding:0 clamp(4px,1vw,14px) clamp(20px,2.2vw,28px);font-size:14px;line-height:1.75;
 color:var(--tx-2);max-width:74ch}
.piab p b{color:var(--euc)}
#mymedicare{background:var(--ivory)}
.pimm{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(24px,3.4vw,58px);align-items:center}
@media(max-width:900px){.pimm{grid-template-columns:1fr;gap:28px}}
.pimml h2{color:var(--euc);max-width:18ch}
.pimml>p{margin-top:16px;font-size:14.4px;line-height:1.72;color:var(--tx-2);max-width:52ch}
.pimh{margin-top:clamp(20px,2.2vw,28px);font-family:var(--fu);font-size:14px;font-weight:700;color:var(--euc)}
.pimb{margin-top:clamp(22px,2.4vw,30px);display:flex;flex-wrap:wrap;gap:11px}
.pimr{background:#fff;border:1px solid var(--ln);border-radius:20px;overflow:hidden;
 box-shadow:0 26px 56px -34px rgba(34,63,122,.55)}
.pimri{display:block;padding:clamp(20px,2.4vw,30px);text-align:center;border-bottom:1px solid var(--ln)}
.pimri img{display:block;margin:0 auto;height:clamp(56px,6vw,80px);width:auto}
.pimrl{list-style:none;padding:clamp(6px,1vw,12px) clamp(16px,1.8vw,24px) clamp(16px,1.8vw,24px)}
.pimrl li{position:relative;padding:14px 0 14px 32px;border-bottom:1px solid var(--ln)}
.pimrl li:last-child{border-bottom:0}
.pimrl li s{position:absolute;left:0;top:16px;width:19px;height:19px;border-radius:50%;
 background:rgba(247,196,71,.3);text-decoration:none}
.pimrl li s:after{content:"";position:absolute;left:6.5px;top:4.5px;width:5px;height:9px;
 border:2px solid var(--yl-dp);border-top:0;border-left:0;transform:rotate(42deg)}
.pimrl b{display:block;font-size:13.4px;font-weight:700;color:var(--euc);line-height:1.3}
.pimrl span{display:block;margin-top:4px;font-size:12.2px;line-height:1.5;color:var(--tx-2)}
#questions{background:var(--ivory-2)}
.piq{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.2vw,16px);
 margin-top:clamp(26px,3vw,42px);align-items:start}
@media(max-width:820px){.piq{grid-template-columns:1fr}}
.piqi{background:#fff;border:1px solid var(--ln);border-radius:14px;overflow:hidden;
 transition:border-color .4s,box-shadow .45s var(--e)}
.piqi:hover,.piqi.on{border-color:rgba(52,185,215,.5);box-shadow:0 18px 40px -28px rgba(34,63,122,.45)}
.piqh{display:flex;width:100%;align-items:center;gap:14px;justify-content:space-between;text-align:left;
 padding:clamp(15px,1.6vw,19px);background:none;border:0;cursor:pointer}
.piqh:focus-visible{outline:2px solid var(--cy);outline-offset:-3px}
.piqh>span{font-size:13.8px;font-weight:600;color:var(--euc);line-height:1.4}
.piqh>s{position:relative;flex:0 0 auto;width:22px;height:22px;text-decoration:none}
.piqh>s:before,.piqh>s:after{content:"";position:absolute;left:50%;top:50%;background:var(--yl-dp);border-radius:2px;
 transform:translate(-50%,-50%);transition:transform .45s var(--e3)}
.piqh>s:before{width:10px;height:1.8px}
.piqh>s:after{width:1.8px;height:10px}
.piqi.on .piqh>s:after{transform:translate(-50%,-50%) rotate(90deg)}
.piqb{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--e3)}
.piqi.on .piqb{grid-template-rows:1fr}
.piqbi{overflow:hidden}
.piqb p{padding:0 clamp(15px,1.6vw,19px) clamp(16px,1.8vw,22px);font-size:13.4px;line-height:1.7;color:var(--tx-2)}
@media(prefers-reduced-motion:reduce){.piab,.piqb{transition:none}}
/* ═══ PATIENT INFO & FEES ═══ */
#pihero,#shero{position:relative;overflow:hidden;background:var(--euc-3);min-height:clamp(560px,78vh,760px);
 display:flex;align-items:center;padding:calc(var(--hh,112px) + clamp(40px,5vw,74px)) 0 clamp(40px,5vw,74px)}
#pihero h1,#shero h1{color:#fff;max-width:17ch;text-shadow:0 2px 22px rgba(7,16,38,.5)}
#pihero h1 .it,#shero h1 .it{color:var(--yl)}
#pihero .ld,#shero .ld{margin-top:20px;max-width:52ch;color:#DDE6F5;text-shadow:0 1px 14px rgba(7,16,38,.5)}
/* ═══ PATIENT INFO & FEES ═══ */
#pihero{position:relative;overflow:hidden;background:var(--euc-3);min-height:clamp(560px,78vh,760px);
 display:flex;align-items:center;padding:calc(var(--hh,112px) + clamp(40px,5vw,74px)) 0 clamp(40px,5vw,74px)}
#pihero h1{color:#fff;max-width:17ch;text-shadow:0 2px 22px rgba(7,16,38,.5)}
#pihero h1 .it{color:var(--yl)}
#pihero .ld{margin-top:20px;max-width:52ch;color:#DDE6F5;text-shadow:0 1px 14px rgba(7,16,38,.5)}
.pih2{max-width:22ch}
.pol{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.5vw,18px);margin:6px 0 8px}
.pol a{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--ln);
 border-radius:16px;padding:16px 18px;transition:transform .3s,box-shadow .3s,border-color .3s}
.pol a:hover{transform:translateY(-3px);border-color:rgba(52,185,215,.6);box-shadow:0 18px 36px -26px rgba(34,63,122,.45)}
.pol i{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
 background:var(--ivory-2);font-family:var(--fu);font-style:normal;font-size:9.5px;font-weight:800;letter-spacing:.06em;color:var(--euc)}
.pol b{display:block;font-size:14.4px;font-weight:700;color:var(--euc);line-height:1.3}
.pol span span{display:block;margin-top:5px;font-size:12.6px;line-height:1.55;color:var(--tx-2)}
.pol em{display:block;margin-top:7px;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.1em;
 text-transform:uppercase;color:var(--cy-dp)}
@media(max-width:620px){.pol{grid-template-columns:1fr}}
/* ═══ LEGAL / POLICY PAGES ═══ */
#lghero{position:relative;overflow:hidden;background:linear-gradient(168deg,var(--ivory) 0%,var(--ivory-2) 60%,#EEF4FA 100%);
 padding:calc(max(var(--hh,112px),104px) + clamp(40px,4.6vw,72px)) 0 clamp(38px,4.4vw,66px)}
#lghero .ld{max-width:62ch;margin-top:16px}
.lgmeta{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;padding-top:18px;border-top:1px solid var(--ln)}
.lgmeta span{font-family:var(--fu);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--tx-3)}
.lgmeta b{color:var(--euc);font-weight:800}
/* contents band */
#lgix{background:linear-gradient(180deg,var(--ivory-2) 0%,#F7FBFD 54%,#fff 100%);
 padding:clamp(46px,5.6vw,86px) 0 clamp(34px,4vw,62px)}
.lgeb{display:flex;align-items:center;gap:12px;font-family:var(--fu);font-size:10px;font-weight:800;
 letter-spacing:.22em;text-transform:uppercase;color:var(--tx-3);margin:0 0 14px}
.lgeb:before{content:"";width:26px;height:2px;background:var(--yl);border-radius:2px}
#lgix h2{font-family:var(--fd);font-size:clamp(28px,4.2vw,52px);font-weight:700;line-height:1.06;
 letter-spacing:-.02em;color:var(--euc);margin:0}
.lgixg{display:grid;grid-template-columns:repeat(3,1fr);gap:0 clamp(22px,3vw,48px);margin-top:clamp(24px,3vw,44px)}
.lgixg a{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:baseline;padding:13px 2px;
 border-top:1px solid var(--ln);font-size:14px;line-height:1.4;color:var(--tx-2);transition:color .25s}
.lgixg a:hover,.lgixg a:focus-visible{color:var(--euc)}
.lgixg i{font-style:normal;font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.06em;color:var(--yl-dp,#B8860B)}
/* accordions */
#lgbody{padding:clamp(24px,3vw,44px) 0 clamp(56px,7vw,110px);background:#fff}
.lgw{max-width:1180px}
.lgac{border-top:1px solid var(--ln)}
.lgac:last-of-type{border-bottom:1px solid var(--ln)}
.lgac>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px 1fr 34px;
 gap:clamp(10px,1.4vw,20px);align-items:center;padding:clamp(19px,2.1vw,28px) 0}
.lgac>summary::-webkit-details-marker{display:none}
.lgac>summary::marker{content:""}
.lgac>summary:focus-visible{outline:2px solid var(--cy-dp);outline-offset:3px;border-radius:6px}
.lgacn{font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.06em;color:var(--yl-dp,#B8860B)}
.lgac summary h2{font-family:var(--fd);font-size:clamp(17px,1.75vw,23px);font-weight:700;line-height:1.24;
 letter-spacing:-.01em;color:var(--euc);margin:0}
.lgact{position:relative;width:30px;height:30px;border-radius:50%;background:var(--yl);
 display:grid;place-items:center;justify-self:end;flex:0 0 auto;transition:background .25s,transform .25s}
.lgac>summary:hover .lgact{transform:scale(1.08)}
.lgact:before,.lgact:after{content:"";position:absolute;background:var(--euc);border-radius:2px}
.lgact:before{width:12px;height:2px}
.lgact:after{width:2px;height:12px;transition:transform .3s ease}
.lgac[open] .lgact:after{transform:scaleY(0)}
.lgacb{padding:2px 0 clamp(24px,2.6vw,36px);max-width:80ch;animation:lgin .34s cubic-bezier(.2,.7,.3,1) both}
@keyframes lgin{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
.lgacb h3{font-size:14.5px;font-weight:700;color:var(--euc);margin:22px 0 8px}
.lgacb p{font-size:14.6px;line-height:1.8;color:var(--tx-2);margin:0 0 13px}
.lgacb p:last-child{margin-bottom:0}
.lgacb ul,.lgacb ol{margin:0 0 15px;padding-left:19px;display:grid;gap:7px}
.lgacb li{font-size:14.4px;line-height:1.74;color:var(--tx-2)}
.lgacb a{color:var(--cy-dp);font-weight:600;border-bottom:1px solid rgba(52,185,215,.4)}
.lgacb a:hover{border-bottom-color:var(--cy-dp)}
.lgacb strong{color:var(--euc);font-weight:700}
.lgnote{margin:20px 0;padding:16px 20px;background:var(--ivory);border:1px solid var(--ln);
 border-left:3px solid var(--yl);border-radius:0 12px 12px 0}
.lgnote p{margin:0;font-size:13.8px;line-height:1.75}
.lgnote p+p{margin-top:9px}
.lgtail{margin-top:clamp(34px,4vw,58px);padding-top:clamp(22px,2.4vw,32px);border-top:1px solid var(--ln);
 font-size:13px;line-height:1.75;color:var(--tx-3);max-width:88ch}
.lgtail a{color:var(--cy-dp);font-weight:600}
.pol i{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
 background:var(--ivory);font-family:var(--fu);font-style:normal;font-size:9.5px;font-weight:800;letter-spacing:.06em;color:var(--euc)}
.pol span{display:block;margin-top:5px;font-size:12.6px;line-height:1.55;color:var(--tx-2)}
@media(max-width:900px){.lgixg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.lgixg{grid-template-columns:1fr}.pol{grid-template-columns:1fr}
 .lgac>summary{grid-template-columns:26px 1fr 28px;gap:9px}.lgact{width:26px;height:26px}}
/* ═══ TEAM PAGE ═══ */
.bcr{padding:calc(var(--hh,112px) + 22px) 0 0;background:var(--ivory)}
.thbc{padding-bottom:0}
#thero{background:linear-gradient(178deg,var(--ivory) 0%,var(--ivory-2) 100%);
 padding-top:clamp(18px,2.2vw,30px);padding-bottom:clamp(34px,4vw,58px)}
.thh{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,4vw,68px);align-items:center}
@media(max-width:960px){.thh{grid-template-columns:1fr;gap:32px}}
#thero h1{max-width:17ch;font-size:clamp(28px,4.15vw,56px)}
#thero h1 .it{font-style:italic;font-weight:600}
.thl .ld{margin-top:18px;max-width:44ch}
.thl .ld a{color:var(--euc);font-weight:600;border-bottom:1px solid var(--cy);transition:color .3s,border-color .3s}
.thl .ld a:hover{color:var(--cy-dp);border-color:var(--yl)}
.thb{margin-top:clamp(22px,2.6vw,32px);display:flex;flex-wrap:wrap;gap:12px}
.thbb{margin-top:clamp(22px,2.6vw,32px);display:flex;gap:clamp(14px,1.6vw,20px);align-items:center;
 background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(14px,1.6vw,20px);
 max-width:560px;box-shadow:0 20px 44px -32px rgba(34,63,122,.5)}
.thbbi{flex:0 0 auto;display:flex;padding:7px;border-radius:12px;background:var(--yl-lt)}
.thbbi img{display:block;height:56px;width:auto;border-radius:6px;background:#fff;padding:7px 9px}
.thbb p{font-size:13px;line-height:1.6;color:var(--tx-2)}
.thp{position:relative}
.thpx{position:absolute;right:-2.5%;bottom:6%;width:62%;height:74%;border-radius:22px;
 background:linear-gradient(150deg,rgba(52,185,215,.20),rgba(247,196,71,.22));z-index:0}
.thpi{position:relative;z-index:2;border-radius:22px;overflow:hidden;
 box-shadow:0 28px 58px -32px rgba(34,63,122,.6);transition:transform .6s var(--e)}
.thpi .fr{position:relative;display:block;height:auto;aspect-ratio:auto;background:none}
.thpi .fr>img{position:static;inset:auto;display:block;width:100%;height:auto;object-fit:fill}
.thp:hover .thpi{transform:translateY(-5px)}
.thpc{position:relative;z-index:2;margin-top:14px;font-size:12.6px;color:var(--tx-2)}
/* Medicare band, static under the hero */
.tmbar{background:var(--mg);border-top:2px solid var(--my);border-bottom:2px solid var(--my);
 height:var(--mbh);overflow:hidden;display:flex;align-items:center}
#find{background:var(--ivory-2)}
.tfh{max-width:35ch}
.tfl{margin-top:16px;max-width:50ch}
.tftools{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:clamp(24px,2.8vw,38px)}
.tfsearch{position:relative;flex:1 1 300px;max-width:400px}
.tfsearch s{position:absolute;left:15px;top:50%;translate:0 -50%;color:var(--yl-dp);text-decoration:none;font-size:14px;pointer-events:none}
.tfsearch input{width:100%;padding:13px 40px;border-radius:100px;border:1px solid var(--ln);background:#fff;font-family:var(--fu);font-size:13.5px;color:var(--tx);outline:none;transition:border-color .35s,box-shadow .35s}
.tfsearch input::placeholder{color:var(--tx-3)}
.tfsearch input:focus{border-color:var(--yl);box-shadow:0 0 0 4px rgba(247,196,71,.28)}
.tfsearch button{position:absolute;right:8px;top:50%;translate:0 -50%;width:26px;height:26px;border-radius:50%;color:var(--tx-3);font-size:17px;line-height:1;opacity:0;pointer-events:none;transition:opacity .3s}
.tfsearch.has button{opacity:1;pointer-events:auto}
.tfchips{display:flex;flex-wrap:wrap;gap:7px}
.tfchips button{padding:9px 15px;border-radius:100px;border:1px solid var(--ln);background:#fff;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--tx-2);transition:background .35s,color .35s,border-color .35s,transform .35s var(--e)}
.tfchips button:hover{transform:translateY(-2px);border-color:var(--yl);background:rgba(247,196,71,.12)}
.tfchips button.on{background:var(--euc);border-color:var(--euc);color:#fff;box-shadow:inset 0 -3px 0 var(--yl)}
.tfcount{margin-top:18px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-3);display:inline-flex;align-items:center;gap:9px}
.tfcount:before{content:"";width:22px;height:2px;border-radius:2px;background:var(--yl)}
.tfnone{display:none;margin-top:24px;font-size:14.5px;color:var(--tx-2)}
.tfnone a{color:var(--cy-dp);font-weight:600}
.tfnone.on{display:block}
.dc.hide{display:none}
