
  :root{
    --ink:#2A3644;
    --slate:#4E5D6C;
    --dusk:#2E4B69;
    --dusk-2:#284159;
    --dusk-3:#35526F;
    --blue:#446C95;
    --blue-deep:#38597E;
    --sky:#EBF1F5;
    --paper:#FCFBF8;
    --shell:#EAC9A8;
    --shell-soft:#F4E3CC;
    --sky-bright:#66A9E0;
    --sky-glow:#9CC9EF;
    --sky-soft:#CFE5F8;
    --warm-ink:#A5683B;
    --line:#DEE5EA;
    --line-dark:rgba(252,251,248,.16);
    --paper-soft:rgba(252,251,248,.82);
    --radius:14px;
    --font-display:"Lato", "Carlito", "Calibri Light", Calibri, "Segoe UI", sans-serif;
    --font-body:"Carlito", Calibri, "Lato", "Segoe UI", -apple-system, sans-serif;
    --font-caps:"Carlito", Calibri, "Lato", "Segoe UI", sans-serif;
    --maxw:1160px;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{animation:none!important;transition:none!important}
  }
  body{
    font-family:var(--font-body);
    color:var(--ink);
    background:var(--paper);
    line-height:1.7;
    font-size:1.06rem;
    -webkit-font-smoothing:antialiased;
  }
  ::selection{background:var(--shell-soft);color:var(--ink)}
  img,svg{display:block;max-width:100%}
  a{color:var(--blue-deep)}
  a:hover{color:var(--ink)}
  :focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
  .skip{position:absolute;left:-9999px;top:0;background:var(--dusk);color:var(--paper);padding:.6rem 1rem;z-index:200;font-weight:700}
  .skip:focus{left:12px;top:12px}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1.1rem,4vw,2.5rem)}

  /* ---------- type ---------- */
  h1,h2,h3{font-family:var(--font-display);font-weight:300;color:inherit;line-height:1.12}
  h1{font-size:clamp(2.8rem,6.6vw,5rem);letter-spacing:-.01em;line-height:1.06}
  h2{font-size:clamp(2.1rem,4.2vw,3.2rem)}
  h3{font-size:clamp(1.3rem,2vw,1.55rem);line-height:1.3}
  .eyebrow{
    font-family:var(--font-caps);
    font-size:.86rem;
    letter-spacing:.14em;
    color:var(--blue);
    display:flex;align-items:center;gap:.7rem;
    margin-bottom:1.1rem;font-weight:700;
  }
  .eyebrow::before{content:"";width:26px;height:2px;background:var(--shell);flex:none}
  .dark .eyebrow{color:var(--sky-glow)}
  .lead{font-size:clamp(1.12rem,1.7vw,1.3rem);color:var(--slate);max-width:60ch;line-height:1.65}
  .dark{background:var(--dusk);color:var(--paper)}
  .dark .lead{color:var(--paper-soft)}
  .dark h2,.dark h3{color:var(--paper)}
  section{padding:clamp(4rem,9vw,7.5rem) 0}

  /* ---------- reveal ---------- */
  .rv{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}
  .rv.in{opacity:1;transform:none}

  /* ---------- buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;gap:.5rem;
    font-family:var(--font-body);font-weight:700;font-size:1rem;
    padding:.85rem 1.6rem;border-radius:999px;border:1.5px solid transparent;
    cursor:pointer;text-decoration:none;transition:transform .15s ease, background .2s ease, color .2s ease, border-color .2s ease;
  }
  .btn:active{transform:scale(.98)}
  .btn-primary{background:var(--blue);color:#fff}
  .btn-primary:hover{background:var(--blue-deep);color:#fff}
  .btn-warm{background:var(--sky-bright);color:var(--dusk-2)}
  .btn-warm:hover{background:#85BCEB;color:var(--dusk-2)}
  .btn-ghost{border-color:var(--line);color:var(--ink)}
  .btn-ghost:hover{border-color:var(--blue);color:var(--blue-deep)}
  .dark .btn-ghost{border-color:var(--line-dark);color:var(--paper)}
  .dark .btn-ghost:hover{border-color:var(--sky-glow);color:var(--sky-glow)}

  /* ---------- nav ---------- */
  header.site{
    position:sticky;top:0;z-index:100;
    background:rgba(252,251,248,.92);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
    transition:box-shadow .25s ease;
  }
  header.site.scrolled{box-shadow:0 8px 28px rgba(46,75,105,.10)}
  .navbar{display:flex;align-items:center;justify-content:space-between;height:74px}
  .brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--ink)}
  .brand:hover{color:var(--ink)}
  .brand-mark{
    width:38px;height:38px;border-radius:50%;background:var(--dusk);
    display:grid;place-items:center;flex:none;
  }
  .brand-mark svg{width:22px;height:22px}
  .brand-name{font-family:var(--font-display);font-size:1.28rem;font-weight:600;letter-spacing:.01em;line-height:1}
  .brand-sub{font-family:var(--font-caps);font-size:.68rem;letter-spacing:.22em;color:var(--blue);margin-top:3px;font-weight:700}
  nav.primary{display:flex;align-items:center;gap:1.3rem}
  nav.primary a{color:var(--slate);text-decoration:none;font-size:.98rem;font-weight:700}
  nav.primary a:hover{color:var(--blue-deep)}
  nav.primary .btn{padding:.6rem 1.2rem;font-size:.94rem}
  .nav-toggle{display:none;background:none;border:1.5px solid var(--line);border-radius:10px;color:var(--ink);padding:.5rem .8rem;cursor:pointer;font-family:var(--font-caps);font-size:.8rem;letter-spacing:.14em;font-weight:700}
  @media (max-width:1000px){
    nav.primary{
      position:absolute;top:74px;left:0;right:0;
      background:var(--paper);flex-direction:column;align-items:stretch;
      padding:1.2rem clamp(1.1rem,4vw,2.5rem) 1.6rem;gap:1.1rem;
      border-bottom:1px solid var(--line);
      display:none;
    }
    nav.primary.open{display:flex}
    .nav-toggle{display:block}
  }

  /* ---------- hero ---------- */
  .hero{background:linear-gradient(180deg,var(--paper) 0%,var(--sky) 100%);position:relative;overflow:hidden;padding:clamp(4.5rem,10vw,8rem) 0 0}
  .hero .wrap{position:relative;z-index:2}
  .hero h1{max-width:16ch;color:var(--ink)}
  .hero h1 em{font-style:normal;font-weight:400;color:var(--blue)}
  .hero .lead{margin:1.7rem 0 2.5rem}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:3rem}
  .trust{
    display:flex;flex-wrap:wrap;gap:.5rem 1.7rem;
    font-family:var(--font-caps);font-size:.84rem;letter-spacing:.1em;font-weight:700;
    color:var(--slate);padding-bottom:1rem;
  }
  .trust span{display:flex;align-items:center;gap:.55rem}
  .trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--shell);outline:1px solid var(--warm-ink)}
  .hero-wave{position:relative;z-index:1;margin-top:-.5rem}
  .hero-wave svg{width:100%;height:auto;overflow:visible}
  .wave-path{
    fill:none;stroke-linecap:round;stroke-linejoin:round;
    stroke-dasharray:1000;stroke-dashoffset:1000;
  }
  .ripple.gold .rp1{stroke:#FFE9A8}
  .ripple.gold .rp2{stroke:#F2C14E}
  .ripple.gold .rp3{stroke:#D99A1B}
  .ripple.gold.go .rp1{animation:rippleGold 2.3s ease-out forwards}
  .ripple.gold.go .rp2{animation:rippleGold 2.3s ease-out .35s forwards}
  .ripple.gold.go .rp3{animation:rippleGold 2.3s ease-out .7s forwards}
  @keyframes rippleGold{0%{opacity:1;transform:scale(.3);stroke-width:5}100%{opacity:0;transform:scale(6);stroke-width:.5}}
  .finish{opacity:0;transform-box:fill-box;transform-origin:center}
  .finish.show{animation:medalPop .7s cubic-bezier(.34,1.56,.64,1) forwards}
  @keyframes medalPop{0%{opacity:0;transform:scale(.2)}70%{opacity:1;transform:scale(1.22)}100%{opacity:1;transform:scale(1)}}
  .mark{opacity:0;transform-box:fill-box;transform-origin:center}
  .mark.show{animation:medalPop .6s cubic-bezier(.34,1.56,.64,1) forwards}
  .ripple .rp{fill:none;stroke:#7FBFF3;stroke-width:3.5;opacity:0;transform-box:fill-box;transform-origin:center}
  .ripple.go .rp1{animation:rippleGo 1.9s ease-out forwards}
  .ripple.go .rp2{animation:rippleGo 1.9s ease-out .35s forwards}
  .ripple.go .rp3{animation:rippleGo 1.9s ease-out .7s forwards}
  @keyframes rippleGo{0%{opacity:.95;transform:scale(.3);stroke-width:4.5}100%{opacity:0;transform:scale(5);stroke-width:.5}}
  @keyframes draw{to{stroke-dashoffset:0}}
  @keyframes pop{to{opacity:1}}
  @media (prefers-reduced-motion: reduce){
    .wave-path{stroke-dashoffset:0}
    .finish{opacity:1;animation:none}
    .mark{opacity:1;animation:none}
  }

  /* ---------- arc of care ---------- */
  #arc{background:var(--paper)}
  .arc-chart{position:relative;margin:2.6rem 0 1.8rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
  .arc-chart svg{width:100%;height:auto;display:block}
  .arc-line{fill:none;stroke:url(#waveGradArc);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
  .arc-arrow{fill:none;stroke:#3D7FC1;stroke-width:5;stroke-linecap:round}
  .arc-divider{stroke:#E3EAEF;stroke-width:2;stroke-dasharray:2 10;stroke-linecap:round}
  .arc-baseline{stroke:#AFBFCB;stroke-width:2;stroke-dasharray:7 7}
  .arc-basetxt,.arc-starttxt{font-family:var(--font-body);font-size:22px;font-style:italic;fill:#7A8B98}
  .arc-axis{font-family:var(--font-caps);font-size:19px;letter-spacing:.14em;text-transform:uppercase;fill:#93A3AF;font-weight:700}
  .arc-node{fill:#fff;stroke:var(--blue);stroke-width:3;r:16;transition:all .25s ease}
  .arc-node.active{fill:var(--blue);stroke:var(--blue-deep);stroke-width:3.5;r:19}
  .arc-numtxt{font-family:var(--font-body);font-size:17px;font-weight:700;fill:var(--blue-deep);text-anchor:middle;pointer-events:none;transition:fill .25s ease}
  .arc-numtxt.active{fill:#fff}
  .arc-zones{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr 1fr}
  .arc-zone{
    background:transparent;border:none;cursor:pointer;text-align:left;
    padding:1rem 0 0 1.1rem;display:flex;align-items:flex-start;gap:.5rem;
    font-family:var(--font-body);transition:background .2s ease;
  }
  .arc-zone:hover{background:rgba(73,112,150,.05)}
  .arc-zone.active{background:linear-gradient(180deg,rgba(73,112,150,.09),rgba(73,112,150,0) 65%)}
  .arc-zone-num{font-family:var(--font-display);font-style:italic;font-size:1rem;color:var(--blue)}
  .arc-zone-name{font-family:var(--font-caps);font-size:.92rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--slate)}
  .arc-zone.active .arc-zone-name{color:var(--dusk)}
  .arc-zone:focus-visible{outline:2px solid var(--blue);outline-offset:-3px;border-radius:8px}
  @media (max-width:560px){
    .arc-axis{display:none}
    .arc-basetxt{font-size:26px}
    .arc-zone{padding:.6rem 0 0 .6rem}
    .arc-zone-name{font-size:.72rem;letter-spacing:.08em}
    .arc-zone-num{font-size:.8rem}
  }
  .arc-tabs{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.6rem}
  .arc-tab{
    font-family:var(--font-body);font-size:1rem;font-weight:700;
    padding:.6rem 1.35rem;border-radius:999px;border:1.5px solid var(--line);
    background:#fff;color:var(--slate);cursor:pointer;
    transition:all .2s ease;
  }
  .arc-tab .num{font-family:var(--font-display);font-style:italic;color:var(--warm-ink);margin-right:.55rem;font-weight:500}
  .arc-tab:hover{border-color:var(--blue);color:var(--blue-deep)}
  .arc-tab.active{background:var(--dusk);border-color:var(--dusk);color:var(--paper)}
  .arc-tab.active .num{color:var(--shell)}
  .arc-panel{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:clamp(1.6rem,3vw,2.4rem);max-width:760px;
    box-shadow:0 4px 24px rgba(46,75,105,.05);
  }
  .arc-panel h3{margin-bottom:.4rem}
  .arc-panel .tag{font-family:var(--font-caps);font-size:.84rem;letter-spacing:.14em;color:var(--warm-ink);margin-bottom:1rem;font-weight:700}
  .arc-panel .who{margin-top:1.15rem;color:var(--slate);font-style:italic;font-family:var(--font-display);font-size:1.15rem}
  .arc-note{margin-top:1.9rem;font-family:var(--font-display);font-style:italic;font-size:1.35rem;color:var(--blue-deep)}
  .arc-seg{fill:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:round}
  .arc-seg.s0{stroke:#3E6591}
  .arc-seg.s1{stroke:#3D7FC1}
  .arc-seg.s2{stroke:#C9931B}
  .arc-arrow{stroke:#C9931B}
  .arc-zone:nth-child(1){background:linear-gradient(180deg,rgba(62,101,145,.055),rgba(62,101,145,0) 70%)}
  .arc-zone:nth-child(2){background:linear-gradient(180deg,rgba(61,127,193,.055),rgba(61,127,193,0) 70%)}
  .arc-zone:nth-child(3){background:linear-gradient(180deg,rgba(201,147,27,.06),rgba(201,147,27,0) 70%)}
  .arc-zone:nth-child(1):hover{background:linear-gradient(180deg,rgba(62,101,145,.10),rgba(62,101,145,0) 70%)}
  .arc-zone:nth-child(2):hover{background:linear-gradient(180deg,rgba(61,127,193,.10),rgba(61,127,193,0) 70%)}
  .arc-zone:nth-child(3):hover{background:linear-gradient(180deg,rgba(201,147,27,.11),rgba(201,147,27,0) 70%)}
  .arc-zone:nth-child(1).active{background:linear-gradient(180deg,rgba(62,101,145,.14),rgba(62,101,145,0) 70%)}
  .arc-zone:nth-child(2).active{background:linear-gradient(180deg,rgba(61,127,193,.14),rgba(61,127,193,0) 70%)}
  .arc-zone:nth-child(3).active{background:linear-gradient(180deg,rgba(201,147,27,.15),rgba(201,147,27,0) 70%)}
  .arc-zone:nth-child(1) .arc-zone-num{color:#3E6591}
  .arc-zone:nth-child(2) .arc-zone-num{color:#3D7FC1}
  .arc-zone:nth-child(3) .arc-zone-num{color:#C9931B}
  #node0{stroke:#3E6591} #node0.active{fill:#3E6591;stroke:#2E4B69}
  #node1{stroke:#3D7FC1} #node1.active{fill:#3D7FC1;stroke:#2F659C}
  #node2{stroke:#C9931B} #node2.active{fill:#C9931B;stroke:#A87712}
  #numtxt0:not(.active){fill:#2E4B69}
  #numtxt1:not(.active){fill:#2F659C}
  #numtxt2:not(.active){fill:#8A6410}
  #tab0 .num{color:#3E6591}
  #tab1 .num{color:#3D7FC1}
  #tab2 .num{color:#C9931B}
  #tab0.active{background:#3E6591;border-color:#3E6591}
  #tab1.active{background:#3D7FC1;border-color:#3D7FC1}
  #tab2.active{background:#C9931B;border-color:#C9931B}
  .arc-tab.active .num{color:rgba(255,255,255,.85)}
  .arc-panel.stage-0{border-top:4px solid #3E6591}
  .arc-panel.stage-1{border-top:4px solid #3D7FC1}
  .arc-panel.stage-2{border-top:4px solid #C9931B}
  .locator-row{margin:-.5rem 0 1.4rem}
  .locator-cta{
    display:inline-flex;align-items:center;gap:.6rem;
    font-family:var(--font-body);font-size:1rem;font-weight:700;color:var(--dusk);
    background:linear-gradient(180deg,#FFFDF6,#FAF1DE);
    border:1px solid rgba(165,104,59,.5);border-radius:999px;
    padding:.8rem 1.5rem;cursor:pointer;
    box-shadow:0 2px 12px rgba(201,147,27,.18);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
    animation:locatorGlow 3.4s ease-in-out infinite;
  }
  .locator-cta svg{width:19px;height:19px;fill:none;stroke:var(--warm-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .locator-cta:hover{transform:translateY(-2px);border-color:var(--warm-ink);box-shadow:0 8px 22px rgba(201,147,27,.3)}
  .locator-cta:focus-visible{outline:2px solid var(--warm-ink);outline-offset:3px}
  @keyframes locatorGlow{0%,100%{box-shadow:0 2px 12px rgba(201,147,27,.16)}50%{box-shadow:0 3px 18px rgba(201,147,27,.34)}}
  @media (prefers-reduced-motion:reduce){.locator-cta{animation:none}}

  /* ---------- both halves ---------- */
  .halves{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);border-radius:var(--radius);overflow:hidden;margin-top:2.6rem}
  .half{background:var(--dusk-3);padding:clamp(1.8rem,3.4vw,2.8rem)}
  .half h3{margin-bottom:1.2rem;display:flex;align-items:center;gap:.7rem}
  .half h3 svg{width:22px;height:22px;flex:none;stroke:var(--sky-glow)}
  .half ul{list-style:none}
  .half li{padding:.6rem 0;color:var(--paper-soft);border-bottom:1px solid rgba(252,251,248,.09);font-size:1rem}
  .half li:last-child{border-bottom:none}
  .half li strong{color:#fff;font-weight:700}
  .seam{
    margin-top:2.4rem;text-align:center;max-width:50rem;margin-left:auto;margin-right:auto;
    font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.65rem);font-style:italic;color:var(--sky-soft);line-height:1.5;
  }
  @media (max-width:760px){.halves{grid-template-columns:1fr}}

  /* ---------- toolkit ---------- */
  .tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:2.4rem}
  details.tool{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:0;overflow:hidden;transition:border-color .2s ease, box-shadow .2s ease;
  }
  details.tool[open]{border-color:var(--blue);box-shadow:0 4px 20px rgba(46,75,105,.07)}
  details.tool summary{
    list-style:none;cursor:pointer;padding:1.25rem 1.4rem;
    display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  }
  details.tool summary::-webkit-details-marker{display:none}
  details.tool summary .t-name{font-weight:800;font-size:1.06rem;color:var(--ink)}
  details.tool summary .t-tag{font-family:var(--font-caps);font-size:.74rem;letter-spacing:.1em;color:var(--warm-ink);white-space:nowrap;font-weight:700}
  details.tool summary::after{content:"+";font-family:var(--font-display);color:var(--blue);font-size:1.35rem;margin-left:auto;flex:none;line-height:1}
  details.tool[open] summary::after{content:"\2212"}
  details.tool p{padding:0 1.4rem 1.35rem;color:var(--slate);font-size:1rem}

  /* ---------- conditions ---------- */
  .conds{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:2.4rem}
  .cond{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.6rem}
  .cond h3{font-family:var(--font-display);font-weight:600;font-size:1.3rem;color:var(--dusk);margin-bottom:.4rem}
  .cond p{font-size:.98rem;color:var(--slate)}
  .conds-note{margin-top:1.9rem;font-size:1rem;color:var(--slate);max-width:70ch}

  /* ---------- first visit ---------- */
  .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:2.6rem;counter-reset:step}
  .step{position:relative;padding-top:1.3rem}
  .step::before{
    counter-increment:step;content:"0" counter(step);
    font-family:var(--font-display);font-style:italic;font-size:1.15rem;color:var(--warm-ink);font-weight:500;
    display:block;margin-bottom:.6rem;
  }
  .step::after{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--line)}
  .step:first-child::after{background:linear-gradient(90deg,var(--shell),var(--line))}
  .step h3{font-family:var(--font-body);font-weight:800;font-size:1.1rem;margin-bottom:.5rem;color:var(--ink)}
  .step p{font-size:1rem;color:var(--slate)}

  /* ---------- about ---------- */
  .about-grid{display:grid;grid-template-columns:340px 1fr;gap:clamp(2rem,4.5vw,4rem);margin-top:2.6rem;align-items:start}
  @media (max-width:860px){.about-grid{grid-template-columns:1fr}}
  .portrait{
    border-radius:var(--radius);overflow:hidden;position:relative;
    aspect-ratio:4/5;background:linear-gradient(160deg,#3A5A7C,#26405B);
    border:1px solid var(--line-dark);
    display:grid;place-items:center;
  }
  /* PHOTO: replace the div.portrait-fallback below with
     <img src="karel-headshot.jpg" alt="Karel Winner, DNP, PMHNP-BC" style="width:100%;height:100%;object-fit:cover;">
  */
  .portrait-fallback{text-align:center;padding:2rem}
  .portrait-fallback .mono-mark{font-family:var(--font-display);font-size:4.5rem;color:var(--sky-glow);line-height:1}
  .portrait-fallback .mono-sub{font-family:var(--font-caps);font-size:.78rem;letter-spacing:.2em;color:rgba(252,251,248,.55);margin-top:.8rem;font-weight:700}
  .bio p{color:var(--paper-soft);margin-bottom:1.15rem;max-width:62ch}
  .bio p strong{color:#fff}
  .style-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 0}
  .style-tags span{
    font-family:var(--font-caps);font-size:.8rem;letter-spacing:.12em;font-weight:700;
    border:1px solid var(--line-dark);border-radius:999px;padding:.4rem 1rem;color:var(--sky-soft);
  }
  .credwall{margin-top:3.2rem}
  .credwall h3{font-family:var(--font-caps);font-size:.86rem;letter-spacing:.16em;color:var(--sky-glow);font-weight:700;margin:1.9rem 0 .8rem}
  .credwall h3:first-child{margin-top:0}
  .creds{display:flex;flex-wrap:wrap;gap:.5rem}
  .creds span{
    background:rgba(252,251,248,.07);border:1px solid var(--line-dark);border-radius:8px;
    padding:.45rem .9rem;font-size:.92rem;color:var(--paper-soft);font-weight:500;
  }

  /* ---------- coverage ---------- */
  .cov-search{
    width:100%;max-width:420px;margin-top:2.2rem;
    font-family:var(--font-body);font-size:1.05rem;padding:.9rem 1.3rem;
    border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);
  }
  .cov-search::placeholder{color:#98A6B2}
  .cov-search:focus{outline:2px solid var(--blue);outline-offset:2px}
  .cov-status{margin:1.4rem 0 1.6rem;font-family:var(--font-display);font-size:1.3rem;font-style:italic;color:var(--blue-deep);min-height:1.8em}
  .cov-status.yes{color:var(--warm-ink)}
  .states{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.5rem}
  .state{
    font-family:var(--font-body);font-size:.92rem;font-weight:700;letter-spacing:.05em;
    padding:.55rem 0;text-align:center;border-radius:10px;cursor:pointer;
    border:1px solid var(--line);background:#fff;color:#B4BFC9;transition:all .15s ease;
  }
  .state.covered{color:var(--dusk);border-color:#B7CBDB;background:var(--sky)}
  .state.covered:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
  .state.dim{opacity:.25}
  .state.hit{outline:2px solid var(--warm-ink);outline-offset:1px}
  .cov-legend{display:flex;gap:1.6rem;margin-top:1.4rem;font-size:.92rem;color:var(--slate);flex-wrap:wrap}
  .cov-legend span{display:flex;align-items:center;gap:.5rem}
  .swatch{width:14px;height:14px;border-radius:4px;border:1px solid var(--line)}
  .swatch.on{background:var(--sky);border-color:#B7CBDB}
  .ins-list{margin-top:3rem}
  .ins-list h3{font-family:var(--font-caps);font-size:.86rem;letter-spacing:.16em;color:var(--blue);font-weight:700;margin:1.8rem 0 1rem}
  .ins-list h3:first-of-type{margin-top:0}
  .ins-chips{display:flex;flex-wrap:wrap;gap:.5rem}
  .ins-chips span{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.45rem .95rem;font-size:.94rem;font-weight:500;color:var(--ink)}
  .benefits-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.2rem,2.5vw,1.8rem);box-shadow:0 4px 24px rgba(46,75,105,.05);max-width:760px}
  .benefits-card iframe{width:100%;border:0;border-radius:12px;display:block;background:#fff}
  .benefits-lead{color:var(--slate);margin-bottom:1rem}
  .benefits-powered{margin-top:.8rem;font-family:var(--font-caps);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-weight:700}
  .benefits-powered a{color:var(--blue)}
  .ins-note{margin-top:1.1rem;font-size:.98rem;color:var(--slate);max-width:66ch}

  /* ---------- fees ---------- */
  .fee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:2.4rem}
  .fee{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem 1.7rem}
  .fee .amt{font-family:var(--font-display);font-size:2.5rem;color:var(--dusk);line-height:1;margin:.45rem 0 .7rem}
  .fee .amt small{font-family:var(--font-caps);font-size:.8rem;letter-spacing:.08em;color:var(--slate);font-weight:700}
  .fee h3{font-family:var(--font-caps);font-weight:700;font-size:.92rem;letter-spacing:.1em;color:var(--blue)}
  .fee p{font-size:.96rem;color:var(--slate)}
  .logi{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:3rem}
  @media (max-width:760px){.logi{grid-template-columns:1fr}}
  .hours dl{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.6rem;font-size:1rem}
  .hours dt{font-family:var(--font-caps);font-size:.86rem;letter-spacing:.1em;color:var(--blue);padding-top:.15rem;font-weight:700}
  .hours dd{color:var(--ink)}
  .contact-chips{display:flex;flex-direction:column;gap:.7rem}
  .contact-chips a,.contact-chips .cc-static{
    display:flex;align-items:center;gap:.85rem;text-decoration:none;
    background:#fff;border:1px solid var(--line);border-radius:12px;padding:.9rem 1.15rem;
    color:var(--ink);font-weight:700;font-size:1rem;transition:border-color .2s ease;
  }
  .contact-chips .cc-static{cursor:default}
  .contact-chips a:hover{border-color:var(--blue)}
  .contact-chips svg{width:18px;height:18px;stroke:var(--blue);flex:none}
  .contact-chips small{font-family:var(--font-caps);font-size:.74rem;letter-spacing:.14em;color:var(--slate);font-weight:700;margin-left:auto}

  /* ---------- faq ---------- */
  .faq{max-width:780px;margin-top:2.2rem}
  details.q{border-bottom:1px solid var(--line);padding:1.25rem 0}
  details.q summary{
    list-style:none;cursor:pointer;font-weight:800;font-size:1.12rem;color:var(--ink);
    display:flex;justify-content:space-between;gap:1.4rem;align-items:baseline;
  }
  details.q summary::-webkit-details-marker{display:none}
  details.q summary::after{content:"+";font-family:var(--font-display);color:var(--blue);flex:none;font-size:1.35rem;line-height:1}
  details.q[open] summary::after{content:"\2212"}
  details.q p{margin-top:.8rem;color:var(--slate);max-width:64ch}

  /* ---------- screeners ---------- */
  .scr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:2.4rem}
  .scr-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:1.6rem 1.6rem 1.4rem;text-align:left;cursor:pointer;font-family:var(--font-body);
    display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;
    transition:border-color .2s ease, box-shadow .2s ease, transform .15s ease;
  }
  .scr-card:hover{border-color:var(--blue);box-shadow:0 6px 24px rgba(46,75,105,.09);transform:translateY(-2px)}
  .scr-cat{font-family:var(--font-caps);font-size:.8rem;letter-spacing:.12em;font-weight:700;color:var(--warm-ink)}
  .scr-name{font-family:var(--font-display);font-size:1.6rem;color:var(--dusk);line-height:1.15}
  .scr-desc{font-size:.97rem;color:var(--slate)}
  .scr-meta{font-family:var(--font-caps);font-size:.76rem;letter-spacing:.1em;font-weight:700;color:var(--slate);margin-top:.5rem}
  .scr-start{
    margin-top:.9rem;font-weight:700;font-size:.94rem;color:var(--blue-deep);
    border:1.5px solid var(--line);border-radius:999px;padding:.45rem 1.2rem;
    transition:all .2s ease;
  }
  .scr-card:hover .scr-start{background:var(--blue);border-color:var(--blue);color:#fff}
  .scr-note{margin-top:1.9rem;font-size:.95rem;color:var(--slate);max-width:74ch}

  .scr-overlay{
    position:fixed;inset:0;z-index:300;background:rgba(42,54,68,.62);
    backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
    display:grid;place-items:center;padding:1rem;
  }
  .scr-overlay[hidden]{display:none}
  .scr-modal{
    background:#fff;border-radius:18px;width:min(680px,100%);max-height:92vh;
    display:flex;flex-direction:column;overflow:hidden;
    box-shadow:0 30px 80px rgba(20,32,45,.35);
  }
  .scr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.4rem 1.6rem 1rem}
  .scr-modal-cat{font-family:var(--font-caps);font-size:.78rem;letter-spacing:.12em;font-weight:700;color:var(--warm-ink)}
  .scr-head h3{font-size:1.5rem;color:var(--dusk)}
  .scr-close{
    background:none;border:1.5px solid var(--line);border-radius:50%;width:38px;height:38px;flex:none;
    font-size:1.3rem;line-height:1;color:var(--slate);cursor:pointer;
  }
  .scr-close:hover{border-color:var(--blue);color:var(--blue-deep)}
  .scr-progress{height:4px;background:var(--sky);margin:0 1.6rem;border-radius:99px;overflow:hidden}
  .scr-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--sky-bright));border-radius:99px;transition:width .3s ease}
  .scr-body{padding:1.4rem 1.6rem 1.6rem;overflow-y:auto}
  .scr-prompt{font-family:var(--font-caps);font-size:.8rem;letter-spacing:.1em;font-weight:700;color:var(--slate);margin-bottom:.7rem}
  .scr-item{font-family:var(--font-display);font-size:1.4rem;line-height:1.35;color:var(--ink);margin-bottom:1.3rem}
  .scr-opts{display:flex;flex-direction:column;gap:.55rem}
  .scr-opt{
    text-align:left;font-family:var(--font-body);font-size:1rem;color:var(--ink);
    background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:.8rem 1.05rem;cursor:pointer;
    transition:border-color .15s ease, background .15s ease;
  }
  .scr-opt:hover{border-color:var(--blue)}
  .scr-opt.sel{border-color:var(--blue);background:var(--sky);font-weight:700}
  .scr-navrow{display:flex;justify-content:space-between;align-items:center;margin-top:1.3rem;gap:1rem}
  .scr-back{background:none;border:none;color:var(--slate);font-family:var(--font-body);font-size:.95rem;font-weight:700;cursor:pointer;padding:.4rem 0}
  .scr-back:hover{color:var(--blue-deep)}
  .crisis-note{
    background:#FBEDEA;border:1px solid #E4AA9E;border-radius:12px;
    padding:1rem 1.15rem;margin-top:1.1rem;color:#8C3B2E;font-size:.98rem;
  }
  .crisis-note a{color:#8C3B2E;font-weight:800}
  .scr-score-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.4rem}
  .scr-score{font-family:var(--font-display);font-size:3rem;color:var(--dusk);line-height:1}
  .scr-score small{font-size:1.2rem;color:var(--slate)}
  .band{font-family:var(--font-caps);font-size:.84rem;letter-spacing:.1em;font-weight:700;border-radius:999px;padding:.35rem 1rem}
  .band.sev0{background:var(--sky);color:var(--blue-deep)}
  .band.sev1{background:#F6EBD8;color:#8A5A2B}
  .band.sev2{background:#F8DFC9;color:#96521F}
  .band.sev3{background:#FBDDD6;color:#993B2B}
  .meter{height:10px;background:#EEF2F5;border-radius:99px;overflow:hidden;margin:.9rem 0 1.3rem}
  .meter span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--shell),#D98E63);border-radius:99px}
  .scr-interp{color:var(--slate);font-size:1.02rem}
  .scr-interp strong{color:var(--ink)}
  .scr-send{margin-top:1.7rem;border-top:1px solid var(--line);padding-top:1.5rem}
  .scr-send h4{font-family:var(--font-display);font-size:1.35rem;color:var(--dusk);margin-bottom:.3rem;font-weight:500}
  .scr-send .sub{font-size:.94rem;color:var(--slate);margin-bottom:1.1rem}
  .send-fields{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1rem}
  @media (max-width:560px){.send-fields{grid-template-columns:1fr}}
  .send-fields input{
    font-family:var(--font-body);font-size:1rem;padding:.75rem 1rem;color:var(--ink);
    border:1.5px solid var(--line);border-radius:12px;background:#fff;width:100%;
  }
  .send-fields input:focus{outline:2px solid var(--blue);outline-offset:1px}
  .send-btns{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
  .send-ok{font-size:.92rem;color:var(--blue-deep);font-weight:700}
  .send-mech{margin-top:.7rem;font-size:.82rem;color:var(--slate)}
  .scr-links{margin-top:1.3rem;font-size:.95rem;color:var(--slate)}
  .scr-foot{padding:.9rem 1.6rem 1.2rem;font-size:.8rem;color:var(--slate);border-top:1px solid var(--line);background:var(--paper)}

  /* ---------- locator, estimator, prep ---------- */
  .seg{display:inline-flex;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}
  .seg-btn{border:none;background:none;padding:.55rem 1.15rem;font-family:var(--font-body);font-weight:700;font-size:.95rem;color:var(--slate);cursor:pointer;transition:background .15s ease,color .15s ease}
  .seg-btn.active{background:var(--blue);color:#fff}
  .est{display:grid;grid-template-columns:1.35fr 1fr;gap:1.6rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.5rem,3vw,2rem);margin-top:2.6rem;align-items:start}
  @media (max-width:760px){.est{grid-template-columns:1fr}}
  .est-controls{display:flex;flex-direction:column;gap:1.3rem}
  .est-label{font-family:var(--font-caps);font-size:.8rem;letter-spacing:.12em;font-weight:700;color:var(--slate);margin-bottom:.55rem}
  .est-input{font-family:var(--font-body);font-size:1rem;padding:.7rem 1rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%;max-width:340px}
  .est-input:focus{outline:2px solid var(--blue);outline-offset:1px}
  .est-planmsg{margin-top:.5rem;font-size:.92rem;font-weight:700;min-height:1.4em}
  .est-result{background:var(--sky);border-radius:12px;padding:1.4rem 1.5rem}
  .est-amt{font-family:var(--font-display);font-size:2.6rem;color:var(--dusk);line-height:1.05;margin:.2rem 0 .7rem}
  .est-note{font-size:.95rem;color:var(--slate)}
  .chips{display:flex;flex-wrap:wrap;gap:.5rem}
  .chip{font-family:var(--font-body);font-weight:700;font-size:.92rem;border:1.5px solid var(--line);background:#fff;color:var(--slate);border-radius:999px;padding:.5rem 1.05rem;cursor:pointer;transition:all .15s ease}
  .chip:hover{border-color:var(--blue);color:var(--blue-deep)}
  .chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
  .prep{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.6rem,3.2vw,2.4rem);margin-top:3.2rem}
  .prep-title{font-family:var(--font-display);font-size:1.8rem;color:var(--dusk);font-weight:500;margin-bottom:.3rem}
  .prep-sub{color:var(--slate);font-size:1rem;margin-bottom:1.5rem}
  .prep-controls{display:flex;flex-direction:column;gap:1.3rem;margin-bottom:1.5rem}
  .prep-list{list-style:none;margin:1.5rem 0 1.3rem;border-top:1px solid var(--line)}
  .prep-list li{display:flex;align-items:flex-start;gap:.75rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
  .prep-list input[type="checkbox"]{width:19px;height:19px;margin-top:.2rem;accent-color:var(--blue);flex:none;cursor:pointer}
  .prep-list label{cursor:pointer;color:var(--ink)}
  .prep-list li:has(input:checked) label{color:var(--slate);text-decoration:line-through}

  /* ---------- bells and whistles ---------- */
  #scrollProgress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--blue),var(--sky-bright));z-index:240}
  #rotWord{display:inline-block;vertical-align:top;transition:opacity .35s ease, transform .35s ease}
  #rotWord.rot-out{opacity:0;transform:translateY(8px)}
  nav.primary a.cur{color:var(--blue-deep)}
  nav.primary a.nav-crisis, nav.primary a.nav-crisis.cur{background:#FBEDEA;border:1.5px solid #E4AA9E;color:#8C3B2E;border-radius:999px;padding:.5rem 1.05rem;font-size:.9rem}
  nav.primary a.nav-crisis:hover{border-color:#C97A6A;color:#8C3B2E;background:#F8E3DE}
  [id]{scroll-margin-top:92px}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}
  @media (max-width:720px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:2rem 1rem}}
  .stat-num{font-family:var(--font-display);font-size:clamp(2.4rem,4vw,3.2rem);color:var(--sky-glow);display:block;line-height:1}
  .stat-label{font-family:var(--font-caps);font-size:.8rem;letter-spacing:.14em;font-weight:700;color:var(--paper-soft);margin-top:.45rem;display:block}
  .reset-wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:2.2rem;margin-top:2.2rem;align-items:center}
  @media (max-width:760px){.reset-wrap{grid-template-columns:1fr}}
  .breath-stage{display:grid;place-items:center;min-height:300px}
  .breath-circle{
    width:220px;height:220px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #FFFFFF, var(--sky) 70%);
    border:2px solid #C6D7E3;box-shadow:0 14px 40px rgba(46,75,105,.14);
    display:grid;place-items:center;transform:scale(1);
  }
  .breath-phase{font-family:var(--font-display);font-size:1.5rem;color:var(--dusk)}
  .breath-count{font-size:1.05rem;color:var(--slate);font-weight:700;min-height:1.5em}
  .reset-controls{display:flex;flex-direction:column;gap:1.15rem}
  .breath-desc{font-size:.92rem;color:var(--slate);margin-top:.6rem}
  .breath-cycles{font-family:var(--font-caps);font-size:.82rem;letter-spacing:.1em;font-weight:700;color:var(--warm-ink);min-height:1.4em}
  .reset-note{font-size:.92rem;color:var(--slate);max-width:52ch}
  .bt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin:1.4rem 0;max-width:560px}
  .bt{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.1rem 1rem;text-align:center;position:relative}
  .bt.best{border-color:var(--shell);box-shadow:0 6px 20px rgba(200,154,114,.18)}
  .bt-time{font-family:var(--font-display);font-size:1.55rem;color:var(--dusk);line-height:1.1}
  .bt-label{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.1em;font-weight:700;color:var(--slate);display:block;margin-top:.35rem}
  .bt-star{font-family:var(--font-caps);font-size:.68rem;letter-spacing:.1em;font-weight:700;color:var(--warm-ink);display:block;margin-top:.2rem;min-height:1em}
  .myth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:2.4rem}
  .flip{perspective:1200px;border:none;background:none;padding:0;cursor:pointer;text-align:left;min-height:290px;font-family:var(--font-body)}
  .flip-inner{position:relative;display:block;width:100%;height:100%;min-height:290px;transition:transform .55s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}
  .flip.on .flip-inner{transform:rotateY(180deg)}
  .flip-face{position:absolute;inset:0;overflow:auto;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;gap:.6rem}
  .flip-front{background:#fff;border:1px solid var(--line)}
  .flip:hover .flip-front{border-color:var(--blue)}
  .flip-back{background:var(--dusk);color:var(--paper);transform:rotateY(180deg)}
  .flip-tag{font-family:var(--font-caps);font-size:.78rem;letter-spacing:.12em;font-weight:700;color:var(--warm-ink)}
  .flip-back .flip-tag{color:var(--shell)}
  .flip-myth{font-family:var(--font-display);font-style:italic;font-size:1.28rem;color:var(--ink);line-height:1.4}
  .flip-truth{font-size:1rem;color:var(--paper-soft);line-height:1.55}
  .flip-hint{margin-top:auto;font-size:.8rem;color:var(--slate);font-weight:700}
  .flip-back .flip-hint{color:rgba(252,251,248,.55)}
  .open-badge{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:.95rem;margin:-.2rem 0 1rem;min-height:1.4em}
  .open-badge::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--slate);flex:none}
  .open-badge.is-open{color:#2F6B4F}
  .open-badge.is-open::before{background:#3E8763}
  .open-badge.is-closed{color:var(--slate)}
  .backtop{
    position:fixed;right:20px;bottom:88px;z-index:250;width:44px;height:44px;border-radius:50%;
    background:#fff;border:1.5px solid var(--line);color:var(--slate);display:grid;place-items:center;cursor:pointer;
    opacity:0;pointer-events:none;transition:opacity .25s ease, border-color .2s ease;
    box-shadow:0 8px 24px rgba(46,75,105,.14);
  }
  .backtop.show{opacity:1;pointer-events:auto}
  .backtop:hover{border-color:var(--blue);color:var(--blue-deep)}
  .fab{
    position:fixed;right:20px;bottom:20px;z-index:250;
    display:inline-flex;align-items:center;gap:.55rem;
    background:var(--dusk);color:var(--paper);border:none;border-radius:999px;
    padding:.9rem 1.35rem;font-family:var(--font-body);font-weight:700;font-size:.98rem;cursor:pointer;
    box-shadow:0 12px 32px rgba(38,64,91,.35);transition:background .2s ease, transform .15s ease;
  }
  .fab:hover{background:var(--blue)}
  .fab:active{transform:scale(.97)}
  .qa-panel{
    position:fixed;right:20px;bottom:86px;z-index:260;
    width:min(360px,calc(100vw - 32px));max-height:70vh;
    background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
    display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(20,32,45,.28);
  }
  .qa-panel[hidden]{display:none}
  .qa-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}
  .qa-title{font-family:var(--font-display);font-size:1.25rem;color:var(--dusk)}
  .qa-crisis{background:#FBEDEA;color:#8C3B2E;font-size:.84rem;font-weight:700;padding:.55rem 1.2rem}
  .qa-crisis a{color:#8C3B2E}
  .qa-body{padding:1.1rem 1.2rem 1.3rem;overflow-y:auto}
  .qa-ans{background:var(--sky);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1rem}
  .qa-ans strong{display:block;color:var(--dusk);margin-bottom:.3rem}
  .qa-ans p{font-size:.95rem;color:var(--slate);margin-bottom:.8rem}
  .qa-ans .btn{padding:.5rem 1.05rem;font-size:.88rem}
  .prep-done{font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--warm-ink);margin-top:1.1rem}

  /* ---------- calibri-light type pass ---------- */
  .eyebrow,.brand-sub,.trust,.scr-cat,.scr-meta,.scr-modal-cat,.scr-prompt,.t-tag,.band,.est-label,.fee h3,.fee .amt small,.hours dt,.contact-chips small,.ins-list h3,.credwall h3,.style-tags span,.portrait-fallback .mono-sub,.stat-label,.breath-cycles,.bt-label,.bt-star,.flip-tag,.arc-panel .tag{text-transform:uppercase}
  .fee .amt,.est-amt,.scr-score,.stat-num,.bt-time,.portrait-fallback .mono-mark{font-weight:300}
  .scr-item,.flip-myth{font-weight:400}
  .brand-name{font-weight:400}
  .prep-title,.cta-quote{font-weight:300}
  .qa-title,.scr-send h4,.scr-head h3{font-weight:400}

  .brand-logo{height:46px;width:auto;max-width:64px;flex:none;object-fit:contain}
  nav.primary a.btn-primary{color:#fff}
  nav.primary a.btn-primary:hover{color:#fff;background:var(--blue-deep)}
  .seg-sm .seg-btn{padding:.4rem .85rem;font-size:.85rem}
  .state.pending{color:#8A5A2B;border-color:#E4CBA6;background:#F6EBD8}
  .state.pending:hover{background:#EADBBB;border-color:#C9A76B;color:#6E4A1F}
  .swatch.pend{background:#F6EBD8;border-color:#E4CBA6}
  .creds.cred-soon span{opacity:.78;border-style:dashed}

  .care-tiles{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
  @media (max-width:560px){.care-tiles{grid-template-columns:1fr}}
  .care-tile{display:flex;gap:.8rem;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:1rem 1.05rem;transition:background .2s ease}
  .care-tile:hover{background:rgba(255,255,255,.085)}
  .ct-ic{flex:none;width:34px;height:34px;border-radius:10px;background:rgba(102,169,224,.16);display:grid;place-items:center}
  .ct-ic svg{width:19px;height:19px;fill:none;stroke:var(--sky-glow);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .ct-t{font-weight:800;color:var(--paper);font-size:.95rem;line-height:1.35;margin-bottom:.2rem}
  .ct-d{font-size:.88rem;color:var(--paper-soft);line-height:1.5}

  /* ---------- care agreement modal ---------- */
  .agr-overlay{position:fixed;inset:0;background:rgba(42,54,68,.55);z-index:320;display:none;align-items:center;justify-content:center;padding:1rem}
  .agr-overlay.open{display:flex}
  .agr-box{background:var(--paper);max-width:820px;width:100%;max-height:88vh;border-radius:var(--radius);display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.3)}
  .agr-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line)}
  .agr-head h3{font-family:var(--font-display);font-weight:300;font-size:1.35rem;color:var(--dusk)}
  .agr-close{background:none;border:1px solid var(--line);border-radius:999px;width:38px;height:38px;flex:none;cursor:pointer;font-size:1rem;color:var(--slate)}
  .agr-close:hover{border-color:var(--blue);color:var(--blue-deep)}
  .agr-body{overflow-y:auto;padding:1.4rem 1.6rem 2rem}
  .agr-body h4{font-family:var(--font-caps);font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--warm-ink);margin:1.7rem 0 .5rem}
  .agr-body h4:first-of-type{margin-top:.2rem}
  .agr-body p{font-size:.98rem;color:var(--slate);margin-bottom:.85rem;max-width:70ch}
  .agr-body ul{margin:0 0 1rem 1.15rem}
  .agr-body li{font-size:.96rem;color:var(--slate);margin-bottom:.5rem}
  .agr-body strong{color:var(--ink)}
  .agr-sign{margin-top:2.1rem;border-top:1px solid var(--line);padding-top:1.8rem}
  .agr-checks{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.6rem}
  .agr-checks label{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem;color:var(--ink);line-height:1.5}
  .agr-checks input{margin-top:.25rem;width:17px;height:17px;flex:none;accent-color:var(--blue)}
  .agr-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.1rem 1.2rem;align-items:start;margin-bottom:.5rem}
  .agr-fields .est-label{display:block;margin-bottom:.4rem}
  .agr-hint{font-size:.85rem;color:var(--slate);font-style:italic;margin:0 0 1.2rem}
  .agr-date{font-size:.95rem;color:var(--slate);margin:0 0 1.3rem}
  .agr-status{margin-top:.8rem;font-size:.95rem;color:var(--slate)}
  .agr-status.ok{color:#2E6B4F;font-weight:700}
  .agr-status.err{color:#8C3B2E;font-weight:700}
  .agr-status a{color:var(--blue-deep);font-weight:700}
  .agr-sign-alt{margin-top:1.6rem;border-top:1px solid var(--line);padding-top:1.4rem}
  .agr-foot{padding:.9rem 1.6rem;border-top:1px solid var(--line);font-size:.9rem;color:var(--slate)}

  /* ---------- crisis ---------- */
  .crisis-911{display:block;background:#FBEDEA;border:1.5px solid #E4AA9E;color:#8C3B2E;border-radius:12px;padding:1rem 1.2rem;margin:2.2rem 0 1.2rem;text-decoration:none;font-size:1.05rem}
  .crisis-911:hover{color:#8C3B2E;border-color:#C97A6A}
  .crisis-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
  .crisis-act{background:#fff;border:2px solid var(--blue);border-radius:var(--radius);padding:1.4rem 1.5rem;text-decoration:none;display:flex;flex-direction:column;gap:.15rem;transition:transform .15s ease, box-shadow .2s ease}
  .crisis-act:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(46,75,105,.14)}
  .ca-kind{font-family:var(--font-caps);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--warm-ink)}
  .ca-big{font-family:var(--font-display);font-weight:300;font-size:2rem;color:var(--dusk);line-height:1.15;word-break:break-word}
  .ca-sub{font-size:.92rem;color:var(--slate)}
  .crisis-more{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.1rem}
  .crisis-more a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.55rem 1.1rem;text-decoration:none;color:var(--ink);font-weight:700;font-size:.94rem}
  .crisis-more a:hover{border-color:var(--blue);color:var(--blue-deep)}
  .crisis-toggles{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.8rem}
  .crisis-group{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.4rem;margin-top:1rem}
  .cg-title{font-weight:800;color:var(--ink);margin-bottom:.2rem}
  .crisis-state{margin-top:2rem}
  .crisis-stateout{margin-top:1rem;font-size:1rem;color:var(--slate);max-width:70ch}
  .crisis-ground{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem;margin-top:2rem;max-width:640px}
  .cg-steps{font-size:.98rem;color:var(--slate);margin:.3rem 0 1rem}
  .crisis-note-final{margin-top:1.8rem;font-size:.95rem;color:var(--slate);max-width:72ch}

  /* ---------- booking ---------- */
  .book-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.2rem,2.5vw,2rem);margin-top:1rem;min-height:280px}
  .sched-gate{padding:.6rem 0 1rem}
  .sched-gate-card{max-width:540px;margin:0 auto;text-align:center;padding:1.8rem 1.4rem 1.6rem}
  .sched-gate-title{color:var(--ink);margin:.35rem 0 .6rem}
  .sched-gate-sub{color:var(--slate);font-size:.98rem;max-width:44ch;margin:0 auto}
  .sched-gate-form{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;margin-top:1.3rem}
  .sched-gate-form input{font:inherit;padding:.65rem 1rem;border:1.5px solid var(--line);border-radius:10px;min-width:210px;text-align:center;letter-spacing:.06em;color:var(--ink);background:#fff}
  .sched-gate-form input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
  .sched-gate-err{color:#A33A2E;margin-top:.85rem;font-size:.94rem}
  .book-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.4rem}
  @media (max-width:900px){.book-steps{grid-template-columns:1fr}}
  .book-step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem;display:flex;gap:1rem;align-items:flex-start}
  .book-step-num{font-family:var(--font-display);font-style:italic;font-size:1.4rem;color:var(--blue);line-height:1;flex:none;width:36px;height:36px;border:1.5px solid var(--line);border-radius:50%;display:grid;place-items:center}
  .book-step-title{font-weight:800;color:var(--ink);font-size:1.05rem;margin-bottom:.25rem}
  .book-step-sub{font-size:.95rem;color:var(--slate);margin-bottom:.9rem}
  .book-step .btn{padding:.6rem 1.2rem;font-size:.92rem}
  .book-step > div{flex:1;display:flex;flex-direction:column}
  .book-step .btn{margin-top:auto;align-self:stretch;justify-content:center;text-align:center}
  .pref-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.4rem}
  .pref-row .chip{padding:.45rem .9rem;font-size:.88rem}
  .pref-note{font-size:.9rem;color:var(--blue-deep);min-height:1.1em;margin:.5rem 0 .4rem}
  .book-alt{margin-top:1.4rem;font-size:.98rem;color:var(--slate)}

  /* ---------- final cta ---------- */
  .cta-final{background:linear-gradient(180deg,var(--dusk),var(--dusk-2));text-align:center;position:relative;overflow:hidden}
  .cta-final .wrap{position:relative;z-index:2}
  .cta-quote{
    font-family:var(--font-display);font-style:italic;font-weight:500;
    font-size:clamp(1.8rem,4.2vw,3rem);color:var(--paper);max-width:22ch;margin:0 auto 2.5rem;line-height:1.3;
  }
  .cta-quote em{color:var(--sky-glow);font-style:italic}
  .cta-btns{display:flex;justify-content:center;flex-wrap:wrap;gap:.9rem;margin-bottom:1.8rem}
  .cta-alt{font-size:1rem;color:rgba(252,251,248,.65)}
  .cta-alt a{color:var(--sky-glow);text-decoration:none;font-weight:700}
  .cta-final .btn-ghost{border-color:rgba(252,251,248,.4);color:var(--sky-glow)}
  .cta-final .btn-ghost:hover{border-color:var(--sky-glow);color:var(--sky-soft)}
  .cta-alt a:hover{text-decoration:underline}

  /* ---------- footer ---------- */
  footer.site{background:var(--dusk-2);color:rgba(252,251,248,.6);padding:3rem 0 2.4rem;font-size:.94rem;border-top:1px solid rgba(252,251,248,.1)}
  .foot-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:flex-start}
  .foot-brand .brand-name{color:var(--paper)}
  .foot-links{display:flex;flex-wrap:wrap;gap:1.4rem}
  .foot-links a{color:rgba(252,251,248,.7);text-decoration:none;font-weight:700}
  .foot-links a:hover{color:var(--sky-glow)}
  .foot-legal{margin-top:2.2rem;padding-top:1.6rem;border-top:1px solid rgba(252,251,248,.1);display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:space-between}
  .crisis{color:var(--sky-soft)}
