/* Muswellbrook Doctors — service 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}
.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}
/* ═══ SIGNS: interactive card grids ═══ */
.sgt{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(20px,2.2vw,30px)}
.sgt button{padding:10px 18px;border-radius:100px;border:1px solid var(--ln);background:#fff;
 font-size:13.2px;font-weight:600;color:var(--tx-2);
 transition:background .3s,color .3s,border-color .3s,transform .3s var(--e)}
.sgt button:hover{transform:translateY(-2px);border-color:var(--ac);background:rgba(52,185,215,.08)}
.sgt button.on{background:var(--ac-bar);border-color:var(--ac-bar);color:#fff}
.sgg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,18px);margin-top:clamp(16px,1.8vw,24px)}
@media(max-width:900px){.sgg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sgg{grid-template-columns:1fr}}
.sg{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(16px,1.7vw,21px);
 display:flex;flex-direction:column;gap:9px;
 transition:transform .4s var(--e),border-color .3s,box-shadow .4s var(--e)}
.sg:hover{transform:translateY(-4px);border-color:var(--ac);box-shadow:0 20px 40px -28px rgba(34,63,122,.5)}
.sg.hide{display:none}
.sg>em{font-style:normal;align-self:flex-start;padding:4px 11px;border-radius:100px;
 background:color-mix(in srgb,var(--ac) 16%,transparent);color:var(--ac-dp);
 font-size:9.6px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.sg b{font-family:var(--fu);font-size:15.2px;font-weight:700;line-height:1.3;color:var(--euc)}
.sg span{font-size:13.4px;line-height:1.62;color:var(--tx-2)}
.sg span em{font-style:italic;font-weight:600;color:var(--euc);padding:0;background:none;
 border-radius:0;font-size:inherit;letter-spacing:0;text-transform:none}
.sgn{margin-top:16px;font-size:12.6px;color:var(--tx-3);line-height:1.6}
/* numbered steps */
.sstep{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,18px);margin-top:clamp(22px,2.4vw,32px)}
@media(max-width:900px){.sstep{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.sstep{grid-template-columns:1fr}}
.sst{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:clamp(16px,1.7vw,22px);
 position:relative;overflow:hidden;transition:transform .4s var(--e),border-color .3s,box-shadow .4s var(--e)}
.sst:hover{transform:translateY(-4px);border-color:var(--ac);box-shadow:0 20px 40px -28px rgba(34,63,122,.5)}
.sst i{font-style:normal;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
 background:var(--ac-bar);color:#fff;font-family:var(--fd);font-size:14px;font-weight:800;
 font-variant-numeric:tabular-nums;transition:transform .34s var(--e),box-shadow .34s var(--e)}
.sst i.cnt{transform:scale(1.16);box-shadow:0 0 0 6px color-mix(in srgb,var(--ac) 26%,transparent)}
.sst i.done{transform:scale(1);box-shadow:0 0 0 0 transparent}
@media(prefers-reduced-motion:reduce){.sst i{transition:none}.sst i.cnt{transform:none;box-shadow:none}}
.sst b{display:block;margin-top:13px;font-family:var(--fu);font-size:15.2px;font-weight:700;color:var(--euc);line-height:1.3}
.sst span{display:block;margin-top:8px;font-size:13.2px;line-height:1.6;color:var(--tx-2)}
.sst u{display:block;margin-top:11px;text-decoration:none;font-size:10.4px;font-weight:800;
 letter-spacing:.13em;text-transform:uppercase;color:var(--ac-dp)}
/* warm fee panel */
.sfee{background:linear-gradient(150deg,#FFFDF7 0%,#FEF6E4 55%,#FBEAC8 100%);
 border:1px solid rgba(247,196,71,.5);border-radius:22px;
 padding:clamp(24px,2.8vw,40px);margin-top:clamp(22px,2.4vw,32px)}
.sfeeg{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(20px,2.6vw,44px);align-items:center}
@media(max-width:860px){.sfeeg{grid-template-columns:1fr}}
.sfee h3{font-family:var(--fd);font-weight:800;letter-spacing:-.02em;
 font-size:clamp(20px,2.1vw,29px);line-height:1.18;color:var(--euc);max-width:20ch}
.sfee p{margin-top:13px;font-size:15.2px;line-height:1.68;color:var(--tx)}
.sfee .sfl{margin-top:16px;display:grid;gap:10px}
.sfee .sfl div{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.55;color:var(--tx)}
.sfee .sfl s{text-decoration:none;flex-shrink:0;margin-top:3px;width:16px;height:16px;border-radius:50%;
 background:var(--yl);display:grid;place-items:center;font-size:9px;color:#4A3705;font-weight:900}
.sfeec{background:#fff;border:1px solid rgba(247,196,71,.55);border-radius:18px;
 padding:clamp(18px,2vw,26px);box-shadow:0 22px 44px -34px rgba(34,63,122,.4)}
.sfeec b{display:block;font-family:var(--fu);font-size:15.4px;font-weight:700;color:var(--euc)}
.sfeec p{margin-top:9px;font-size:13.6px;line-height:1.6;color:var(--tx-2)}
.sfeec .shb{margin-top:16px}
/* ═══ IMAGE PLACEHOLDERS (until photography is supplied) ═══ */
.shph,.srevph{position:absolute;inset:0;z-index:0;
 background:
  repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 2px,transparent 2px 11px),
  linear-gradient(150deg,var(--euc-2) 0%,var(--euc-3) 52%,#0B1836 100%);
 display:grid;place-items:center;text-align:center}
.shph i,.srevph i{font-style:normal;display:block;max-width:34ch;padding:0 24px;
 font-family:var(--fu);font-size:12.4px;line-height:1.7;letter-spacing:.02em;color:rgba(255,255,255,.5)}
.shph i b,.srevph i b{display:block;margin-bottom:7px;font-size:10.4px;font-weight:800;
 letter-spacing:.2em;text-transform:uppercase;color:var(--yl)}
.shph svg,.srevph svg{width:38px;height:38px;margin:0 auto 14px;display:block;fill:none;
 stroke:rgba(255,255,255,.36);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
/* ═══ SERVICE DETAIL PAGE ═══ */
/* per-page accents — overridden in the page's own <style> block */
:root{--ac:#34B9D7;--ac-dp:#127FA0;--ac-lt:#D2ECF6;--ac-sf1:#F4FBFD;--ac-sf2:#E4F4FA;--ac-sf3:#D2ECF6;
 --ac-gh:rgba(18,127,160,.34);--ac-2:#F7C447;--ac-2dp:#8E6A08;--ac-bar:#223F7A;
 --ac-h1:#127FA0;--ac-hero1:var(--ivory);--ac-hero2:var(--ivory-2);--ac-hero3:#E9F2F8}
#shro{position:relative;overflow:hidden;background:linear-gradient(172deg,var(--ac-hero1) 0%,var(--ac-hero2) 58%,var(--ac-hero3) 100%);
 min-height:clamp(600px,88vh,900px);display:flex;align-items:flex-start;
 padding:calc(max(var(--hh,112px),104px) + clamp(34px,4vw,60px)) 0 clamp(40px,4.6vw,72px)}
.shg{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(24px,3.2vw,56px);align-items:start}
@media(max-width:940px){.shg{grid-template-columns:1fr}}
.sbc{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:11px;letter-spacing:.15em;
 text-transform:uppercase;color:var(--tx-3);margin-bottom:clamp(16px,1.8vw,24px)}
.sbc a{color:var(--ac-dp);font-weight:700}
.sbc s{text-decoration:none;opacity:.5}
#shro h1{max-width:15ch;color:var(--euc)}
#shro h1 .it{color:var(--ac-h1)}
#shro .ld{margin-top:18px;max-width:54ch}
.shb{margin-top:clamp(22px,2.6vw,32px);display:flex;flex-wrap:wrap;gap:12px}
.shcard{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)}
.shcard>b{display:block;font-family:var(--fu);font-size:15.4px;font-weight:700;color:var(--euc);margin-bottom:4px}
.shcard .shr{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--ln)}
.shcard .shr:last-of-type{border-bottom:0;padding-bottom:2px}
.shcard .shr svg{width:19px;height:19px;flex-shrink:0;margin-top:2px;fill:none;stroke:var(--ac-dp);
 stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.shcard .shr span{font-size:13.2px;line-height:1.55;color:var(--tx-2)}
.shcard .shr span b{display:block;color:var(--euc);font-weight:700;font-size:13.6px;margin-bottom:2px}
.sbb{margin-top:14px;background:#fff;border:1px solid var(--ln);border-radius:18px;
 padding:clamp(14px,1.4vw,18px);display:flex;align-items:center;gap:13px}
.sbb img{width:62px;height:auto;flex-shrink:0}
.sbb span{font-size:12.4px;line-height:1.55;color:var(--tx-2)}
/* three reassurance strips */
.s3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(24px,2.8vw,36px)}
@media(max-width:820px){.s3{grid-template-columns:1fr}}
.s3 div{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:clamp(14px,1.4vw,18px);
 display:flex;gap:11px;align-items:flex-start}
.s3 svg{width:18px;height:18px;flex-shrink:0;margin-top:2px;fill:none;stroke:var(--ac-2dp);stroke-width:1.5;
 stroke-linecap:round;stroke-linejoin:round}
.s3 b{display:block;font-size:13.6px;font-weight:700;color:var(--euc)}
.s3 span{display:block;margin-top:4px;font-size:12.6px;line-height:1.55;color:var(--tx-2)}
/* jump grid */
#sjump{background:var(--ivory)}
.sjg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(22px,2.4vw,32px)}
@media(max-width:820px){.sjg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.sjg{grid-template-columns:1fr}}
.sjg a{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:clamp(14px,1.5vw,19px);
 display:flex;gap:12px;align-items:flex-start;
 transition:transform .4s var(--e),border-color .35s,box-shadow .4s var(--e)}
.sjg a:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--ac) 60%,transparent);box-shadow:0 18px 36px -26px rgba(34,63,122,.45)}
.sjg svg{width:20px;height:20px;flex-shrink:0;margin-top:1px;fill:none;stroke:var(--ac-dp);stroke-width:1.4;
 stroke-linecap:round;stroke-linejoin:round}
.sjg b{display:block;font-size:14px;font-weight:700;color:var(--euc)}
.sjg span{display:block;margin-top:4px;font-size:12.4px;color:var(--tx-2);line-height:1.5}
/* age slider */
#sage{background:var(--ivory-2)}
.sagec{background:#fff;border:1px solid var(--ln);border-radius:20px;padding:clamp(20px,2.2vw,32px);
 margin-top:clamp(22px,2.4vw,32px)}
.sageh{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(16px,2vw,30px);align-items:center}
@media(max-width:760px){.sageh{grid-template-columns:1fr;gap:14px}}
.sagen b{display:block;font-size:9.6px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--tx-3)}
.sagen strong{display:block;font-family:var(--fd);font-size:clamp(34px,3.6vw,50px);font-weight:800;
 line-height:1;color:var(--ac-dp);letter-spacing:-.03em}
.sages input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:5px;border-radius:100px;
 background:linear-gradient(90deg,var(--ac) 0%,var(--ac) var(--p,30%),var(--ln) var(--p,30%),var(--ln) 100%);outline:none}
.sages input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;
 background:var(--euc);border:3px solid #fff;box-shadow:0 3px 10px rgba(34,63,122,.45);cursor:pointer}
.sages input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--euc);
 border:3px solid #fff;box-shadow:0 3px 10px rgba(34,63,122,.45);cursor:pointer;border-color:#fff}
.saget{display:flex;justify-content:space-between;margin-top:9px;font-size:10.6px;color:var(--tx-3);font-weight:600}
.sagel{margin-top:12px;font-size:12.2px;line-height:1.6;color:var(--tx-3);max-width:56ch}
.sagec2{font-size:12.8px;font-weight:700;color:var(--ac-dp);text-align:right;line-height:1.4}
@media(max-width:760px){.sagec2{text-align:left}}
.sageg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);
 margin-top:clamp(20px,2.2vw,28px);padding-top:clamp(18px,2vw,26px);border-top:1px solid var(--ln)}
@media(max-width:860px){.sageg{grid-template-columns:1fr}}
.sagei{background:var(--ivory);border:1px solid var(--ln);border-radius:14px;padding:clamp(14px,1.5vw,19px)}
.sagei em{font-style:normal;display:inline-block;padding:4px 11px;border-radius:100px;background:color-mix(in srgb,var(--ac) 18%,transparent);
 color:var(--ac-dp);font-size:9.8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.sagei b{display:block;margin-top:10px;font-size:14.4px;font-weight:700;color:var(--euc);line-height:1.3}
.sagei span{display:block;margin-top:7px;font-size:12.8px;line-height:1.6;color:var(--tx-2)}
/* topic block: prose + callout left, accordion right */
.stb{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,2.8vw,52px);align-items:start;
 margin-top:clamp(22px,2.4vw,32px)}
@media(max-width:900px){.stb{grid-template-columns:1fr}}
.stb p{margin-top:15px;font-size:15.8px;line-height:1.7;color:var(--tx)}
.stb p:first-child{margin-top:0}
.stb a.inl{color:var(--ac-dp);font-weight:600;border-bottom:1px solid color-mix(in srgb,var(--ac) 45%,transparent)}
.surg{margin-bottom:clamp(18px,2vw,26px);border-left:3px solid #C0392B;border-radius:0 14px 14px 0;
 background:rgba(192,57,43,.07);padding:clamp(15px,1.6vw,20px)}
.surg b{display:flex;align-items:center;gap:9px;font-size:13.8px;font-weight:800;color:#96271C;margin-bottom:7px}
.surg b svg{width:17px;height:17px;fill:none;stroke:#C0392B;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.surg span{display:block;font-size:13.6px;line-height:1.65;color:var(--tx)}
.surg strong{font-weight:800;color:#96271C}
.scal{margin-top:clamp(20px,2.2vw,28px);border-left:3px solid var(--ac-2);border-radius:0 14px 14px 0;
 background:color-mix(in srgb,var(--ac-2) 12%,transparent);padding:clamp(16px,1.7vw,22px)}
.scal b{display:block;font-size:13.6px;font-weight:700;color:var(--euc);margin-bottom:7px}
.scal span{display:block;font-size:13.4px;line-height:1.65;color:var(--tx-2)}
.sacc{display:grid;gap:9px}
.sacc details{background:#fff;border:1px solid var(--ln);border-radius:14px;overflow:hidden;
 transition:border-color .35s,box-shadow .4s var(--e)}
.sacc details[open]{border-color:color-mix(in srgb,var(--ac) 55%,transparent);box-shadow:0 18px 36px -28px rgba(34,63,122,.45)}
.sacc summary{list-style:none;cursor:pointer;padding:15px clamp(15px,1.5vw,20px);display:flex;
 align-items:center;justify-content:space-between;gap:14px;font-size:14.2px;font-weight:600;color:var(--euc)}
.sacc summary::-webkit-details-marker{display:none}
.sacc summary:after{content:"";width:9px;height:9px;flex-shrink:0;border-right:2px solid var(--ac-dp);
 border-bottom:2px solid var(--ac-dp);transform:rotate(45deg) translateY(-2px);transition:transform .35s var(--e)}
.sacc details[open] summary:after{transform:rotate(-135deg) translateY(-2px)}
.sacc .sab{padding:0 clamp(15px,1.5vw,20px) 17px}
.sacc .sab p{margin-top:0;font-size:13.8px;line-height:1.68;color:var(--tx-2)}
.sacc .sab p+p{margin-top:11px}
.sacc .sab a{color:var(--ac-dp);font-weight:600}
/* option cards (flip) */
.sopt{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px);margin-top:clamp(20px,2.2vw,30px);
 perspective:1900px}
@media(max-width:860px){.sopt{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sopt{grid-template-columns:1fr}}
.sflip{position:relative;min-height:clamp(230px,19vw,264px);border-radius:18px;cursor:pointer;outline:none}
.soin{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s var(--e3)}
@media(hover:hover){.sflip:hover .soin{transform:rotateY(180deg)}}
.sflip.fl .soin,.sflip:focus-visible .soin{transform:rotateY(180deg)}
.sflip.hide{display:none}
.sflip:focus-visible{box-shadow:0 0 0 3px var(--ac);border-radius:19px}
.sof,.sob{position:absolute;inset:0;border-radius:18px;padding:clamp(16px,1.7vw,22px);display:flex;
 flex-direction:column;align-items:center;text-align:center;backface-visibility:hidden;
 -webkit-backface-visibility:hidden;border:1px solid transparent;overflow:hidden}
.sof{background:linear-gradient(152deg,var(--ac-sf1) 0%,var(--ac-sf2) 55%,var(--ac-sf3) 100%);border-color:rgba(255,255,255,.9)}
.sflip:hover .sof,.sflip:hover .sob{box-shadow:0 22px 44px -26px rgba(34,63,122,.5)}
.sop{display:inline-block;padding:5px 12px;border-radius:100px;background:#fff;border:1px solid color-mix(in srgb,var(--ac) 55%,transparent);
 font-size:9.8px;font-weight:700;letter-spacing:.06em;color:var(--ac-dp)}
.sof h4{margin-top:11px;font-family:var(--fu);font-size:clamp(15px,1.32vw,17.6px);font-weight:700;
 line-height:1.24;color:var(--euc)}
.sogh{flex:1;width:100%;display:grid;place-items:center;min-height:0;pointer-events:none}
.sogh svg{width:clamp(54px,5.6vw,74px);height:clamp(54px,5.6vw,74px);fill:none;stroke-width:1.05;
 stroke-linecap:round;stroke-linejoin:round;stroke:var(--ac-gh)}
.sflip .rdm{margin-top:auto;font-size:11.6px;font-weight:600;color:var(--euc);display:inline-flex;
 align-items:center;gap:8px;opacity:.85}
.sflip .rdm s{text-decoration:none;color:var(--ac-dp);font-weight:800}
.sob{transform:rotateY(180deg);background:var(--ac-bar);border-color:var(--ac-bar);justify-content:center;text-align:left}
.sob em{font-style:normal;display:inline-block;padding:4px 11px;border-radius:100px;
 border:1px solid rgba(255,255,255,.26);font-size:9.4px;font-weight:700;letter-spacing:.13em;
 text-transform:uppercase;color:var(--ac-lt);margin-bottom:10px}
.sob p{font-size:12.9px;line-height:1.62;color:#DCE6F5}
.sob b{display:block;font-family:var(--fu);font-size:14.4px;font-weight:700;color:var(--yl);margin-bottom:8px;line-height:1.28}
.sob p+p{margin-top:9px}
/* two info notes under a block */
.snote{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,34px);margin-top:clamp(24px,2.6vw,34px);
 padding-top:clamp(20px,2.2vw,28px);border-top:1px solid var(--ln)}
@media(max-width:760px){.snote{grid-template-columns:1fr}}
.snote b{display:flex;align-items:center;gap:9px;font-size:13.8px;font-weight:700;color:var(--euc)}
.snote b svg{width:17px;height:17px;fill:none;stroke:var(--ac-2dp);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.snote p{margin-top:9px;font-size:13.4px;line-height:1.65;color:var(--tx-2)}
/* topic marquee strip */
.stm{background:var(--ac-bar);overflow:hidden;display:flex;align-items:center;height:var(--mbh)}
.stmt{display:flex;width:max-content;animation-name:mqrun;animation-duration:46s;
 animation-timing-function:linear;animation-iteration-count:infinite}
.stmt p{display:inline-flex;align-items:center;gap:14px;padding:0 14px;margin:0;white-space:nowrap;
 font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#D5E2F5}
.stmt p:after{content:"\2022";color:var(--ac-2)}
@media(prefers-reduced-motion:reduce){.stmt{animation-name:none}}
/* questions, two columns */
.sqg{display:grid;grid-template-columns:1fr 1fr;gap:clamp(9px,1vw,14px);margin-top:clamp(22px,2.4vw,32px);
 align-content:start}
@media(max-width:820px){.sqg{grid-template-columns:1fr}}
/* related services */
#srel{background:var(--ivory-2)}
.srg{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(22px,2.4vw,32px)}
@media(max-width:900px){.srg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.srg{grid-template-columns:1fr}}
.srg a{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:clamp(17px,1.9vw,23px);text-align:center;
 transition:transform .4s var(--e),border-color .35s,box-shadow .4s var(--e)}
.srg a:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--ac-2) 78%,transparent);box-shadow:0 18px 36px -26px rgba(34,63,122,.45)}
.srg svg{width:44px;height:44px;padding:12px;box-sizing:border-box;border-radius:13px;
 background:var(--ac-sf3);display:block;margin:0 auto;
 fill:none;stroke:var(--ac-dp);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;
 transition:transform .45s var(--e),background .35s}
.srg a:hover svg{transform:scale(1.06)}
.srg b{display:block;margin-top:13px;font-size:14px;font-weight:700;color:var(--euc)}
.srg span{display:block;margin-top:6px;font-size:12.4px;line-height:1.55;color:var(--tx-2);max-width:26ch;margin-inline:auto}
/* full-bleed photo hero */
#shro.shro-img{background:var(--euc-3)}
#shro.shro-img .shbg{position:absolute;inset:0;z-index:0}
#shro.shro-img .shbg img{object-position:center 32%}
#shro.shro-img .shov{position:absolute;inset:0;z-index:1;background:
 linear-gradient(94deg,rgba(9,20,45,.90) 0%,rgba(9,20,45,.86) 26%,rgba(9,20,45,.66) 42%,
  rgba(9,20,45,.30) 56%,rgba(9,20,45,.06) 66%,rgba(9,20,45,0) 74%)}
@media(max-width:940px){
 /* stacked layout: the text sits over the whole frame, so the scrim must cover it */
 #shro.shro-img .shov{background:linear-gradient(180deg,rgba(9,20,45,.88) 0%,rgba(9,20,45,.80) 52%,rgba(9,20,45,.62) 100%)}
}
#shro.shro-img .wr{position:relative;z-index:3}
#shro.shro-img .sbc{color:rgba(255,255,255,.62)}
#shro.shro-img .sbc a{color:var(--ac-lt)}
#shro.shro-img .eb{color:var(--ac-lt)}
#shro.shro-img .st b{background:linear-gradient(90deg,var(--ac),transparent)}
#shro.shro-img h1{color:#fff;text-shadow:0 2px 22px rgba(7,16,38,.5)}
#shro.shro-img h1 .it{color:var(--ac-lt)}
#shro.shro-img .ld{color:#DDE6F5;text-shadow:0 1px 14px rgba(7,16,38,.45)}
#shro.shro-img .s3 div{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);backdrop-filter:blur(7px)}
#shro.shro-img .s3 b{color:#fff}
#shro.shro-img .s3 span{color:#C8D6EE}
#shro.shro-img .s3 svg{stroke:var(--ac-2)}
#shro.shro-img .shcard{background:rgba(255,255,255,.94);backdrop-filter:blur(9px);border-color:rgba(255,255,255,.5)}
#shro.shro-img .bn.gh{border-color:rgba(255,255,255,.4);color:#fff}
#shro.shro-img .bn.gh:hover{border-color:var(--ac-2);color:#fff}
/* hero portrait card (studio shot — framed rather than stretched full-bleed) */
.shport{position:relative;border-radius:20px;overflow:hidden;background:var(--ivory-2);
 border:1px solid var(--ln);box-shadow:0 26px 52px -34px rgba(34,63,122,.55);aspect-ratio:1/1.15}
.shport .fr{position:absolute;inset:0}
.shport figcaption{position:absolute;left:0;right:0;bottom:0;z-index:5;
 padding:clamp(14px,1.5vw,20px);color:#fff;
 background:linear-gradient(180deg,rgba(18,33,69,0),rgba(18,33,69,.88))}
.shport figcaption b{display:block;font-family:var(--fu);font-size:15px;font-weight:700}
.shport figcaption span{display:block;margin-top:3px;font-size:12.4px;color:rgba(255,255,255,.82)}
/* photo hero: the reassurance strips sit below the image, not over it */
#sbook{background:var(--ivory);padding:clamp(30px,3.2vw,46px) 0}
/* general-information note under the FAQ */
.sdis{margin:clamp(28px,3.2vw,44px) 0 0;padding:clamp(15px,1.7vw,21px) clamp(17px,2vw,26px);
 border:1px solid var(--ln);border-left:3px solid var(--ac);border-radius:4px 16px 16px 4px;
 background:var(--ac-sf1);max-width:78ch;text-align:left;
 font-size:13.2px;line-height:1.75;color:var(--tx-2)}
.sdis b{display:block;margin-bottom:5px;font-family:var(--fu);font-size:9.5px;font-weight:800;
 letter-spacing:.2em;text-transform:uppercase;color:var(--ac-dp)}
.sdis a{color:var(--ac-dp);font-weight:600;border-bottom:1px solid var(--ac-lt)}
.sdis a:hover{border-bottom-color:var(--ac-dp)}
.sdis s{display:block;margin-top:8px;text-decoration:none;font-size:12px;color:var(--tx-3)}
@media(max-width:640px){.sdis{border-radius:4px 12px 12px 4px}}
/* pathology partner card in the hero */
.pncard{background:#fff;border:1px solid var(--ln);border-radius:22px;overflow:hidden;
 box-shadow:0 26px 54px -34px rgba(34,63,122,.6)}
.pnlogo{padding:clamp(22px,2.6vw,34px) clamp(20px,2.4vw,32px) clamp(14px,1.6vw,20px);text-align:center}
.pnlogo img{max-width:min(280px,78%);height:auto;display:inline-block}
.pnband{margin:0 clamp(20px,2.4vw,32px) clamp(18px,2vw,26px);padding:11px 14px;border-radius:6px;
 background:#C8102E;color:#fff;font-weight:700;font-size:clamp(15px,1.5vw,18px);text-align:center}
.pnrows{border-top:1px solid var(--ln);padding:clamp(16px,1.8vw,22px) clamp(20px,2.4vw,32px);
 display:grid;gap:clamp(12px,1.4vw,17px)}
.pnr{display:flex;gap:12px;align-items:flex-start}
.pnr svg{width:20px;height:20px;flex-shrink:0;margin-top:2px;fill:none;stroke:var(--ac-dp);
 stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pnr span{font-size:13.4px;line-height:1.6;color:var(--tx-2)}
.pnr span b{display:block;font-size:14.4px;color:var(--euc);margin-bottom:2px}
/* "what to know" — moved out of the hero into the band beneath it */
.skn{background:#fff;border:1px solid var(--ln);border-radius:22px;
 padding:clamp(18px,2vw,26px) clamp(18px,2.2vw,30px);
 box-shadow:0 18px 40px -32px rgba(34,63,122,.5)}
.sknh{display:block;font-size:clamp(16px,1.5vw,19px);font-weight:700;color:var(--euc);
 margin-bottom:clamp(12px,1.4vw,18px)}
.skng{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:clamp(12px,1.6vw,22px) clamp(20px,2.6vw,38px)}
.sknr{display:flex;gap:11px;align-items:flex-start}
.sknr svg{width:19px;height:19px;flex-shrink:0;margin-top:2px;fill:none;
 stroke:var(--ac-dp);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sknr span{font-size:13.4px;line-height:1.6;color:var(--tx-2)}
.sknr span b{display:block;font-size:14.2px;color:var(--euc);margin-bottom:2px}
.skn+.s3b{margin-top:clamp(14px,1.6vw,20px)}
@media(max-width:760px){.skng{grid-template-columns:1fr}}
/* clinician band: who actually does the assessment */
#sdoc{background:var(--ac-sf2);padding:clamp(34px,3.6vw,54px) 0}
.sdocc{margin:0;display:grid;grid-template-columns:clamp(140px,15vw,196px) 1fr;
 gap:clamp(18px,2.4vw,34px);align-items:center;background:#fff;border:1px solid var(--ln);
 border-radius:22px;padding:clamp(18px,2vw,28px);
 box-shadow:0 18px 40px -30px rgba(34,63,122,.55)}
.sdocp{position:relative;aspect-ratio:1/1.12;border-radius:16px;overflow:hidden;background:var(--euc-3)}
.sdocp .fr{position:absolute;inset:0}
.sdoce{display:block;font-family:var(--fu);font-size:9.5px;font-weight:800;letter-spacing:.2em;
 text-transform:uppercase;color:var(--ac-dp);margin-bottom:8px}
.sdocc figcaption b{display:block;font-size:clamp(19px,1.9vw,25px);line-height:1.2;color:var(--euc)}
.sdocr{display:block;margin-top:5px;font-size:13px;color:var(--tx-2)}
.sdocc figcaption p{margin:12px 0 0;font-size:14.2px;line-height:1.65;color:var(--tx-2);max-width:56ch}
@media(max-width:640px){.sdocc{grid-template-columns:1fr;text-align:center}
 .sdocp{max-width:200px;margin:0 auto}.sdocc figcaption p{margin-inline:auto}}
.s3b{margin-top:0}
/* Medicare bulk-billing badge: full width in the band below the hero */
.sbbw{margin-top:clamp(14px,1.6vw,20px);justify-content:center;text-align:left;
 background:#fff;border:1px solid var(--ln);border-radius:18px;
 box-shadow:0 10px 26px -22px rgba(34,63,122,.5)}
#sbook>.wr>.sbbw:first-child{margin-top:0}
.sbbw span{max-width:56ch;font-size:13.2px}
@media(max-width:720px){.sbbw{flex-direction:column;text-align:center;gap:10px}
 .sbbw span{text-align:center}}
/* scroll reveal band */
.srev{position:relative;background:var(--euc-3);overflow:hidden;
 height:clamp(430px,76vh,730px)}
.srevf{position:absolute;inset:0;overflow:hidden;
 clip-path:inset(var(--ry,17%) var(--rx,13%) round var(--rr,26px));
 -webkit-clip-path:inset(var(--ry,17%) var(--rx,13%) round var(--rr,26px));
 will-change:clip-path}
.srevf .fr{position:absolute;inset:-6% 0;height:112%;transform:scale(var(--rs,1.08));
 transform-origin:center;will-change:transform}
/* the photo is bright, so the caption gets a bottom-anchored scrim rather than a flat wash */
.srevo{position:absolute;inset:0;z-index:3;pointer-events:none;
 background:
  linear-gradient(180deg,rgba(10,21,46,.12) 0%,rgba(10,21,46,0) 32%,
    rgba(10,21,46,calc(var(--rv1,.72) * 0.58)) 70%,rgba(10,21,46,var(--rv1,.72)) 100%),
  linear-gradient(96deg,rgba(10,21,46,var(--rv2,.34)) 0%,
    rgba(10,21,46,calc(var(--rv2,.34) * 0.53)) 38%,rgba(10,21,46,0) 66%)}
.srevc{position:absolute;z-index:5;left:0;right:0;bottom:0;color:#fff;
 max-width:var(--mw);margin:0 auto;padding:0 var(--pd) clamp(28px,3.4vw,50px);
 opacity:var(--ro,0);transform:translateY(calc((1 - var(--ro,0)) * 18px));
 transition:opacity .2s linear}
.srevc b{display:block;max-width:19ch;font-family:var(--fd);font-weight:800;letter-spacing:-.022em;
 font-size:clamp(21px,2.4vw,34px);line-height:1.14;
 text-shadow:0 2px 4px rgba(7,16,38,.75),0 4px 26px rgba(7,16,38,.65)}
.srevc span{display:block;margin-top:11px;max-width:40ch;font-size:14.6px;line-height:1.62;color:#E4EBF7;
 text-shadow:0 1px 3px rgba(7,16,38,.8),0 2px 16px rgba(7,16,38,.6)}
@media(max-width:700px){.srevc b{max-width:100%}.srevc span{max-width:100%}}
@media(prefers-reduced-motion:reduce){
 .srevf{clip-path:inset(0 0 round 0);-webkit-clip-path:inset(0 0 round 0)}
 .srevf .fr{transform:none}
 .srevc{opacity:1;transform:none}
}
#shro.shro-img .ld{max-width:44ch;font-size:clamp(16px,1.5vw,20px)}
#shro.shro-img h1{max-width:13ch}
/* ═══ 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)}
/* ═══ 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}
/* page accent */
:root{--rv1:.86;--rv2:.48;--ac-sf1:#FFFFFF;--ac-sf2:#FEF9EC;--ac-sf3:#FBEEC8;--ac-gh:rgba(190,143,20,.32);--ac:#F7C447;--ac-dp:#8E6A08;--ac-lt:#FBDD93;--ac-bar:#223F7A}
/* ═══ 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}}
#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)}
.ahp a{color:var(--cy-dp);font-weight:600;border-bottom:1px solid rgba(18,127,160,.4)}
#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)}
.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}
.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}
.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}
.sdocb{margin-top:20px}
.sdocb .bn{margin-top:0}
/* ── mega-menu footer (was missing on the service and article pages) ── */
.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}
.mgb{display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 padding:12px 24px;border-radius:100px;background:var(--euc);color:#fff;
 font-size:13.5px;font-weight:600;transition:background .3s,padding .3s}
.mgb:hover{background:var(--cy-dp);color:#fff;padding-left:24px}
@media(max-width:980px){.mgf{flex-direction:column;align-items:flex-start}}
/* page accent */
:root{--ac:#5C7FC4;--ac-dp:#223F7A;--ac-lt:#D3DFF3;--ac-sf1:#FAFCFE;--ac-sf2:#EDF2FB;--ac-sf3:#DCE6F6;--ac-gh:rgba(34,63,122,.30);--ac-2:#F7C447;--ac-2dp:#8E6A08;--ac-bar:#223F7A}
/* page accent */
:root{--ac-sf1:#FFFFFF;--ac-sf2:#FEF9EC;--ac-sf3:#FBEEC8;--ac-gh:rgba(190,143,20,.32);--ac:#F7C447;--ac-dp:#8E6A08;--ac-lt:#FBDD93;--ac-bar:#223F7A}
/* page accent */
:root{--ac:#34B9D7;--ac-dp:#0E6A85;--ac-lt:#D2ECF6;--ac-sf1:#F5FBFD;--ac-sf2:#E2F2FA;--ac-sf3:#CDE7F5;--ac-gh:rgba(14,106,133,.30);--ac-2:#F7C447;--ac-2dp:#8E6A08;--ac-bar:#223F7A}
/* ══ COSMETIC — blush accent overrides + floral motifs ══ */
body{--ac:#C2647F;--ac-dp:#8E3F57;--ac-lt:#F6DEE5;--ac-sf1:#FDF5F7;--ac-sf2:#FBEBF0;--ac-sf3:#F3D9E2;
 --ac-gh:rgba(142,63,87,.32);--ac-h1:#8E3F57;--ac-bar:#8E3F57;
 --ac-hero1:#FDF5F7;--ac-hero2:#FBEBF0;--ac-hero3:#F3D9E2;--ac-2:#E8A9BC;--ac-2dp:#8E3F57}
#shro.shro-img .shov{background:linear-gradient(100deg,rgba(74,26,40,.86) 0%,rgba(107,44,62,.6) 46%,rgba(142,63,87,.14) 78%)}
.stm{background:var(--ac-dp)}
.srev .srevo{background:linear-gradient(180deg,rgba(74,26,40,.1),rgba(74,26,40,.62))}
/* floral ornaments */
.flo{position:absolute;pointer-events:none;color:var(--ac);opacity:.5;z-index:0}
.flo path,.flo circle,.flo ellipse{vector-effect:non-scaling-stroke}
.flo-a{top:-30px;right:2%;width:clamp(120px,15vw,230px);transform:rotate(8deg)}
.flo-b{bottom:-40px;left:-24px;width:clamp(110px,13vw,200px);transform:rotate(-160deg);opacity:.34}
.flo-c{top:8%;left:-30px;width:clamp(90px,10vw,160px);transform:rotate(-24deg);opacity:.3}
.flo-d{bottom:-26px;right:-18px;width:clamp(100px,12vw,180px);transform:rotate(150deg);opacity:.28}
#sbook,#what,#how,#squest,#srel,#srisk,#learn,#terms,#you{position:relative;overflow:hidden}
#sbook .wr,#what .wr,#how .wr,#squest .wr,#srel .wr,#srisk .wr,#learn .wr,#terms .wr,#you .wr{position:relative;z-index:1}
#shro .flo{color:#F6DEE5;opacity:.3}
#srisk .flo{color:#E8A9BC;opacity:.22}
/* floral divider */
.flodiv{display:flex;align-items:center;justify-content:center;gap:16px;padding:clamp(22px,3vw,42px) 0;
 background:var(--ac-sf1)}
.flodiv:before,.flodiv:after{content:"";height:1px;flex:0 1 clamp(50px,14vw,190px);
 background:linear-gradient(90deg,transparent,var(--ac-lt),transparent)}
.flodiv svg{width:38px;height:38px;color:var(--ac);opacity:.75;flex:0 0 auto}
/* risks band */
#srisk{background:linear-gradient(168deg,#4A1A28 0%,#6B2C3E 58%,#8E3F57 100%);color:#fff}
#srisk .st .eb{color:#F6DEE5}
#srisk .d2{color:#fff}
#srisk .rkg{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(22px,3vw,50px);align-items:start;
 margin-top:clamp(24px,3vw,40px)}
#srisk .rkb{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:20px;
 padding:clamp(22px,2.4vw,34px)}
#srisk .rkb h3{font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.2em;
 text-transform:uppercase;color:#F3C6D3;margin:0 0 14px}
#srisk .rkb h3+h3{margin-top:26px}
#srisk .rkb ul{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:9px}
#srisk .rkb li{position:relative;padding-left:19px;font-size:14.2px;line-height:1.7;color:rgba(255,255,255,.9)}
#srisk .rkb li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;
 background:#E8A9BC}
#srisk .rkb p{font-size:14.2px;line-height:1.76;color:rgba(255,255,255,.9);margin:0 0 12px}
#srisk .rkb p:last-child{margin-bottom:0}
#srisk .rkw{margin-top:20px;padding:17px 20px;background:rgba(247,196,71,.13);
 border:1px solid rgba(247,196,71,.42);border-radius:14px;font-size:13.6px;line-height:1.76}
#srisk .rkw b{color:var(--yl)}
/* registration panel */
.creg{margin-top:20px;padding:14px 17px;background:var(--ac-sf1);border-radius:12px;
 border-left:3px solid var(--ac);font-size:12.5px;line-height:1.72;color:var(--tx-2)}
.creg b{color:var(--euc)}
.creg a{color:var(--ac-dp);font-weight:600}
@media(max-width:980px){#srisk .rkg{grid-template-columns:1fr}}
/* ── #you — plain-language reassurance + glossary ── */
.cyin{margin-top:16px;max-width:64ch;font-size:14.8px;line-height:1.78;color:var(--tx-2)}
/* the "before you ring" cards ride the same rail component as the
   "worth knowing" cards — no fixed height needed here, since these do not
   flip, so flex stretches them all to the tallest in view */
.cytrack .cyc{flex:0 0 clamp(258px,24vw,312px);scroll-snap-align:start}
.cyc{background:var(--ac-sf1);border:1px solid var(--ac-sf3);border-radius:18px;
 padding:clamp(18px,2vw,25px);transition:transform .55s var(--e),box-shadow .55s var(--e),border-color .4s}
.cyc:hover{transform:translateY(-4px);border-color:var(--ac-2);box-shadow:0 26px 52px -38px rgba(142,63,87,.45)}
.cyc b{display:block;font-family:var(--fd);font-size:clamp(15px,1.28vw,17px);font-weight:700;
 color:var(--ac-dp);letter-spacing:-.012em;line-height:1.3}
.cyc p{margin-top:10px;font-size:13.9px;line-height:1.72;color:var(--tx-2)}
/* ── hero height ──────────────────────────────────────────────────────────
   The chassis hero is min-height:clamp(600px,88vh,900px) with ~150px of top
   padding, sized for pages whose hero carries a side card. This page has no
   side card, so it read as a very tall photograph.

   Note that min-height alone was not what made it tall: the section is a
   flex column that grows past its min-height, so the real driver was the
   content. Three things are cut together:
     · the h1 rendered as three lines because max-width:13ch forced each of
       its two authored `.wl` lines to wrap again — same fault as the homepage
       hero. 26ch gives the intended two lines and saves a whole line of d1.
     · the lead was capped at 44ch, six lines deep. 60ch brings it to four.
     · the top padding is trimmed, and min-height reduced to match.
   ── */
#shro{min-height:clamp(380px,52vh,560px);
 padding:calc(max(var(--hh,112px),104px) + clamp(20px,2.2vw,34px)) 0 clamp(30px,3.4vw,50px)}
#shro.shro-img h1{max-width:26ch}
#shro.shro-img .ld{max-width:60ch;font-size:clamp(15.5px,1.32vw,18.5px)}
#shro .shsub{margin-top:12px;max-width:62ch;font-size:13.2px;line-height:1.62}
#shro.shro-img .shbg picture>img{object-position:center 26%}
@media(max-width:820px){#shro{min-height:clamp(340px,48vh,460px)}}
/* ── hero scrim: solved against the photograph, not set by eye ─────────────
   Worked out by _cosmetic_scrim.py, which composites a candidate gradient
   over images/coshero-1600.jpg pixel by pixel, measures white-text contrast
   everywhere text actually falls, and returns the lightest gradient that
   still holds WCAG AA.

   Worth knowing: the PREVIOUS scrim measured 3.00:1 where the lead paragraph
   ran furthest right over the bright side of the face — already below AA. It
   was not only too dark, it was too dark in the wrong place. Narrowing the
   lead cap to 46ch pulls the text off that bright region, which is what makes
   a lighter scrim possible at all.

   Result: 4.82:1 worst case (target 4.5), and the right side of the frame goes
   from 78% to 90% visible — the right third from 90% to 99%, effectively clear.
   Do not widen the lead cap without re-running that script. ── */
#shro.shro-img .shov{background:linear-gradient(100deg,
 rgba(58,20,31,.82) 0%,rgba(58,20,31,.80) 34%,
 rgba(58,20,31,.06) 68%,rgba(58,20,31,0) 80%,rgba(58,20,31,0) 100%)}
#shro.shro-img .ld{max-width:46ch}
@media(max-width:900px){
  /* stacked, so the text sits over the whole frame and needs even cover */
  #shro.shro-img .shov{background:linear-gradient(180deg,
   rgba(58,20,31,.86) 0%,rgba(58,20,31,.78) 55%,rgba(58,20,31,.72) 100%)}
}
/* ── florals: a handful of sprigs, not a pattern ──────────────────────────
   The repeating tile that briefly lived here put the motif everywhere, which
   was the opposite of the brief. Five sprigs are placed instead, each with its
   stem base sitting just off the section edge so it reads as growing in rather
   than as a drawing that has been cut off. Sections keep `overflow:hidden`,
   which is what does the cropping — so a sprig must never be positioned with
   its flowering tip near an edge. ── */
.flo{position:absolute;pointer-events:none;color:var(--ac);z-index:0}
.flo-a{right:2.5%;bottom:-8%;width:clamp(120px,13vw,196px)}
.flo-b{left:-2%;bottom:-10%;width:clamp(112px,12vw,182px)}
.flo-c{right:3%;top:-6%;width:clamp(92px,9.5vw,142px);transform:rotate(172deg)}
.flo-d{left:1.5%;bottom:-9%;width:clamp(96px,10vw,150px);transform:scaleX(-1)}
@media(max-width:900px){.flo{display:none}}
/* hero sub-strap — the "these are medical procedures" line, kept visible but
   no longer the whole opening pitch */
#shro .shsub{margin-top:14px;max-width:56ch;padding-left:15px;border-left:2px solid rgba(246,222,229,.5);
 font-size:13.6px;line-height:1.7;color:rgba(255,255,255,.86)}
/* concern-card lead-in */
.cwl{margin:clamp(30px,3.6vw,48px) 0 clamp(14px,1.6vw,20px);font-family:var(--fu);font-size:10.5px;
 font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--ac-dp)}
/* ── #learn — educational block ── */
#learn{position:relative;overflow:hidden;background:var(--ac-sf1);border-top:1px solid var(--ac-sf3);
 border-bottom:1px solid var(--ac-sf3)}
#learn .wr{position:relative;z-index:1}
/* ── #learn — flip cards on a horizontal rail ── */
.cerail{position:relative;margin-top:clamp(22px,2.6vw,34px)}
.cehd{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.cehn{font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;
 color:var(--ac-dp);opacity:.8}
.cenav{display:flex;gap:9px;margin-left:auto}
.cenb{width:44px;height:44px;border-radius:50%;border:1px solid var(--ac-sf3);background:#fff;
 color:var(--ac-dp);display:grid;place-items:center;cursor:pointer;padding:0;
 transition:background .35s,border-color .35s,color .35s,opacity .35s,transform .35s var(--e)}
.cenb svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cenb:hover:not(:disabled){background:var(--ac);border-color:var(--ac);color:#fff;transform:translateY(-2px)}
.cenb:disabled{opacity:.3;cursor:default}
.cenb:focus-visible{outline:2px solid var(--ac);outline-offset:3px}
.cetrack{display:flex;gap:var(--cgap,clamp(12px,1.4vw,18px));overflow-x:auto;overflow-y:hidden;
 scroll-snap-type:x mandatory;scroll-behavior:smooth;perspective:1900px;
 padding:8px 2px 20px;margin:-8px -2px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.cetrack::-webkit-scrollbar{display:none}
.cetrack:focus-visible{outline:2px solid var(--ac);outline-offset:4px;border-radius:20px}
.cef{flex:0 0 clamp(252px,25vw,306px);height:clamp(340px,27vw,364px);min-height:0;scroll-snap-align:start}
#learn .cef .sof{background:linear-gradient(152deg,#fff 0%,var(--ac-sf1) 52%,var(--ac-sf2) 100%);
 border-color:var(--ac-sf3);justify-content:flex-start}
#learn .cef .sof h4{color:var(--euc);max-width:20ch}
#learn .cef .sob{background:linear-gradient(158deg,var(--ac-dp) 0%,#6B2C3E 100%);border-color:var(--ac-dp);
 align-items:flex-start;overflow-y:auto;scrollbar-width:thin;
 scrollbar-color:rgba(246,222,229,.45) transparent}
#learn .cef .sob::-webkit-scrollbar{width:4px}
#learn .cef .sob::-webkit-scrollbar-thumb{background:rgba(246,222,229,.45);border-radius:4px}
#learn .cef .sob b{color:var(--ac-lt)}
#learn .cef .sob p{color:#F3DDE4;font-size:13px;line-height:1.66}
/* when every card already fits, the rail behaves as a plain row and the
   arrows are removed rather than sitting there permanently disabled */
.cerail.nofl .cehd{display:none}
.cerail.nofl .cetrack{scroll-snap-type:none}
@media(max-width:620px){.cef{flex-basis:min(80vw,292px)}.cehn{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.cetrack{scroll-behavior:auto}.soin{transition:none}}
.cask{margin-top:clamp(20px,2.4vw,30px);background:#fff;border:1px solid var(--ac-sf3);border-left:3px solid var(--ac);
 border-radius:16px;padding:clamp(20px,2.2vw,28px)}
.cask b{display:block;font-family:var(--fd);font-size:clamp(15px,1.25vw,17.5px);font-weight:700;
 color:var(--euc);letter-spacing:-.012em}
.cask ul{margin-top:14px;list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
 gap:10px 26px}
.cask li{position:relative;padding-left:23px;font-size:13.8px;line-height:1.68;color:var(--tx-2)}
.cask li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;
 background:var(--ac);box-shadow:0 0 0 3px var(--ac-sf2)}
/* risks intro — the visible summary that sits above the collapsed panels */
#srisk .rkin{margin-top:16px;max-width:72ch;font-size:14.4px;line-height:1.78;color:rgba(255,255,255,.88);
 padding-left:16px;border-left:2px solid rgba(232,169,188,.65)}
#srisk .rkin b{color:#fff}
/* ── risk panels — click to expand, so the section stays short ── */
#srisk .rkacc{display:grid;gap:12px;align-content:start}
.rkp{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:16px;
 overflow:hidden;transition:border-color .4s,background .4s}
.rkp:hover{border-color:rgba(232,169,188,.55);background:rgba(255,255,255,.1)}
.rkp[open]{background:rgba(255,255,255,.1);border-color:rgba(232,169,188,.42)}
.rkp>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;
 padding:clamp(15px,1.7vw,20px) clamp(17px,1.9vw,24px);min-height:56px}
.rkp>summary::-webkit-details-marker{display:none}
.rkp>summary:focus-visible{outline:2px solid #F6DEE5;outline-offset:-3px}
.rkps{flex:1 1 auto;font-family:var(--fd);font-size:clamp(14.5px,1.2vw,16.5px);font-weight:700;
 color:#fff;letter-spacing:-.012em;line-height:1.3}
.rkpn{flex:0 0 auto;font-family:var(--fu);font-size:9.5px;font-weight:800;letter-spacing:.14em;
 text-transform:uppercase;color:#E8A9BC}
.rkpt{flex:0 0 auto;position:relative;width:22px;height:22px;border-radius:50%;
 border:1px solid rgba(255,255,255,.32);transition:transform .45s var(--e),border-color .35s,background .35s}
.rkpt:before,.rkpt:after{content:"";position:absolute;left:50%;top:50%;background:#fff;border-radius:1px;
 transform:translate(-50%,-50%)}
.rkpt:before{width:9px;height:1.5px}
.rkpt:after{width:1.5px;height:9px;transition:opacity .35s,transform .45s var(--e)}
.rkp[open] .rkpt{transform:rotate(180deg);border-color:#E8A9BC;background:rgba(232,169,188,.22)}
.rkp[open] .rkpt:after{opacity:0;transform:translate(-50%,-50%) scaleY(0)}
.rkpb{padding:0 clamp(17px,1.9vw,24px) clamp(17px,1.9vw,24px)}
.rkpb ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.rkpb li{position:relative;padding-left:19px;font-size:14.2px;line-height:1.7;color:rgba(255,255,255,.9)}
.rkpb li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;
 background:#E8A9BC}
.rkpb p{font-size:14.2px;line-height:1.76;color:rgba(255,255,255,.9);margin:0 0 12px}
.rkpb p:last-child{margin-bottom:0}
.rkpb ul+p,.rkpb p+ul{margin-top:12px}
.rkpb .rkurg{margin-top:14px;padding:13px 16px;border-radius:12px;background:rgba(247,196,71,.13);
 border:1px solid rgba(247,196,71,.4);font-size:13.6px}
.rkpb .rkurg b{color:var(--yl)}
@media print{.rkp{border-color:rgba(0,0,0,.2)}.rkpb{display:block!important}}
/* ── #terms — practical details ── */
#terms{position:relative;overflow:hidden}
#terms .wr{position:relative;z-index:1}
.cpin{margin-top:16px;max-width:68ch;font-size:14.4px;line-height:1.76;color:var(--tx-2)}
.sdis a{color:var(--ac-dp);font-weight:600;border-bottom:1px solid var(--ac-sf3)}
.sdis a:hover{border-bottom-color:var(--ac)}
/* practical-details flip cards — wider and taller than the "worth knowing"
   cards because their backs carry full bullet lists, not a paragraph. The
   back also scrolls rather than clipping, which is the safety net at the
   narrowest card width. */
/* two cards in view at a time. The track publishes its own gap as a custom
   property so the basis maths and the flex gap can never drift apart. */
.cetrack{--cgap:clamp(12px,1.4vw,18px)}
.cptrack .cpf{flex:0 0 calc((100% - var(--cgap))/2);height:clamp(380px,27vw,412px);
 min-height:0;scroll-snap-align:start}
@media(max-width:760px){.cptrack .cpf{flex-basis:100%;height:clamp(430px,116vw,486px)}}
#terms .cpf .sof{background:linear-gradient(152deg,#fff 0%,var(--ac-sf1) 52%,var(--ac-sf2) 100%);
 border-color:var(--ac-sf3);justify-content:flex-start}
#terms .cpf .sof h4{color:var(--euc);max-width:20ch}
#terms .cpf .sob{background:linear-gradient(158deg,var(--ac-dp) 0%,#6B2C3E 100%);border-color:var(--ac-dp);
 align-items:flex-start;justify-content:flex-start;overflow-y:auto;
 scrollbar-width:thin;scrollbar-color:rgba(246,222,229,.45) transparent}
#terms .cpf .sob::-webkit-scrollbar{width:4px}
#terms .cpf .sob::-webkit-scrollbar-thumb{background:rgba(246,222,229,.45);border-radius:4px}
#terms .cpf .sob b{color:var(--ac-lt);font-size:15px;margin-bottom:12px}
#terms .cpf .sob ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;width:100%}
#terms .cpf .sob li{position:relative;padding-left:19px;font-size:12.9px;line-height:1.62;color:#F3DDE4;text-align:left}
#terms .cpf .sob li:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;
 background:var(--ac-2)}
#terms .cpf .sob li strong{color:#fff;font-weight:700}
#terms .cpf .sob a{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.45)}
.cpp{display:inline-block;padding:5px 12px;border-radius:100px;background:var(--ac);color:#fff;
 font-size:9.5px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
/* ── immunisation: NIP tables + RSV cards ── */
.nipt{font-family:var(--fd);font-size:clamp(17px,1.9vw,23px);font-weight:700;color:var(--euc);
 margin:clamp(30px,3.6vw,52px) 0 clamp(14px,1.6vw,20px);padding-bottom:11px;border-bottom:2px solid var(--ac-lt)}
.nipg{display:grid;gap:0;margin-bottom:clamp(14px,1.8vw,24px)}
.nipr{display:grid;grid-template-columns:minmax(140px,200px) 1fr;gap:clamp(12px,2vw,30px);
 padding:clamp(14px,1.6vw,20px) 0;border-bottom:1px solid var(--ln)}
.nipr:first-child{border-top:1px solid var(--ln)}
.nipa{font-family:var(--fu);font-size:12.4px;font-weight:800;letter-spacing:.03em;color:var(--ac-dp);
 line-height:1.45;padding-top:3px}
.nipv{display:flex;flex-wrap:wrap;gap:7px;align-items:flex-start}
.nipv span{display:inline-block;padding:5px 12px;border-radius:100px;background:var(--ac-sf2);
 border:1px solid var(--ac-lt);font-size:12.8px;font-weight:600;color:var(--euc);line-height:1.4}
.nipv em{flex:1 0 100%;font-style:normal;font-size:12.9px;line-height:1.65;color:var(--tx-3);margin-top:4px}
.nipl{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:9px}
.nipl li{position:relative;padding-left:20px;font-size:14.4px;line-height:1.7;color:var(--tx-2)}
.nipl li:before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;
 background:var(--ac)}
.nipl b{color:var(--euc);font-weight:700}
.niph{font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
 color:var(--ac-dp);margin:0 0 12px}
.rsvg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,26px);
 margin-top:clamp(26px,3vw,42px)}
.rsvc{position:relative;background:#fff;border:1px solid var(--ln);border-radius:20px;
 padding:clamp(22px,2.4vw,32px);display:flex;flex-direction:column;
 transition:transform .5s var(--e),box-shadow .5s var(--e)}
.rsvc:hover{transform:translateY(-5px);box-shadow:0 32px 62px -44px rgba(34,63,122,.45)}
.rsvn{position:absolute;top:clamp(18px,2vw,26px);right:clamp(20px,2.2vw,28px);
 font-family:var(--fu);font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--ac-lt)}
.rsve{display:block;font-family:var(--fu);font-size:10px;font-weight:800;letter-spacing:.2em;
 text-transform:uppercase;color:var(--ac-dp);margin-bottom:9px}
.rsvc h3{font-family:var(--fd);font-size:19px;font-weight:700;color:var(--euc);margin:0 0 12px;line-height:1.24}
.rsvc p{font-size:14.3px;line-height:1.76;color:var(--tx-2);margin:0 0 12px}
.rsvc b{color:var(--euc);font-weight:700}
.rsvf{margin-top:auto;padding-top:14px;border-top:1px solid var(--ln);font-size:12.4px;
 line-height:1.6;color:var(--tx-3)}
.rsvf b{color:var(--ac-dp);font-weight:800}
@media(max-width:980px){.rsvg{grid-template-columns:1fr}
 .nipr{grid-template-columns:1fr;gap:8px}.nipa{padding-top:0}}
/* page accent */
:root{--ac:#34B9D7;--ac-dp:#0E6A85;--ac-lt:#D2ECF6;--ac-sf1:#F5FBFD;--ac-sf2:#E2F2FA;--ac-sf3:#CDE7F5;--ac-gh:rgba(34,63,122,.32);--ac-2:#223F7A;--ac-2dp:#223F7A;--ac-bar:#223F7A;--ac-h1:#0E6A85;--ivory:#F5FAFD;--ivory-2:#E4F0F8;--ac-hero1:#F7FBFD;--ac-hero2:#E9F3FA;--ac-hero3:#D8EAF6;--rv1:.50;--rv2:.18}
/* ── the ABCDE guide ── */
#abcde{background:linear-gradient(168deg,rgba(52,185,215,.10),rgba(255,255,255,0) 54%),var(--ivory-2);
 border-top:1px solid var(--ln);border-bottom:1px solid var(--ln)}
.abcg{margin-top:clamp(26px,3vw,40px);list-style:none;padding:0;display:grid;
 grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.5vw,18px);counter-reset:none}
.abcg>li{background:#fff;border:1px solid var(--ln);border-radius:18px;padding:clamp(18px,2vw,24px);
 box-shadow:0 20px 44px -36px rgba(34,63,122,.5);transition:transform .5s var(--e),border-color .35s}
.abcg>li:hover{transform:translateY(-4px);border-color:var(--cy)}
.abcg i{display:block;font-family:var(--fd);font-style:normal;font-size:clamp(30px,3.4vw,44px);
 font-weight:800;line-height:1;letter-spacing:-.03em;
 background:linear-gradient(150deg,var(--cy-dp),var(--yl-dp));-webkit-background-clip:text;
 background-clip:text;color:transparent}
.abcg b{display:block;margin-top:10px;font-family:var(--fd);font-size:clamp(15px,1.25vw,17px);
 font-weight:700;color:var(--euc);letter-spacing:-.012em}
.abcg span{display:block;margin-top:8px;font-size:13.2px;line-height:1.62;color:var(--tx-2)}
.abcn{margin-top:clamp(20px,2.4vw,30px);max-width:78ch;font-size:13.6px;line-height:1.7;color:var(--tx-2);
 padding-left:16px;border-left:2px solid var(--yl)}
@media(max-width:1080px){.abcg{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.abcg{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.abcg{grid-template-columns:1fr}}
/* page accent */
:root{--ac:#D4649A;--ac-dp:#A83467;--ac-lt:#F6DCE8;--ac-sf1:#FEF7FA;--ac-sf2:#FAE8F0;--ac-sf3:#F3D3E2;--ac-gh:rgba(168,52,103,.30);--ac-2:#F7C447;--ac-2dp:#8E6A08;--ac-bar:#6E2247;--ac-h1:#A83467;--ivory:#FCF3F7;--ivory-2:#F6E5EE;--ac-hero1:#FDF7FA;--ac-hero2:#F8EBF2;--ac-hero3:#F1D9E6}
