@font-face{font-family:"Literata";src:url("/site/fonts/literata-var.woff2") format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Literata";src:url("/site/fonts/literata-italic-var.woff2") format("woff2");font-weight:400 600;font-style:italic;font-display:swap}
@font-face{font-family:"Lato";src:url("/site/fonts/lato-regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Lato";src:url("/site/fonts/lato-bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("/site/fonts/bodoni-moda-500.woff2") format("woff2");font-weight:500;font-display:swap}
.form-err{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#fbeae5;color:#7a2e1c;font-size:14px;line-height:1.5}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.anchor{display:block;position:relative;top:-90px;visibility:hidden}
/* PathWell ad landing page (/iop-manassas/start). Self-contained: no other patient-page CSS is loaded.
   No JavaScript is required: accordions and FAQs use native details/summary. */

:root{
  --cream:#fbf9f4; --ink:#18100f; --muted:#46525e; --navy-deep:#0b1f38; --navy:#0f355f;
  --gold:#f2bf4f; --gold-text:#8a6a14; --rule:#d9d2c3; --rule-soft:#e8e2d6; --on-navy:#d6e0ec; --on-navy-2:#e6edf5;
  --serif:"Literata",Georgia,serif; --sans:"Lato","Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}
img{max-width:100%;display:block}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
a{color:var(--navy)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:16px;top:-80px;z-index:200;background:#fff;color:var(--navy-deep);padding:12px 16px;border:2px solid var(--navy-deep);border-radius:8px;font-weight:700}
.skip-link:focus{top:12px}
.shell{max-width:1180px;margin:0 auto;padding:0 24px}
.narrow{max-width:860px;margin:0 auto;padding:0 24px}
em{font-style:italic}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:15px 30px;border-radius:999px;font-weight:700;font-size:17px;line-height:1.2;text-decoration:none;text-align:center}
.btn-light{background:#fff;color:var(--navy-deep)}
.btn-navy{background:var(--navy-deep);color:#fff}
.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);font-weight:400}
.btn-light:hover{background:#eef2f7}.btn-navy:hover{background:var(--navy)}.btn-ghost:hover{background:rgba(255,255,255,.08)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}

/* Hero */
.hero{position:relative;min-height:720px;display:flex;flex-direction:column;color:#fff;background:var(--navy-deep);overflow:hidden}
.hero-media,.hero-media img{position:absolute;inset:0;width:100%;height:100%}
.hero-media img{object-fit:cover;object-position:60% center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,56,.86) 0%,rgba(11,31,56,.62) 45%,rgba(11,31,56,.18) 100%)}
.hero-shade::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,56,.35) 0%,rgba(11,31,56,0) 35%,rgba(11,31,56,.45) 100%)}
.nav{position:relative;margin-top:20px}
.nav-bar{background:rgba(255,255,255,.94);border-radius:14px;padding:12px 14px 12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.nav-bar img{height:40px;width:auto}
.nav .btn{min-height:48px;padding:12px 26px;font-size:17px}
.hero-copy{position:relative;margin:auto 0;padding:80px 24px 96px;width:100%;max-width:1180px;align-self:center;display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.hero-copy .eyebrow{margin:0 0 -14px}
.hero h1{margin:0;font-family:var(--serif);font-weight:400;font-size:62px;line-height:1.06;max-width:11em}
.hero-sub{margin:0;font-size:21px;line-height:1.55;color:var(--on-navy-2);max-width:34em}
.hero-copy .btn-light{font-size:19px;min-height:58px;padding:18px 34px}
.hero-copy .btn-ghost{min-height:58px;padding:16px 28px}
.hero-note{margin:0;font-size:15px;color:var(--on-navy)}

/* Accordions */
.accordions{padding:40px 0 56px}
.acc{border-top:1px solid var(--rule)}
.acc:last-child{border-bottom:1px solid var(--rule)}
.acc>summary{list-style:none;cursor:pointer;padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--navy-deep)}
.acc>summary::-webkit-details-marker{display:none}
.acc-title{display:flex;flex-direction:column;gap:6px}
.acc-title h2{margin:0;font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.1}
.acc-teaser{font-size:16px;color:var(--muted)}
.chev{flex:none;width:28px;height:28px;transition:transform .2s}
details[open]>summary .chev{transform:rotate(180deg)}
.acc-body{padding:0 0 32px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.lines{list-style:none;margin:0;padding:0;width:100%;font-size:19px;line-height:1.5}
.lines li{padding:14px 0;border-top:1px solid var(--rule-soft)}
.lines li:last-child{border-bottom:1px solid var(--rule-soft)}
.muted{margin:0;font-size:16px;line-height:1.6;color:var(--muted)}
.lead-serif{margin:0;font-family:var(--serif);font-size:24px;line-height:1.35;color:var(--navy-deep)}
.body-copy{margin:0;font-size:17px;line-height:1.65}

/* Steps map */
.steps{position:relative;width:100%;padding-top:12px}
.steps::before{content:"";position:absolute;left:10%;right:10%;top:36px;height:2px;background:var(--rule)}
.steps ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.steps li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.dot{position:relative;width:48px;height:48px;border-radius:50%;background:var(--navy-deep);color:var(--gold);font-family:var(--serif);font-size:20px;display:flex;align-items:center;justify-content:center;border:4px solid var(--cream)}
.dot.gold{background:var(--gold);color:var(--navy-deep)}
.steps strong{font-size:18px;color:var(--navy-deep)}
.steps span.d{font-size:15px;line-height:1.5;color:var(--muted)}
.steps .txt{display:flex;flex-direction:column;align-items:center;gap:6px}

/* Navy band */
.band{background:var(--navy-deep);color:#fff;overflow:hidden}
.band-grid{padding:80px 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px;align-items:center}
.band-copy{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.band h2{margin:0;font-family:var(--serif);font-weight:400;font-size:44px;line-height:1.1}
.band p{margin:0;font-size:18px;line-height:1.6;color:var(--on-navy);max-width:30em}
.band .btn-light{width:100%;max-width:380px;margin-top:6px}
.ticker{position:relative;height:420px;display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:8px;align-items:center;overflow:hidden}
.ticker::before,.ticker::after{content:"";position:absolute;left:0;right:0;height:90px;z-index:2;pointer-events:none}
.ticker::before{top:0;background:linear-gradient(var(--navy-deep),rgba(11,31,56,0))}
.ticker::after{bottom:0;background:linear-gradient(rgba(11,31,56,0),var(--navy-deep))}
.tcol{height:100%;overflow:hidden}
.tlist{display:flex;flex-direction:column;gap:18px;font-family:var(--serif);font-size:22px;line-height:1.2;white-space:nowrap;will-change:transform}
.tlist.up{text-align:right;color:#fff;animation:pw-up 28s linear infinite}
.tlist.down{text-align:left;color:var(--on-navy);animation:pw-down 28s linear infinite}
.amp{font-family:var(--serif);font-size:30px;color:var(--gold);text-align:center}
@keyframes pw-up{from{transform:translateY(0)}to{transform:translateY(-50%)}}
@keyframes pw-down{from{transform:translateY(-50%)}to{transform:translateY(0)}}

/* FAQ */
.faq{padding:56px 0 88px}
.faq-head{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.faq-head .eyebrow{color:var(--navy)}
.faq-head h2{margin:0;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;color:var(--navy-deep)}
.faq-list{border-top:1px solid var(--rule)}
.q{border-bottom:1px solid var(--rule)}
.q>summary{list-style:none;cursor:pointer;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:700;font-size:16px;line-height:1.4;color:var(--navy-deep)}
.q>summary::-webkit-details-marker{display:none}
.plus{flex:none;width:22px;height:22px;transition:transform .2s}
.q[open]>summary .plus{transform:rotate(45deg)}
.q .a{margin:0;padding:0 44px 20px 0;font-size:15px;line-height:1.65;color:var(--muted)}
.more>summary{list-style:none;cursor:pointer;display:inline-block;margin-top:20px;padding:4px 0;font-weight:700;font-size:16px;color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.more>summary::-webkit-details-marker{display:none}
.more[open]>summary{display:none}

/* IOP ladder */
.ladder{padding:0 44px 24px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.rung{display:flex;flex-direction:column;gap:10px}
.track{height:110px;display:flex;align-items:flex-end}
.bar{width:100%;border-radius:6px 6px 0 0;transform-origin:bottom}
.bar.b1{height:28px;background:var(--rule)}
.bar.b2{height:56px;background:var(--gold);display:flex;justify-content:center;padding-top:8px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--navy-deep)}
.bar.b3{height:82px;background:#b7c6d8}
.bar.b4{height:110px;background:var(--navy-deep)}
.rlabel{min-height:44px;display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--rule);padding-top:8px}
.rlabel strong{font-size:14px;color:var(--navy-deep)}
.rlabel span{font-size:12px;line-height:1.4;color:var(--muted)}
.tag{display:none}
details[open] .bar{animation:pw-rise .5s cubic-bezier(.2,.8,.2,1) both}
details[open] .rlabel{animation:pw-fade .4s ease both}
.d1{animation-delay:.05s!important}.d2{animation-delay:.2s!important}.d3{animation-delay:.35s!important}.d4{animation-delay:.5s!important}
@keyframes pw-rise{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}
@keyframes pw-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Closing band */
.closing{background:var(--navy-deep);color:#fff}
.closing-inner{max-width:760px;margin:0 auto;padding:80px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:28px}
.closing h2{margin:0;font-family:var(--serif);font-weight:400;font-size:46px;line-height:1.1}
.closing .stack{display:flex;flex-direction:column;gap:12px;width:100%;max-width:520px}
.closing .btn-light{font-size:19px;min-height:58px}
.closing .btn-ghost{min-height:56px}

/* Footer */
.foot{background:var(--cream);border-top:1px solid var(--rule);color:var(--muted)}
.foot-grid{padding:32px 24px;display:grid;grid-template-columns:auto 1px minmax(220px,300px) minmax(0,1fr);gap:0 36px;align-items:center;font-size:14px;line-height:1.6}
.foot-brand{display:flex;flex-direction:column;gap:8px}
.foot-brand img{height:30px;width:auto}
.foot-brand span{font-size:13px}
.vrule{width:1px;height:64px;background:var(--rule)}
.foot strong{color:var(--navy-deep)}
.foot a{color:var(--navy-deep);font-weight:700}
.foot p{margin:0}
.foot .small{font-size:13px}

/* Phone sticky bar */
.sticky{display:none}

@media (max-width:720px){
  body{font-size:16px;padding-bottom:72px}
  .shell,.narrow{padding:0 20px}
  .hero{min-height:720px}
  .hero-media img{object-position:62% center}
  .hero-shade{background:linear-gradient(180deg,rgba(11,31,56,.55) 0%,rgba(11,31,56,.35) 40%,rgba(11,31,56,.88) 100%)}
  .hero-shade::after{display:none}
  .nav{margin:12px 12px 0;padding:0}
  .nav-bar{padding:10px 10px 10px 14px}
  .nav-bar img{height:32px}
  .nav .btn{min-height:42px;padding:10px 16px;font-size:14px}
  .hero-copy{margin:auto 0 0;padding:200px 20px 40px;gap:18px}
  .hero-copy .eyebrow{margin-bottom:-6px;font-size:12px}
  .hero h1{font-size:40px}
  .hero-sub{font-size:17px;line-height:1.5}
  .hero-copy .btn-row{flex-direction:column;width:100%;gap:10px}
  .hero-copy .btn{width:100%;font-size:17px;min-height:54px;padding:16px 20px}
  .hero-copy .btn-ghost{font-size:16px}
  .hero-note{font-size:13px}
  .accordions{padding:28px 0 44px}
  .acc>summary{padding:22px 0;gap:16px}
  .acc-title{gap:4px}.acc-title h2{font-size:26px}.acc-teaser{font-size:14px}
  .chev{width:26px;height:26px}
  .acc-body{padding-bottom:24px;gap:16px}
  .acc-body .btn{width:100%;font-size:16px;min-height:50px}
  .lines{font-size:16px}.lines li{padding:12px 0}
  .lead-serif{font-size:21px;line-height:1.3}.body-copy{font-size:15px;line-height:1.6}
  .steps{padding-top:4px}
  .steps::before{left:21px;right:auto;top:28px;bottom:28px;width:2px;height:auto}
  .steps ol{display:flex;flex-direction:column;gap:22px}
  .steps li{flex-direction:row;align-items:flex-start;text-align:left;gap:16px}
  .dot{flex:none;width:44px;height:44px;font-size:18px;margin-left:-4px;box-sizing:content-box}
  .steps .txt{align-items:flex-start;gap:4px;padding-top:8px}
  .steps strong{font-size:17px}
  .band-grid{grid-template-columns:1fr;padding:56px 20px;gap:22px}
  .band h2{font-size:32px}.band p{font-size:15px;line-height:1.55}
  .band .btn-light{max-width:none;font-size:16px;min-height:50px}
  .ticker{height:300px;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:6px;order:2}
  .ticker::before,.ticker::after{height:70px}
  .tlist{font-size:17px;gap:14px;white-space:normal}
  .faq{padding:44px 0 64px}.faq-head{margin-bottom:20px}.faq-head h2{font-size:30px}
  .q>summary{padding:16px 0;font-size:15px;gap:14px}
  .q .a{padding:0 34px 18px 0;font-size:14px;line-height:1.6}
  .ladder{padding:0 34px 20px 0;grid-template-columns:1fr;gap:10px}
  .rung{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;align-items:center}
  .track{height:22px;align-items:stretch}
  .bar{height:22px!important;border-radius:0 6px 6px 0;transform-origin:left;padding:0!important;font-size:0!important}
  .bar.b1{width:26%}.bar.b2{width:50%}.bar.b3{width:74%}.bar.b4{width:100%}
  details[open] .bar{animation-name:pw-grow}
  .rlabel{min-height:0;border-top:0;padding-top:0}
  .rlabel strong{font-size:13px}
  .rlabel .tag{display:inline;font-size:10px;letter-spacing:.08em;color:var(--gold-text)}
  .closing-inner{padding:48px 20px;gap:20px}.closing h2{font-size:32px}
  .closing .btn{font-size:17px;min-height:54px}
  .foot-grid{grid-template-columns:auto 1px minmax(0,1fr);gap:16px;padding:28px 20px 24px;font-size:13px}
  .foot-grid>p{grid-column:1/-1}
  .foot-brand{max-width:130px}.foot-brand img{height:26px}.foot-brand span{font-size:12px;line-height:1.4}
  .vrule{height:48px}
  .sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;gap:8px;padding:10px 16px;background:rgba(251,249,244,.96);border-top:1px solid var(--rule)}
  .sticky a{min-height:48px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;text-decoration:none}
  .sticky .s-book{flex:1;background:var(--navy-deep);color:#fff}
  .sticky .s-call{flex:none;padding:0 20px;color:var(--navy-deep);border:1px solid var(--navy-deep)}
}
@keyframes pw-grow{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}

@media (prefers-reduced-motion:reduce){
  .tlist.up,.tlist.down,details[open] .bar,details[open] .rlabel{animation:none}
  .chev,.plus{transition:none}
}

/* 2026 refresh: full-width frosted nav and navy footer to match the main site */
.nav{position:relative;margin:0;padding:0;width:100%;z-index:5}
.nav-bar{height:76px;box-sizing:border-box;border-radius:0;padding:0 max(32px,env(safe-area-inset-right,0px)) 0 max(32px,env(safe-area-inset-left,0px));background:rgba(247,245,241,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(11,31,56,.07)}
.nav-bar img{height:44px;width:auto;display:block}
.foot{background:#0b1f38;border-top:0;color:rgba(255,255,255,.72)}
.foot strong{color:#fff}
.foot a{color:#fff}
.foot .vrule{background:rgba(255,255,255,.18)}
.foot-brand img{height:34px}
.foot-brand span{color:rgba(255,255,255,.6)}
@media (max-width:760px){
  .nav{margin:0}
  .nav-bar{height:64px;padding:0 12px 0 16px}
  .nav-bar img{height:34px}
  .foot-brand{max-width:none}.foot-brand img{height:28px}
}

/* Outcomes v3: bento tiles, a different visual per number, soft extended palette. Loads after pathwell-start.css. */
:root{
  --paper:#ffffff; --warm:#f7f5f0;
  --mist:#e5edf5; --mist-deep:#24466e;
  --sand:#f4ebdc; --clay:#b8673a; --clay-soft:#e9c4a6;
  --sage:#e3ebe2; --sage-deep:#3f6150; --sage-soft:#c9d8c8;
  --dusk:#14243a;
}
body{background:var(--cream)}

/* Hero: photo + frosted stat rows */
.hero.v3 .hero-copy{max-width:1180px}
.hero-split{position:relative;width:100%;max-width:1180px;margin:auto;padding:72px 24px 88px;display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,.45fr);gap:56px;align-items:end;box-sizing:border-box}
.hero-split .hero-copy{padding:0;margin:0;max-width:none}
.glass{display:flex;flex-direction:column;gap:12px}
.glass-row{display:flex;align-items:center;gap:18px;padding:16px 20px;border-radius:20px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff}
.glass-row svg{flex:none}
.glass-row b{display:block;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1}
.glass-row span{font-size:15px;line-height:1.4;color:var(--on-navy-2)}

/* Section head */
.sec{padding:104px 0 0}
.sec-head{display:flex;flex-direction:column;gap:10px;margin-bottom:36px;max-width:640px}
.sec-head .eyebrow{color:var(--mist-deep)}
.sec-head h2{margin:0;font-family:var(--serif);font-weight:400;font-size:46px;line-height:1.08;color:var(--navy-deep)}
.sec-head p{margin:0;font-size:17px;color:var(--muted)}

/* Bento */
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(380px,auto);gap:18px}
.tile{position:relative;border-radius:28px;padding:36px;overflow:hidden;display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.tile:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(11,31,56,.28)}
.span2{grid-column:span 2}
.t-label{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.t-big{font-family:var(--serif);font-weight:400;line-height:.95;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.t-line{margin:10px 0 0;font-size:17px;line-height:1.45;max-width:24em}
.t-src{margin-top:auto;padding-top:18px;font-size:12px;opacity:.75}

.t-ring{background:var(--mist);color:var(--mist-deep);display:grid;grid-template-columns:auto minmax(0,1fr);gap:40px;align-items:center}
.t-ring .ring-wrap{position:relative;width:240px;height:240px}
.t-ring .ring-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:76px;color:var(--navy-deep);letter-spacing:-.03em}
.t-ring .ring-num small{font-size:34px;margin-left:2px;color:var(--mist-deep)}
.t-ring h3{margin:12px 0 0;font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.12;color:var(--navy-deep)}
.t-ring .copy{display:flex;flex-direction:column;height:100%;justify-content:center}

.t-gauge{background:var(--sand);color:#6b3f22;align-items:center;text-align:center}
.t-gauge .t-label{align-self:flex-start}
.t-gauge svg{margin-top:12px;width:100%;max-width:340px;height:auto;overflow:visible}
.t-gauge .shift{font-family:var(--serif);font-size:30px;line-height:1.1;color:var(--navy-deep);margin-top:6px}
.t-gauge .shift em{color:var(--clay)}
.t-gauge .t-line{margin-left:auto;margin-right:auto;font-size:15px;color:#5c4636}
.t-gauge .t-src{align-self:stretch}
.gkey{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;font-size:14px;color:#5c4636}
.gkey li{display:flex;align-items:center;gap:8px}
.gk{width:14px;height:14px;border-radius:50%;box-sizing:border-box;border:3px solid #0b1f38}
.gk.start{background:#fff}.gk.end{background:#f2bf4f}

.t-dots{background:var(--sage);color:var(--sage-deep)}
.t-dots .row{display:flex;flex-direction:column;gap:18px;margin-top:14px}
.t-dots .t-big{white-space:nowrap}
.t-dots .t-big{font-size:84px;color:var(--navy-deep)}
.t-dots .t-big em{font-size:34px;color:var(--sage-deep)}
.dgrid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px;max-width:260px}
.dgrid i{width:100%;aspect-ratio:1;border-radius:50%;background:var(--sage-soft)}
.dgrid i.on{background:var(--sage-deep)}

.t-photo{padding:0;color:#fff;min-height:380px;justify-content:flex-end}
.t-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.t-photo:hover img{transform:scale(1.03)}
.t-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,36,58,0) 35%,rgba(20,36,58,.7) 100%)}
.t-photo .chip{position:relative;z-index:1;margin:24px;padding:20px 24px;border-radius:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.t-photo .chip b{font-family:var(--serif);font-weight:400;font-size:56px;line-height:1}
.t-photo .chip b small{font-size:22px}
.t-photo .chip p{margin:0;font-size:16px;line-height:1.45;max-width:20em}
.pills{display:flex;gap:5px}
.pills i{width:10px;height:26px;border-radius:5px;background:var(--gold)}
.pills i.gap{background:transparent;width:6px}

.fine{margin:20px 0 0;font-size:13px;color:var(--muted)}

/* Sources: quiet list */
.src-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule-soft)}
.src-list li{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--rule-soft)}
.src-list .yr{font-family:var(--serif);font-size:26px;color:var(--clay)}
.src-list strong{display:block;color:var(--navy-deep)}
.src-list span{font-size:14px;color:var(--muted)}
.src-list a{font-weight:700;color:var(--navy-deep);white-space:nowrap}

/* Closing: art + frosted card */
.close-art{position:relative;margin:104px auto 0;width:calc(100% - 48px);max-width:1132px;min-height:520px;border-radius:24px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.close-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.close-art .card{position:relative;margin:24px;max-width:560px;width:100%;padding:44px 40px;border-radius:28px;background:rgba(255,255,255,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.6);text-align:center;display:flex;flex-direction:column;gap:18px;align-items:center;box-sizing:border-box}
.close-art h2{margin:0;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.1;color:var(--navy-deep)}
.close-art .stack{display:flex;flex-direction:column;gap:10px;width:100%}
.close-art .btn-ghost{color:var(--navy-deep);border-color:rgba(11,31,56,.4)}

/* Motion: once, quiet */
.js .glass-row{opacity:0;transform:translateY(14px);animation:pw-fade .7s cubic-bezier(.2,.8,.2,1) forwards}
.js .glass-row:nth-child(1){animation-delay:.35s}.js .glass-row:nth-child(2){animation-delay:.5s}.js .glass-row:nth-child(3){animation-delay:.65s}
.js [data-reveal] .ring-arc{stroke-dashoffset:553;transition:stroke-dashoffset 1.6s cubic-bezier(.65,0,.35,1) .2s}
.js [data-reveal].in .ring-arc{stroke-dashoffset:237.8}
.js [data-reveal] .needle{transform:rotate(75.7deg);transition:transform 1.6s cubic-bezier(.65,0,.35,1) .4s}
.js [data-reveal].in .needle{transform:rotate(40deg)}
.js [data-reveal] .dgrid i.on{background:var(--sage-soft);transition:background .3s ease;transition-delay:calc(var(--i) * 16ms + .2s)}
.js [data-reveal].in .dgrid i.on{background:var(--sage-deep)}
.js [data-reveal] .pills i{transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 60ms + .3s)}
.js [data-reveal].in .pills i{transform:scaleY(1)}
.needle{transform-box:view-box;transform-origin:140px 140px}

@media (max-width:900px){
  .hero-split{grid-template-columns:1fr;padding:400px 20px 40px;gap:28px}
  .hero.v3 .hero-media img{object-position:62% 18%!important}
  .bento{grid-template-columns:1fr;grid-auto-rows:auto;gap:14px}
  .span2{grid-column:auto}
  .tile{padding:28px 24px;border-radius:24px}
  .t-ring{grid-template-columns:1fr;gap:20px;justify-items:center;text-align:center}
  .t-ring .ring-wrap{width:200px;height:200px}.t-ring .ring-wrap svg{width:200px;height:200px}
  .t-ring .ring-num{font-size:64px}
  .t-ring h3{font-size:28px}.t-ring .t-line{margin-left:auto;margin-right:auto}
  .t-photo{min-height:420px}
  .glass{gap:8px}.glass-row{padding:12px 16px;gap:14px}.glass-row b{font-size:22px}.glass-row span{font-size:13px}.glass-row svg{width:36px;height:36px}
  .sec{padding:64px 0 0}.sec-head h2{font-size:34px}
  .src-list li{grid-template-columns:64px minmax(0,1fr);gap:4px 16px}
  .src-list a{grid-column:2}
  .close-art{margin-top:64px;min-height:480px;width:calc(100% - 40px);border-radius:20px}
  .close-art h2{font-size:32px}
  .close-art .card{padding:32px 22px}
}
@media (prefers-reduced-motion:reduce){.tile,.t-photo img{transition:none}}

/* Schedule tile: photo with floating glass pills */
.t-sched{background:#edf1ef;color:var(--sage-deep);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:80px;align-items:center;overflow:visible;padding:44px 44px 44px 36px}
.sched-photo{position:relative;height:100%;min-height:320px}
.sched-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:22% 30%;border-radius:20px}
.pill{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:12px;padding:13px 24px;border-radius:999px;white-space:nowrap;font-size:16px;font-weight:700;color:#fff;background:rgba(92,96,100,.52);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 10px 30px -12px rgba(20,36,58,.35)}
.pd{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.75)}
.pd.gold{background:var(--gold);box-shadow:0 0 0 4px rgba(242,191,79,.25)}
.pill.p1{top:-20px;left:24px}
.pill.p2{top:34%;right:-40px}
.pill.p3{bottom:24%;left:-18px}
.pill.p4{bottom:-20px;right:28px}
.sched-copy{display:flex;flex-direction:column;gap:6px}
.sched-copy .t-big{font-size:96px;color:var(--navy-deep);margin-top:10px}
.sched-copy .t-big em{font-size:40px;color:var(--sage-deep)}
.bento-note{margin:22px 0 0;font-size:14px;color:var(--muted)}
.bento-note a{color:var(--navy-deep);font-weight:700}
.js [data-reveal] .pill{opacity:0;transform:translateY(12px) scale(.96);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 140ms + .3s)}
.js [data-reveal].in .pill{opacity:1;transform:none}

/* Footer */
.sfoot{background:var(--cream);color:var(--muted);padding:96px 0 32px;margin-top:0}
.sfoot-top{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2.6fr);gap:56px}
.sfoot-brand{display:flex;flex-direction:column;gap:14px;align-items:flex-start;font-size:15px;line-height:1.6}
.sfoot-brand p{margin:0;max-width:22em}
.sfoot-contact a{color:var(--navy-deep);font-weight:700}
.sfoot-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.fcol h3{margin:0 0 14px;font-size:14px;font-weight:400;color:var(--muted)}
.fcol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fcol a{color:var(--navy-deep);text-decoration:none;font-size:15px}
.fcol a:hover{text-decoration:underline;text-underline-offset:3px}
.sfoot-bottom{margin-top:56px;padding-top:22px;border-top:1px solid var(--rule-soft);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13px}
.sfoot-bottom p{margin:0}
.sfoot-bottom a{color:var(--navy-deep);font-weight:700}

@media (max-width:900px){
  .t-sched{grid-template-columns:1fr;gap:36px;padding:32px 22px 28px}
  .sched-photo{min-height:300px}
  .pill{font-size:14px;padding:10px 18px;gap:9px}
  .pill.p1{top:-16px;left:12px}.pill.p2{top:36%;right:-8px}.pill.p3{bottom:22%;left:-8px}.pill.p4{bottom:-16px;right:12px}
  .sched-copy .t-big{font-size:76px}
  .sfoot{padding:52px 0 28px}
  .sfoot-top{grid-template-columns:1fr;gap:36px}
  .sfoot-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
}

/* Sample week: glass grid over a photo */
.t-week{padding:0;min-height:460px;justify-content:center;align-items:center}
.t-week>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:20% 35%}
.t-week::after{content:"";position:absolute;inset:0;background:rgba(20,36,58,.18)}
.week-glass{position:relative;z-index:1;margin:32px;width:calc(100% - 64px);max-width:600px;padding:26px 28px 28px;border-radius:22px;color:#fff;background:rgba(80,86,90,.42);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);box-shadow:0 20px 50px -20px rgba(11,31,56,.45);box-sizing:border-box}
.wg-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.wg-title{font-family:var(--serif);font-size:28px;line-height:1}
.wg-chip{font-size:13px;font-weight:700;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3)}
.wg-grid{display:grid;grid-template-columns:78px repeat(5,minmax(0,1fr));gap:8px;align-items:center}
.dh{text-align:center;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.85}
.rh{font-size:12px;opacity:.85}
.blk{height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.b-sage{background:rgba(110,140,120,.85)}.b-mist{background:rgba(110,138,168,.85)}.b-clay{background:rgba(184,103,58,.8)}
.b-free{background:rgba(255,255,255,.14);font-weight:400;font-size:12px;opacity:.9}
.b-none{background:transparent}
.js [data-reveal] .week-glass{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1) .1s}
.js [data-reveal].in .week-glass{opacity:1;transform:none}
.js [data-reveal] .blk:not(.b-none){opacity:0;transform:scale(.9);transition:opacity .4s ease,transform .5s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 35ms + .5s)}
.js [data-reveal].in .blk:not(.b-none){opacity:1;transform:none}
@media (max-width:900px){
  .t-week{min-height:440px}
  .week-glass{margin:18px;width:calc(100% - 36px);padding:18px 14px 18px}
  .wg-title{font-size:22px}
  .wg-grid{grid-template-columns:52px repeat(5,minmax(0,1fr));gap:5px}
  .rh{font-size:10px}.dh{font-size:10px}
  .blk{height:32px;font-size:10px;border-radius:7px}.b-free{font-size:9px}
}

/* PathWell site system (wireframe). Loads after pathwell-start.css and v3.css.
   One canvas color, navy for hero/footer, gold as the single accent, soft tints for tiles. */
:root{
  --cream:#fbf9f4; --ink:#18100f; --muted:#46525e;
  --navy-deep:#0b1f38; --navy:#0f355f; --navy-2:#132a47; --navy-3:#1b3657; --navy-ink:#081729;
  --gold:#f2bf4f; --gold-text:#8a6a14; --rule:#d9d2c3; --rule-soft:#e8e2d6;
  --on-navy:#d6e0ec; --on-navy-2:#e6edf5; --on-navy-dim:#9fb2c8;
  --mist:#e5edf5; --mist-deep:#24466e; --sand:#f4ebdc; --clay:#b8673a; --sage:#e3ebe2; --sage-deep:#3f6150;
  --glass:rgba(255,255,255,.72); --glass-dark:rgba(70,78,86,.46);
  --serif:"Literata",Georgia,serif; --sans:"Lato","Helvetica Neue",Arial,sans-serif;
  color-scheme:light;
}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink)}
.page{display:none}
.page.on{display:block}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(24px, env(safe-area-inset-left, 0px));padding-right:max(24px, env(safe-area-inset-right, 0px))}
.read{max-width:760px;margin:0 auto;padding-left:max(24px, env(safe-area-inset-left, 0px));padding-right:max(24px, env(safe-area-inset-right, 0px))}
h1,h2,h3{font-weight:400}
.serif{font-family:var(--serif)}
.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.eb-navy{color:var(--navy)}
.lede{font-size:19px;line-height:1.6;color:var(--muted);margin:0}
.h2{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(32px,2.2rem + 1vw,48px);line-height:1.08;color:var(--navy-deep);letter-spacing:-.01em}
.h3{margin:0;font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.15;color:var(--navy-deep)}
.sec{padding:112px 0 0}
.sec-tight{padding:80px 0 0}
.head{display:flex;flex-direction:column;gap:14px;max-width:680px;margin-bottom:44px}
.head.center{margin-left:auto;margin-right:auto;text-align:center;align-items:center}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--navy-deep);text-decoration:none;border-bottom:1px solid rgba(11,31,56,.25);padding-bottom:2px}
.link-arrow:hover{border-color:var(--navy-deep)}
.btn-sm{min-height:44px;padding:10px 22px;font-size:15px}
.btn-outline{background:transparent;color:var(--navy-deep);border:1px solid rgba(11,31,56,.35)}
.btn-outline:hover{background:rgba(11,31,56,.05)}
.btn-gold{background:var(--gold);color:var(--navy-deep)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}

/* ============ NAV ============ */
.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;padding:14px 0 0;pointer-events:none}
.topbar .wrap{pointer-events:auto}
.navbar{position:relative;z-index:62;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 20px;border-radius:16px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 10px 30px -18px rgba(11,31,56,.35);border:1px solid rgba(255,255,255,.7)}
.navbar .logo img{height:36px;width:auto;display:block}
.menu{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.menu button{appearance:none;border:0;background:transparent;font:inherit;font-size:15px;color:var(--navy-deep);padding:10px 14px;border-radius:999px;display:flex;align-items:center;gap:6px;cursor:pointer}
.menu button:hover,.menu button[aria-expanded="true"]{background:rgba(11,31,56,.07)}
.menu button svg{width:12px;height:12px;transition:transform .25s}
.menu button[aria-expanded="true"] svg{transform:rotate(180deg)}
.nav-right{display:flex;align-items:center;gap:14px}
.nav-call{font-size:15px;color:var(--navy-deep);text-decoration:none;white-space:nowrap}
.nav-call:hover{text-decoration:underline;text-underline-offset:3px}
.burger{display:none;appearance:none;border:0;background:rgba(11,31,56,.06);width:44px;height:44px;border-radius:12px;align-items:center;justify-content:center;cursor:pointer}
.scrim{position:fixed;inset:0;z-index:55;background:rgba(18,26,38,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s}
.scrim.on{opacity:1;visibility:visible}
.mega{position:absolute;left:50%;top:calc(100% + 12px);z-index:61;width:min(1100px,calc(100% - 48px));transform:translate(-50%,-8px);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .3s cubic-bezier(.2,.8,.2,1),visibility .25s;pointer-events:auto}
.mega.on{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega-in{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1.15fr) minmax(0,.95fr);gap:36px;padding:36px;border-radius:22px;background:rgba(250,248,244,.9);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border:1px solid rgba(255,255,255,.7);box-shadow:0 30px 60px -30px rgba(11,31,56,.45)}
.mega-intro{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.mega-intro h2{margin:0;font-family:var(--serif);font-size:34px;line-height:1.05;color:var(--navy-deep)}
.mega-intro p{margin:0 0 6px;color:var(--muted);font-size:16px}
.mega-rule{background:var(--rule)}
.mega-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mega-links a{display:block;padding:9px 12px;margin:0 -12px;border-radius:12px;text-decoration:none;color:var(--navy-deep)}
.mega-links a:hover{background:rgba(11,31,56,.05)}
.mega-links b{display:block;font-weight:400;font-size:17px}
.mega-links span{display:block;font-size:14px;color:var(--muted);margin-top:2px}
.mega-feature{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:16px;background:rgba(11,31,56,.05);text-decoration:none;color:var(--navy-deep)}
.mega-feature small{font-size:12px;color:var(--muted)}
.mega-feature .mf-img{height:150px;border-radius:12px;overflow:hidden}
.mega-feature .mf-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.mega-feature:hover .mf-img img{transform:scale(1.04)}
.mega-feature strong{font-family:var(--serif);font-weight:400;font-size:22px}
.mega-feature span{font-size:14px;color:var(--muted);line-height:1.45}
/* phone menu */
.sheet{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;background:rgba(251,249,244,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:calc(env(safe-area-inset-top,0px) + 14px) max(20px,env(safe-area-inset-right,0px)) 24px max(20px,env(safe-area-inset-left,0px));opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .3s,visibility .25s;overflow:auto}
.sheet.on{opacity:1;visibility:visible;transform:none}
.sheet-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.sheet-top img{height:32px}
.sheet details{border-bottom:1px solid var(--rule)}
.sheet summary{list-style:none;padding:18px 0;font-family:var(--serif);font-size:26px;color:var(--navy-deep);display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.sheet summary::-webkit-details-marker{display:none}
.sheet ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:4px}
.sheet ul a{display:block;padding:10px 0;color:var(--navy-deep);text-decoration:none;font-size:17px}
.sheet ul a span{display:block;font-size:13px;color:var(--muted)}
.sheet .sheet-cta{display:flex;flex-direction:column;gap:10px;margin-top:24px}

/* ============ HEROES ============ */
.hero-photo{position:relative;margin-top:-82px;min-height:760px;display:flex;align-items:flex-end;color:#fff;background:var(--navy-deep);overflow:hidden}
.hero-photo>.hp-media{position:absolute;inset:0}
.hero-photo>.hp-media img{width:100%;height:100%;object-fit:cover}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,56,.82) 0%,rgba(11,31,56,.55) 42%,rgba(11,31,56,.08) 100%),linear-gradient(180deg,rgba(11,31,56,.35) 0%,rgba(11,31,56,0) 30%,rgba(11,31,56,.5) 100%)}
.hp-copy{position:relative;z-index:1;padding:200px 0 104px;display:flex;flex-direction:column;gap:24px;align-items:flex-start;max-width:640px}
.hp-copy h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(42px,2.4rem + 2vw,68px);line-height:1.04;letter-spacing:-.015em}
.hp-copy .sub{margin:0;font-size:20px;line-height:1.55;color:var(--on-navy-2);max-width:32em}
.hp-copy .btn-row{margin-top:6px}
.hp-note{margin:0;font-size:14px;color:var(--on-navy)}
/* soft hero: cream with contained image */
.hero-soft{padding:72px 0 0}
.hs-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.hs-copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.hs-copy .eyebrow{color:var(--navy)}
.hs-copy h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(40px,2.2rem + 1.8vw,60px);line-height:1.06;color:var(--navy-deep);letter-spacing:-.015em}
.hs-media{position:relative;aspect-ratio:4/4.4;max-height:620px;width:100%}
.hs-media>.img-slot,.hs-media>img{position:absolute;inset:0;width:100%;height:100%;border-radius:26px;object-fit:cover}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-size:14px;background:#fff;border:1px solid var(--rule-soft);color:var(--navy-deep)}
.chip i{width:6px;height:6px;border-radius:50%;background:var(--gold)}
/* plain hero */
.hero-plain{padding:96px 0 0}
.hero-plain h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(40px,2.2rem + 2vw,64px);line-height:1.05;color:var(--navy-deep);letter-spacing:-.015em}

/* glass card that sits on photos */
.glass-card{position:absolute;z-index:2;padding:20px 22px;border-radius:20px;color:#fff;background:var(--glass-dark);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 18px 40px -20px rgba(11,31,56,.5)}
.glass-card .gc-title{font-family:var(--serif);font-size:26px;line-height:1.1}
.glass-card .gc-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:14px;color:rgba(255,255,255,.88)}
.glass-card .gc-meta span{display:flex;align-items:center;gap:7px}
.glass-card .gc-meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.7)}
.glass-light{color:var(--navy-deep);background:rgba(255,255,255,.62);border-color:rgba(255,255,255,.7)}
.glass-light .gc-meta{color:var(--muted)}
.glass-light .gc-meta span::before{background:var(--gold)}

/* image slot placeholder (image to be generated) */
.img-slot{position:relative;overflow:hidden;border-radius:24px;background:radial-gradient(120% 90% at 20% 15%,#f4ebdc 0%,rgba(244,235,220,0) 55%),radial-gradient(90% 80% at 85% 85%,#e3ebe2 0%,rgba(227,235,226,0) 60%),linear-gradient(135deg,#e5edf5,#efe9de);display:flex;align-items:flex-end;justify-content:flex-start}
.img-slot.dark{background:radial-gradient(100% 80% at 25% 20%,#1b3657 0%,rgba(27,54,87,0) 60%),radial-gradient(90% 90% at 85% 90%,#24466e 0%,rgba(36,70,110,0) 60%),#0b1f38}
.img-slot .slot-tag{margin:16px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--navy-deep);background:rgba(255,255,255,.7);border:1px dashed rgba(11,31,56,.35)}
.img-slot.dark .slot-tag{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4)}

/* ============ SECTIONS ============ */
.steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.step4{background:var(--sand);border-radius:20px;padding:28px 24px 26px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.step4:hover{transform:translateY(-3px);box-shadow:0 16px 34px -20px rgba(11,31,56,.35)}
.step4 .n{font-family:var(--serif);font-size:34px;color:var(--clay);line-height:1}
.step4 h3{margin:22px 0 0;font-family:var(--sans);font-weight:700;font-size:18px;color:var(--navy-deep)}
.step4 p{margin:0;font-size:15px;line-height:1.5;color:#5c4636}
.lines-big{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.lines-big li{display:flex;gap:22px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--rule);font-family:var(--serif);font-size:clamp(22px,1.1rem + .8vw,30px);line-height:1.3;color:var(--navy-deep)}
.lines-big li .ln{flex:none;width:28px;height:28px;border-radius:50%;background:var(--sand);display:inline-flex;align-items:center;justify-content:center}
.lines-big li .ln i{width:8px;height:8px;border-radius:50%;background:var(--clay)}
.offer{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.offer a{background:var(--sand);border-radius:22px;padding:30px 24px 26px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;text-decoration:none;color:var(--ink);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.offer a:hover{transform:translateY(-4px);box-shadow:0 18px 36px -20px rgba(11,31,56,.35)}
.offer svg{width:140px;height:96px;margin:12px 0 10px}
.offer h3{margin:0;font-family:var(--serif);font-size:26px;color:var(--navy-deep)}
.offer p{margin:0;font-size:15px;line-height:1.5;color:#5c4636;max-width:20em}
.offer .pill-btn{margin-top:8px;font-size:14px;padding:8px 18px;border-radius:999px;border:1px solid rgba(11,31,56,.3);color:var(--navy-deep)}
.split2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.photo-card{position:relative;border-radius:26px;overflow:hidden;min-height:440px}
.photo-card>img,.photo-card>.img-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.feel{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.feel>div{background:#fff;border:1px solid var(--rule-soft);border-radius:20px;padding:26px 24px}
.feel .ic{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--mist);color:var(--mist-deep);margin-bottom:18px}
.feel .ic svg{width:24px;height:24px}
.feel h3{margin:0;font-size:18px;font-weight:700;color:var(--navy-deep)}
.feel p{margin:8px 0 0;font-size:15px;line-height:1.55;color:var(--muted)}
.example3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:ex}
.example3>div{position:relative;background:var(--sage);border-radius:20px;padding:26px 24px}
.example3 h3{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sage-deep)}
.example3 p{margin:0 0 14px;font-size:15px;color:var(--muted)}
.example3 q{display:block;font-family:var(--serif);font-size:21px;line-height:1.3;color:var(--navy-deep);quotes:"\201C" "\201D"}
.fine{margin:16px 0 0;font-size:14px;color:var(--muted)}
.fine a{color:var(--navy-deep)}
/* week view */
.week5{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.wd{border-radius:16px;padding:16px 12px;min-height:150px;display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--rule-soft)}
.wd .d{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.wd.on{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff}
.wd.on .d{color:var(--gold)}
.wd .blk-am{font-family:var(--serif);font-size:20px;line-height:1.15}
.wd .blk-pm{margin-top:auto;font-size:13px;color:var(--on-navy)}
.wd.off .blk-pm{color:var(--muted)}
.wk-sum{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px;font-size:15px;color:var(--muted)}
.wk-sum b{font-family:var(--serif);font-weight:400;font-size:30px;color:var(--navy-deep);margin-right:6px}
/* cost ladder */
.cost{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cost li{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:center;padding:22px 26px;border-radius:20px;background:#fff;border:1px solid var(--rule-soft)}
.cost li.goal{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff}
.cost .ci{width:48px;height:48px;border-radius:14px;background:var(--sand);display:flex;align-items:center;justify-content:center;color:var(--clay)}
.cost li.goal .ci{background:rgba(255,255,255,.1);color:var(--gold)}
.cost h3{margin:0;font-size:18px;font-weight:700}
.cost .cs{margin:4px 0 0;font-size:14px;color:var(--muted)}
.cost li.goal .cs{color:var(--on-navy)}
.cost .price strong{display:block;font-family:var(--serif);font-weight:400;font-size:28px;color:var(--navy-deep)}
.cost li.goal .price strong{color:#fff}
.cost .price span{display:block;font-size:14px;line-height:1.5;color:var(--muted);margin-top:4px}
.cost li.goal .price span{color:var(--on-navy)}
/* checks */
.checks3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.checks3>div{border-radius:22px;padding:28px 26px;background:var(--mist)}
.checks3>div:nth-child(2){background:var(--sand)}.checks3>div:nth-child(3){background:var(--sage)}
.checks3 .k{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mist-deep)}
.checks3>div:nth-child(2) .k{color:var(--clay)}.checks3>div:nth-child(3) .k{color:var(--sage-deep)}
.checks3 h3{margin:14px 0 8px;font-family:var(--serif);font-size:26px;color:var(--navy-deep)}
.checks3 p{margin:0;font-size:15px;line-height:1.55;color:var(--muted)}
.callout{border-radius:22px;padding:30px 32px;background:var(--navy-deep);color:#fff;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.callout h3{grid-column:1/-1;margin:0;font-family:var(--serif);font-size:28px}
.callout strong{display:block;font-size:16px;color:var(--gold);margin-bottom:6px}
.callout p{margin:0;font-size:15px;line-height:1.55;color:var(--on-navy)}
.crisis{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:18px;background:#fff;border:1px solid var(--rule-soft);font-size:15px;line-height:1.55;color:var(--muted)}
.crisis b{color:var(--navy-deep)}
.crisis a{color:var(--navy-deep);font-weight:700}
.crisis .dot{flex:none;width:38px;height:38px;border-radius:50%;background:var(--sand);display:flex;align-items:center;justify-content:center;color:var(--clay)}
/* faq block uses .q from start css */
.faq-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.faq-wrap .faq-list{border-top:1px solid var(--rule)}
/* research teaser */
.teaser{position:relative;border-radius:26px;overflow:hidden;min-height:420px;display:flex;align-items:flex-end}
.teaser>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.teaser::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,56,0) 30%,rgba(11,31,56,.6) 100%)}
.teaser .glass-card{position:relative;margin:28px;display:flex;flex-wrap:wrap;gap:22px 40px;align-items:center}
.teaser .gstat b{display:block;font-family:var(--serif);font-weight:400;font-size:48px;line-height:1}
.teaser .gstat span{font-size:14px;color:rgba(255,255,255,.85)}
.teaser .glass-card .link-arrow{color:#fff;border-color:rgba(255,255,255,.4)}
/* closing card */
.closer{position:relative;margin:120px auto 0;width:calc(100% - 48px);max-width:1132px;min-height:500px;border-radius:24px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.closer>img,.closer>.img-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.closer .card{position:relative;margin:24px;max-width:560px;width:100%;padding:44px 40px;border-radius:26px;background:rgba(255,255,255,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.6);text-align:center;display:flex;flex-direction:column;gap:16px;align-items:center;box-sizing:border-box}
.closer h2{margin:0;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.1;color:var(--navy-deep)}
.closer p{margin:0;font-size:16px;color:var(--muted)}
.closer .stack{display:flex;flex-direction:column;gap:10px;width:100%}
.closer .btn-ghost{color:var(--navy-deep);border-color:rgba(11,31,56,.4)}
.closer.navy{background:radial-gradient(70% 90% at 22% 85%,#2b4466 0%,rgba(43,68,102,0) 60%),radial-gradient(60% 70% at 85% 10%,#1b3657 0%,rgba(27,54,87,0) 60%),var(--navy-ink)}
.closer.navy .card{background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.closer.navy h2{color:#fff}.closer.navy p{color:var(--on-navy)}
.closer.navy .btn-ghost{color:#fff;border-color:rgba(255,255,255,.5)}

/* ============ FOOTER (navy) ============ */
.foot2{margin-top:120px;background:var(--navy-deep);color:var(--on-navy)}
.foot2 .f-top{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(4,minmax(0,1fr));gap:40px;padding:80px 0 64px}
.foot2 .f-cta h2{margin:0;font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.12;color:#fff}
.foot2 .f-cta p{margin:12px 0 22px;font-size:15px;line-height:1.6;color:var(--on-navy)}
.foot2 .f-cta .btn-row{gap:10px}
.foot2 .f-cta .btn-ghost{min-height:48px;padding:10px 20px;font-size:15px}
.foot2 .f-cta .btn-light{min-height:48px;padding:10px 22px;font-size:15px}
.foot2 h3{margin:0 0 16px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.foot2 ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.foot2 ul a{color:var(--on-navy-2);text-decoration:none;font-size:15px}
.foot2 ul a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.foot2 .f-bottom{background:var(--navy-ink)}
.foot2 .f-bottom .wrap{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center;padding-top:28px;padding-bottom:28px}
.foot2 .f-bottom img{height:34px;width:auto;display:block}
.foot2 .f-bottom p{margin:0;font-size:13px;line-height:1.6;color:var(--on-navy-dim)}
.foot2 .f-bottom a{color:#fff;font-weight:700}
.foot2 .f-legal{text-align:right;white-space:nowrap}
.page.no-margin-foot+.x{display:none}

/* ============ CHAT ============ */
.chat-fab{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:80;display:flex;align-items:center;gap:10px;appearance:none;border:0;cursor:pointer;padding:8px 8px 8px 18px;border-radius:999px;background:var(--navy-deep);color:#fff;font:inherit;font-size:15px;font-weight:700;box-shadow:0 18px 40px -16px rgba(11,31,56,.6);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.chat-fab:hover{transform:translateY(-2px)}
.chat-fab .cf-ic{width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--navy-deep);display:flex;align-items:center;justify-content:center;position:relative}
.chat-fab .cf-ic::after{content:"";position:absolute;top:2px;right:2px;width:9px;height:9px;border-radius:50%;background:#5fbf8a;border:2px solid var(--navy-deep)}
.chat-panel{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:81;width:380px;max-width:calc(100vw - 32px);height:min(600px,calc(100vh - 140px));display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:rgba(251,249,244,.94);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border:1px solid rgba(255,255,255,.8);box-shadow:0 30px 70px -24px rgba(11,31,56,.55);opacity:0;visibility:hidden;transform:translateY(12px) scale(.98);transform-origin:bottom right;transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1),visibility .25s}
.chat-panel.on{opacity:1;visibility:visible;transform:none}
.cp-head{display:flex;align-items:center;gap:12px;padding:18px 18px 16px;background:var(--navy-deep);color:#fff}
.cp-av{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex:none}
.cp-head strong{display:block;font-family:var(--serif);font-weight:400;font-size:20px;line-height:1.1}
.cp-head small{display:block;font-size:12px;color:var(--on-navy)}
.cp-x{margin-left:auto;appearance:none;border:0;background:rgba(255,255,255,.1);color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:18px;line-height:1}
.cp-body{flex:1;overflow:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px}
.msg{max-width:86%;padding:12px 14px;border-radius:18px;font-size:15px;line-height:1.5}
.msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--rule-soft);color:var(--ink);border-bottom-left-radius:6px}
.msg.me{align-self:flex-end;background:var(--navy-deep);color:#fff;border-bottom-right-radius:6px}
.msg a{color:var(--navy);font-weight:700}
.msg.typing{display:flex;gap:5px;align-items:center}
.msg.typing i{width:7px;height:7px;border-radius:50%;background:var(--rule);animation:pw-blink 1s infinite}
.msg.typing i:nth-child(2){animation-delay:.15s}.msg.typing i:nth-child(3){animation-delay:.3s}
@keyframes pw-blink{0%,100%{opacity:.3}50%{opacity:1}}
.cp-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px}
.cp-chips button{appearance:none;cursor:pointer;font:inherit;font-size:13px;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--rule);color:var(--navy-deep)}
.cp-chips button:hover{border-color:var(--navy-deep)}
.cp-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--rule-soft);background:rgba(255,255,255,.6)}
.cp-form input{flex:1;min-width:0;font:inherit;font-size:15px;padding:12px 14px;border-radius:999px;border:1px solid var(--rule);background:#fff;color:var(--ink)}
.cp-form button{appearance:none;border:0;cursor:pointer;width:46px;height:46px;border-radius:50%;background:var(--navy-deep);color:#fff;display:flex;align-items:center;justify-content:center}
.cp-foot{padding:0 16px 12px;font-size:11px;line-height:1.4;color:var(--muted);text-align:center}

/* ============ HOW IT WORKS (scrolly) ============ */
.scrolly{display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px;align-items:start}
.sx-index{position:sticky;top:120px;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sx-index a{display:inline-flex;gap:8px;padding:8px 14px;border-radius:999px;font-size:15px;color:var(--navy-deep);text-decoration:none;transition:background .3s}
.sx-index a b{font-weight:400;color:var(--muted)}
.sx-index a.on{background:rgba(11,31,56,.08)}
.sx-steps{display:flex;flex-direction:column;gap:120px}
.sx-step .sx-media{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:16/9}
.sx-step .sx-media>img,.sx-step .sx-media>.img-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.sx-step .sx-text{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 40px;align-items:end;margin-top:28px}
.sx-step h3{margin:0;font-family:var(--serif);font-weight:400;font-size:34px;color:var(--navy-deep)}
.sx-step p{margin:10px 0 0;font-size:17px;line-height:1.6;color:var(--muted);max-width:34em}
.gc-week{left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,86%)}
.gc-week .wkrow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:16px}
.gc-week .wkd{display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:center;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.gc-week .wkd i{display:block;height:64px;border-radius:10px;background:rgba(255,255,255,.12);font-style:normal;font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;display:flex;align-items:center;justify-content:center;padding:6px}
.gc-week .wkd.on i{background:rgba(242,191,79,.92);color:var(--navy-deep);font-weight:700}
.gc-week .wkd small{font-weight:400;letter-spacing:0;text-transform:none;opacity:.85}
.gc-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.gc-list div{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.14);font-size:14px}
.gc-list div i{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font-style:normal}
.gc-trio{left:24px;right:24px;bottom:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.gc-trio>div{padding:18px 18px;border-radius:18px;text-align:center;background:var(--glass-dark);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.gc-trio strong{display:block;font-size:17px;margin-bottom:6px}
.gc-trio span{font-size:13px;line-height:1.45;color:rgba(255,255,255,.88)}

/* ============ RESOURCES ============ */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.filters button{appearance:none;cursor:pointer;font:inherit;font-size:14px;padding:9px 16px;border-radius:999px;border:1px solid var(--rule);background:#fff;color:var(--navy-deep);transition:background .2s,color .2s}
.filters button[aria-pressed="true"]{background:var(--navy-deep);color:#fff;border-color:var(--navy-deep)}
.rgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rcard{display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--rule-soft);text-decoration:none;color:var(--ink);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.rcard:hover{transform:translateY(-3px);box-shadow:0 18px 36px -22px rgba(11,31,56,.4)}
.rcard .rc-top{height:150px;display:flex;align-items:center;justify-content:center;background:var(--mist);color:var(--mist-deep)}
.rcard .rc-top svg{width:84px;height:60px}
.rcard[data-cat="coverage"] .rc-top{background:var(--sand);color:var(--clay)}
.rcard[data-cat="families"] .rc-top{background:var(--sage);color:var(--sage-deep)}
.rcard[data-cat="crisis"] .rc-top{background:#f1e2d9;color:var(--clay)}
.rcard[data-cat="starting"] .rc-top{background:#ece8f1;color:#4b4370}
.rcard .rc-b{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.rcard .rc-cat{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rcard h3{margin:0;font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.25;color:var(--navy-deep)}
.rcard .rc-go{margin-top:auto;font-size:14px;font-weight:700;color:var(--navy-deep)}
.rfeat{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);border-radius:26px;overflow:hidden;background:#fff;border:1px solid var(--rule-soft);text-decoration:none;color:var(--ink);margin-bottom:40px}
.rfeat .rf-img{position:relative;min-height:360px}
.rfeat .rf-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rfeat .rf-b{padding:44px 40px;display:flex;flex-direction:column;gap:16px;justify-content:center}
.rfeat h2{margin:0;font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.12;color:var(--navy-deep)}
.rfeat p{margin:0;color:var(--muted)}
.rcard[hidden]{display:none}

/* ============ ARTICLE ============ */
.art-head{padding:72px 0 0}
.crumbs{display:flex;gap:8px;font-size:14px;color:var(--muted);margin-bottom:20px}
.crumbs a{color:var(--navy-deep);text-decoration:none}
.art-head h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(36px,2rem + 1.6vw,54px);line-height:1.08;color:var(--navy-deep);letter-spacing:-.01em;max-width:18em}
.art-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;font-size:14px;color:var(--muted)}
.art-hero{margin-top:40px;border-radius:26px;overflow:hidden;aspect-ratio:21/9}
.art-hero img{width:100%;height:100%;object-fit:cover}
.art-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 260px;gap:56px;align-items:start;margin-top:56px}
.toc{position:sticky;top:120px;font-size:14px}
.toc b{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;border-left:2px solid var(--rule-soft)}
.toc a{display:block;padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--muted);text-decoration:none;line-height:1.4}
.toc a.on{border-color:var(--navy-deep);color:var(--navy-deep)}
.prose{font-size:18px;line-height:1.75;color:var(--ink)}
.prose h2{margin:44px 0 12px;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.2;color:var(--navy-deep);scroll-margin-top:110px}
.prose p{margin:0 0 18px}
.prose ul{margin:0 0 18px;padding-left:22px}
.prose li{margin:6px 0}
.prose .box{margin:28px 0;padding:24px 26px;border-radius:18px;background:var(--mist)}
.prose .box.safety{background:#f1e2d9}
.prose .box strong{display:block;font-family:var(--serif);font-weight:400;font-size:22px;color:var(--navy-deep);margin-bottom:6px}
.prose .box p{margin:0;font-size:16px;line-height:1.6}
.prose sup a{font-size:12px;color:var(--navy);text-decoration:none;margin-left:2px}
.side-cta{position:sticky;top:120px;border-radius:22px;padding:26px 24px;background:var(--navy-deep);color:#fff;display:flex;flex-direction:column;gap:12px}
.side-cta h3{margin:0;font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.15}
.side-cta p{margin:0;font-size:14px;line-height:1.55;color:var(--on-navy)}
.side-cta .btn{min-height:46px;font-size:15px;padding:10px 18px}
.sources-list{margin:48px 0 0;padding:28px 0 0;border-top:1px solid var(--rule);font-size:14px;color:var(--muted)}
.sources-list ol{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.sources-list a{color:var(--navy-deep)}
.reviewed{margin-top:22px;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid var(--rule-soft);font-size:13px;line-height:1.55;color:var(--muted)}

/* ============ FAQ PAGE ============ */
.faq-search{position:relative;max-width:620px;margin-top:28px}
.faq-search input{width:100%;box-sizing:border-box;font:inherit;font-size:17px;padding:18px 22px 18px 52px;border-radius:999px;border:1px solid var(--rule);background:#fff;color:var(--ink)}
.faq-search svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted)}
.faq-groups{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;align-items:start;margin-top:56px}
.faq-tabs{position:sticky;top:120px;display:flex;flex-direction:column;gap:4px}
.faq-tabs a{padding:10px 16px;border-radius:12px;color:var(--navy-deep);text-decoration:none;font-size:15px}
.faq-tabs a:hover{background:rgba(11,31,56,.05)}
.faq-group{margin-bottom:56px;scroll-margin-top:110px}
.faq-group h2{margin:0 0 14px;font-family:var(--serif);font-weight:400;font-size:30px;color:var(--navy-deep)}
.q[hidden]{display:none}
.no-hits{display:none;padding:24px;border-radius:16px;background:#fff;border:1px solid var(--rule-soft);color:var(--muted)}

/* ============ REFERRALS ============ */
.paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.path{appearance:none;font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:30px 30px 28px;border-radius:24px;border:1.5px solid transparent;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .2s;color:var(--ink)}
.path:hover{transform:translateY(-3px);box-shadow:0 18px 36px -22px rgba(11,31,56,.4)}
.path[aria-pressed="true"]{border-color:var(--navy-deep)}
.path.pro{background:var(--mist)}.path.self{background:var(--sand)}
.path .tag{display:inline-block;align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mist-deep)}
.path.self .tag{color:var(--clay)}
.path h3{margin:0;font-family:var(--serif);font-weight:400;font-size:30px;color:var(--navy-deep)}
.path p{margin:0;font-size:15px;line-height:1.55;color:var(--muted)}
.path .go{margin-top:8px;font-weight:700;color:var(--navy-deep)}
.ref-wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:40px;align-items:start}
.formcard{border-radius:26px;padding:36px;background:#fff;border:1px solid var(--rule-soft)}
.formcard h3{margin:0;font-family:var(--serif);font-weight:400;font-size:30px;color:var(--navy-deep)}
.prog{display:flex;gap:8px;margin:18px 0 26px}
.prog i{flex:1;height:4px;border-radius:2px;background:var(--rule-soft)}
.prog i.on{background:var(--navy-deep)}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
.field label{font-size:14px;font-weight:700;color:var(--navy-deep)}
.field label span{font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{font:inherit;font-size:16px;padding:13px 14px;border-radius:12px;border:1px solid var(--rule);background:var(--cream);color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--navy-deep);outline-offset:0;background:#fff}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--rule);background:var(--cream);font-size:14px;cursor:pointer;font-weight:400;color:var(--ink)}
.seg input{accent-color:var(--navy-deep)}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--muted);grid-column:1/-1;padding:14px 16px;border-radius:14px;background:var(--cream)}
.consent input{margin-top:3px;accent-color:var(--navy-deep);width:18px;height:18px}
.form-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.form-note{font-size:13px;color:var(--muted);margin:14px 0 0}
.done{text-align:center;padding:24px 0}
.done .ok{width:64px;height:64px;border-radius:50%;margin:0 auto 18px;background:var(--sage);color:var(--sage-deep);display:flex;align-items:center;justify-content:center}
.ref-side{display:flex;flex-direction:column;gap:16px}
.side-box{border-radius:22px;padding:26px 24px;background:var(--navy-deep);color:#fff}
.side-box h3{margin:0 0 6px;font-family:var(--serif);font-weight:400;font-size:24px}
.side-box p{margin:0;font-size:14px;line-height:1.55;color:var(--on-navy)}
.side-box .big{display:block;margin:14px 0 4px;font-family:var(--serif);font-size:30px;color:#fff;text-decoration:none}
.side-list{border-radius:22px;padding:24px;background:#fff;border:1px solid var(--rule-soft)}
.side-list h3{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--navy-deep)}
.side-list ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}
.side-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;font-size:14px;line-height:1.5;color:var(--muted)}
.side-list li b{display:block;color:var(--navy-deep)}
.side-list .n{width:28px;height:28px;border-radius:50%;background:var(--sand);color:var(--clay);font-family:var(--serif);display:flex;align-items:center;justify-content:center}
.who-strip{display:flex;flex-wrap:wrap;gap:10px}

/* ============ PRIVACY / DOC ============ */
.doc-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start;margin-top:56px}
.doc h2{margin:48px 0 12px;font-family:var(--serif);font-weight:400;font-size:28px;color:var(--navy-deep);scroll-margin-top:110px}
.doc h2:first-child{margin-top:0}
.doc p{margin:0 0 16px;font-size:17px;line-height:1.75}
.doc a{color:var(--navy-deep);font-weight:700}

/* ============ 404 ============ */
.lost{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;padding:120px 24px 0}
.lost .big{font-family:var(--serif);font-size:120px;line-height:1;color:var(--sand);-webkit-text-stroke:1px var(--rule)}

/* ============ VISIT ============ */
.visit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.map-card{position:relative;min-height:380px;border-radius:24px;overflow:hidden;background:#e9e4d8}
.map-card>svg{position:absolute;inset:0;width:100%;height:100%}
.map-card .glass-card{left:24px;bottom:24px;right:24px}
.hours-card{border-radius:24px;padding:32px;background:#fff;border:1px solid var(--rule-soft);display:flex;flex-direction:column;gap:18px}
.hours-card h3{margin:0;font-family:var(--serif);font-weight:400;font-size:28px;color:var(--navy-deep)}
.hrow{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule-soft);font-size:15px}
.hrow b{color:var(--navy-deep)}
.hrow span{color:var(--muted);text-align:right}

/* ============ MOTION ============ */
.js [data-rv]{opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.js [data-rv].in{opacity:1;transform:none}
.js [data-rv-kids]>*{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.js [data-rv-kids].in>*{opacity:1;transform:none}
.js [data-rv-kids].in>*:nth-child(2){transition-delay:.08s}.js [data-rv-kids].in>*:nth-child(3){transition-delay:.16s}.js [data-rv-kids].in>*:nth-child(4){transition-delay:.24s}.js [data-rv-kids].in>*:nth-child(5){transition-delay:.32s}.js [data-rv-kids].in>*:nth-child(6){transition-delay:.4s}
.js .sx-step .glass-card{opacity:0;transition:opacity .8s ease .2s,transform .9s cubic-bezier(.2,.8,.2,1) .2s}
.js .sx-step:not(.in) .gc-call,.js .sx-step:not(.in) .gc-visit{transform:translateY(16px)}
.js .sx-step.in .glass-card{opacity:1}
.js .sx-step.in .gc-call,.js .sx-step.in .gc-visit{transform:none}
.js .sx-step:not(.in) .gc-week{transform:translate(-50%,-44%)}
.js .sx-step .gc-trio>div{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js .sx-step.in .gc-trio>div{opacity:1;transform:none}
.js .sx-step.in .gc-trio>div:nth-child(2){transition-delay:.15s}.js .sx-step.in .gc-trio>div:nth-child(3){transition-delay:.3s}
.js .sx-step.in .gc-trio{opacity:1}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}

/* ============ RESPONSIVE ============ */
@media (max-width:1180px){
  .nav-call{display:none}
  .menu button{padding:10px 10px;font-size:14px}
  .navbar{padding-left:16px}
  .mega-in{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px;padding:28px}
  .mega-rule,.mega-feature{display:none}
}
@media (max-width:759px){
  .menu{display:none}
  .burger{display:inline-flex}
  .mega{display:none}
}
@media (max-width:1060px){
  .art-grid{grid-template-columns:minmax(0,1fr)}
  .toc,.art-side{display:none}
  .foot2 .f-top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot2 .f-cta{grid-column:1/-1}
}
@media (max-width:900px){
  .wrap,.read{padding-left:max(20px, env(safe-area-inset-left, 0px));padding-right:max(20px, env(safe-area-inset-right, 0px))}
  .sec{padding-top:72px}.sec-tight{padding-top:56px}
  .head{margin-bottom:28px}
  .lede{font-size:17px}
  .hero-photo{min-height:640px}
  .hp-copy{padding:240px 0 56px;gap:18px}
  .hp-copy .sub{font-size:17px}

  .hero-photo::after{background:linear-gradient(180deg,rgba(11,31,56,.4) 0%,rgba(11,31,56,.2) 35%,rgba(11,31,56,.88) 100%)}
  .hero-soft{padding-top:36px}
  .hs-grid,.split2,.faq-wrap,.ref-wrap,.visit{grid-template-columns:1fr;gap:28px}
  .hs-media{aspect-ratio:4/3.4}
  .steps4,.offer,.checks3,.example3{grid-template-columns:1fr}
  .offer{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .offer a{padding:22px 14px}
  .offer svg{width:110px;height:76px}
  .offer h3{font-size:21px}.offer p{font-size:13px}
  .lines-big li{gap:16px;padding:20px 0}
  .week5{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
  .wd{min-height:110px;padding:10px 5px;border-radius:12px;gap:6px}
  .wd .d{font-size:10px;letter-spacing:.02em;text-align:center}
  .wd .blk-am{font-size:12px;text-align:center}
  .wd .blk-pm{font-size:10px;text-align:center}
  .cost li{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:18px}
  .cost .price{grid-column:1/-1}
  .callout{grid-template-columns:1fr;gap:18px;padding:26px 22px}
  .closer{width:calc(100% - 40px);margin-top:80px;min-height:460px;border-radius:20px}
  .closer .card{padding:32px 22px}.closer h2{font-size:32px}
  .scrolly{grid-template-columns:1fr;gap:0}
  .sx-index{display:none}
  .sx-steps{gap:72px}
  .sx-step .sx-media{aspect-ratio:4/5}
  .sx-step .sx-text{grid-template-columns:1fr}
  .sx-step h3{font-size:28px}
  .gc-trio{grid-template-columns:1fr;left:14px;right:14px;bottom:14px;gap:8px}
  .gc-trio>div{padding:12px 14px}
  .gc-week{width:92%}
  .gc-week .wkd i{height:52px;font-size:10px}
  .rgrid{grid-template-columns:1fr}
  .rfeat{grid-template-columns:1fr}
  .rfeat .rf-img{min-height:220px}
  .rfeat .rf-b{padding:26px 22px}
  .rfeat h2{font-size:28px}
  .faq-groups,.doc-grid{grid-template-columns:1fr;gap:20px}
  .faq-tabs{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}
  .faq-tabs a{padding:8px 12px;border:1px solid var(--rule);border-radius:999px;font-size:13px}
  .doc-grid>nav{display:none}
  .paths{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .formcard{padding:24px 18px}
  .foot2{margin-top:80px}
  .foot2 .f-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px;padding:56px 0 44px}
  .foot2 .f-bottom .wrap{grid-template-columns:1fr;gap:14px}
  .foot2 .f-legal{text-align:left}
  .chat-fab .cf-label{display:none}
  .chat-fab{padding:6px}
  .chat-panel{right:12px;left:12px;width:auto;max-width:none;bottom:calc(76px + env(safe-area-inset-bottom,0px));height:min(560px,calc(100vh - 120px))}
  .teaser .glass-card{margin:16px}
  .map-card{min-height:320px}
}
.navbar .btn{white-space:nowrap}
.hero-photo{margin-top:-104px}
@media (max-width:600px){.nav-right{gap:8px}.nav-right .btn-sm{min-height:40px;padding:8px 14px;font-size:14px}.navbar{padding:8px 8px 8px 14px}.navbar .logo img{height:30px}}
.rcard .rc-photo{height:190px;padding:0;overflow:hidden;background:var(--sand)}
.rcard .rc-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.rcard:hover .rc-photo img{transform:scale(1.04)}
[hidden]{display:none!important}
.medstrip{position:relative;z-index:2;margin-top:-44px}
.ms-in{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:24px;align-items:center;padding:18px 28px 18px 18px;border-radius:22px;background:#fff;border:1px solid var(--rule-soft);box-shadow:0 20px 44px -26px rgba(11,31,56,.4);text-decoration:none;color:var(--ink)}
.ms-in>svg{width:96px;height:56px;background:var(--sand);border-radius:14px;padding:4px}
.ms-in b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;color:var(--navy-deep)}
.ms-in span{font-size:15px;color:var(--muted)}
@media (max-width:900px){.medstrip{margin-top:-28px}.ms-in{grid-template-columns:64px minmax(0,1fr);padding:16px}.ms-in>svg{width:64px;height:44px}.ms-in .link-arrow{grid-column:1/-1;justify-self:start}.ms-in b{font-size:20px}
.steps4[style*="repeat(3"]{grid-template-columns:1fr!important}}
.sheet{z-index:90}
.cp-photo{position:relative;width:48px;height:48px;border-radius:50%;background:radial-gradient(80% 80% at 30% 25%,#f4ebdc,#e3ebe2 60%,#e5edf5);border:2px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;overflow:visible}
.cp-photo span{font-size:9px;font-weight:700;color:var(--navy-deep);letter-spacing:.02em}
.cp-photo i{position:absolute;right:-1px;bottom:1px;width:12px;height:12px;border-radius:50%;background:#5fbf8a;border:2px solid var(--navy-deep)}

@media (max-width:600px){.hp-copy .btn-row{flex-direction:column;width:100%}.hp-copy .btn{width:100%}}
.cp-photo img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.hs-media>img{box-shadow:0 30px 60px -36px rgba(11,31,56,.45)}
.chat-fab .cf-face{background:var(--sand);overflow:visible;border:2px solid var(--gold)}
.chat-fab .cf-face img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
@media (max-width:900px){.chat-fab .cf-ic{width:48px;height:48px}}
.chat-fab .cf-face{border:0;background:transparent;box-shadow:0 0 0 2px #fff}
.chat-fab .cf-ic::after{border-color:#fff}
@media (max-width:900px){
  .chat-fab{padding:0;background:transparent;box-shadow:none}
  .chat-fab .cf-face{width:56px;height:56px;box-shadow:0 12px 28px -10px rgba(11,31,56,.55),0 0 0 2px #fff}
  .chat-fab .cf-ic::after{top:3px;right:3px;width:12px;height:12px}
}
@media (max-width:900px){
  .map-card{display:flex;flex-direction:column;justify-content:flex-end;padding-top:190px;min-height:0}
  .map-card .glass-card{position:relative;left:auto;right:auto;bottom:auto;margin:0 14px 14px}
}
/* chat button v3: portrait with navy ring, text rolls out now and then */
.chat-fab,.chat-fab:hover{padding:0;background:transparent;box-shadow:none;gap:0;transform:none}
.chat-fab .cf-ic.cf-face{position:relative;z-index:2;width:60px;height:60px;border-radius:50%;background:#fff;border:3px solid var(--navy-deep);box-shadow:0 14px 30px -12px rgba(11,31,56,.55)}
.chat-fab .cf-ic::after{top:2px;right:2px;width:13px;height:13px;border:2px solid #fff}
.chat-fab .cf-label{display:block!important;position:absolute;right:30px;top:50%;z-index:1;transform:translateY(-50%);max-width:0;overflow:hidden;white-space:nowrap;padding:0;border-radius:999px 0 0 999px;background:var(--navy-deep);color:#fff;font-size:15px;font-weight:700;line-height:1;opacity:0;transition:max-width .6s cubic-bezier(.2,.8,.2,1),padding .6s cubic-bezier(.2,.8,.2,1),opacity .3s ease}
.chat-fab .cf-label span{display:block;padding:15px 0}
.chat-fab.peek .cf-label,.chat-fab:focus-visible .cf-label{max-width:340px;padding:0 44px 0 20px;opacity:1}
@media (hover:hover){.chat-fab:hover .cf-label{max-width:340px;padding:0 44px 0 20px;opacity:1}}
.chat-fab[aria-expanded="true"] .cf-label{max-width:0!important;padding:0!important;opacity:0!important}
.chat-fab:hover .cf-face{transform:scale(1.04)}
.chat-fab .cf-face{transition:transform .3s cubic-bezier(.2,.8,.2,1)}
@media (max-width:900px){
  .chat-fab .cf-ic.cf-face{width:56px;height:56px}
  .chat-fab .cf-label{font-size:14px;max-width:0}
  .chat-fab.peek .cf-label{max-width:calc(100vw - 110px)}
  .chat-fab .cf-label span{padding:14px 0}
}
@media (prefers-reduced-motion:reduce){.chat-fab .cf-label{transition:none}}
/* outcomes 9 hrs tile: own class so the site .chip style can't override it */
.t-photo .tchip{position:relative;z-index:1;margin:24px;padding:20px 24px;border-radius:22px;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.t-photo .tchip b{font-family:var(--serif);font-weight:400;font-size:56px;line-height:1;color:#fff}
.t-photo .tchip b small{font-size:22px}
.t-photo .tchip p{margin:0;font-size:16px;line-height:1.45;max-width:24em;color:#fff}
.t-photo .tchip .pills i{width:10px;height:26px;border-radius:5px;background:var(--gold)}
.t-photo .tchip .pills i.gap{background:transparent;width:6px}
.cp-chips:not([hidden]){animation:pw-fade .4s ease both}
.msg{animation:pw-fade .3s ease both}
.sx-cta{gap:10px;min-height:50px;padding:12px 24px;font-size:16px;white-space:nowrap;justify-self:start;border:0;cursor:pointer;font-family:inherit}
.sx-cta svg{transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.sx-cta:hover svg{transform:translateX(4px)}
@media (max-width:900px){.sx-cta{width:auto}}
/* glossy cards zoom in, like the Outcomes tiles */
.js [data-pop]{scale:.86;opacity:0;transition:scale .9s cubic-bezier(.18,.9,.32,1.15) .15s,opacity .5s ease .15s!important}
.js [data-pop].in{scale:1;opacity:1}
.gc-trio>div[data-pop]:nth-child(2){transition-delay:.3s!important}.gc-trio>div[data-pop]:nth-child(3){transition-delay:.45s!important}
/* photos zoom slightly on hover, like the Outcomes photo tile */
.hs-media{border-radius:26px;overflow:hidden}
.sx-media>img,.hs-media>img,.teaser>img,.photo-card>img,.closer>img{transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
.sx-media:hover>img,.hs-media:hover>img,.teaser:hover>img,.closer:hover>img{transform:scale(1.04)}
@media (prefers-reduced-motion:reduce){.js [data-pop]{scale:1;opacity:1}}
/* "held card" tilt: zoom + slight angle on hover / keyboard focus */
.offer,.steps4,.rgrid,.paths{perspective:1000px}
html .offer a,html .step4,html .rcard,html .path{transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,opacity .7s ease!important}
html.js .offer a:hover,html .offer a:focus-visible,html.js a.step4:hover,html a.step4:focus-visible,html.js .rcard:hover,html .rcard:focus-visible,html.js .path:hover,html .path:focus-visible,
html:not(.js) .offer a:hover,html:not(.js) a.step4:hover,html:not(.js) .rcard:hover,html:not(.js) .path:hover{
  transform:rotateX(var(--rx,4deg)) rotateY(var(--ry,-5deg)) scale(1.05)!important;
  box-shadow:0 30px 50px -24px rgba(11,31,56,.45),0 8px 18px -10px rgba(11,31,56,.2);z-index:2;position:relative}
@media (hover:none){html .offer a:hover,html a.step4:hover,html .rcard:hover,html .path:hover{transform:none!important;box-shadow:none}
  html .offer a:active,html a.step4:active,html .rcard:active,html .path:active{transform:rotateX(3deg) rotateY(-4deg) scale(1.03)!important}}
@media (prefers-reduced-motion:reduce){html .offer a:hover,html a.step4:hover,html .rcard:hover,html .path:hover{transform:scale(1.02)!important}}
@media (min-width:760px) and (max-width:900px){
  .topbar .wrap{padding-left:16px;padding-right:16px}
  .navbar{padding:8px 8px 8px 14px;gap:8px}
  .navbar .logo img{height:30px}
  .menu{gap:0}
  .menu button{padding:9px 7px;font-size:13.5px;gap:4px}
  .menu button svg{width:10px;height:10px}
  .nav-right .btn-sm{min-height:40px;padding:8px 14px;font-size:14px}
}
.cp-chips:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.cp-chips button{text-align:center;white-space:nowrap}
.cp-chips button:last-child{grid-column:1/-1}
@media (min-width:560px) and (max-width:900px){.cp-chips:not([hidden]){grid-template-columns:repeat(5,auto);justify-content:start}.cp-chips button:last-child{grid-column:auto}}
/* home hero: full-bleed photo, zoomed from the top so her face sits below the nav */
.home-hero .hp-media{top:0;overflow:hidden}
.home-hero .hp-media img{height:132%;object-position:70% 0%}
@media (max-width:900px){.home-hero .hp-media img{height:118%;object-position:72% 0%}}
.week5{grid-template-columns:repeat(5,minmax(0,1fr))}
.mega-feature .mf-img img{object-position:50% 30%}
@media (max-width:900px){.week5{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.wd .blk-am{font-size:13px}}

/* ===== forms: clear selected states ===== */
.seg label{position:relative;transition:background .2s,border-color .2s,color .2s}
.seg input{appearance:none;-webkit-appearance:none;flex:none;width:18px;height:18px;margin:0;border-radius:50%;border:2px solid #b9b2a3;background:#fff;transition:border .2s}
.seg label:hover{border-color:var(--navy)}
.seg label:has(input:checked){background:var(--navy-deep);border-color:var(--navy-deep);color:#fff;font-weight:700}
.seg input:checked{border:5px solid var(--gold);background:var(--navy-deep)}
.seg input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.consent{cursor:pointer;align-items:center}
.consent input{appearance:none;-webkit-appearance:none;flex:none;width:22px;height:22px;margin:0;border-radius:6px;border:2px solid #b9b2a3;background:#fff;cursor:pointer;transition:background .2s,border-color .2s}
.consent input:checked{background:var(--navy-deep) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f2bf4f' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/16px no-repeat;border-color:var(--navy-deep)}
.consent:has(input:checked){background:#eef2f7;color:var(--navy-deep)}
.consent input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.field textarea{font:inherit;font-size:16px;padding:12px 14px;border-radius:12px;border:1px solid var(--rule);background:var(--cream);color:var(--ink);resize:vertical}
.field.bad input,.field.bad select,.field.bad textarea{border-color:#b3261e;background:#fdf3f2}
.field.bad .seg label{border-color:#e0a59f}
.consent.bad{background:#fdf3f2;box-shadow:inset 0 0 0 1px #e0a59f}
.ferr{display:block;margin-top:6px;font-size:13px;font-weight:700;color:#b3261e}
.consent .ferr{flex-basis:100%}
.consent.bad{flex-wrap:wrap}
.iq-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.iq-head h3{margin:0;font-family:var(--serif);font-weight:400;font-size:26px;color:var(--navy-deep)}
.iq-count{font-size:13px;color:var(--muted);white-space:nowrap}
.form-note{display:flex;align-items:center;gap:6px}
.form-note svg{color:var(--sage-deep)}

/* ===== closing "first step" section with form ===== */
.closer-form{min-height:0;padding:56px 0;align-items:center}
.cf-card{position:relative;z-index:1;margin:0 auto;width:calc(100% - 48px);max-width:1040px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;align-items:center;padding:40px;border-radius:26px;background:rgba(251,249,244,.86);backdrop-filter:blur(20px) saturate(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.1);border:1px solid rgba(255,255,255,.7);box-shadow:0 30px 60px -34px rgba(11,31,56,.5);box-sizing:border-box}
.cf-left{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.cf-left h2{margin:0;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.08;color:var(--navy-deep)}
.cf-left p{margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.cf-phone{display:inline-flex;align-items:center;gap:10px;margin-top:6px;padding:12px 20px;border-radius:999px;background:#fff;border:1px solid var(--rule);color:var(--navy-deep);font-family:var(--serif);font-size:22px;text-decoration:none}
.cf-small{font-size:14px!important}
.cf-link{color:var(--navy-deep);font-weight:700}
.cf-right{background:#fff;border-radius:20px;padding:24px 24px 18px;border:1px solid var(--rule-soft)}
.cf-right .fgrid{gap:12px}
.closer-form.navy .cf-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.closer-form.navy .cf-left h2{color:#fff}.closer-form.navy .cf-left p{color:var(--on-navy)}
.closer-form.navy .cf-left .eyebrow{color:var(--gold)}
.closer-form.navy .cf-link{color:#fff}
.closer-form>img{filter:none}

/* ===== get started pop-up ===== */
html.gs-on{overflow:hidden}
.gs{position:fixed;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.gs-back{position:absolute;inset:0;background:rgba(18,26,38,.36);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transition:opacity .25s}
.gs-card{position:relative;width:min(620px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:34px 32px 26px;border-radius:26px;background:var(--cream);box-shadow:0 40px 80px -30px rgba(11,31,56,.6);opacity:0;scale:.94;transition:opacity .25s,scale .35s cubic-bezier(.18,.9,.32,1.15);box-sizing:border-box}
.gs.on .gs-back{opacity:1}.gs.on .gs-card{opacity:1;scale:1}
.gs-x{position:absolute;top:16px;right:16px;background:rgba(11,31,56,.07);color:var(--navy-deep)}
.gs-sub{margin:8px 0 0;color:var(--muted);font-size:16px;line-height:1.55}
.gs-alt{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 20px}
.gs-tel{font-size:15px;color:var(--navy-deep)}
.gs .iq-wrap{background:#fff;border:1px solid var(--rule-soft);border-radius:20px;padding:22px 22px 14px}
button.btn{font-family:inherit;cursor:pointer}
button.btn-light,button.btn-navy,button.btn-gold{border:0}
@media (max-width:900px){
  .closer-form{padding:40px 0}
  .cf-card{grid-template-columns:1fr;gap:22px;padding:24px 16px;width:calc(100% - 32px)}
  .cf-left h2{font-size:30px}
  .cf-right{padding:18px 14px 12px}
  .gs-card{padding:26px 16px 18px;border-radius:22px}
  .gs .iq-wrap{padding:16px 14px 10px}
  .iq-head h3{font-size:22px}
}
@media (prefers-reduced-motion:reduce){.gs-card,.gs-back{transition:none}}
/* radios: the generic .field input/label rules were overriding these */
.field .seg label,.seg label{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;font-size:15px;font-weight:400;color:var(--ink);line-height:1.2}
.field .seg input[type=radio]{appearance:none;-webkit-appearance:none;box-sizing:border-box;flex:none;width:18px;height:18px;min-height:0;padding:0;margin:0;border-radius:50%;border:2px solid #b9b2a3;background:#fff}
.field .seg input[type=radio]:checked{border:5px solid var(--gold);background:#fff}
.field .seg label:has(input:checked){background:var(--navy-deep);border-color:var(--navy-deep);color:#fff;font-weight:700}
.field .seg label:has(input:checked) span{color:#fff}
.consent input[type=checkbox]{box-sizing:border-box;padding:0;min-height:0}

/* ===== tilt: only the "Find your way in" cards, desktop only; everything else a subtle zoom ===== */
html.js a.step4:hover,html a.step4:focus-visible,html.js .rcard:hover,html .rcard:focus-visible,html.js .path:hover,html .path:focus-visible,
html:not(.js) a.step4:hover,html:not(.js) .rcard:hover,html:not(.js) .path:hover{transform:scale(1.02)!important;box-shadow:0 18px 36px -22px rgba(11,31,56,.35)}
.rcard .rc-photo img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.rcard:hover .rc-photo img{transform:scale(1.05)}
@media (max-width:1060px),(hover:none){
  html .offer a:hover,html .offer a:focus-visible,html .offer a:active{transform:scale(1.02)!important}
}

/* ===== crisis box: distinct, aligned ===== */
.crisis{align-items:center;background:#f6ebe6;border:1px solid #ecd3c8}
.crisis p{margin:0}
.crisis .dot{width:42px;height:42px;background:#fff;color:#a4512a;box-shadow:0 0 0 1px #ecd3c8}
.crisis .dot svg{display:block}

/* ===== How it works support cards: below the photo on phones ===== */
@media (max-width:900px){
  .sx-step .sx-media:has(.gc-trio){aspect-ratio:4/3;overflow:visible;margin-bottom:0}
  .sx-media .gc-trio{position:static;transform:none!important;display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}
  .sx-step:has(.gc-trio) .sx-media{display:flex;flex-direction:column;aspect-ratio:auto;border-radius:0;overflow:visible}
  .sx-step:has(.gc-trio) .sx-media>img{position:relative;inset:auto;height:auto;aspect-ratio:4/3;border-radius:22px}
  .sx-media .gc-trio>div{background:#fff;color:var(--navy-deep);border:1px solid var(--rule-soft);backdrop-filter:none;-webkit-backdrop-filter:none;text-align:left}
  .sx-media .gc-trio span{color:var(--muted)}
}

/* ===== week: tabs + day card, scroll steps through days ===== */
.wk-scroll{position:relative;height:300vh}
.wk-sticky{position:sticky;top:110px}
.wk-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px;border-radius:18px;background:#fff;border:1px solid var(--rule-soft);box-shadow:0 10px 30px -22px rgba(11,31,56,.35)}
.wk-tab{appearance:none;border:0;background:transparent;cursor:pointer;font:inherit;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--navy-deep);padding:12px 4px 16px;border-radius:12px;position:relative;transition:background .3s,color .3s}
.wk-tab i{position:absolute;left:50%;bottom:6px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--navy-deep)}
.wk-tab.on{background:var(--navy-deep);color:#fff}
.wk-tab.on i{background:var(--gold)}
.wk-card{position:relative;margin-top:10px;min-height:260px;border-radius:22px;background:#fff;border:1px solid var(--rule-soft);overflow:hidden}
.wk-pane{position:absolute;inset:0;padding:32px 36px;opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .5s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.wk-pane.on{position:relative;opacity:1;transform:none;pointer-events:auto}
.wk-day{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:18px}
.wk-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.wk-col{padding:0 28px;border-left:1px solid var(--rule-soft)}
.wk-col:first-child{padding-left:0;border-left:0}
.wk-time{display:inline-block;padding:9px 16px;border-radius:10px;border:1px solid var(--rule);font-size:15px;color:var(--navy-deep);background:var(--cream)}
.wk-col h4,.wk-free h4{margin:18px 0 6px;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;color:var(--navy-deep)}
.wk-col p,.wk-free p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.wk-free{max-width:520px}
.wk-sum{margin-top:18px}
@media (max-width:900px){
  .wk-scroll{height:260vh}
  .wk-sticky{top:84px}
  .wk-tab{font-size:12px;letter-spacing:.04em;padding:10px 2px 14px}
  .wk-pane{padding:22px 18px}
  .wk-cols{grid-template-columns:1fr;gap:16px}
  .wk-col{padding:0;border-left:0;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center}
  .wk-col h4{margin:0;font-size:20px}
  .wk-col p{grid-column:1/-1;font-size:14px}
  .wk-time{font-size:13px;padding:7px 12px}
  .wk-free h4{font-size:22px}
}
@media (prefers-reduced-motion:reduce){.wk-scroll{height:auto}.wk-sticky{position:static}.wk-pane{transition:none}}

/* ===== levels of care table ===== */
.lad-table{position:relative;border-radius:26px;overflow:hidden;padding:56px 48px 28px}
.lt-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.lad-table::before{content:"";position:absolute;inset:0;background:rgba(11,31,56,.12);z-index:0}
.lt-glass{position:relative;z-index:1;border-radius:20px;background:rgba(250,248,244,.74);backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);border:1px solid rgba(255,255,255,.6);padding:20px 24px}
.lt-scroll{overflow-x:auto}
.lad-table table{width:100%;border-collapse:separate;border-spacing:0;min-width:640px}
.lad-table th{text-align:left;font-family:var(--serif);font-weight:400;font-size:22px;color:var(--navy-deep);padding:18px 18px 16px;border-bottom:1px solid var(--rule);vertical-align:bottom}
.lad-table td{padding:16px 18px;border-bottom:1px solid var(--rule-soft);vertical-align:top}
.lad-table tr:last-child td{border-bottom:0}
.lad-table .pw{background:rgba(255,255,255,.75)}
.lad-table th.pw{border-radius:14px 14px 0 0}
.lad-table tr:last-child td.pw{border-radius:0 0 14px 14px}
.lt-logo img{height:28px;width:auto;display:block}
.lt-k{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}
.lt-v{display:block;font-size:16px;color:var(--ink);line-height:1.4}
.lad-table td.pw .lt-v{color:var(--navy-deep);font-weight:700}
.lt-note{position:relative;z-index:1;margin:16px 0 0;font-size:13px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}
@media (max-width:900px){
  .lad-table{padding:20px 12px 16px;border-radius:20px}
  .lt-glass{padding:8px 6px}
  .lad-table th{font-size:17px;padding:12px 12px}
  .lad-table td{padding:12px}
  .lt-v{font-size:14px}
  .lt-logo img{height:22px}
}

/* ===== full-width glass nav, hides on scroll down, returns on scroll up ===== */
.topbar{position:fixed;top:0;left:0;right:0;padding:0;pointer-events:auto;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.topbar.hide{transform:translateY(-110%)}
.tb-in{position:relative}
.navbar{height:72px;box-sizing:border-box;border-radius:0;border:0;border-bottom:1px solid rgba(255,255,255,.28);box-shadow:none;
  background:rgba(240,236,228,.42);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;
  padding:0 max(32px, env(safe-area-inset-right,0px)) 0 max(32px, env(safe-area-inset-left,0px));transition:background .35s,box-shadow .35s}
.topbar.scrolled .navbar{background:rgba(244,240,233,.58);box-shadow:0 10px 30px -22px rgba(11,31,56,.4);border-bottom-color:rgba(11,31,56,.06)}
.navbar .logo{justify-self:start}
.nav-right{justify-self:end}
.menu button{color:var(--navy-deep)}
.mega{top:calc(100% + 10px)}
main{padding-top:72px}
.hero-photo{margin-top:-72px}
.wk-sticky{top:92px}
@media (min-width:760px) and (max-width:900px){.navbar{padding:0 16px;gap:8px}.tb-in{padding:0}}
@media (max-width:759px){.navbar{grid-template-columns:auto 1fr;height:64px;padding:0 12px 0 16px}.nav-right{justify-self:end}main{padding-top:64px}.hero-photo{margin-top:-64px}.wk-sticky{top:76px}}

/* ===== Home: story blocks ===== */
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.story.rev .st-media{order:2}
.st-media{position:relative;aspect-ratio:4/4.3;max-height:600px}
.st-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:24px}
.st-copy{display:flex;flex-direction:column;gap:18px;align-items:flex-start;max-width:520px}
.st-chip{position:absolute;z-index:1;display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;font-size:15px;font-weight:700;color:#fff;background:var(--glass-dark);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 12px 26px -14px rgba(11,31,56,.5);white-space:nowrap}
.st-chip i{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.st-a{top:-16px;right:24px}.st-b{bottom:28px;left:-18px}
.st-c{top:-16px;left:24px}.st-d{bottom:84px;right:-18px}.st-e{bottom:28px;right:-18px}
.js [data-rv] .st-chip{opacity:0;transform:translateY(10px) scale(.94);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js [data-rv].in .st-chip{opacity:1;transform:none}
.js [data-rv].in .st-chip:nth-of-type(2){transition-delay:.15s}.js [data-rv].in .st-chip:nth-of-type(3){transition-delay:.3s}

/* ===== Home: guides ===== */
.g-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:36px}
.guides{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gcard{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--navy-deep)}
.g-img{aspect-ratio:4/3.1;border-radius:16px;overflow:hidden;background:var(--sand)}
.g-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.gcard:hover .g-img img,.gcard:focus-visible .g-img img{transform:scale(1.05)}
.gcard h3{margin:4px 0 0;font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.25}
.gcard:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.g-tag{align-self:flex-start;padding:5px 10px;border-radius:6px;background:var(--sand);font-size:13px;color:#5c4636}

/* ===== Outcomes: research library carousel ===== */
.rl-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*20px)/4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 8px}
.rl-track::-webkit-scrollbar{display:none}
.rl-card{scroll-snap-align:start;position:relative;display:flex;flex-direction:column;gap:14px;min-height:300px;padding:28px 26px 76px;border-radius:20px;background:var(--sand);color:var(--ink);text-decoration:none;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.rl-card:hover{transform:scale(1.02);box-shadow:0 18px 36px -22px rgba(11,31,56,.35)}
.rl-card:nth-child(4n+2){background:var(--mist)}.rl-card:nth-child(4n+3){background:var(--sage)}
.rl-type{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rl-card h3{margin:0;font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.3;color:var(--navy-deep)}
.rl-src{font-size:14px;color:var(--muted)}
.rl-go{position:absolute;right:22px;bottom:22px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(11,31,56,.3);display:flex;align-items:center;justify-content:center;color:var(--navy-deep);transition:background .3s,color .3s}
.rl-card:hover .rl-go{background:var(--navy-deep);color:#fff}
.rl-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px}
.rl-count{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.rl-btns{display:flex;gap:10px}
.rl-btn{appearance:none;width:52px;height:52px;border-radius:50%;border:1px solid rgba(11,31,56,.3);background:#fff;color:var(--navy-deep);cursor:pointer;display:flex;align-items:center;justify-content:center}
.rl-btn[data-rl-prev] svg{transform:rotate(180deg)}
.rl-btn:disabled{opacity:.35;cursor:default}

@media (max-width:900px){
  .story{grid-template-columns:1fr;gap:28px}.story.rev .st-media{order:0}
  .st-media{aspect-ratio:4/3.6;margin:0 8px}
  .st-chip{font-size:13px;padding:8px 14px}
  .st-b,.st-d,.st-e{left:auto;right:-8px}.st-b{left:-8px;right:auto}
  .guides{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .gcard h3{font-size:18px}
  .rl-track{grid-auto-columns:82%}
  .g-head{flex-direction:column;align-items:flex-start}
}
@media (max-width:600px){.guides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -20px;padding:0 20px 8px;scrollbar-width:none}.guides::-webkit-scrollbar{display:none}.guides .gcard{flex:0 0 78%;scroll-snap-align:start}}
@media (max-width:600px){.home-hero .hp-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,56,.35) 0%,rgba(11,31,56,.62) 40%,rgba(11,31,56,.78) 100%);pointer-events:none}}

/* v26: value blocks, goals, form note */
.vals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.val{border-radius:24px;padding:30px 26px 32px;min-height:250px;display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.val:hover{transform:translateY(-4px);box-shadow:0 24px 44px -30px rgba(11,31,56,.45)}
.val.v-sand{background:#f3ebdf}.val.v-mist{background:#e4ecf3}.val.v-sage{background:#e4ebe2}
.v-ic{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.75);display:flex;align-items:center;justify-content:center;color:var(--navy-deep);margin-bottom:auto}
.v-ic svg{width:24px;height:24px}
.val h3{margin:40px 0 10px;font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.2;color:var(--navy-deep)}
.val p{margin:0;font-size:16px;line-height:1.55;color:#3d4a5c}
.goals-sec{background:linear-gradient(180deg,transparent,#f2ede4 18%,#f2ede4 82%,transparent)}
.goals{list-style:none;margin:8px auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:980px}
.goals li{padding:14px 22px;border-radius:999px;background:#fff;border:1px solid rgba(11,31,56,.08);font-family:var(--serif);font-size:20px;color:var(--navy-deep);box-shadow:0 10px 24px -20px rgba(11,31,56,.4)}
.goals li:nth-child(3n+2){background:#e4ecf3}.goals li:nth-child(3n){background:#e4ebe2}
.fine.center{text-align:center;margin-left:auto;margin-right:auto}
.gc-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;color:inherit;font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.closer-form .form-note,.gs .form-note,form .form-note{color:#5f6b7a!important}
@media (max-width:1100px){.vals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.vals{grid-template-columns:1fr}.val{min-height:0}.val h3{margin-top:22px;font-size:22px}.goals{gap:8px}.goals li{font-size:15px;padding:9px 14px;line-height:1.3}}
@media (max-width:600px){.vals{gap:10px}.val{display:grid;grid-template-columns:44px 1fr;column-gap:16px;padding:20px 18px;min-height:0}.v-ic{grid-row:1/3;width:44px;height:44px;border-radius:13px;margin:0}.val h3{margin:2px 0 6px;font-size:20px}.val p{font-size:15px}}

/* ===================== v27: logo, one hero, nav over photos, pinned steps, week, cards, fit check ===================== */
.pw-logo{display:inline-flex;align-items:center;gap:9px;color:var(--navy-deep);line-height:1;transition:color .3s}
.pw-logo svg{height:34px;width:auto;flex:none}
.pw-word{display:flex;flex-direction:column;gap:4px}
.pw-word b{font-family:'Bodoni Moda',Didot,'Bodoni 72',serif;font-weight:500;font-size:27px;letter-spacing:-.01em;line-height:.92}
.pw-word i{font-style:normal;font-family:Lato,sans-serif;font-weight:700;font-size:7.3px;letter-spacing:.37em;text-transform:uppercase;color:#b8913a;white-space:nowrap}
.pw-logo.light{color:#fff}.pw-logo.light .pw-word i{color:#e6c27a}
.pw-logo.sm{gap:6px}.pw-logo.sm svg{height:22px}.pw-logo.sm .pw-word b{font-size:17px}.pw-logo.sm .pw-word i{font-size:4.7px;letter-spacing:.3em}
.lt-logo{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.lt-logo em{font-style:normal;font-family:var(--serif);font-size:16px;color:var(--navy-deep)}
@media (max-width:759px){.navbar .pw-logo svg{height:30px}.navbar .pw-word b{font-size:23px}.navbar .pw-word i{font-size:6.3px}}

/* one hero layout for inner pages */
.hero-photo.hp-inner{min-height:640px}
.hp-inner .hp-copy{padding:180px 0 96px}
.hp-split{background:var(--navy-deep)}
.hp-split>.hp-media{left:auto;width:62%}
.hp-split::after{background:linear-gradient(90deg,var(--navy-deep) 0%,var(--navy-deep) 38%,rgba(11,31,56,.6) 50%,rgba(11,31,56,.08) 74%),linear-gradient(180deg,rgba(11,31,56,.4) 0%,rgba(11,31,56,0) 24%)!important}
.hp-search{margin-top:6px;width:min(560px,100%)}
.hp-search input{border-color:transparent}
@media (max-width:900px){
  .hp-split>.hp-media{width:100%}
  .hero-photo .hp-media img{object-position:var(--mpos)!important}
  .hp-inner::after,.hp-split::after{background:linear-gradient(180deg,rgba(11,31,56,.45) 0%,rgba(11,31,56,.5) 40%,rgba(11,31,56,.9) 100%)!important}
  .hero-photo.hp-inner{min-height:600px}
  .hp-inner .hp-copy{padding:220px 0 48px}
}

/* how it works: four steps pinned in place */
.sx-sec{padding-top:0;padding-bottom:0}
.sx-pin{position:relative;height:420vh}
.sx-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;padding-top:72px;box-sizing:border-box;overflow:hidden}
.sx-sticky .scrolly{width:100%;align-items:center}
.sx-sticky .sx-index{position:static}
.sx-stage{position:relative;display:grid}
.sx-stage>.sx-step{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(26px);transition:opacity .5s ease,transform .7s cubic-bezier(.2,.8,.2,1),visibility 0s linear .5s}
.sx-stage>.sx-step.on{opacity:1;visibility:visible;transform:none;transition:opacity .5s ease,transform .7s cubic-bezier(.2,.8,.2,1),visibility 0s}
.sx-stage .sx-media{aspect-ratio:auto!important;height:min(56vh,540px)}
.sx-stage .sx-text{display:block;margin-top:22px}
.sx-n{display:block;font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--gold-text);margin-bottom:6px}
.sx-index a{position:relative}
.sx-index a.on{background:var(--navy-deep);color:#fff}.sx-index a.on b{color:var(--gold)}
@media (max-width:900px){
  .sx-sticky{padding-top:64px;align-items:flex-start}
  .sx-sticky .scrolly{padding-top:14px}
  .sx-sticky .sx-index{display:flex;flex-direction:row;gap:6px;margin-bottom:14px}
  .sx-index a{padding:7px 12px;font-size:13px}.sx-index a:not(.on){font-size:0;gap:0}.sx-index a:not(.on) b{font-size:13px}
  .sx-stage .sx-media{height:34vh}
  .sx-stage .sx-text{margin-top:14px}.sx-stage .sx-step h3{font-size:26px}.sx-stage .sx-step p{font-size:15px;margin-top:6px}
  .sx-stage .sx-step:has(.gc-trio) .sx-media{height:auto}
  .sx-stage .sx-step:has(.gc-trio) .sx-media>img{height:24vh;aspect-ratio:auto}
  .sx-media .gc-trio>div{padding:10px 14px}
}
@media (prefers-reduced-motion:reduce){.sx-pin{height:auto}.sx-sticky{position:static;height:auto}.sx-stage>.sx-step{grid-area:auto;opacity:1;visibility:visible;transform:none;margin-bottom:64px}}

/* week: three group days only, glossy pills over a photo, serif type */
.wk-scroll{height:240vh}
.wk-sticky{border-radius:28px;overflow:hidden;padding:28px}
.wk-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;object-position:50% 60%}
.wk-sticky>*:not(.wk-bg){position:relative;z-index:1}
.wk-tabs{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:999px;padding:6px;background:rgba(255,255,255,.42);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.6);box-shadow:0 18px 40px -26px rgba(11,31,56,.6)}
.wk-tab{border-radius:999px;font-family:var(--serif);font-weight:400;font-size:20px;letter-spacing:0;text-transform:none;padding:12px 8px}
.wk-tab.on{background:var(--navy-deep);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.wk-card{background:rgba(251,249,244,.8);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border:1px solid rgba(255,255,255,.7);box-shadow:0 26px 50px -30px rgba(11,31,56,.55)}
.wk-day{font-family:var(--serif);font-size:15px;letter-spacing:.04em;text-transform:none;font-style:italic}
.wk-time{font-family:var(--serif);font-size:22px;border-radius:999px;padding:8px 20px;background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.95);box-shadow:0 8px 22px -14px rgba(11,31,56,.45),inset 0 1px 0 #fff}
@media (max-width:900px){.wk-scroll{height:200vh}.wk-sticky{padding:14px;border-radius:22px}.wk-tab{font-size:16px;padding:10px 4px}.wk-time{font-size:17px;padding:6px 14px}}

/* one card style */
.vals.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.vals.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.val{min-height:210px}
.v-mark{display:block;width:28px;height:2px;border-radius:2px;background:var(--gold);margin-bottom:auto}
.v-n{display:block;font-family:var(--serif);font-size:16px;color:var(--gold-text);margin-bottom:auto}
@media (max-width:1100px){.vals.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.vals.c3{grid-template-columns:1fr}.val{min-height:0}}
@media (max-width:600px){.vals.c4{grid-template-columns:1fr}.val{display:flex;flex-direction:column;padding:22px 20px}.val h3{margin:14px 0 6px;font-size:21px}}
.cost .ci{font-family:var(--serif);font-size:17px;color:var(--navy-deep)}
.cost li.goal .ci{color:var(--gold)}

/* research teaser on pages */
.rt .glass-card{flex-direction:column;align-items:flex-start;gap:16px}
.rt .eyebrow{color:var(--gold)}
.rt-stats{display:flex;flex-wrap:wrap;gap:20px 44px}
.rt .gstat{display:block;color:#fff;text-decoration:none;max-width:250px}
.rt .gstat b{display:inline;font-size:56px}
.rt .gstat i{font-style:normal;font-family:var(--serif);font-size:38px;margin-left:2px}
.rt .gstat span{display:block;margin-top:6px;font-size:15px;line-height:1.4}
.rt .gstat:hover span{text-decoration:underline;text-underline-offset:3px}
@media (max-width:600px){.rt .gstat b{font-size:44px}.rt .gstat i{font-size:30px}}

/* fit check */
.fit{position:relative;border-radius:28px;overflow:hidden;min-height:520px;display:flex;align-items:center;padding:48px}
.fit>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fit::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,56,.6),rgba(11,31,56,.2))}
.fit-card{position:relative;z-index:1;width:100%;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;padding:44px;border-radius:24px;background:rgba(11,31,56,.4);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border:1px solid rgba(255,255,255,.22);color:#fff;box-sizing:border-box}
.fit-intro .eyebrow{color:var(--gold)}
.fit-intro h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,1.6rem + 1.6vw,52px);line-height:1.05;margin:12px 0 14px}
.fit-intro p{margin:0;color:rgba(255,255,255,.85);font-size:17px;line-height:1.55}
.fit-step{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.fit-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.2);margin-bottom:16px;overflow:hidden}
.fit-bar i{display:block;height:100%;background:var(--gold);transition:width .4s ease}
.fit-q h3{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.25;margin:10px 0 20px}
.fit-opts{display:flex;flex-wrap:wrap;gap:10px}
.fit-opts button{appearance:none;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.14);color:#fff;font:inherit;font-size:16px;padding:12px 20px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.fit-opts button:hover,.fit-opts button:focus-visible{background:#fff;color:var(--navy-deep);transform:translateY(-1px)}
.fit-back{display:inline-block;appearance:none;border:0;background:none;color:rgba(255,255,255,.8);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;margin-top:18px;cursor:pointer;padding:0}
.fit-res h3{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.15;margin:8px 0 12px}
.fit-res p{margin:0;color:rgba(255,255,255,.9);font-size:17px;line-height:1.55}
.fit-acts{margin-top:20px}
.fit-res .fit-note{margin-top:16px;font-size:13px;color:rgba(255,255,255,.7)}
.fit-res.safety h3{color:#fff}
@media (max-width:900px){.fit{padding:16px;min-height:0}.fit-card{grid-template-columns:1fr;gap:22px;padding:26px 20px}.fit-q h3{font-size:22px}.fit-opts button{font-size:15px;padding:11px 16px}}

/* chat: fit check */
.chat-fit{display:block;margin-top:10px;appearance:none;border:0;border-radius:999px;background:var(--navy-deep);color:#fff;font:inherit;font-size:14px;font-weight:700;padding:10px 16px;cursor:pointer}
.chat-fit:disabled{opacity:.45;cursor:default}
.chat-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chat-opts button{appearance:none;border:1px solid var(--rule);background:#fff;border-radius:999px;font:inherit;font-size:13px;padding:7px 12px;cursor:pointer;color:var(--navy-deep)}
.chat-opts button.on{background:var(--navy-deep);color:#fff;border-color:var(--navy-deep)}
.chat-opts button:disabled:not(.on){opacity:.4;cursor:default}
.chat-note{display:block;margin-top:8px;font-size:12px;color:var(--muted)}
@media (max-width:900px){.sx-stage .sx-media{height:40vh}#sx-1 .sx-media img{object-position:74% 35%!important}}

/* outcomes: clickable tiles, 9-hour tile, frequency comparison */
a.tile{color:inherit;text-decoration:none;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
a.tile:hover{transform:translateY(-4px);box-shadow:0 26px 50px -32px rgba(11,31,56,.5)}
.t-src{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:13px;font-weight:700;color:var(--navy-deep);border-bottom:1px solid rgba(11,31,56,.25);padding-bottom:2px}
.t-dots .t-big em{font-style:normal}
.t-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 0 0!important}
.t-links a{display:inline-flex;align-items:center;gap:5px;color:#fff;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.tchip .pills{display:flex;gap:4px}
.freq{position:relative;border-radius:28px;overflow:hidden;padding:48px;min-height:460px;display:flex;align-items:center}
.freq>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.freq::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,56,.6),rgba(11,31,56,.2))}
.freq-card{position:relative;z-index:1;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding:44px;border-radius:24px;background:rgba(11,31,56,.4);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border:1px solid rgba(255,255,255,.22);color:#fff;box-sizing:border-box}
.freq-intro .eyebrow{color:var(--gold)}
.freq-intro h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,1.6rem + 1.4vw,48px);line-height:1.08;margin:12px 0 14px}
.freq-intro p{margin:0 0 18px;color:rgba(255,255,255,.88);font-size:17px;line-height:1.55}
.freq-intro .link-arrow{color:#fff;border-color:rgba(255,255,255,.4)}
.fb-cap{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.fb{display:grid;grid-template-columns:110px minmax(0,1fr) 64px;gap:14px;align-items:center;margin-bottom:14px}
.fb-k{font-size:15px;color:rgba(255,255,255,.85)}
.fb-track{height:16px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden}
.fb-track i{display:block;height:100%;width:0;border-radius:999px;background:rgba(255,255,255,.55);transition:width 1.4s cubic-bezier(.2,.8,.2,1) .2s}
.fb.on .fb-track i{background:var(--gold)}
.in .fb-track i,.freq:not([data-rv]) .fb-track i{width:calc(var(--w) * 2.6)}
.fb b{font-family:var(--serif);font-weight:400;font-size:30px;text-align:right}
.fb-note{margin:18px 0 0;font-size:14px;line-height:1.5;color:rgba(255,255,255,.8)}
.fb-note a{color:#fff;font-weight:700}
@media (max-width:900px){.freq{padding:16px;min-height:0}.freq-card{grid-template-columns:1fr;gap:26px;padding:26px 20px}.fb{grid-template-columns:92px minmax(0,1fr) 54px}.fb b{font-size:24px}}
html:not(.js) .fb-track i{width:calc(var(--w) * 2.6)}
.t-src svg,.t-links svg{width:13px!important;height:13px!important;flex:none}
.t-gauge .t-src{align-self:center;white-space:nowrap}

.tile .t-src{align-self:flex-start}
@media (max-width:900px){.t-ring .t-src{align-self:center}}

/* v28: neutral frosted nav everywhere (never picks up the photo's color) */
.navbar,.topbar.scrolled .navbar,.topbar:has(.mega.on) .navbar{background:rgba(247,245,241,.86)!important;backdrop-filter:blur(20px) saturate(1)!important;-webkit-backdrop-filter:blur(20px) saturate(1)!important;border-bottom:1px solid rgba(11,31,56,.07)!important}
.topbar.scrolled .navbar{box-shadow:0 10px 30px -24px rgba(11,31,56,.35)}

/* small, quiet dots everywhere */
.st-chip{background:linear-gradient(90deg,rgba(28,30,34,.72),rgba(110,112,116,.5))!important;border:1px solid rgba(255,255,255,.18)!important;font-weight:400!important;letter-spacing:.01em}
.st-chip i{width:5px!important;height:5px!important;background:rgba(255,255,255,.8)!important}
.chip i{width:5px;height:5px;background:rgba(11,31,56,.35)}
.glass-light .gc-meta span::before{background:rgba(11,31,56,.35)}
.glass-card .gc-meta span::before{width:4px;height:4px}
.lines-big li .ln{width:22px;height:22px}
.lines-big li .ln i{width:5px;height:5px;background:rgba(184,103,58,.7)}

/* one card colour, titles lined up */
.val,.val.v-sand,.val.v-mist,.val.v-sage{background:#f4eee6}
.val{min-height:0;justify-content:flex-start}
.v-mark,.v-n{margin-bottom:28px!important}
.val h3{margin:0 0 10px!important}

/* hero chips (Charlie-style) */
.hp-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.hp-chips span{padding:8px 14px;border-radius:8px;font-size:15px;color:#fff;background:rgba(20,22,26,.42);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* conditions: pick one */
.cd{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}
.cd-tabs{display:flex;flex-direction:column;gap:6px}
.cd-tab{appearance:none;text-align:left;border:1px solid transparent;background:transparent;font:inherit;font-size:17px;color:var(--navy-deep);padding:12px 18px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}
.cd-tab:hover{background:#f4eee6}
.cd-tab.on{background:var(--navy-deep);color:#fff}
.cd-card{position:relative;border-radius:24px;background:#f4eee6;padding:36px 40px;min-height:340px}
.cd-pane{display:none}
.cd-pane.on{display:block;animation:cdIn .45s cubic-bezier(.2,.8,.2,1)}
@keyframes cdIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cd-pane h3{margin:0;font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.1;color:var(--navy-deep)}
.cd-lead{margin:10px 0 26px;font-size:18px;line-height:1.55;color:#3d4a5c;max-width:36em}
.cd-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:36px;border-top:1px solid rgba(11,31,56,.1);padding-top:24px}
.cd-k{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:12px}
.cd-cols ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.cd-cols li{position:relative;padding-left:16px;font-size:16px;line-height:1.45;color:var(--navy-deep)}
.cd-cols li::before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:rgba(11,31,56,.35)}
.cd-cols p{margin:0 0 16px;font-size:16px;line-height:1.6;color:#3d4a5c}
@media (max-width:900px){.cd{grid-template-columns:1fr;gap:16px}.cd-tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px 4px}.cd-tabs::-webkit-scrollbar{display:none}.cd-tab{white-space:nowrap;font-size:15px;padding:10px 16px;background:#f4eee6}.cd-card{padding:24px 20px;min-height:0}.cd-pane h3{font-size:28px}.cd-cols{grid-template-columns:1fr;gap:22px}}

/* how we treat pills */
.ap-pills{display:flex;flex-wrap:wrap;gap:10px;align-content:center}
.ap-pills span{padding:11px 18px;border-radius:999px;font-size:15px;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3)}

/* national context line */
.nat{display:flex;align-items:center;gap:22px;margin:22px auto 0;max-width:760px;padding:22px 28px;border-radius:20px;border:1px solid rgba(11,31,56,.1);background:#fff;color:var(--navy-deep);text-decoration:none;transition:box-shadow .3s}
.nat:hover{box-shadow:0 18px 40px -28px rgba(11,31,56,.45)}
.nat b{flex:none;font-family:var(--serif);font-weight:400;font-size:44px;line-height:1;white-space:nowrap}
.nat>span{font-size:15px;line-height:1.5;color:#3d4a5c}
.nat svg{width:13px;height:13px;vertical-align:-1px}
@media (max-width:600px){.nat{flex-direction:column;align-items:flex-start;gap:8px;padding:18px 20px}.nat b{font-size:36px}}

/* v30 */
.foot2 .f-bottom .wrap{grid-template-columns:auto minmax(0,1fr) 260px}
.f-brand{display:flex;flex-direction:column;gap:10px}
.f-brand .f-legal{font-size:12.5px}
@media (max-width:900px){.foot2 .f-bottom .wrap{grid-template-columns:1fr}}
/* split heroes: the photo starts below the nav so faces are never cut */
.navbar,.topbar.scrolled .navbar,.topbar:has(.mega.on) .navbar{background:rgba(247,245,241,.95)!important}
.hp-split>.hp-media{top:72px}
@media (max-width:759px){.hp-split>.hp-media{top:64px}}
/* comparison table: (IOP) sized to the logo */
.lt-logo{align-items:center;gap:10px}
.lt-logo em{font-family:'Bodoni Moda',Didot,serif;font-size:30px;line-height:1;letter-spacing:-.01em;color:var(--navy-deep);transform:translateY(-1px)}
@media (max-width:900px){.lt-logo em{font-size:22px}}
.chat-yn{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.chat-yn .chat-fit{margin-top:0}
.chat-fit.ghost{background:#fff;color:var(--navy-deep);border:1px solid var(--rule)}
.chat-fit.on{opacity:1!important}
.lt-logo .pw-logo.sm{gap:7px}.lt-logo .pw-logo.sm svg{height:32px}.lt-logo .pw-logo.sm .pw-word b{font-size:24px}.lt-logo .pw-logo.sm .pw-word i{font-size:6.6px;letter-spacing:.32em}
.lt-logo em{font-size:36px;line-height:.9;transform:none}
@media (max-width:900px){.lt-logo .pw-logo.sm svg{height:24px}.lt-logo .pw-logo.sm .pw-word b{font-size:18px}.lt-logo .pw-logo.sm .pw-word i{font-size:5px}.lt-logo em{font-size:27px}}
.lt-logo{flex-wrap:nowrap!important;white-space:nowrap}
.lt-logo .pw-logo.sm .pw-word b{font-size:22px}.lt-logo .pw-logo.sm svg{height:30px}.lt-logo em{font-size:32px}

/* v31: group photo full, dimmed, text on glass */
.freq.grp{min-height:600px;align-items:flex-end}
.freq.grp::after{background:linear-gradient(90deg,rgba(11,31,56,.72) 0%,rgba(11,31,56,.45) 45%,rgba(11,31,56,.15) 100%)}
.grp-card{grid-template-columns:1fr;max-width:560px}
.grp-card .freq-intro p{margin-bottom:20px}
@media (max-width:900px){.freq.grp{min-height:520px}.freq.grp>img{object-position:62% 45%!important}.freq.grp::after{background:linear-gradient(180deg,rgba(11,31,56,.15) 0%,rgba(11,31,56,.75) 70%)}}
/* footer: one line, room for Wren on the right */
.foot2 .f-bottom .wrap{grid-template-columns:auto minmax(0,1fr) 300px}
.foot2 .f-bottom .wrap>p{white-space:nowrap}
@media (max-width:1240px){.foot2 .f-bottom .wrap>p{white-space:normal}}
.freq.grp{min-height:720px;padding:32px}
.freq.grp>img{object-position:50% 30%!important}
.grp-card{max-width:470px;padding:30px 32px}
.grp-card .freq-intro h2{font-size:clamp(28px,1.4rem + 1vw,40px);margin:8px 0 10px}
.grp-card .freq-intro p{font-size:16px}
@media (max-width:900px){.freq.grp{min-height:560px;padding:14px}.freq.grp>img{object-position:62% 30%!important}.grp-card{padding:22px 18px}}

/* v32: insurance card upload */
.upl{position:relative;display:flex;align-items:center;gap:10px;padding:13px 14px;border-radius:12px;border:1px dashed rgba(11,31,56,.28);background:var(--cream);color:var(--navy-deep);font-size:15px;cursor:pointer;transition:border-color .2s,background .2s}
.upl:hover{border-color:var(--navy-deep);background:#fff}
.upl input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.upl svg{width:18px;height:18px;flex:none;color:var(--muted)}
.upl.has{border-style:solid;background:#fff}
.upl [data-upl]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gs-or{display:block;width:100%;font-size:14px;line-height:1.5;color:var(--muted);margin-bottom:2px}

/* v32: bigger nav logo */
.navbar .pw-logo{gap:11px}
.navbar .pw-logo svg{height:44px}
.navbar .pw-word b{font-size:34px}
.navbar .pw-word i{font-size:9.1px;letter-spacing:.37em}
@media (max-width:759px){.navbar .pw-logo svg{height:36px}.navbar .pw-word b{font-size:27px}.navbar .pw-word i{font-size:7.3px}}

/* v32: "Is this you?" deck */
.deck-sec{padding-top:0;padding-bottom:0}
.deck{position:relative;height:calc(var(--n) * 60vh + 40vh)}
.deck-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;padding-top:72px;box-sizing:border-box}
.deck-sticky .read{width:100%}
.dk-stage{position:relative;list-style:none;margin:28px 0 0;padding:0;height:240px}
.dk-card{position:absolute;left:0;right:0;top:0;padding:34px 36px;border-radius:24px;background:#f4eee6;border:1px solid rgba(11,31,56,.06);box-shadow:0 26px 50px -36px rgba(11,31,56,.5);
  transform:translateY(calc(var(--d,0) * 18px)) scale(calc(1 - var(--d,0) * .04));opacity:calc(1 - var(--d,0) * .28);
  transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .5s ease;transform-origin:50% 0}
.dk-card.past{transform:translateY(-70px) scale(.96);opacity:0;pointer-events:none}
.dk-card:not(.on):not(.past) p{opacity:0}
.dk-n{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--gold-text);margin-bottom:12px}
.dk-card p{margin:0;font-family:var(--serif);font-size:clamp(24px,1.2rem + 1vw,34px);line-height:1.25;color:var(--navy-deep);transition:opacity .3s}
@media (max-width:759px){.deck-sticky{padding-top:64px}.dk-stage{height:260px}.dk-card{padding:24px 22px}}
@media (prefers-reduced-motion:reduce){.deck{height:auto}.deck-sticky{position:static;height:auto;padding:80px 0}.dk-stage{height:auto;display:flex;flex-direction:column;gap:12px}.dk-card,.dk-card.past{position:relative;transform:none;opacity:1}.dk-card p{opacity:1!important}}

/* v33: "Is this you?" focus stage, everything behind dims and blurs */
.deck-sticky{overflow:hidden}
.dk-bg{position:absolute;inset:0;z-index:0;overflow:hidden;opacity:0;transition:opacity .8s ease}
.dk-bg img{width:100%;height:100%;object-fit:cover;filter:blur(28px) saturate(1.1);transform:scale(1.15)}
.dk-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,rgba(11,31,56,.55),rgba(11,31,56,.86))}
.deck.live .dk-bg{opacity:1}
.deck-sticky .read{position:relative;z-index:1}
.deck .head .eyebrow,.deck .head .h2{transition:color .6s ease}
.deck.live .head .eyebrow{color:var(--gold)}
.deck.live .head .h2{color:#fff}
.deck.live .dk-card{background:rgba(251,249,244,.94);border-color:rgba(255,255,255,.5);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.deck.live .dk-card:not(.on):not(.past){background:rgba(251,249,244,.55)}
.who-note{margin:0;padding:12px 14px;border-radius:12px;background:#f4eee6;font-size:14px;line-height:1.5;color:var(--navy-deep)}
@media (prefers-reduced-motion:reduce){.dk-bg{opacity:1;transition:none}.deck .head .h2{color:#fff}.deck .head .eyebrow{color:var(--gold)}}
.freq.grp-r{justify-content:flex-end}
.freq.grp-r::after{background:linear-gradient(270deg,rgba(11,31,56,.72) 0%,rgba(11,31,56,.45) 45%,rgba(11,31,56,.12) 100%)}
@media (max-width:900px){.freq.grp-r>img{object-position:20% 35%!important}.freq.grp-r::after{background:linear-gradient(180deg,rgba(11,31,56,.1) 0%,rgba(11,31,56,.75) 70%)}}
@media (max-width:600px){#sx-2 .sx-media>img{object-position:88% 35%!important}#sx-2 .gc-visit{width:56%!important;left:12px!important;bottom:12px!important;padding:12px!important}#sx-2 .gc-visit .gc-list div{font-size:12px}}
@media (max-width:600px){#sx-2 .gc-visit .gc-meta{display:none}#sx-2 .gc-visit .gc-title{font-size:17px!important;margin-bottom:6px}#sx-2 .gc-visit .gc-list{gap:5px}#sx-2 .gc-visit .gc-list div{padding:6px 8px!important;font-size:11.5px!important}#sx-2 .gc-visit .gc-list i{width:20px!important;height:20px!important;font-size:11px}}
/* v34: "Your plan" card: light frosted glass so it stands apart from the dark background */
.freq.grp-r .grp-card{background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,.1));border:1px solid rgba(255,255,255,.32);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 24px 48px -28px rgba(0,0,0,.55)}
/* v35: phone image fixes */
@media (max-width:900px){
  .home-hero .hp-media img{object-position:68% 0%!important}
  #sx-3 .gc-week{left:12px!important;right:12px!important;bottom:12px!important;top:auto!important;width:auto!important;transform:none!important}
  #sx-1 .gc-call{left:12px!important;top:auto!important;bottom:12px!important}
  #sx-1 .sx-media>img{object-position:62% 30%!important}
}
/* v36: study links as underlined phrases */
.tile .u,.freq .u,.tchip .u{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;color:inherit}
a.tile:hover .u{text-decoration-thickness:2px}
.freq .u,.tchip .u,.fb-note .u{color:#fff;font-weight:inherit}
.freq .u:hover,.tchip .u:hover{text-decoration-thickness:2px}
/* v37: guide tags line up at the bottom of every card */
.guides .gcard{height:100%}
.gcard .g-tag{margin-top:auto}
.callout.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.callout.c2{grid-template-columns:1fr}}

.dk-n{color:#7d5f1c}

/* never let a decorative image push the page sideways */
html,body{overflow-x:clip}

/* ---- Oct 23 polish: cards read clearly on the cream page ---- */
.val,.val.v-sand,.val.v-sage,.val.v-mist{background:#fff;border:1px solid rgba(11,31,56,.08);box-shadow:0 1px 2px rgba(11,31,56,.04),0 14px 32px -20px rgba(11,31,56,.22)}
.val .v-ic{background:var(--sand)}
/* referral page: small note under the three steps */
.steps-note{display:block;margin-top:14px}
.steps-note a{color:var(--navy-deep);font-weight:700}
/* how it works, step 4: a short list under the text instead of cards on the photo */
.sx-mini{grid-column:1/-1;list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14.5px;line-height:1.45;color:var(--muted)}
.sx-mini li{position:relative;padding-left:16px}
.sx-mini li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.sx-mini b{color:var(--navy-deep);font-weight:700}
@media (min-width:901px){
  /* less empty space after the steps and above "Is this you?" */
  .sx-sec+.sec{padding-top:48px}
  .deck-sticky{align-items:flex-start;padding-top:120px}
}
.cd-card{background:#fff;border:1px solid rgba(11,31,56,.08);box-shadow:0 1px 2px rgba(11,31,56,.04),0 14px 32px -20px rgba(11,31,56,.22)}
