/* ---- intro.css ---- */
/* Clutch Med — entry: the logo assembles full-screen, then flies into the header. Navy + gold only. */
html.cin-intro-on,html.cin-intro-on body{overflow:hidden!important}
#cin-intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;
  background:radial-gradient(90% 70% at 50% 40%,#17349B 0%,#0B1D5C 55%,#061033 100%);
  transition:opacity .7s cubic-bezier(.4,0,.2,1) .25s}
#cin-intro::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background:linear-gradient(rgba(157,180,255,.12) 1px,transparent 1px) 0 0/100% 44px,linear-gradient(90deg,rgba(157,180,255,.12) 1px,transparent 1px) 0 0/44px 100%;
  -webkit-mask:radial-gradient(60% 55% at 50% 45%,#000,transparent);mask:radial-gradient(60% 55% at 50% 45%,#000,transparent)}
#cin-intro .ci-box{position:relative;width:min(72vw,560px);aspect-ratio:7/5;transform-origin:50% 50%;will-change:transform,opacity;
  transition:transform 1s cubic-bezier(.65,0,.25,1),opacity .9s cubic-bezier(.65,0,.25,1)}
#cin-intro .ci-box>div{position:absolute;inset:0}
#cin-intro canvas,#cin-intro img{display:block;width:100%;height:100%}
#cin-intro .ci-skip{all:unset;position:absolute;right:clamp(14px,2vw,32px);bottom:clamp(14px,2vw,32px);cursor:pointer;
  font:600 .72rem/1 var(--mono,ui-monospace,monospace);letter-spacing:.18em;text-transform:uppercase;color:rgba(233,207,142,.85);
  padding:.75rem 1.1rem;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(233,207,142,.35);transition:background .25s,color .25s}
#cin-intro .ci-skip:hover,#cin-intro .ci-skip:focus-visible{background:var(--gold-l,#E9CF8E);color:#0B1433;outline:none}
#cin-intro .ci-hint{position:absolute;left:50%;bottom:clamp(14px,2vw,32px);transform:translateX(-50%);
  font:500 .7rem/1 var(--mono,ui-monospace,monospace);letter-spacing:.2em;text-transform:uppercase;color:rgba(246,242,232,.45);opacity:0;transition:opacity .5s .15s}
/* gold pulse while the GPU warms up; hidden the moment the engine reports its mode */
#cin-intro .ci-load{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--gold-l,#E9CF8E);
  box-shadow:0 0 18px rgba(233,207,142,.8);animation:ciPulse 1.1s ease-in-out infinite;transition:opacity .3s}
#cin-intro .ci-load::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px solid rgba(233,207,142,.6);animation:ciRing 1.1s ease-out infinite}
#cin-intro[data-mode] .ci-load{opacity:0;animation:none}
@keyframes ciPulse{0%,100%{transform:scale(.85)}50%{transform:scale(1.15)}}
@keyframes ciRing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.2);opacity:0}}
#cin-intro.ci-landed .ci-hint{opacity:1}
/* exit: the logo shrinks and flies to the header mark, the veil lifts */
#cin-intro.ci-exit{opacity:0;pointer-events:none}
#cin-intro.ci-exit .ci-box{transform:translate(var(--tx,0px),var(--ty,0px)) scale(var(--sc,.1));opacity:0}
#cin-intro.ci-exit .ci-skip,#cin-intro.ci-exit .ci-hint{opacity:0;transition:opacity .2s}
@media (prefers-reduced-motion:reduce){#cin-intro{display:none}}

/* ---- cinematic.css ---- */
/* Clutch Med — cinematic layer. Additive only: no existing colors, copy or art are modified. */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}

/* 3D helix canvas sits behind hero copy + doctor */
#cin3d{position:absolute;inset:0;width:100%;height:100%;border-radius:999px 999px var(--r,24px) var(--r,24px);pointer-events:none;opacity:0;transition:opacity 1.6s var(--ease,ease)}
#cin3d.on{opacity:.55}

/* hero depth: pointer tilt + layered parallax via individual transform props
   (they compose with the existing keyframed `transform`, so nothing is overridden) */
.cin-fine .hero{perspective:1400px}
.cin-fine .stage{will-change:rotate;transition:rotate .5s cubic-bezier(.23,1,.32,1)}
.cin-fine .stage .arch,.cin-fine .stage .float,.cin-fine .stage .vitals,.cin-fine .stage .hint{will-change:translate;transition:translate .6s cubic-bezier(.23,1,.32,1)}
.cin-fine .stage .rig{transition:translate .6s cubic-bezier(.23,1,.32,1)}

/* 3D tilt + glare on the "ways to get care" cards */
.cin-fine .paths{perspective:1200px}
.cin-fine .path{--gx:50%;--gy:50%;position:relative;transition:rotate .45s cubic-bezier(.23,1,.32,1),box-shadow .45s;will-change:rotate}
.cin-fine .path::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(420px circle at var(--gx) var(--gy),rgba(233,207,142,.22),transparent 60%)}
.cin-fine .path:hover::after{opacity:1}
.cin-fine .path:hover{box-shadow:0 30px 60px -24px rgba(11,20,51,.45)}

/* scroll-linked depth for the doctor stage as the hero leaves */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .hero .arch{animation:cinArch linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
    @keyframes cinArch{to{translate:0 -6%;scale:1.06}}
  }
}

@media (prefers-reduced-motion:reduce){#cin3d{display:none}}

/* ---- cinematic-2050.css ---- */
/* Clutch Med — 2050 layer. Palette only: navy #0B1D5C, blue #1B3FA0/#9DB4FF, gold #C9A45C/#E9CF8E. */
@property --cin-a{syntax:"<angle>";initial-value:0deg;inherits:false}

/* full-page reactive particle field */
#cin-field{position:fixed;inset:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:0;transition:opacity 2s ease}
#cin-field.on{opacity:1}

/* scan beam sweeping the doctor */
.cin-scan{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;border-radius:999px 999px var(--r,24px) var(--r,24px)}
.cin-scan::before{content:"";position:absolute;left:-5%;right:-5%;height:22%;top:-25%;
  background:linear-gradient(180deg,transparent,rgba(233,207,142,.0) 20%,rgba(233,207,142,.28) 92%,rgba(255,244,214,.75) 100%);
  border-bottom:1px solid rgba(255,244,214,.85);box-shadow:0 8px 28px rgba(233,207,142,.35);
  mix-blend-mode:screen;animation:cinScan 7s cubic-bezier(.45,.05,.3,1) 2.5s infinite}
.cin-scan::after{content:"";position:absolute;inset:0;opacity:.18;mix-blend-mode:overlay;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.55) 0 1px,transparent 1px 4px)}
@keyframes cinScan{0%{top:-25%;opacity:0}8%{opacity:1}55%{top:100%;opacity:1}60%,100%{top:100%;opacity:0}}

/* holographic edge on cards */
.cin-fine .path::before,.cin-fine .quote::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:conic-gradient(from var(--cin-a),transparent 0 62%,rgba(233,207,142,.9) 74%,rgba(157,180,255,.9) 84%,transparent 94%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  opacity:0;transition:opacity .4s;animation:cinSpin 4s linear infinite}
.cin-fine .path:hover::before,.cin-fine .quote:hover::before{opacity:1}
@keyframes cinSpin{to{--cin-a:360deg}}

/* HUD rail */
.cin-hud{position:fixed;right:clamp(10px,1.4vw,26px);top:50%;transform:translateY(-50%);z-index:150;display:none;flex-direction:column;align-items:flex-end;gap:14px;
  font:700 .62rem/1 var(--sans,system-ui);letter-spacing:.18em;text-transform:uppercase;color:rgba(233,207,142,.85);opacity:0;transition:opacity .8s}
.cin-hud.on{opacity:1}
.cin-fine .cin-hud{display:flex}
.cin-hud .cnt{font-variant-numeric:tabular-nums;color:#F6F2E8;text-shadow:0 0 12px rgba(233,207,142,.6)}
.cin-hud .rail{position:relative;width:1px;height:150px;background:rgba(233,207,142,.25);margin-right:3px}
.cin-hud .rail i{position:absolute;left:-1px;top:0;width:3px;height:var(--p,0%);background:linear-gradient(#E9CF8E,#9DB4FF);box-shadow:0 0 10px rgba(233,207,142,.8);transition:height .2s linear}
.cin-hud button{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;opacity:.45;transition:opacity .3s,color .3s,transform .3s}
.cin-hud button::after{content:"";width:6px;height:6px;border-radius:50%;border:1px solid currentColor;transition:background .3s,box-shadow .3s}
.cin-hud button span{opacity:0;transform:translateX(6px);transition:opacity .3s,transform .3s;white-space:nowrap}
.cin-hud button:hover,.cin-hud button:focus-visible{opacity:1}
.cin-hud button:hover span,.cin-hud button:focus-visible span,.cin-hud button.cur span{opacity:1;transform:none}
.cin-hud button.cur{opacity:1;color:#fff}
.cin-hud button.cur::after{background:#E9CF8E;box-shadow:0 0 12px #E9CF8E}

@media (prefers-reduced-motion:reduce){#cin-field,.cin-scan,.cin-hud{display:none}}

/* ---- cinematic-body.css ---- */
/* Clutch Med — 3D body map section. Palette: navy / blue / gold only. */
.cin-body{position:relative}
.bm-head{display:grid;gap:.9rem;max-width:62ch;margin-bottom:clamp(1.6rem,3vw,2.6rem)}
.bm-head h2{font-size:clamp(2.2rem,1.2rem + 3.6vw,4.4rem);line-height:1;color:#F6F2E8}
.bm-head h2 em{color:var(--gold-l,#E9CF8E)}
.bm-head p{margin:0;color:rgba(246,242,232,.78);max-width:52ch}
.bm-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1rem,2.4vw,2rem);align-items:stretch}
.bm-stage{position:relative;aspect-ratio:5/6;max-height:80svh;min-height:420px;border-radius:var(--r,24px);overflow:hidden;isolation:isolate;
  background:radial-gradient(90% 70% at 50% 35%,rgba(43,85,230,.55) 0%,rgba(11,29,92,.85) 55%,#061033 100%);
  box-shadow:inset 0 0 0 1px rgba(233,207,142,.22),0 40px 80px -40px rgba(3,8,30,.8)}
.bm-stage::before{content:"";position:absolute;inset:0;z-index:0;opacity:.35;pointer-events:none;
  background:linear-gradient(rgba(157,180,255,.14) 1px,transparent 1px) 0 0/100% 38px,linear-gradient(90deg,rgba(157,180,255,.14) 1px,transparent 1px) 0 0/38px 100%;
  -webkit-mask:radial-gradient(70% 60% at 50% 55%,#000,transparent);mask:radial-gradient(70% 60% at 50% 55%,#000,transparent)}
.bm-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab;z-index:1}
.bm-stage canvas.drag{cursor:grabbing}
.bm-stage canvas.hot{cursor:pointer}
.bm-hint{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);z-index:2;pointer-events:none;white-space:nowrap;
  font:700 .66rem/1 var(--sans,system-ui);letter-spacing:.18em;text-transform:uppercase;color:rgba(233,207,142,.9);
  padding:.55rem .9rem;border-radius:999px;background:rgba(6,16,51,.55);box-shadow:inset 0 0 0 1px rgba(233,207,142,.25);transition:opacity .5s}
.bm-stage.used .bm-hint{opacity:0}
.bm-tip{position:absolute;z-index:3;pointer-events:none;left:0;top:0;opacity:0;transform:translate(-50%,-140%);transition:opacity .15s;
  font:700 .72rem/1 var(--sans,system-ui);letter-spacing:.08em;text-transform:uppercase;color:#0B1433;background:var(--gold-l,#E9CF8E);padding:.45rem .7rem;border-radius:999px;box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}
.bm-tip.on{opacity:1}
.bm-view{position:absolute;top:1rem;right:1rem;z-index:3;display:flex;gap:.4rem}
.bm-view button{all:unset;cursor:pointer;box-sizing:border-box;min-height:36px;padding:0 .9rem;display:inline-flex;align-items:center;border-radius:999px;
  font:700 .68rem/1 var(--sans,system-ui);letter-spacing:.14em;text-transform:uppercase;color:#F6F2E8;background:rgba(6,16,51,.55);box-shadow:inset 0 0 0 1px rgba(233,207,142,.3);transition:background .25s,color .25s}
.bm-view button:hover,.bm-view button[aria-pressed="true"]{background:var(--gold-l,#E9CF8E);color:#0B1433}
.bm-view button:focus-visible{outline:3px solid var(--gold,#C9A45C);outline-offset:2px}

.bm-panel{display:flex;flex-direction:column;gap:1.1rem;padding:clamp(1.3rem,2.2vw,2rem);border-radius:var(--r,24px);color:#F6F2E8;
  background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.04));box-shadow:inset 0 0 0 1px rgba(233,207,142,.2)}
.bm-panel .k{font:700 .68rem/1 var(--sans,system-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-l,#E9CF8E)}
.bm-panel h3{font-size:clamp(1.8rem,1.2rem + 1.8vw,2.7rem);line-height:1.05;color:#fff}
.bm-panel h3 em{color:var(--gold-l,#E9CF8E)}
.bm-panel p{margin:0;color:rgba(246,242,232,.8)}
.bm-regions{display:flex;flex-wrap:wrap;gap:.45rem}
.bm-regions button,.bm-chips button{all:unset;cursor:pointer;box-sizing:border-box;min-height:44px;display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;
  font:600 .88rem var(--sans,system-ui);color:#F6F2E8;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(246,242,232,.2);transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.bm-regions button:hover,.bm-chips button:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px var(--gold-l,#E9CF8E)}
.bm-regions button[aria-pressed="true"]{background:var(--gold-l,#E9CF8E);color:#0B1433;box-shadow:none}
.bm-chips{display:flex;flex-wrap:wrap;gap:.5rem;min-height:2.8rem}
.bm-chips button[aria-pressed="true"]{background:var(--forest-2,#2B55E6);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.6),0 0 22px rgba(43,85,230,.7);transform:scale(1.03)}
.bm-chips button.red[aria-pressed="true"]{background:#D9431F;box-shadow:0 0 0 1px rgba(255,255,255,.6),0 0 22px rgba(217,67,31,.7)}
.bm-chips button.red{box-shadow:inset 0 0 0 1px rgba(255,140,110,.6)}
.bm-regions button:focus-visible,.bm-chips button:focus-visible,.bm-go:focus-visible{outline:3px solid var(--gold,#C9A45C);outline-offset:3px}
.bm-go{all:unset;cursor:pointer;box-sizing:border-box;align-self:flex-start;min-height:48px;display:none;align-items:center;gap:.6rem;padding:0 1.4rem;border-radius:999px;font:700 .95rem var(--sans,system-ui);
  color:#0B1433;background:linear-gradient(135deg,#F3E2B0,#C9A45C);box-shadow:0 14px 30px -12px rgba(201,164,92,.7);transition:transform .3s}
.bm-go.on{display:inline-flex}.bm-go:hover{transform:translateY(-2px)}
.bm-fine{font-size:.82rem;color:rgba(246,242,232,.62)!important}
.bm-fine strong{color:#FFB4A0}

@media (max-width:900px){.bm-grid{grid-template-columns:1fr}.bm-stage{aspect-ratio:4/5;min-height:380px}}
@media (prefers-reduced-motion:reduce){.bm-stage canvas{cursor:pointer}}

/* ---- logo3d.css ---- */
/* Clutch Med — 3D logo block. Navy, gold rim; matches the page palette. */
.l3d{padding-block:clamp(2rem,5vw,4rem)}
.l3d-box{position:relative;isolation:isolate;max-width:760px;margin-inline:auto;aspect-ratio:7/5;border-radius:var(--r,24px);overflow:hidden;
  background:#0B1D5C;box-shadow:inset 0 0 0 1px rgba(233,207,142,.28),0 40px 80px -40px rgba(3,8,30,.8)}
.l3d-box>div{position:absolute;inset:0}
.l3d-box canvas,.l3d-box img{display:block;width:100%;height:100%}

/* ---- cinematic-intent.css ---- */
/* Clutch Med — intent bar + spatial glass. Palette only. */
:root{--lx:50%;--ly:0%}

/* cursor-lit glass on the nav */
.nav::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(520px 140px at var(--lx) 0,rgba(233,207,142,.2),transparent 70%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 60%)}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent calc(var(--lx) - 22%),rgba(233,207,142,.85) var(--lx),transparent calc(var(--lx) + 22%))}

/* trigger pill */
.ib-pill{position:fixed;left:clamp(12px,1.6vw,28px);bottom:clamp(12px,1.6vw,28px);z-index:140;display:inline-flex;align-items:center;gap:.7rem;min-height:46px;padding:0 .6rem 0 1.1rem;border-radius:999px;border:0;cursor:pointer;
  font:600 .88rem var(--sans,system-ui);color:#F6F2E8;background:rgba(14,36,110,.55);-webkit-backdrop-filter:blur(18px) saturate(1.6);backdrop-filter:blur(18px) saturate(1.6);
  box-shadow:inset 0 0 0 1px rgba(233,207,142,.35),inset 0 1px 0 rgba(255,255,255,.25),0 18px 40px -16px rgba(3,8,30,.8);transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}
.ib-pill:hover{transform:translateY(-3px)}
.ib-pill:focus-visible{outline:3px solid var(--gold,#C9A45C);outline-offset:3px}
.ib-pill svg{width:16px;height:16px;color:var(--gold-l,#E9CF8E)}
.ib-pill kbd,.ib-foot kbd{font:700 .7rem/1 var(--sans,system-ui);padding:.38rem .55rem;border-radius:8px;color:#0B1433;background:var(--gold-l,#E9CF8E);box-shadow:0 2px 0 rgba(138,106,34,.6)}
@media (hover:none),(max-width:900px){
  .ib-pill{width:54px;height:54px;min-height:0;padding:0;justify-content:center;border-radius:50%;bottom:calc(clamp(12px,1.6vw,28px) + 76px)}
  .ib-pill .ib-txt,.ib-pill kbd{display:none}
  .ib-pill svg{width:21px;height:21px}
  .ib{padding:8vh .75rem .75rem}
  .ib-box{max-height:84vh;border-radius:22px}
  .ib-in{padding:1rem 1.1rem}
  .ib-foot span:not(:last-child){display:none}
}

/* overlay */
.ib{position:fixed;inset:0;z-index:400;display:none;align-items:flex-start;justify-content:center;padding:14vh 1rem 1rem;
  background:rgba(4,10,38,.62);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}
.ib.on{display:flex;animation:ibIn .35s cubic-bezier(.23,1,.32,1)}
@keyframes ibIn{from{opacity:0}to{opacity:1}}
.ib-box{width:min(680px,100%);max-height:72vh;display:flex;flex-direction:column;border-radius:28px;overflow:hidden;position:relative;
  background:linear-gradient(160deg,rgba(27,63,160,.82),rgba(11,29,92,.9));-webkit-backdrop-filter:blur(30px) saturate(1.6);backdrop-filter:blur(30px) saturate(1.6);
  box-shadow:inset 0 0 0 1px rgba(233,207,142,.35),inset 0 1px 0 rgba(255,255,255,.25),0 50px 100px -30px rgba(0,0,0,.8);animation:ibUp .5s cubic-bezier(.34,1.3,.64,1)}
@keyframes ibUp{from{transform:translateY(18px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.ib-box::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,244,214,.9),transparent)}
.ib-in{display:flex;align-items:center;gap:.9rem;padding:1.2rem 1.4rem;border-bottom:1px solid rgba(233,207,142,.18)}
.ib-in svg{flex:none;width:22px;height:22px;color:var(--gold-l,#E9CF8E)}
.ib-in input{all:unset;flex:1;min-width:0;font:400 clamp(1.2rem,1rem + 1vw,1.7rem)/1.2 var(--serif,Georgia,serif);color:#fff}
.ib-in input::placeholder{color:rgba(246,242,232,.5);font-style:italic}
.ib-list{margin:0;padding:.6rem;list-style:none;overflow:auto}
.ib-h{padding:.7rem .9rem .3rem;font:700 .64rem/1 var(--sans,system-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-l,#E9CF8E);opacity:.85}
.ib-it{display:flex;align-items:center;gap:.9rem;padding:.8rem .9rem;border-radius:16px;cursor:pointer;color:#F6F2E8;transition:background .15s}
.ib-it .t{flex:1;min-width:0}.ib-it b{display:block;font:600 1rem var(--sans,system-ui)}.ib-it small{display:block;opacity:.7;font:400 .84rem var(--sans,system-ui)}
.ib-it .ic{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:1.1rem;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(233,207,142,.25)}
.ib-it[aria-selected="true"]{background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(233,207,142,.45)}
.ib-it.red{background:rgba(217,67,31,.28);box-shadow:inset 0 0 0 1px rgba(255,140,110,.7)}
.ib-it.red[aria-selected="true"]{background:rgba(217,67,31,.5)}
.ib-it.red .ic{background:#D9431F;box-shadow:none}
.ib-foot{display:flex;gap:1.1rem;flex-wrap:wrap;padding:.8rem 1.4rem;border-top:1px solid rgba(233,207,142,.18);font:500 .76rem var(--sans,system-ui);color:rgba(246,242,232,.65)}
.ib-foot span{display:inline-flex;align-items:center;gap:.4rem}
@media (prefers-reduced-motion:reduce){.ib.on,.ib-box{animation:none}}

/* ---- cinematic-fonts.css ---- */
/* Clutch Med — future type system. Headlines: Sora. Labels/HUD: JetBrains Mono. Body: Manrope (unchanged). Colors untouched. */
:root{
  --serif:"Sora","Manrope",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
/* brand wordmark keeps its original face */
.logo{font-family:"Bodoni Moda","Didot",Georgia,serif}

/* headlines */
h1,h2,h3{font-weight:300;letter-spacing:-.035em;font-variation-settings:normal}
h1 em,h2 em,h3 em,.hero h1 .i{font-style:normal;font-weight:300}
.hero h1{font-size:clamp(2.6rem,1rem + 5.4vw,6.2rem);line-height:1.02;letter-spacing:-.05em;font-weight:300}
.hero h1 .row{padding-bottom:.14em}
h2{line-height:1.08}
h3{letter-spacing:-.025em;font-weight:400}

/* labels, HUD, readouts */
.eyebrow,.badge,.chip-sep,.cat,.tab .n,.vitals span,.hint,
.cin-hud,.bm-panel .k,.bm-view button,.bm-hint,.bm-tip,.ib-h,.ib-foot,.ib-pill kbd,.ib-foot kbd{font-family:var(--mono);font-weight:500}
.eyebrow{letter-spacing:.2em;font-size:.7rem}
.vitals b{font-family:var(--mono);font-weight:500;letter-spacing:-.02em}
.cin-hud .cnt{font-weight:500}

/* Sora has no italic: drop the faux slant (logo wordmark keeps its real Bodoni italic) */
.tab[aria-selected="true"] .t,.big .hl .c{font-style:normal}
.wordmark em{font-style:normal}

@media (max-width:480px){.eyebrow{letter-spacing:.12em;font-size:.64rem}}

/* ---- findus.css ---- */
/* Find us / review block (replaces the payment card). Reuses the .coverage card. */
.findus .ic{background:#E3E9FF;color:#1B3FA0}
.findus .eyebrow{margin-bottom:.2rem}
.findus-actions{display:flex;flex-direction:column;gap:.6rem;align-items:stretch}
.findus-actions .btn{justify-content:center;white-space:nowrap}
.findus-actions .btn svg{margin-left:.35rem}
@media (max-width:900px){.findus-actions{flex-direction:row;flex-wrap:wrap}.findus-actions .btn{flex:1 1 220px}}

/* ---- inherited accessibility fixes (sub-page breadcrumbs) ---- */
.crumbs{color:#3A4468}.crumbs a{text-decoration:underline;text-underline-offset:.2em}
