/* ============ helloadhd — design system ============ */
:root{
  --yellow:#FECE04;
  --yellow-deep:#E4B810;
  --yellow-soft:#FFE27A;
  --orange:#FEB700;
  --orange-bright:#FE9A01;
  --sun:#FF7E29;
  --cobalt:#0061EF;
  --cobalt-deep:#0050c9;
  --sky:#56C3FF;
  --sky-soft:#9BD8FF;
  --purple:#3B197F;
  --purple-soft:#6A4FB0;
  --green:#1F9E6E;
  --pink:#FF9BC4;
  --cream:#FBF3E9;
  --cream-2:#F5EADC;
  --peach:#FFE6D0;
  --blush:#FBEAE0;
  --mauve:#F1E9F5;
  --butter:#FFF1C9;
  --mint:#DEEFE0;
  --ink:#2D2C2B;
  --ink-soft:#5b5854;
  --footer:#33312f;
  --line:#e7e1dc;
  --radius:18px;
  --radius-lg:28px;
  --maxw:1180px;
  --font:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --sec-py:84px;
}
/* unified vertical section rhythm — one scale, steps down on tablet & mobile */
@media(max-width:920px){:root{--sec-py:62px;}}
@media(max-width:640px){:root{--sec-py:46px;}}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font);
  color:var(--ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
  font-size:17px;
  line-height:1.5;
}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
section{position:relative;}

h1,h2,h3{font-weight:800;line-height:1.05;letter-spacing:-0.02em;}
h2.section-title{font-size:clamp(30px,4vw,46px);text-align:center;}

/* ===== buttons ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-weight:700;border-radius:999px;padding:13px 26px;font-size:16px;
  transition:transform .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;
  white-space:nowrap;
}
.btn:active{transform:scale(.97);}
.btn-blue{background:var(--cobalt);color:#fff;}
.btn-blue:hover{background:var(--cobalt-deep);}
.btn-ink{background:var(--ink);color:#fff;}
.btn-ink:hover{background:#000;}
.btn-white{background:#fff;color:var(--ink);}
.btn-white:hover{background:#f1ece8;}
.btn-outline{border:2px solid currentColor;}
.btn-lg{padding:18px 40px;font-size:20px;}

/* ===== announcement bar ===== */
.announce{
  background:var(--yellow);color:var(--ink);
  font-size:13px;font-weight:600;text-align:center;
  padding:7px 16px;
}
.announce a{text-decoration:underline;font-weight:700;}

/* ===== nav ===== */
.nav{
  position:sticky;top:0;z-index:50;background:#fff;
  border-bottom:1px solid transparent;transition:box-shadow .2s ease;
}
.nav.scrolled{box-shadow:0 2px 16px rgba(0,0,0,.06);}
.nav-inner{display:flex;align-items:center;gap:22px;height:66px;}
.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:21px;letter-spacing:-0.03em;flex:0 0 auto;}
.brand .dot{width:24px;height:24px;border-radius:50%;background:var(--orange-bright);
  position:relative;flex:0 0 auto;overflow:hidden;}
.nav-links{display:flex;gap:18px;margin-left:6px;}
.nav-links a{font-weight:600;font-size:15px;padding:6px 2px;color:var(--ink);position:relative;white-space:nowrap;flex:0 0 auto;}
.nav-links a:hover{color:var(--cobalt);}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:16px;flex:0 0 auto;}
.nav-right .link{font-weight:600;font-size:15px;}
.nav-right .link:hover{color:var(--cobalt);}
.nav-toggle{display:none;}
/* collapse to the hamburger BEFORE the 7 desktop links get cramped */
@media(max-width:1119px){
  .nav-links,.nav-right .link{display:none;}
  .nav-toggle{display:flex;margin-left:auto;}
  .nav-right .btn,.nav-toggle{min-height:44px;padding-top:11px;padding-bottom:11px;}
}

/* ===== hero ===== */
.hero{padding:46px 0 30px;text-align:center;}
.hero h1{font-size:clamp(34px,5vw,52px);margin-bottom:22px;}
.hero-bullets{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;
  font-size:14px;color:var(--ink-soft);font-weight:600;margin-bottom:30px;}
.hero-bullets span{display:inline-flex;align-items:center;gap:8px;}
.hero-bullets .tick{width:18px;height:18px;border-radius:50%;background:var(--cobalt);color:#fff;
  display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex:0 0 auto;}
.hero-panels{display:grid;grid-template-columns:1.85fr 1fr;gap:18px;}
.panel{background:var(--cream);border-radius:var(--radius-lg);padding:26px;text-align:center;
  position:relative;overflow:hidden;}
.panel h3{font-size:20px;margin-bottom:14px;}
.panel .pill-tag{display:inline-block;background:var(--ink);color:#fff;font-size:12px;font-weight:700;
  padding:7px 15px;border-radius:999px;margin-bottom:18px;white-space:nowrap;}
.panel-stage{position:relative;height:300px;display:flex;align-items:flex-end;justify-content:center;gap:10px;margin-top:6px;}

/* phone mock */
.phone{width:138px;height:268px;border-radius:24px;background:#fff;border:6px solid var(--ink);
  position:relative;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.18);}
.phone .scr{position:absolute;inset:0;display:flex;flex-direction:column;}
.phone--yellow .scr{background:var(--orange);}
.phone--yellow{margin-left:-26px;margin-bottom:18px;}
.blobimg{position:absolute;border-radius:50%;filter:saturate(1.1);}

/* placeholder media */
.ph{background:
   repeating-linear-gradient(45deg,#e9e2dc 0 10px,#f3ede8 10px 20px);
  border-radius:14px;display:flex;align-items:center;justify-content:center;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:#a59a8f;
  text-align:center;padding:6px;line-height:1.3;}

/* small floating blob */
.blob{position:absolute;border-radius:50%;}

/* ===== category grid ===== */
.cats{padding:60px 0 20px;}
.cats h2{margin-bottom:30px;}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.cat{display:flex;align-items:center;justify-content:space-between;gap:14px;
  border:1.5px solid var(--line);border-radius:14px;padding:16px 20px;font-weight:700;font-size:16px;
  transition:border-color .15s,transform .15s,box-shadow .15s;background:#fff;}
.cat:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.07);}
.cat-left{display:flex;align-items:center;gap:14px;}
.cat-ic{width:34px;height:34px;border-radius:50%;flex:0 0 auto;}
.cat-arrow{color:var(--ink-soft);transition:transform .15s;}
.cat:hover .cat-arrow{transform:translateX(3px);color:var(--ink);}

/* ===== every moment / carousel ===== */
.moment{padding:54px 0 30px;}
.moment h2{margin-bottom:22px;}
.tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:30px;}
.tab{border:1.5px solid var(--line);border-radius:999px;padding:9px 18px;font-weight:700;font-size:14px;
  background:#fff;transition:.15s;}
.tab.active{background:var(--ink);color:#fff;border-color:var(--ink);}
.tab:hover:not(.active){border-color:var(--ink);}
.carousel{position:relative;overflow:hidden;}
.carousel-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);}
.slide{min-width:100%;}
.slide-card{border-radius:var(--radius-lg);overflow:hidden;display:grid;grid-template-columns:1.15fr 1fr;
  min-height:330px;}
.slide-art{position:relative;overflow:hidden;}
.slide-body{padding:46px 48px;display:flex;flex-direction:column;justify-content:center;color:#fff;}
.slide-body h3{font-size:30px;margin-bottom:14px;}
.slide-body p{font-size:15px;opacity:.9;margin-bottom:24px;max-width:330px;}
.play-row{display:flex;align-items:center;gap:14px;margin-bottom:26px;}
.play-btn{width:48px;height:48px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.play-btn svg{margin-left:3px;}
.play-meta{font-size:13px;opacity:.85;}
.dots{display:flex;gap:8px;justify-content:center;margin-top:22px;}
.dots button{width:8px;height:8px;border-radius:50%;background:#d8d2cc;transition:.2s;}
.dots button.active{background:var(--ink);width:22px;border-radius:999px;}
.car-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:42px;height:42px;border-radius:50%;
  background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;}
.car-arrow.prev{left:-6px;}
.car-arrow.next{right:-6px;}

/* ===== testimonials ===== */
.testi{padding:var(--sec-py,84px) 0;text-align:center;position:relative;background:var(--butter);}
.testi .quote{background:#fff;}
.testi h2{margin-bottom:40px;position:relative;z-index:2;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left;position:relative;z-index:2;}
.quote{background:var(--cream);border-radius:var(--radius);padding:28px 26px;}
.quote p{font-size:15.5px;font-weight:600;margin-bottom:30px;color:var(--ink);}
.quote .who{font-size:12px;color:var(--ink-soft);line-height:1.4;}
.floaty{position:absolute;z-index:1;pointer-events:none;}

/* ===== organizations / cobalt ===== */
.orgs-wrap{padding:30px 0 50px;}
.orgs{background:var(--cobalt);border-radius:var(--radius-lg);padding:46px 50px;overflow:hidden;position:relative;color:#fff;}
.org-logos{display:flex;flex-wrap:wrap;gap:30px 38px;align-items:center;margin-bottom:34px;opacity:.95;}
.org-logos span{font-weight:800;font-size:18px;letter-spacing:.02em;opacity:.92;}
.orgs-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;}
.orgs h2{font-size:30px;margin-bottom:14px;max-width:340px;}
.orgs p{font-size:15px;opacity:.92;margin-bottom:24px;max-width:330px;}
.orgs-cta{display:flex;gap:12px;flex-wrap:wrap;}
.org-photos{position:relative;height:260px;}
.org-photos .pcard{position:absolute;border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.25);}

/* ===== marquee ===== */
.marquee{background:var(--yellow);overflow:hidden;padding:14px 0;border-top:2px solid rgba(0,0,0,.06);}
.marquee-track{display:flex;gap:34px;white-space:nowrap;width:max-content;animation:scrollx 22s linear infinite;}
.marquee-track span{font-weight:800;font-size:18px;display:inline-flex;align-items:center;gap:34px;}
.marquee-track .eye{width:20px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--ink);position:relative;}
.marquee-track .eye::after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--ink);top:50%;left:50%;transform:translate(-50%,-50%);}
@keyframes scrollx{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ===== library ===== */
.library{padding:64px 0 30px;}
.library h2{margin-bottom:24px;}
.lib-tabs{justify-content:center;}
.lib-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:6px;}
.lib-card{border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4.1;position:relative;color:#fff;
  display:flex;flex-direction:column;justify-content:flex-end;padding:18px;transition:transform .18s;}
.lib-card:hover{transform:translateY(-4px);}
.lib-card .tag{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:var(--ink);
  font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;}
.lib-card h4{font-size:16px;position:relative;z-index:2;text-shadow:0 1px 8px rgba(0,0,0,.25);}
.lib-art{position:absolute;inset:0;z-index:0;}
.lib-foot{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:20px;}
.lib-foot .viewall{font-weight:700;font-size:14px;border-bottom:2px solid var(--ink);padding-bottom:2px;}
.nav-arrows{display:flex;gap:8px;}
.nav-arrows button{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;background:#fff;}
.nav-arrows button:hover{border-color:var(--ink);}

/* ===== stats / sky ===== */
.stats-wrap{padding:30px 0 60px;}
.stats{background:linear-gradient(180deg,#7cc6f5 0%,#56b0ee 60%,#7fc8e8 100%);
  border-radius:var(--radius-lg);padding:54px 40px;text-align:center;position:relative;overflow:hidden;color:#fff;}
.stats .cloud{position:absolute;background:#fff;border-radius:999px;opacity:.85;}
.stats-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.95);color:var(--ink);
  font-size:12px;font-weight:800;padding:6px 14px;border-radius:999px;margin-bottom:18px;position:relative;z-index:2;}
.stats h2{color:#fff;font-size:clamp(28px,3.6vw,40px);margin-bottom:24px;position:relative;z-index:2;
  text-shadow:0 2px 12px rgba(0,60,120,.18);}
.stats .btn{position:relative;z-index:2;}
.stat-row{display:flex;justify-content:center;gap:60px;margin-top:42px;flex-wrap:wrap;position:relative;z-index:2;}
.stat .num{font-size:34px;font-weight:800;}
.stat .lab{font-size:13px;opacity:.92;font-weight:600;}
.stat .stars{font-size:18px;letter-spacing:2px;}
.avatar{width:46px;height:46px;border-radius:50%;border:3px solid #fff;position:absolute;overflow:hidden;z-index:2;}

/* ===== FAQ ===== */
.faq{padding:56px 0 70px;max-width:760px;margin:0 auto;}
.faq h2{margin-bottom:30px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:22px 4px;font-size:17px;font-weight:600;text-align:left;}
.faq-q .ic{font-size:22px;color:var(--ink-soft);flex:0 0 auto;transition:transform .2s;}
.faq-item.open .faq-q .ic{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq-a-inner{padding:0 4px 22px;color:var(--ink-soft);font-size:15.5px;max-width:640px;}

/* ===== CTA sun ===== */
.cta{background:var(--yellow);position:relative;overflow:hidden;padding:60px 0 0;text-align:center;}
.cta h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:18px;position:relative;z-index:3;}
.cta .btn{position:relative;z-index:3;}
.cta-sun{position:relative;height:205px;margin-top:24px;}
.cta-sun .cta-blob{position:absolute;left:50%;bottom:-95px;margin-left:-150px;transform:none;animation:none;z-index:2;}
.sun .face{position:absolute;top:78px;left:0;right:0;display:flex;justify-content:center;gap:46px;}
.sun .eye{width:30px;height:16px;border:5px solid var(--ink);border-top:none;border-radius:0 0 40px 40px;}
.sun .smile{position:absolute;top:120px;left:50%;transform:translateX(-50%);width:90px;height:46px;
  border:5px solid var(--ink);border-top:none;border-radius:0 0 70px 70px;}
.cta-cloud{position:absolute;background:#fff;border-radius:999px;z-index:2;}

/* ===== newsletter ===== */
.news{padding:46px 0;border-bottom:1px solid var(--line);}
.news-inner{display:flex;align-items:center;gap:30px;flex-wrap:wrap;}
.news-face{width:54px;height:54px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.news-txt h3{font-size:19px;margin-bottom:5px;}
.news-txt p{font-size:14px;color:var(--ink-soft);max-width:420px;}
.news-form{margin-left:auto;display:flex;gap:10px;}
.news-form input{border:1.5px solid var(--line);border-radius:10px;padding:13px 16px;font-size:15px;font-family:inherit;min-width:240px;}
.news-form input:focus{outline:none;border-color:var(--ink);}

/* ===== footer ===== */
.footer{padding:46px 0 0;}
.foot-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:30px;padding-bottom:36px;}
.foot-col h5{font-size:14px;font-weight:800;margin-bottom:14px;}
.foot-col a{display:block;font-size:13.5px;color:var(--ink-soft);padding:5px 0;}
.foot-col a:hover{color:var(--ink);}
.appbtns{display:flex;flex-direction:column;gap:10px;}
.appbtn{display:flex;align-items:center;gap:9px;background:var(--ink);color:#fff;border-radius:9px;padding:9px 14px;font-size:12px;}
.appbtn b{font-size:15px;display:block;line-height:1.1;}
.foot-bar{background:var(--footer);color:#cdc8c2;padding:20px 0;font-size:12.5px;}
.foot-bar-inner{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.foot-bar a{color:#cdc8c2;}
.foot-social{margin-left:auto;display:flex;gap:12px;}
.foot-social a{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;}
.lang-sel{border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:6px 12px;color:#cdc8c2;background:transparent;font-family:inherit;font-size:12.5px;}

/* ===== responsive ===== */
@media(max-width:920px){
  .nav-links,.nav-right .link{display:none;}
  .nav-toggle{display:flex;margin-left:auto;}
  .hero-panels{grid-template-columns:1fr;}
  .cat-grid{grid-template-columns:1fr 1fr;}
  .slide-card{grid-template-columns:1fr;}
  .slide-art{min-height:200px;}
  .testi-grid{grid-template-columns:1fr;}
  .orgs-grid{grid-template-columns:1fr;}
  .org-photos{height:240px;}
  .lib-row{grid-template-columns:repeat(3,1fr);}
  .lib-row .lib-card:nth-child(n+4){display:none;}
  .foot-cols{grid-template-columns:1fr 1fr;}
  .news-form{margin-left:0;width:100%;}
  .news-form input{flex:1;min-width:0;}
}
@media(max-width:560px){
  .cat-grid{grid-template-columns:1fr;}
  .stat-row{gap:30px;}
  .foot-cols{grid-template-columns:1fr 1fr;}
}

/* ===================================================== */
/* ============ THERAPY REBUILD additions ============== */
/* ===================================================== */

/* ---- friendly blob characters: solid circle + two-tone patch (scale via --s) ---- */
.char{position:relative;flex:0 0 auto;display:inline-block;
  width:var(--s,60px);height:var(--s,60px);
  border-radius:50%;overflow:visible;}
/* once the SVG renderer has run, suppress the legacy CSS patch + face */
.char[data-blob]::before{content:none;}
.char[data-blob] .face{display:none;}
/* contrasting colour patch, clipped to the circle. set --peek to enable */
.char::before{content:"";position:absolute;z-index:1;background:var(--peek,transparent);
  left:-12%;top:-36%;width:124%;height:80%;border-radius:0 0 48% 52% / 0 0 60% 60%;}      /* default: top cap */
.char.s2::before{left:-24%;bottom:-24%;top:auto;width:82%;height:82%;border-radius:50%;}   /* bottom-left */
.char.s3::before{right:-24%;bottom:-24%;left:auto;top:auto;width:84%;height:84%;border-radius:50%;} /* bottom-right */
.char.s4::before{left:-18%;top:-30%;width:92%;height:74%;border-radius:0 0 62% 60% / 0 0 78% 80%;}  /* top-left cloud */
.char.s5::before{right:-28%;top:6%;left:auto;width:74%;height:88%;border-radius:50%;}      /* right side */
.char .face{position:absolute;inset:0;z-index:2;}
/* eyes — calm, closed content arcs (little smiles) */
.char .eye{position:absolute;top:40%;
  width:calc(var(--s,60px)*0.19);height:calc(var(--s,60px)*0.12);
  border-bottom:calc(var(--s,60px)*0.046) solid var(--ink);
  border-radius:0 0 calc(var(--s,60px)*0.7) calc(var(--s,60px)*0.7);}
.char .eye:nth-child(1){left:20%;}
.char .eye:nth-child(2){right:20%;}
/* smile — soft, set below the eyes */
.char .mouth{position:absolute;top:56%;left:50%;transform:translateX(-50%);
  width:calc(var(--s,60px)*0.36);height:calc(var(--s,60px)*0.18);
  border-bottom:calc(var(--s,60px)*0.052) solid var(--ink);
  border-radius:0 0 calc(var(--s,60px)*0.7) calc(var(--s,60px)*0.7);}
.char .cheek,.char .cheek2{display:none;}

/* ---- pain-point / misunderstood ---- */
.misunderstood{background:var(--cream);padding:var(--sec-py,84px) 0;}
.mis-head{text-align:center;max-width:720px;margin:0 auto 46px;}
.mis-head h2{font-size:clamp(28px,3.8vw,44px);margin-bottom:16px;}
.mis-head p{font-size:18px;color:var(--ink-soft);}
.mis-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:920px;margin:0 auto;}
.mis-col{background:#fff;border-radius:var(--radius-lg);padding:32px 30px;}
.mis-col.heard{background:#fff;border:1.5px solid var(--line);}
.mis-col.here{background:var(--ink);color:#fff;}
.mis-col h3{font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:22px;font-weight:800;}
.mis-col.heard h3{color:var(--ink-soft);}
.mis-list{display:flex;flex-direction:column;gap:16px;}
.mis-line{display:flex;align-items:flex-start;gap:12px;font-size:16px;font-weight:500;line-height:1.4;}
.mis-line .mk{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;margin-top:1px;}
.heard .mis-line{color:var(--ink-soft);}
.heard .mis-line .txt{text-decoration:line-through;text-decoration-color:#c9b8b0;}
.heard .mk{background:#f0e8e3;color:#b3a298;}
.here .mk{background:var(--green);color:#fff;}

/* ---- section intro (shared) ---- */
.sec-intro{text-align:center;max-width:680px;margin:0 auto 40px;}
.sec-intro .eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--cobalt);margin-bottom:14px;}
.sec-intro h2{font-size:clamp(28px,3.8vw,44px);margin-bottom:14px;}
.sec-intro p{font-size:18px;color:var(--ink-soft);}

/* ---- modalities ---- */
.modalities{padding:var(--sec-py,84px) 0;}
.mod-panel{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:var(--radius-lg);overflow:hidden;
  min-height:380px;background:var(--cream);}
.mod-art{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.mod-body{padding:48px 52px;display:flex;flex-direction:column;justify-content:center;}
.mod-tag{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;}
.mod-body h3{font-size:30px;margin-bottom:14px;}
.mod-body>p{font-size:16px;color:var(--ink-soft);margin-bottom:24px;max-width:420px;}
.mod-skills{display:flex;flex-direction:column;gap:12px;margin-bottom:26px;}
.mod-skill{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600;}
.mod-skill .tick{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:flex;
  align-items:center;justify-content:center;font-size:11px;flex:0 0 auto;}
.mod-note{font-size:13px;color:var(--ink-soft);font-style:italic;}
.mod-panes>div{display:none;}
.mod-panes>div.active{display:grid;}

/* ---- how it works ---- */
.how{padding:var(--sec-py,84px) 0;background:var(--peach);}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px;}
.step{background:#fff;border-radius:var(--radius-lg);padding:34px 30px;text-align:center;position:relative;}
.step-char{height:96px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.step .n{position:absolute;top:20px;left:24px;font-size:14px;font-weight:800;color:var(--ink-soft);}
.step h3{font-size:21px;margin-bottom:10px;}
.step p{font-size:15px;color:var(--ink-soft);}

/* ---- therapist quality (recolor cobalt) ---- */
.therapists .orgs{background:var(--cobalt);}
.tq-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;}
.tq-points{display:flex;flex-direction:column;gap:18px;margin-top:22px;}
.tq-point{display:flex;gap:14px;align-items:flex-start;}
.tq-point .ic{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.16);flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;}
.tq-point h4{font-size:17px;margin-bottom:4px;}
.tq-point p{font-size:14px;opacity:.85;margin:0;}
.tq-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.tq-card{background:rgba(255,255,255,.1);border-radius:18px;padding:12px;text-align:center;}
.tq-card image-slot{width:100%;height:150px;display:block;border-radius:12px;overflow:hidden;}
.tq-card .nm{color:#fff;font-weight:700;font-size:14px;margin-top:10px;}
.tq-card .cred{color:rgba(255,255,255,.8);font-size:12px;}

/* image-slot base */
image-slot{background:repeating-linear-gradient(45deg,#e9e2dc 0 10px,#f3ede8 10px 20px);}

/* hero photo slot */
.hero-photo{width:100%;height:100%;display:block;}

@media(max-width:920px){
  .mis-grid{grid-template-columns:1fr;}
  .mod-panel{grid-template-columns:1fr;}
  .mod-art{min-height:200px;}
  .how-steps{grid-template-columns:1fr;}
  .tq-grid{grid-template-columns:1fr;}
}

/* ===================================================== */
/* ============ V3 — Canadian consult-led ============== */
/* ===================================================== */

/* ---- hero v3 (2-col text + match card) ---- */
/* ---- hero v4: bold scattered-blob composition ---- */
.hero{position:relative;overflow:hidden;padding:80px 0 72px;isolation:isolate;}
.hero-center{position:relative;z-index:3;max-width:1180px;margin:0 auto;text-align:left;padding:0 32px;}
.hero-eyebrow{display:inline-block;white-space:nowrap;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--cobalt);background:#eaf1ff;padding:8px 16px;border-radius:999px;margin-bottom:24px;}
.hero h1{font-size:clamp(36px,5vw,62px);line-height:1.04;letter-spacing:-0.025em;
  text-align:left;margin-bottom:22px;max-width:15ch;}
.hero h1 em{font-style:normal;color:var(--sun);position:relative;white-space:nowrap;}
.hero h1 em .hl{position:absolute;left:-2%;width:104%;bottom:-.04em;height:.32em;overflow:visible;}
.hero-sub{font-size:clamp(16px,1.6vw,18.5px);color:var(--ink-soft);line-height:1.55;
  max-width:540px;margin:0 0 32px;}
.hero-sub .sub-em{color:var(--ink);font-weight:800;}
.hero-cta{display:flex;justify-content:flex-start;align-items:center;gap:26px;flex-wrap:wrap;}
.hero-textlink{font-weight:800;font-size:16px;color:var(--ink);white-space:nowrap;text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;}
.hero-textlink .htl-txt{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;}
.hero-textlink:hover{color:var(--cobalt);}
.hero-trust{display:flex;align-items:center;gap:14px 28px;flex-wrap:wrap;justify-content:flex-start;
  margin-top:30px;padding-top:24px;border-top:1px solid var(--line);max-width:860px;
  font-size:14.5px;font-weight:600;color:var(--ink-soft);}
.hero-trust .ti{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.hero-trust .tk{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;
  border-radius:50%;background:var(--green);color:#fff;font-size:10px;}
/* hero social-proof cluster */
.hero-people{display:flex;align-items:center;gap:14px;margin-top:32px;justify-content:flex-start;}
.hero-avatars{display:flex;}
.hdot{width:40px;height:40px;border-radius:50%;border:3px solid #fff;
  box-shadow:0 5px 14px rgba(40,30,20,.14);margin-left:-11px;}
.hdot:first-child{margin-left:0;}
.hero-people .lbl{font-size:14.5px;font-weight:600;color:var(--ink-soft);text-align:left;line-height:1.35;}
.hero-people .lbl b{color:var(--ink);font-weight:800;}
/* scattered decor */
.hero-decor{position:absolute;inset:0;z-index:1;pointer-events:none;}
.hero-decor .char{position:absolute;animation:bob 7s ease-in-out infinite;}
.hero-decor .spark{position:absolute;animation:bob 5.5s ease-in-out infinite;}
@keyframes bob{0%,100%{transform:translateY(0) rotate(var(--rot,0deg));}
  50%{transform:translateY(-14px) rotate(var(--rot,0deg));}}
@media (prefers-reduced-motion:reduce){
  .hero-decor .char,.hero-decor .spark{animation:none;}
}
@media(max-width:880px){
  .hero{padding:64px 0 60px;}
  .hero-decor .hide-sm{display:none;}
  .hero-decor .char{transform:scale(.7);}
}

.hero3{padding:54px 0 36px;}
.hero3-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
.hero3-eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--cobalt);background:#eaf1ff;padding:7px 14px;border-radius:999px;margin-bottom:20px;}
.hero3 h1{font-size:clamp(36px,4.8vw,56px);margin-bottom:18px;text-align:left;}
.hero3-sub{font-size:20px;color:var(--ink-soft);margin-bottom:26px;max-width:440px;line-height:1.5;}
.hero3-micro{font-size:14px;color:var(--ink-soft);font-weight:600;margin-top:16px;}
.hero3-cta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.hero3-cta .textlink{font-weight:700;font-size:16px;display:inline-flex;align-items:center;gap:6px;}
.hero3-cta .textlink:hover{color:var(--cobalt);}
/* sparkles */
.spark{position:absolute;width:var(--sp,18px);height:var(--sp,18px);z-index:1;
  clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.trust-row{display:flex;gap:22px;flex-wrap:wrap;font-size:14.5px;color:var(--ink-soft);font-weight:600;}
.trust-row span{display:inline-flex;align-items:center;gap:8px;}
.trust-row .tk{width:18px;height:18px;border-radius:50%;background:var(--green);color:#fff;display:inline-flex;
  align-items:center;justify-content:center;font-size:10px;flex:0 0 auto;}

/* match card */
.match-stage{position:relative;}
.match-card{background:#fff;border-radius:24px;padding:26px;box-shadow:0 24px 60px rgba(40,30,20,.14);
  position:relative;z-index:2;max-width:380px;margin:0 auto;border:1px solid #f0ebe6;}
.match-card .mc-label{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;}
.mc-top{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.mc-avatar{width:62px;height:62px;border-radius:50%;overflow:hidden;flex:0 0 auto;}
.mc-avatar image-slot{width:100%;height:100%;display:block;}
.mc-top>div{flex:1;min-width:0;}
.mc-name{font-size:18px;font-weight:800;white-space:nowrap;}
.mc-cred{font-size:13px;color:var(--ink-soft);}
.mc-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.mc-tag{background:var(--cream);border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:700;color:var(--ink);flex:0 0 auto;white-space:nowrap;}
.match-card .btn{width:100%;}
.mc-chat{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}
.mc-bubble{background:var(--cream);border-radius:14px 14px 14px 4px;padding:9px 14px;font-size:13.5px;font-weight:600;}
.mc-bubble small{display:block;font-size:11px;color:var(--ink-soft);font-weight:600;margin-top:2px;}
.match-stage > .char{position:absolute;z-index:1;}

/* evidence pills band */
.evidence{background:var(--cream);padding:30px 0;}
.evidence-inner{display:flex;align-items:center;justify-content:center;gap:14px 18px;flex-wrap:wrap;}
.evidence .lab{font-weight:800;font-size:15px;}
.epill{background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:9px 17px;font-weight:700;font-size:14px;
  display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.epill .dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;}

/* ---- pain points ---- */
.pains{padding:var(--sec-py,84px) 0;background:#fff;}
.pains-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.pain{background:var(--cream);border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column;gap:12px;}
.pain .pchar{height:56px;display:flex;align-items:center;}
.pain h3{font-size:18px;line-height:1.3;}
.pain p{font-size:14.5px;color:var(--ink-soft);margin:0;}
.pains-foot{text-align:center;max-width:680px;margin:38px auto 0;font-size:clamp(19px,2.4vw,24px);
  font-weight:700;line-height:1.4;letter-spacing:-.01em;}
.pains-foot b{color:var(--orange-bright);}

/* ---- the problem ---- */
.problem{padding:var(--sec-py,84px) 0;background:var(--blush);}
.problem .sec-intro{margin-bottom:44px;}
.problem .big-q{font-size:clamp(26px,3.4vw,38px);font-weight:800;letter-spacing:-.02em;margin-bottom:18px;color:var(--ink);}
.pairs{display:flex;flex-direction:column;gap:18px;max-width:900px;margin:0 auto;}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.pair-box{border-radius:var(--radius);padding:24px 26px;}
.pair-box.generic{background:#fff;border:1.5px solid var(--line);}
.pair-box.spec{background:var(--ink);color:#fff;}
.pair-box.spec.b1{background:var(--cobalt);}
.pair-box.spec.b2{background:var(--purple);}
.pair-box.spec.b3{background:var(--green);}
.pair-box .role{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.pair-box.generic .role{color:#b3a298;}
.pair-box.spec .role{color:var(--yellow);}
.pair-box.generic p{font-size:16px;font-weight:600;color:var(--ink-soft);font-style:italic;}
.pair-box.spec p{font-size:16px;font-weight:500;line-height:1.5;}

/* ---- why a specialist matters (stat + split) ---- */
.specvs{padding:var(--sec-py,84px) 0;background:#fff;}
.stat-hero{max-width:760px;margin:0 auto 50px;text-align:center;}
.stat-kicker{font-size:13px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:4px;}
.stat-num{display:inline-flex;align-items:baseline;justify-content:center;line-height:1;color:var(--cobalt);}
.stat-zero{font-size:clamp(112px,18vw,188px);font-weight:900;letter-spacing:-.04em;}
.stat-unit{font-size:clamp(30px,4.6vw,48px);font-weight:800;color:var(--ink-soft);margin-left:.06em;}
.stat-sub{font-size:clamp(16px,1.8vw,19px);line-height:1.55;color:var(--ink-soft);
  max-width:600px;margin:24px auto 0;text-wrap:pretty;}
.stat-sub b{color:var(--ink);font-weight:800;}
.stat-note{font-size:11.5px;color:var(--ink-soft);opacity:.65;margin-top:14px;}

.split{position:relative;display:grid;grid-template-columns:1fr 1fr;max-width:920px;margin:0 auto;
  border-radius:24px;overflow:hidden;box-shadow:0 30px 60px -34px rgba(45,44,43,.42);}
.split-col.gen{border-right:2px solid rgba(0,0,0,.06);}
.sh{display:flex;align-items:center;gap:12px;padding:18px 24px;font-weight:800;font-size:16px;}
.split-col.gen .sh{background:#e4ded6;color:#857d72;}
.split-col.spec .sh{background:var(--cobalt);color:#fff;}
.split-blob{flex:0 0 auto;}
.scell{display:flex;align-items:center;gap:11px;height:64px;padding:0 24px;
  font-size:15px;line-height:1.35;border-top:1px solid rgba(0,0,0,.05);}
.split-col.gen .scell{background:#efeae3;color:#938b80;font-weight:500;}
.split-col.spec .scell{background:#f1f6ff;color:var(--ink);font-weight:600;}
.sx,.sk{flex:0 0 auto;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:11px;font-weight:800;line-height:1;}
.sx{background:#cfc7bb;color:#fff;}
.sk{background:var(--green);color:#fff;}
.split-vs{position:absolute;left:50%;top:30px;transform:translate(-50%,-50%);z-index:3;
  width:46px;height:46px;border-radius:50%;background:var(--sun);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;
  text-transform:uppercase;letter-spacing:.03em;border:3px solid #fff;
  box-shadow:0 6px 16px -4px rgba(45,44,43,.4);}
.vs-cta{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:40px;}
.vs-cta-note{font-size:13.5px;font-weight:600;color:var(--ink-soft);text-align:center;}
@media(max-width:720px){
  .split{grid-template-columns:1fr;max-width:440px;}
  .split-col.gen{border-right:none;border-bottom:2px solid rgba(0,0,0,.06);}
  .scell{height:auto;min-height:0;padding:14px 22px;}
  .split-vs{display:none;}
}

/* ---- why grid ---- */
.why{padding:var(--sec-py,84px) 0;background:var(--cream);}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:48px;}
.feature{background:#fff;border-radius:var(--radius);padding:28px 24px;}
.feature .fic{width:54px;height:54px;border-radius:16px;background:var(--cream);display:flex;align-items:center;justify-content:center;
  font-size:26px;margin-bottom:18px;}
.feature h3{font-size:18px;margin-bottom:8px;}
.feature p{font-size:14.5px;color:var(--ink-soft);}
.statband{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;
  background:linear-gradient(180deg,#9ad6f6 0%,#bce6ff 100%);border-radius:var(--radius-lg);padding:42px 30px;color:var(--ink);}
.statband .sb .n{font-size:38px;font-weight:800;}
.statband .sb .l{font-size:14px;color:var(--ink);opacity:.78;font-weight:600;margin-top:4px;}
.note-line{text-align:center;font-size:12px;color:var(--ink-soft);font-style:italic;margin-top:18px;}

/* ---- therapist cards ---- */
.therapists3{padding:var(--sec-py,84px) 0;}
.ther3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.ther3-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;}
.ther3-card image-slot{width:100%;height:230px;display:block;}
.ther3-body{padding:22px 24px;}
.ther3-body h3{font-size:20px;margin-bottom:3px;}
.ther3-body .role{font-size:13.5px;color:var(--ink-soft);margin-bottom:14px;}
.ther3-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;}
.ther3-tags span{background:var(--cream);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;white-space:nowrap;}
.ther3-loc{font-size:13px;color:var(--ink-soft);font-weight:600;}
.ther3-card[data-tid]{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;}
.ther3-card[data-tid]:hover{transform:translateY(-4px);box-shadow:0 20px 38px -22px rgba(45,44,43,.5);border-color:var(--sky);}
.ther3-card[data-tid]:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;}
.ther3-view{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:13.5px;font-weight:800;color:var(--cobalt);transition:gap .15s ease;}
.ther3-card[data-tid]:hover .ther3-view{gap:10px;}

/* ---- research cards ---- */
.research{padding:var(--sec-py,84px) 0;background:var(--mauve);}
.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.rcard{background:#fff;border-radius:var(--radius);padding:28px 26px;display:flex;flex-direction:column;}
.rcard h3{font-size:18px;margin-bottom:12px;line-height:1.25;}
.rchip{display:inline-block;align-self:flex-start;color:#fff;font-size:12px;font-weight:800;
  letter-spacing:.03em;padding:5px 12px;border-radius:999px;margin-bottom:16px;}
.rfoot{font-size:13px;color:var(--ink-soft);font-weight:700;border-top:1px solid var(--line);padding-top:14px;margin-top:auto;}
.rcard p{font-size:14.5px;color:var(--ink-soft);margin-bottom:20px;flex:1;}
.rcard .cite{font-size:12.5px;color:var(--cobalt);font-weight:700;border:1.5px dashed #bcd0f5;border-radius:10px;
  padding:10px 14px;background:#f3f7ff;}

/* ---- audience cards ---- */
.audience{padding:var(--sec-py,84px) 0;}
.aud-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.aud-card{border-radius:var(--radius-lg);padding:40px 38px;position:relative;overflow:hidden;}
.aud-card.adults{background:var(--peach);}
.aud-card.teens{background:var(--mint);}
.aud-card .eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt);margin-bottom:12px;}
.aud-card h3{font-size:26px;margin-bottom:12px;padding-right:74px;}
.aud-card>p{font-size:15.5px;color:var(--ink-soft);margin-bottom:20px;max-width:380px;}
.aud-list{display:flex;flex-direction:column;gap:11px;margin-bottom:26px;}
.aud-list .ai{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:600;}
.aud-list .ai .tick{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;flex:0 0 auto;}
.aud-char{position:absolute;right:26px;top:26px;}

@media(max-width:920px){
  .hero3-grid{grid-template-columns:1fr;gap:34px;}
  .hero3 h1{text-align:left;}
  .why-grid{grid-template-columns:1fr 1fr;}
  .statband{grid-template-columns:1fr 1fr;gap:30px 20px;}
  .ther3-grid{grid-template-columns:1fr;}
  .research-grid{grid-template-columns:1fr;}
  .aud-grid{grid-template-columns:1fr;}
  .pains-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .pair{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr;}
  .pains-grid{grid-template-columns:1fr;}
}

/* ===================================================== */
/* ===== V4 — hero finder + Canadian coverage band ===== */
/* ===================================================== */

/* ---- hero get-matched button ---- */
.hero-cta{display:flex;justify-content:flex-start;align-items:center;gap:26px;flex-wrap:wrap;margin:6px 0 2px;}
.hero-getmatched{padding:17px 36px;font-size:18px;border-radius:999px;
  box-shadow:0 18px 40px rgba(0,97,239,.26);display:inline-flex;align-items:center;gap:10px;}
.hero-getmatched span{transition:transform .18s ease;}
.hero-getmatched:hover span{transform:translateX(4px);}

/* ---- hero matching-intake finder (option B) ---- */
.hero-finder{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid #f0ebe6;
  border-radius:999px;padding:8px 8px 8px 8px;box-shadow:0 20px 48px rgba(40,30,20,.13);
  flex-wrap:wrap;justify-content:center;}
.hf-field{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:6px 18px;}
.hf-field label{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:3px;}
.hf-field select{border:none;background:transparent;font-family:inherit;font-size:16px;font-weight:700;
  color:var(--ink);cursor:pointer;outline:none;-webkit-appearance:none;appearance:none;
  padding:0 20px 0 0;max-width:200px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'><path d='M1 1l4.5 4 4.5-4' fill='none' stroke='%235b5854' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;background-position:right center;}
.hf-divider{width:1px;height:38px;background:var(--line);flex:0 0 auto;}
.hf-seg{display:flex;gap:4px;}
.hf-seg button{border-radius:999px;padding:7px 16px;font-weight:700;font-size:14.5px;
  color:var(--ink-soft);background:transparent;transition:.15s;}
.hf-seg button:hover:not(.active){color:var(--ink);}
.hf-seg button.active{background:var(--ink);color:#fff;}
.hf-go{padding:15px 26px;font-size:16px;margin-left:4px;}

/* ---- Canadian coverage band ---- */
.coverage{padding:34px 0 6px;}
.coverage-inner{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;
  background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:42px 46px;}
.cov-copy .eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cobalt);margin-bottom:14px;}
.cov-copy h2{font-size:clamp(24px,3vw,34px);line-height:1.08;margin-bottom:14px;}
.cov-copy p{font-size:16px;color:var(--ink-soft);margin-bottom:18px;max-width:440px;}
.cov-link{font-weight:700;font-size:15.5px;color:var(--cobalt);border-bottom:2px solid currentColor;
  padding-bottom:2px;}
.cov-link:hover{color:var(--cobalt-deep);}
.cov-plans-lab{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:16px;}
.cov-chips{display:flex;flex-wrap:wrap;gap:10px;}
.cov-chip{background:var(--cream);border:1.5px solid var(--line);border-radius:12px;
  padding:11px 17px;font-weight:800;font-size:15px;color:var(--ink);}
.cov-chip--more{background:transparent;border-style:dashed;color:var(--ink-soft);}
.cov-note{font-size:12.5px;color:var(--ink-soft);line-height:1.5;margin-top:18px;max-width:440px;
  scroll-margin-top:90px;border-radius:10px;transition:background .4s ease;}
.cov-note:target{background:var(--butter);box-shadow:0 0 0 8px var(--butter);}
.cov-ast{color:var(--cobalt);text-decoration:none;font-weight:700;vertical-align:super;font-size:.62em;margin-left:1px;}
.cov-ast:hover{text-decoration:underline;}
.cov-ast-mark{color:var(--cobalt);font-weight:800;font-size:1.5em;line-height:0;vertical-align:-0.18em;margin-right:2px;}

@media(max-width:920px){
  .coverage-inner{grid-template-columns:1fr;gap:30px;padding:34px 30px;}
}
@media(max-width:640px){
  .hero-finder{flex-direction:column;align-items:stretch;border-radius:24px;padding:14px;width:100%;max-width:360px;gap:8px;}
  .hf-field{padding:8px 10px;width:100%;}
  .hf-field select{max-width:none;width:100%;}
  .hf-divider{width:100%;height:1px;}
  .hf-seg{width:100%;}
  .hf-seg button{flex:1;}
  .hf-go{width:100%;margin-left:0;}
}

/* ===================================================== */
/* ============ Subpages (nav-bar pages) =============== */
/* ===================================================== */

/* active nav state */
.nav-links a.active{color:var(--cobalt);}
.nav-links a.active::after{content:"";position:absolute;left:2px;right:2px;bottom:-1px;height:2.5px;
  background:var(--cobalt);border-radius:2px;}
.nav-right .link.active{color:var(--cobalt);}

/* page hero (shared across subpages) */
.page-hero{position:relative;overflow:hidden;padding:78px 0 60px;text-align:center;background:var(--cream);}
.page-hero .wrap{position:relative;z-index:3;}
.page-hero .eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--cobalt);background:#eaf1ff;padding:8px 16px;border-radius:999px;margin-bottom:22px;}
.page-hero h1{font-size:clamp(38px,5.4vw,64px);line-height:1.02;letter-spacing:-.025em;margin:0 auto 20px;
  max-width:15ch;text-wrap:balance;}
.page-hero h1 em{font-style:normal;color:var(--sun);}
.page-hero p{font-size:clamp(17px,2vw,21px);color:var(--ink-soft);max-width:620px;margin:0 auto;line-height:1.45;}
.page-hero .ph-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px;}
.page-hero .ph-decor{position:absolute;inset:0;z-index:1;pointer-events:none;}
.page-hero .ph-decor .char{position:absolute;animation:bob 7s ease-in-out infinite;}
@media(max-width:880px){
  .page-hero{padding:54px 0 44px;}
  .page-hero .ph-decor .hide-sm{display:none;}
  .page-hero .ph-decor .char{transform:scale(.7);}
}

/* breadcrumb */
.crumb{padding:18px 0 0;}
.crumb .wrap{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-soft);}
.crumb a:hover{color:var(--cobalt);}
.crumb .sep{opacity:.5;}

/* generic prose section */
.prose-sec{padding:var(--sec-py,84px) 0;}
.prose-sec.alt{background:var(--cream);}
.lede{font-size:clamp(20px,2.6vw,28px);font-weight:700;line-height:1.35;letter-spacing:-.01em;
  max-width:780px;margin:0 auto 0;text-align:center;}
.lede b{color:var(--cobalt);}

/* vetting / process steps (numbered vertical) */
.vsteps{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:18px;}
.vstep{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:flex-start;
  background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:28px 30px;}
.vstep .vnum{width:46px;height:46px;border-radius:50%;background:var(--cobalt);color:#fff;font-weight:800;
  font-size:18px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.vstep h3{font-size:20px;margin-bottom:6px;}
.vstep p{font-size:15.5px;color:var(--ink-soft);margin:0;}

/* credentials cards */
.creds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.cred-card{background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:28px 26px;}
.cred-card .abbr{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.04em;
  background:var(--butter);color:#7a5c00;padding:6px 12px;border-radius:999px;margin-bottom:14px;}
.cred-card h3{font-size:19px;margin-bottom:8px;}
.cred-card p{font-size:14.5px;color:var(--ink-soft);margin:0;}

/* comparison table */
.compare{max-width:860px;margin:0 auto;border:1.5px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:#fff;}
.compare-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;align-items:center;border-bottom:1px solid var(--line);}
.compare-row:last-child{border-bottom:none;}
.compare-row.head{background:var(--ink);color:#fff;}
.compare-row.head .cc{font-weight:800;font-size:14px;}
.compare-row.head .cc.us{background:var(--cobalt);}
.compare .cc{padding:18px 22px;font-size:15px;}
.compare .cc.feat{font-weight:700;}
.compare .cc.us{background:#f3f7ff;font-weight:700;color:var(--ink);text-align:center;}
.compare .cc.them{color:var(--ink-soft);text-align:center;}
.compare .tk{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;
  background:var(--green);color:#fff;font-size:12px;font-weight:800;}
.compare .xk{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;
  background:#f0e8e3;color:#b3a298;font-size:12px;font-weight:800;}

/* help categories */
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.help-card{background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:30px 28px;
  transition:border-color .15s,transform .15s,box-shadow .15s;display:block;}
.help-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.07);}
.help-card .hic{width:52px;height:52px;border-radius:14px;background:var(--cream);display:flex;align-items:center;
  justify-content:center;font-size:24px;margin-bottom:16px;}
.help-card h3{font-size:19px;margin-bottom:8px;}
.help-card p{font-size:14.5px;color:var(--ink-soft);margin:0 0 14px;}
.help-card .hlink{font-weight:700;font-size:14px;color:var(--cobalt);}

/* popular articles list */
.art-list{max-width:760px;margin:0 auto;border-top:1px solid var(--line);}
.art-list a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 4px;
  border-bottom:1px solid var(--line);font-weight:600;font-size:16.5px;}
.art-list a:hover{color:var(--cobalt);}
.art-list a .arr{color:var(--ink-soft);transition:transform .15s;}
.art-list a:hover .arr{transform:translateX(4px);color:var(--cobalt);}

/* contact options */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:920px;margin:0 auto;}
.contact-card{background:var(--cream);border-radius:var(--radius-lg);padding:30px 28px;text-align:center;}
.contact-card .cic{width:56px;height:56px;border-radius:50%;background:#fff;margin:0 auto 16px;display:flex;
  align-items:center;justify-content:center;font-size:24px;}
.contact-card h3{font-size:18px;margin-bottom:6px;}
.contact-card p{font-size:14px;color:var(--ink-soft);margin:0 0 14px;}
.contact-card .cval{font-weight:800;font-size:16px;color:var(--cobalt);}

/* crisis banner */
.crisis{background:var(--ink);color:#fff;border-radius:var(--radius-lg);padding:30px 36px;
  display:flex;align-items:center;gap:24px;flex-wrap:wrap;max-width:920px;margin:0 auto;}
.crisis .cbic{width:54px;height:54px;border-radius:50%;background:var(--sun);flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;font-size:26px;}
.crisis h3{font-size:20px;margin-bottom:6px;}
.crisis p{font-size:15px;opacity:.85;margin:0;max-width:560px;}

/* faq category groups */
.faq-cat{max-width:780px;margin:0 auto 44px;}
.faq-cat:last-child{margin-bottom:0;}
.faq-cat-title{font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt);
  margin-bottom:6px;padding-bottom:14px;border-bottom:2px solid var(--cobalt);}

/* approach journey timeline */
.journey{max-width:860px;margin:0 auto;}
.jrow{display:grid;grid-template-columns:120px 1fr;gap:26px;padding:24px 0;border-bottom:1px solid var(--line);}
.jrow:last-child{border-bottom:none;}
.jrow .jwhen{font-weight:800;font-size:15px;color:var(--cobalt);}
.jrow h3{font-size:19px;margin-bottom:6px;}
.jrow p{font-size:15px;color:var(--ink-soft);margin:0;}

@media(max-width:920px){
  .creds-grid{grid-template-columns:1fr;}
  .help-grid{grid-template-columns:1fr 1fr;}
  .contact-grid{grid-template-columns:1fr;}
}
@media(max-width:920px){
  .creds-grid{grid-template-columns:1fr;}
  .help-grid{grid-template-columns:1fr 1fr;}
  .contact-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .help-grid{grid-template-columns:1fr;}
  .compare-row{grid-template-columns:1.3fr .7fr .7fr;}
  .compare .cc{padding:14px 12px;font-size:13.5px;}
  .vstep{grid-template-columns:1fr;gap:14px;}
  .jrow{grid-template-columns:1fr;gap:8px;}
}

/* ===================================================== */
/* ============ Evidence / research ==================== */
/* ===================================================== */
.ev-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:920px;margin:0 auto;}
.ev-card{background:#fff;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:30px 30px;}
.ev-card .ev-stat{font-size:clamp(34px,4vw,42px);font-weight:800;letter-spacing:-.02em;color:var(--cobalt);
  line-height:1;margin-bottom:14px;}
.ev-card h3{font-size:19px;margin-bottom:8px;}
.ev-card p{font-size:15px;color:var(--ink-soft);margin:0 0 16px;}
.ev-src{display:inline-block;font-size:12px;font-weight:700;color:var(--ink-soft);background:var(--cream);
  border:1px solid var(--line);border-radius:999px;padding:6px 13px;}
.rcard .cite{font-size:12.5px;color:var(--cobalt);font-weight:700;border:1.5px dashed #bcd0f5;border-radius:10px;
  padding:10px 14px;background:#f3f7ff;margin-top:14px;line-height:1.4;}
/* homepage evidence band -> research link */
.evidence-link{font-weight:800;font-size:14px;color:var(--cobalt);white-space:nowrap;
  border-bottom:2px solid currentColor;padding-bottom:2px;}
.evidence-link:hover{color:var(--cobalt-deep);}

/* ===================================================== */
/* ============ Mobile nav menu ======================== */
/* ===================================================== */
.nav-toggle[aria-expanded="true"]{background:var(--cobalt);}
.mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;
  border-bottom:1px solid var(--line);box-shadow:0 18px 32px rgba(0,0,0,.10);
  padding:10px 24px 22px;flex-direction:column;max-height:calc(100vh - 66px);overflow-y:auto;}
.mobile-menu.open{display:flex;}
.mm-links{display:flex;flex-direction:column;}
.mm-links a{font-weight:700;font-size:17px;padding:15px 4px;border-bottom:1px solid var(--line);
  display:flex;align-items:center;}
.mm-links a.active{color:var(--cobalt);}
.mm-sub{display:flex;flex-direction:column;padding-top:6px;}
.mm-sub a{font-weight:600;font-size:15px;color:var(--ink-soft);padding:13px 4px;}
.mm-sub a:hover{color:var(--cobalt);}
.mm-cta{margin-top:16px;width:100%;padding:15px 26px;font-size:16px;}

/* ===================================================== */
/* ============ Responsive polish (all pages) ========== */
/* ===================================================== */
@media(max-width:760px){
  .ev-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .page-hero{padding:46px 0 38px;}
  .coverage{padding:24px 0 4px;}
  .lede{font-size:21px;}
  .crisis{padding:26px 24px;gap:18px;}
  .crisis .btn,.crisis a.btn{width:100%;}
  .ph-actions .btn{flex:1;min-width:0;}
}
@media(max-width:600px){
  /* scattered decor crowds the headline on small screens — hide it */
  .hero-decor,.page-hero .ph-decor{display:none;}
  /* let the eyebrow wrap instead of getting clipped on narrow phones */
  .hero-eyebrow{white-space:normal;letter-spacing:.08em;}
}

/* ===== mobile section fixes (testimonials / FAQ / CTA blob) ===== */
@media(max-width:760px){
  /* floating decorative blobs crowd & overlap the heading + subtext */
  .testi .floaty{display:none;}
  /* homepage FAQ section has no .wrap — give it horizontal breathing room */
  .faq{padding-left:24px;padding-right:24px;}
}
@media(max-width:640px){
  .faq{padding:46px 18px 56px;}
  .faq-q{padding:18px 2px;font-size:16px;gap:14px;}
  .faq-a-inner{padding:0 2px 18px;}
  /* CTA bottom blob is oversized on phones */
  .cta-sun{height:150px;margin-top:18px;}
  .cta-sun .cta-blob{--s:200px !important;bottom:-64px;margin-left:-100px;}
}
@media(max-width:480px){
  .cta-sun{height:120px;}
  .cta-sun .cta-blob{--s:168px !important;bottom:-52px;margin-left:-84px;}
}
@media(max-width:480px){
  .wrap{padding:0 18px;}
  .nav-inner{gap:14px;}
  .compare-row{grid-template-columns:1.5fr .75fr .75fr;}
  .compare .cc{padding:12px 8px;font-size:12.5px;}
  .compare-row.head .cc{font-size:12px;}
  .statband{grid-template-columns:1fr;gap:22px;}
  .foot-cols{grid-template-columns:1fr 1fr;gap:22px;}
}

/* ===== mobile QA fixes (nav fit + long button wrap) ===== */
@media(max-width:480px){
  .nav-inner{gap:10px;}
  .nav-right{gap:8px;}
  .nav-right .btn-blue{padding:10px 14px;font-size:13.5px;}
  .nav-toggle{padding:10px 13px;font-size:13.5px;}
  .brand{font-size:19px;}
}
@media(max-width:560px){
  .quiz-cta .btn{white-space:normal;font-size:15px;padding:14px 22px;line-height:1.3;max-width:100%;}
}

