
/* Layout: "Light editorial" master site (v2 wireframe order). Paper ground, Midnight structure, Sunbeam spark (60·30·10).
   Signature moments: a blob hero with floating doorways, a 4-step pathway that runs the brand gradient, a hover-reveal
   programme list, and plum for professionals. Hash routes: #home, #help, other menu pages are stubs until built. */
:root{
  --sun:#FCD800; --teal:#52C3BD; --teal-light:#93D9D5; --teal-50:#EEF9F8; --deep-teal:#12736E; --lime:#B9D546; --ember:#F2784B;
  --midnight:#252A52; --ink:#161936; --plum:#3A2645; --plum-2:#4A3157;
  --bg:#F7F6F2; --surface:#FFFFFF; --surface-quiet:#ECEBE6; --text-strong:#252A52; --text:#45464A; --muted:#666769;
  --line:#D9D8D2; --accent-text:#12736E; --chip:#FFFFFF; --focus:#12736E; --error:#C93838; --shadow:0 1px 2px rgba(22,25,54,.06);
  --font-display:var(--font-voice); /* founder decision: Neue Montreal across the interface; Poppins retired on the site */
  --font-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  /* Neue Montreal (founder pick) is the editorial "voice": labels, leads, nav, quotes, magazine masthead.
     Commercial font (Pangram Pangram): self-host the licensed WOFF2 as "PP Neue Montreal". Inter Tight stands in until then. */
  --font-voice:"PP Neue Montreal","Neue Montreal","Inter Tight","Helvetica Neue",Arial,sans-serif;
  /* italic accent for highlight words: Fraunces italic (Google Fonts) */
  --font-accent:"Fraunces",Georgia,"Times New Roman",serif;
  --r-pill:999px; --r-lg:16px; --r-md:12px; --r-sm:8px; --ease:cubic-bezier(.2,.8,.2,1);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#13152B; --surface:#1C2040; --surface-quiet:#202549; --text-strong:#F4F4F8; --text:#CFD0D8; --muted:#A3A6B8;
  --line:#33386A; --accent-text:#93D9D5; --chip:#1C2040; --focus:#FCD800; --error:#FF9C8F; --shadow:0 1px 2px rgba(0,0,0,.3); color-scheme:dark }}
:root[data-theme="dark"]{
  --bg:#13152B; --surface:#1C2040; --surface-quiet:#202549; --text-strong:#F4F4F8; --text:#CFD0D8; --muted:#A3A6B8;
  --line:#33386A; --accent-text:#93D9D5; --chip:#1C2040; --focus:#FCD800; --error:#FF9C8F; --shadow:0 1px 2px rgba(0,0,0,.3); color-scheme:dark }

*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:16px}
body{background:var(--bg);color:var(--text);font:400 1rem/1.6 var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--ink)}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);margin:0;text-wrap:balance;letter-spacing:-.02em}
p{margin:0}
a{color:var(--accent-text)}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--sun);color:var(--midnight);padding:12px 18px;border-radius:var(--r-pill);font:500 1rem var(--font-display);text-decoration:none}
.skip:focus{top:calc(8px + env(safe-area-inset-top,0px))}
.wrap{max-width:1280px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
@media(min-width:1024px){.wrap{padding-left:max(80px,env(safe-area-inset-left,0px));padding-right:max(80px,env(safe-area-inset-right,0px))}}
section{position:relative}
.band{padding-block:72px}
@media(min-width:1024px){.band{padding-block:104px}}
.eyebrow{font:500 .75rem/1.3 var(--font-voice);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-text)}
.h2{font-weight:700;font-size:clamp(1.75rem,1.15rem + 2.4vw,2.75rem);line-height:1.12}
.head{display:grid;gap:12px;max-width:44rem;margin-bottom:40px}
.head-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px 40px;margin-bottom:36px}
.head-row .head{margin:0}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:6px 8px 6px 24px;border-radius:var(--r-pill);border:0;font:500 1rem/1.2 var(--font-display);text-decoration:none;transition:background .1s,box-shadow .1s;white-space:nowrap}
.btn .arr{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;flex:none;transition:transform .32s var(--ease)}
.btn:hover .arr{transform:translateX(3px)}
.btn-go{background:var(--sun);color:var(--midnight)} .btn-go .arr{background:var(--midnight);color:var(--sun)} .btn-go:hover{background:#FDE761}
.btn-ink{background:var(--midnight);color:#fff} .btn-ink .arr{background:var(--sun);color:var(--midnight)} .btn-ink:hover{background:#1C2040}
.btn-ghost{background:transparent;color:var(--text-strong);box-shadow:inset 0 0 0 1.5px currentColor;padding-right:24px}
.btn-ghost:hover{background:color-mix(in srgb,currentColor 8%,transparent)}
.tlink{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--accent-text);font:500 1rem var(--font-display);text-decoration:none}
.tlink:hover{text-decoration:underline;text-underline-offset:4px}

/* utility bar + header + mega menu */
.util{background:var(--ink);color:#C9CBDA;font-size:.8125rem}
.util .wrap{display:flex;justify-content:space-between;align-items:center;min-height:44px;gap:16px}
.util a{color:#fff;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:8px;min-height:44px}
.util a svg{color:var(--teal-light)}
.util .meta{display:none}
@media(min-width:900px){.util .meta{display:block}}
header.site{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:40}
header.site .wrap{display:flex;align-items:center;gap:20px;min-height:72px}
.logo{display:flex;align-items:center;margin-right:auto;min-height:44px}
.logo img{height:40px;width:auto;display:block}
nav.main{display:none}
@media(min-width:1180px){nav.main{display:flex;gap:4px;margin-right:12px}}
.nav-item{position:relative}
.nav-item>button{background:none;border:0;color:var(--text-strong);font:500 .9375rem var(--font-voice);display:inline-flex;align-items:center;gap:6px;padding:10px 12px;min-height:44px;border-radius:var(--r-sm)}
.nav-item>button:hover,.nav-item>button[aria-expanded="true"]{background:var(--surface-quiet)}
.nav-item>button svg{transition:transform .2s var(--ease)}
.nav-item>button[aria-expanded="true"] svg{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 10px);left:-12px;min-width:340px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px;box-shadow:0 24px 48px -24px rgba(22,25,54,.35);display:grid;gap:2px}
.mega a{display:grid;gap:2px;padding:12px 14px;border-radius:var(--r-md);text-decoration:none;color:var(--text)}
.mega a:hover{background:var(--surface-quiet)}
.mega b{font:500 .9375rem var(--font-display);color:var(--text-strong)}
.mega span{font-size:.8125rem;color:var(--muted)}
.mega .sub{display:inline-block;margin-left:6px;font:500 .6875rem var(--font-display);letter-spacing:.06em;color:var(--accent-text)}
.talk{background:var(--sun);color:var(--midnight);border-radius:var(--r-pill);padding:12px 20px;font:500 .9375rem var(--font-display);text-decoration:none;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.burger{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:transparent;color:var(--text-strong)}
@media(min-width:1180px){.burger{display:none}}
@media(max-width:420px){.talk{padding:10px 14px;font-size:.875rem}}
.drawer{position:fixed;inset:0;z-index:90;background:var(--bg);overflow:auto;padding:calc(16px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) 40px max(20px,env(safe-area-inset-left,0px))}
.drawer .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.drawer details{border-bottom:1px solid var(--line)}
.drawer summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:60px;font:500 1.25rem var(--font-display);color:var(--text-strong);cursor:pointer}
.drawer summary::-webkit-details-marker{display:none}
.drawer details a{display:block;padding:10px 0 10px 4px;color:var(--text);text-decoration:none;font-size:1rem;min-height:44px}
.drawer .drawer-help{margin-top:24px;background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:20px;display:grid;gap:10px}

/* HOME-01 HERO */
.hero .wrap{display:grid;gap:40px;padding-block:48px 72px;align-items:center}
@media(min-width:1024px){.hero .wrap{grid-template-columns:1fr 1fr;gap:56px;padding-block:72px 104px}}
.hero h1{font-weight:700;font-size:clamp(2.4rem,1.3rem + 4.6vw,4.75rem);line-height:1.02;letter-spacing:-.035em}
.hero h1 .hl{position:relative;white-space:nowrap;z-index:0}
.hero h1 .hl::after{content:"";position:absolute;left:-.06em;right:-.06em;bottom:.06em;height:.34em;background:var(--sun);z-index:-1;border-radius:4px;transform:skewX(-8deg)}
.hero .lead{font:400 clamp(1.0625rem,1rem + .35vw,1.25rem)/1.55 var(--font-voice);margin-top:22px;max-width:32rem}
.hero .lead span{display:block;color:var(--muted);font-size:.9375rem;margin-top:6px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.blobstage{position:relative;max-width:620px;width:100%;justify-self:center;padding-bottom:64px}
.blob{position:relative;aspect-ratio:1.08/1;max-width:100%}
.blob svg.shape{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.blob .slot{position:absolute;left:50%;bottom:10%;transform:translateX(-50%);background:rgba(255,255,255,.85);color:#252A52;font:500 .75rem var(--font-display);letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:var(--r-sm);white-space:nowrap}
.doors{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.door{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 14px 16px;text-decoration:none;color:var(--text-strong);display:grid;gap:10px;box-shadow:0 18px 36px -22px rgba(22,25,54,.45);transition:transform .2s var(--ease),border-color .1s;min-height:44px}
.door:hover{transform:translateY(-4px);border-color:var(--text-strong)}
.door .ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--midnight)}
.door b{font:500 .9375rem/1.25 var(--font-display)}
.door small{font-size:.75rem;color:var(--muted);display:block}
@media(max-width:520px){.door{padding:10px}.door b{font-size:.8125rem}.door small{display:none}}
@media(min-width:1024px){.door:nth-child(2){transform:translateY(-14px)}.door:nth-child(2):hover{transform:translateY(-18px)}}

/* HOME-02 STORIES */
.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;margin-bottom:28px}
.tab{flex:none;border:1.5px solid var(--line);background:var(--chip);color:var(--text-strong);border-radius:var(--r-pill);padding:8px 16px;min-height:44px;font:500 .9375rem var(--font-voice)}
.tab:hover{border-color:var(--text-strong)}
.tab[aria-selected="true"]{background:var(--midnight);color:#fff;border-color:var(--midnight)}
:root[data-theme="dark"] .tab[aria-selected="true"]{background:var(--sun);color:var(--midnight);border-color:var(--sun)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tab[aria-selected="true"]{background:var(--sun);color:var(--midnight);border-color:var(--sun)}}
.stories{display:grid;gap:20px}
@media(min-width:760px){.stories{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.stories{grid-template-columns:1.4fr 1fr 1fr}.story.lead-story{grid-row:span 2}}
.story{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:grid;grid-template-rows:auto 1fr;text-decoration:none;color:inherit;transition:border-color .1s}
.story:hover{border-color:var(--text-strong)}
.story:hover h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.story .art{aspect-ratio:16/9;max-width:100%;position:relative;overflow:hidden}
.story.lead-story .art{aspect-ratio:4/3}
.story .art svg{position:absolute;inset:0;width:100%;height:100%}
.story .body{padding:20px 22px 24px;display:grid;gap:10px;align-content:start}
.story .cat{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.story h3{font-size:1.1875rem;font-weight:500;line-height:1.3}
.story.lead-story h3{font-size:clamp(1.375rem,1.1rem + .9vw,1.75rem);font-weight:700}
.story .meta{font-size:.8125rem;color:var(--muted)}
.mag-prompt{grid-column:1/-1;background:var(--surface);border:1px dashed var(--line);border-radius:var(--r-lg);padding:32px;display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between}

/* HOME-03 MAGAZINE */
.magazine{background:var(--midnight);color:#D7D9E6;overflow:hidden}
.magazine .eyebrow{color:var(--teal-light)} .magazine h2{color:#fff}
.magazine .wrap{display:grid;gap:40px;align-items:center}
@media(min-width:1024px){.magazine .wrap{grid-template-columns:.8fr 1.2fr;gap:64px}}
.magazine .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.magazine .btn-ghost{color:#fff}
.covers-wrap{position:relative;min-width:0}
.covers{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 2px 18px;scrollbar-width:none}
.covers::-webkit-scrollbar{display:none}
.cover{flex:0 0 min(62%,240px);scroll-snap-align:start;aspect-ratio:3/4;max-width:100%;border-radius:6px;position:relative;overflow:hidden;padding:16px;display:flex;flex-direction:column;justify-content:space-between;color:var(--midnight);text-decoration:none;box-shadow:0 24px 40px -20px rgba(0,0,0,.6);transition:transform .2s var(--ease)}
.cover:hover{transform:translateY(-6px) rotate(-1deg)}
.cover .mast{font:700 1.75rem/1 var(--font-display);letter-spacing:-.04em}
.cover .mast small{display:block;font:500 .5625rem var(--font-display);letter-spacing:.24em;text-transform:uppercase;margin-top:4px}
.cover .no{font:700 4rem/.85 var(--font-display);letter-spacing:-.05em;position:relative;z-index:1}
.cover .theme{font:500 .75rem/1.3 var(--font-display);position:relative;z-index:1}
.cover svg{position:absolute;inset:0;width:100%;height:100%}
.arrows{display:flex;gap:8px;margin-top:8px}
.arrows button{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);background:transparent;color:#fff;display:grid;place-items:center}
.arrows button:hover{border-color:#fff}

/* HOME-04 PATHWAY */
.path{list-style:none;margin:0;padding:0;display:grid;gap:14px;position:relative}
@media(min-width:900px){.path{grid-template-columns:repeat(4,1fr);gap:16px}}
.path::before{content:"";position:absolute;left:28px;top:20px;bottom:20px;width:4px;border-radius:4px;background:linear-gradient(#52C3BD,#94CC6A 60%,#FCD800)}
@media(min-width:900px){.path::before{left:20px;right:20px;top:28px;bottom:auto;width:auto;height:4px;background:linear-gradient(90deg,#52C3BD,#94CC6A 60%,#FCD800)}}
.step{position:relative}
.step a{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;transition:transform .2s var(--ease),border-color .1s;height:100%}
@media(min-width:900px){.step a{grid-template-columns:1fr;padding:0 20px 24px;background:transparent;border:0}}
.step a:hover{transform:translateY(-4px)}
.step .dot{width:60px;height:60px;display:grid;place-items:center;color:var(--midnight);font:700 1rem var(--font-display);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);position:relative;z-index:1}
@media(min-width:900px){.step .dot{margin-left:-6px}}
.step .free{font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.step h3{font-size:1.5rem;font-weight:700;margin:4px 0 6px}
.step p{font-size:.9375rem}
.step .go{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:500 .9375rem var(--font-display);color:var(--accent-text)}

/* HOME-05 PFA FEATURE */
.pfa{background:var(--sun);color:var(--midnight);overflow:hidden}
.pfa .wrap{display:grid;gap:40px;align-items:center}
@media(min-width:1024px){.pfa .wrap{grid-template-columns:1fr 1fr;gap:72px}}
.pfa .art{aspect-ratio:5/4;max-width:100%;border-radius:24px;background:var(--midnight);position:relative;overflow:hidden}
.pfa .art svg{position:absolute;inset:0;width:100%;height:100%}
.pfa .eyebrow{color:var(--midnight)}
.pfa h2{color:var(--midnight);font-size:clamp(2rem,1.2rem + 3vw,3.25rem);line-height:1.04;font-weight:700;margin-top:14px}
.pfa p.lead{margin-top:18px;max-width:30rem;font-size:1.0625rem}
.lll{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 28px;list-style:none;padding:0}
.lll li{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--r-pill);background:rgba(37,42,82,.08);font:500 .9375rem var(--font-display)}
.lll i{width:12px;height:12px;clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}

/* HOME-06 PROGRAMMES */
.prog-grid{display:grid;gap:40px}
@media(min-width:1024px){.prog-grid{grid-template-columns:1fr 1fr;gap:72px;align-items:start}}
.prog-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--text-strong)}
.prog-list a{display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;padding:22px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:padding .2s var(--ease),background .2s}
.prog-list a:hover,.prog-list a:focus-visible,.prog-list a.on{padding-left:16px;background:var(--surface)}
.prog-list h3{font-size:clamp(1.25rem,1rem + 1vw,1.75rem);font-weight:500}
.prog-list p{grid-column:1;font-size:.9375rem;color:var(--muted)}
.prog-list .arr{grid-row:1/span 2;grid-column:2;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--text-strong);transition:background .2s,border-color .2s}
.prog-list a:hover .arr,.prog-list a.on .arr{background:var(--sun);border-color:var(--sun);color:var(--midnight)}
.prog-preview{position:sticky;top:96px;aspect-ratio:4/3;max-width:100%;border-radius:24px;overflow:hidden;display:none}
@media(min-width:1024px){.prog-preview{display:block}}
.prog-preview svg{position:absolute;inset:0;width:100%;height:100%;transition:opacity .32s var(--ease)}
.prog-preview .cap{position:absolute;left:20px;bottom:20px;right:20px;background:var(--surface);color:var(--text-strong);border-radius:var(--r-md);padding:14px 16px;font-size:.875rem;display:grid;gap:2px}
.prog-preview .cap b{font:500 1rem var(--font-display)}

/* HOME-07 REACH */
.reach{background:var(--surface-quiet)}
.reach h2{max-width:22ch}
.stats{display:grid;gap:0;grid-template-columns:1fr 1fr;border-top:2px solid var(--text-strong)}
@media(min-width:900px){.stats{grid-template-columns:repeat(4,1fr)}}
.stat{padding:24px 16px 28px 0;border-bottom:1px solid var(--line)}
.stat:nth-child(even){padding-left:16px;border-left:1px solid var(--line)}
@media(min-width:900px){.stat{border-bottom:0}.stat+.stat{border-left:1px solid var(--line);padding-left:24px}}
.stat b{display:block;font:700 clamp(2.5rem,1.6rem + 3vw,4rem)/1 var(--font-display);color:var(--text-strong);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.stat span{display:block;margin-top:10px;font-size:.9375rem;max-width:18ch}
.stat small{display:block;margin-top:4px;color:var(--muted);font-size:.8125rem}
.partners{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px}
.partners p{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.partners ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 28px}
.partners li{font:700 1.0625rem var(--font-display);color:var(--text-strong);opacity:.75}
.footnote{margin-top:24px;font-size:.8125rem;color:var(--muted)}
.footnote .confirm,.confirm{display:inline-block;font:500 .75rem var(--font-display);padding:2px 8px;border-radius:var(--r-sm);background:rgba(242,120,75,.18);color:#9F513B}
:root[data-theme="dark"] .confirm{color:#FFB79C}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .confirm{color:#FFB79C}}

/* HOME-08 PROFESSIONALS (plum) */
.pros{background:var(--plum);color:#E6DDEA;overflow:hidden}
.pros::after{content:"";position:absolute;right:-8%;top:-80px;width:46%;height:110px;background:var(--sun);transform:rotate(-7deg);opacity:.95}
.pros .eyebrow{color:var(--sun)} .pros h2{color:#fff}
.pros .wrap{display:grid;gap:40px;position:relative;z-index:1}
@media(min-width:1024px){.pros .wrap{grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}}
.pros p.lead{margin-top:16px;max-width:30rem}
.pros .btn{margin-top:28px}
.pro-cards{display:grid;gap:12px}
@media(min-width:640px){.pro-cards{grid-template-columns:1fr 1fr}}
.pro{background:var(--plum-2);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:22px;display:grid;gap:8px;text-decoration:none;color:#E6DDEA;transition:border-color .1s,transform .2s var(--ease)}
.pro:hover{border-color:var(--sun);transform:translateY(-3px)}
.pro .k{font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:#C9B8D2}
.pro b{font:500 1.1875rem var(--font-display);color:#fff}
.pro p{font-size:.875rem}
.pro .price{font:500 .875rem var(--font-display);color:var(--sun)}

/* HOME-09 PARTNER */
.partner .card{background:var(--teal-light);color:var(--midnight);border-radius:28px;padding:48px 28px;display:grid;gap:24px;position:relative;overflow:hidden}
@media(min-width:1024px){.partner .card{padding:72px 64px;grid-template-columns:1.3fr .7fr;align-items:end}}
.partner .card h2{color:inherit;font-size:clamp(2rem,1.2rem + 3vw,3.5rem);line-height:1.04;max-width:16ch}
.partner .card .eyebrow{color:inherit}
.partner .card p{max-width:32rem;margin-top:14px}
.partner.photoband .card{background:rgba(255,255,255,.6)}
:root[data-theme="dark"] .partner.photoband .card{background:rgba(28,32,64,.6)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .partner.photoband .card{background:rgba(28,32,64,.6)}}
.partner.photoband .ways i{background:currentColor}
.partner .ring{position:absolute;right:-90px;top:-90px;width:300px;height:300px;pointer-events:none}
.partner .ways{list-style:none;margin:0;padding:0;display:grid;gap:8px;font:500 .9375rem var(--font-display)}
.partner .ways li{display:flex;gap:10px;align-items:center}
.partner .ways i{width:10px;height:10px;background:var(--midnight);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}

/* GLB-02 HELP BOX */
.helpbox{background:var(--bg)}
.help-cards{display:grid;gap:12px}
@media(min-width:900px){.help-cards{grid-template-columns:repeat(3,1fr)}}
.hcard{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;text-decoration:none;color:inherit;min-height:44px;transition:border-color .1s}
.hcard:hover{border-color:var(--text-strong)}
.hcard .ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--midnight)}
.hcard b{display:block;font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.hcard span{font-size:.875rem;color:var(--muted)}

/* FOOTER */
footer{background:var(--ink);color:#B8BBD0;font-size:.875rem}
footer .wrap{padding-block:64px calc(40px + env(safe-area-inset-bottom,0px));display:grid;gap:48px}
.f-top{display:grid;gap:28px}
@media(min-width:1024px){.f-top{grid-template-columns:1.1fr .9fr;align-items:end}}
.f-top h2{color:#fff;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);font-weight:700}
.f-top p{margin-top:10px;max-width:34rem}
.news{display:grid;gap:8px}
.news label{font:500 .875rem var(--font-display);color:#fff}
.news .row{display:flex;gap:8px;flex-wrap:wrap}
.news input{flex:1 1 220px;min-height:52px;border-radius:var(--r-pill);border:1.5px solid #3A3F6B;background:#1C2040;color:#fff;padding:0 20px;font:400 1rem var(--font-body)}
.news input:focus{outline:none;border-color:var(--sun)}
.news .err{color:#FF9C8F;font-size:.8125rem;font-weight:600}
.news .ok{color:var(--lime);font-size:.875rem;font-weight:600}
.f-cols{display:grid;gap:28px;grid-template-columns:1fr 1fr}
@media(min-width:900px){.f-cols{grid-template-columns:repeat(6,1fr)}}
.f-cols h3{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:8px}
.f-cols ul{list-style:none;margin:0;padding:0}
.f-cols a{color:#B8BBD0;text-decoration:none;display:inline-flex;align-items:center;min-height:36px}
.f-cols a:hover{color:#fff;text-decoration:underline}
.f-base{border-top:1px solid #2A2F5E;padding-top:24px;display:grid;gap:10px;font-size:.8125rem}
.f-base a{color:#B8BBD0}

/* HELP PAGE (calm help: numbers first, never animated) */
.helppage{background:#F3F9F7}
:root[data-theme="dark"] .helppage{background:var(--bg)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .helppage{background:var(--bg)}}
.hp-hero{background:var(--ink);color:#DADCEA}
.hp-hero .wrap{padding-block:48px 56px;display:grid;gap:22px}
.hp-hero h1{color:#fff;font-size:clamp(2rem,1.4rem + 2.6vw,3rem);font-weight:700}
.hp-hero p{max-width:40rem;font-size:1.0625rem}
.big-calls{display:grid;gap:12px;max-width:720px}
@media(min-width:640px){.big-calls{grid-template-columns:1fr 1fr}}
.big-call{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;background:#fff;color:var(--midnight);border-radius:var(--r-lg);padding:18px 22px;text-decoration:none;min-height:88px}
.big-call:hover{background:#FFF7C2}
.big-call .ic{width:52px;height:52px;border-radius:50%;background:var(--sun);display:grid;place-items:center}
.big-call b{display:block;font:700 2rem/1 var(--font-display);font-variant-numeric:tabular-nums}
.big-call span{font-size:.9375rem}
.lines{display:grid;gap:12px}
@media(min-width:760px){.lines{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.lines{grid-template-columns:repeat(3,1fr)}}
.line{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;display:grid;gap:4px}
.line b{font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.line a{font:700 1.375rem var(--font-display);text-decoration:none;color:var(--text-strong);display:inline-flex;align-items:center;min-height:44px;font-variant-numeric:tabular-nums}
.line a:hover{color:var(--accent-text)}
.line span{font-size:.875rem;color:var(--muted)}
.next{list-style:none;margin:0;padding:0;counter-reset:n;display:grid;gap:10px;max-width:40rem}
.next li{counter-increment:n;display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 18px;font-size:1.0625rem;color:var(--text-strong)}
.next li::before{content:counter(n);width:32px;height:32px;border-radius:50%;background:var(--teal-light);color:var(--midnight);display:grid;place-items:center;font:700 .9375rem var(--font-display)}
.hp-grid{display:grid;gap:40px}
@media(min-width:1024px){.hp-grid{grid-template-columns:1.1fr .9fr;gap:64px}}
.side-cards{display:grid;gap:12px;align-content:start}
.side-cards a,.side-cards div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;text-decoration:none;color:inherit;display:grid;gap:4px}
.side-cards b{font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.side-cards span{font-size:.9375rem;color:var(--muted)}

/* STUB pages */
.stub .wrap{padding-block:72px 96px;display:grid;gap:24px}
.stub h1{font-size:clamp(2rem,1.4rem + 2.6vw,3rem);font-weight:700}
.stub ol{margin:0;padding:0;list-style:none;display:grid;gap:8px;max-width:44rem}
.stub li{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 18px;display:flex;gap:14px;align-items:center}
.stub li code{font:500 .75rem ui-monospace,Menlo,monospace;color:var(--accent-text);flex:none}

/* POPUP (email, magazine) */
.scrim{position:fixed;inset:0;z-index:95;background:rgba(22,25,54,.66);display:grid;place-items:end center}
@media(min-width:640px){.scrim{place-items:center;padding:24px}}
.sheet{background:var(--surface);width:100%;max-width:520px;max-height:92vh;overflow:auto;border-radius:24px 24px 0 0;padding:28px 24px calc(28px + env(safe-area-inset-bottom,0px))}
@media(min-width:640px){.sheet{border-radius:24px;padding:36px}}
.sheet-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.x{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:transparent;color:var(--text-strong);display:grid;place-items:center}
.sheet h2{font-size:1.5rem;font-weight:700;margin-bottom:6px}
.field{display:grid;gap:8px;margin:16px 0}
.field label{font:500 .875rem var(--font-display);color:var(--text-strong)}
.field input,.field textarea,.field select{font:400 1rem var(--font-body);padding:13px 14px;min-height:48px;border-radius:var(--r-md);border:1.5px solid var(--line);background:var(--bg);color:var(--text-strong);width:100%}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--error)}
.err{color:var(--error);font-size:.8125rem;font-weight:600}

/* ===== photo heads (Magnific-style): full-bleed photo, header floats transparent on top ===== */
.photohead{position:relative;isolation:isolate;overflow:hidden;color:#F4F4F8;margin-top:-73px;background:#161936}
.photohead .ph-bg{position:absolute;inset:0;z-index:-2}
.photohead .ph-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block;filter:saturate(1.05) contrast(1.03)}
.photohead::before{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(22,25,54,.62) 0,rgba(22,25,54,0) 26%),
  linear-gradient(0deg,rgba(22,25,54,.9) 0,rgba(22,25,54,.55) 38%,rgba(22,25,54,.08) 72%),
  linear-gradient(90deg,rgba(22,25,54,.55) 0,rgba(22,25,54,0) 60%)}
.photohead h1,.photohead h2{color:#fff}
.photohead .eyebrow{color:var(--sun)}
.photohead .lead,.photohead .lead span{color:#E6E7F0}
.photohead .crumbs,.photohead .crumbs a{color:#C9CBDA}
.photohead .btn-ghost{color:#fff}
.ph-credit{position:absolute;right:max(20px,env(safe-area-inset-right,0px));bottom:14px;font:500 .75rem var(--font-voice);color:rgba(255,255,255,.7);letter-spacing:.04em}
.hero.photohead .wrap{display:grid;grid-template-columns:1fr;gap:36px;align-content:end;min-height:clamp(600px,88vh,860px);padding-block:150px 56px}
@media(min-width:1024px){.hero.photohead .wrap{grid-template-columns:1.25fr .75fr;align-items:end;gap:48px;padding-block:180px 80px}}
.hero.photohead h1{margin-top:18px;font-size:clamp(2.6rem,1.2rem + 5.4vw,5.5rem);max-width:13ch}
.hero.photohead h1 .hl::after{opacity:.95}
.hero.photohead .doors{position:static;grid-template-columns:1fr;gap:10px}
@media(max-width:1023px){.hero.photohead .doors{grid-template-columns:repeat(3,1fr)}}
.hero.photohead .door{background:rgba(255,255,255,.94);border-color:transparent;transform:none}
:root[data-theme="dark"] .hero.photohead .door{background:rgba(28,32,64,.92)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero.photohead .door{background:rgba(28,32,64,.92)}}
.hero.photohead .door:hover{transform:translateX(-4px)}
@media(min-width:1024px){.hero.photohead .door{grid-template-columns:auto 1fr;align-items:center}}
.pagehead.photohead .wrap{padding-block:160px 72px}
@media(min-width:1024px){.pagehead.photohead .wrap{padding-block:200px 96px}}
.photohead .facts{border-color:#fff}.photohead .facts div{border-color:rgba(255,255,255,.2)}
.photohead .facts dt{color:#C9CBDA}.photohead .facts dd{color:#fff}
/* header over a photo head */
header.site{transition:background .2s,border-color .2s}
header.site.over{background:transparent;border-bottom-color:rgba(255,255,255,.18)}
header.site.over .nav-item>button{color:#fff}
header.site.over .nav-item>button:hover,header.site.over .nav-item>button[aria-expanded="true"]{background:rgba(255,255,255,.14)}
header.site.over .burger{color:#fff;border-color:rgba(255,255,255,.4)}
header.site.over .logo img{filter:drop-shadow(0 1px 6px rgba(0,0,0,.35))}

/* ===== glass (frosted panels over photos) =====
   Build: Elementor container Custom CSS: backdrop-filter + translucent background. Solid fallback where blur isn't supported. */
.glass{background:rgba(22,25,54,.34);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);
  border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 24px 48px -24px rgba(8,9,24,.55);color:#F4F4F8}
.glass-light{background:rgba(255,255,255,.66);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);
  border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 24px 48px -28px rgba(22,25,54,.45);color:#252A52}
:root[data-theme="dark"] .glass-light{background:rgba(28,32,64,.6);border-color:rgba(255,255,255,.16);color:#F4F4F8;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 24px 48px -28px rgba(0,0,0,.6)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .glass-light{background:rgba(28,32,64,.6);border-color:rgba(255,255,255,.16);color:#F4F4F8;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 24px 48px -28px rgba(0,0,0,.6)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass{background:rgba(22,25,54,.82)}.glass-light{background:rgba(255,255,255,.95)}}
.glass b,.glass h3,.glass h2{color:#fff}.glass small,.glass span{color:#DADCEA}
/* hero doors become frosted */
.hero.photohead .door{background:rgba(22,25,54,.3);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.24);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 20px 40px -24px rgba(0,0,0,.6)}
:root[data-theme="dark"] .hero.photohead .door{background:rgba(22,25,54,.42)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero.photohead .door{background:rgba(22,25,54,.42)}}
.hero.photohead .door small{color:#DADCEA}
.hero.photohead .door:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.hero.photohead .door{background:rgba(22,25,54,.78)}}
/* solid header turns frosted once scrolled */
header.site:not(.over){background:color-mix(in srgb,var(--bg) 80%,transparent);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}
.mega{background:color-mix(in srgb,var(--surface) 86%,transparent);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%)}
/* photo bands with a frosted panel */
.photoband{position:relative;isolation:isolate;overflow:hidden;background:#161936}
.photoband>.ph-bg{position:absolute;inset:0;z-index:-2}
.photoband>.ph-bg img{width:100%;height:100%;object-fit:cover;display:block}
.photoband::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(22,25,54,.25),rgba(22,25,54,.55))}
.photoband .head .eyebrow{color:var(--sun)}.photoband .head h2{color:#fff}
.helpbox.photoband .hcard{background:rgba(22,25,54,.32);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.24);color:#fff}
.helpbox.photoband .hcard b{color:#fff}.helpbox.photoband .hcard span{color:#DADCEA}
.helpbox.photoband .hcard:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.5)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.helpbox.photoband .hcard{background:rgba(22,25,54,.8)}}
.glass-panel{border-radius:24px;padding:32px 28px;display:grid;gap:18px}
@media(min-width:1024px){.glass-panel{padding:48px}}
.magazine.photoband::before{background:linear-gradient(90deg,rgba(37,42,82,.96) 0,rgba(37,42,82,.88) 45%,rgba(37,42,82,.55))}
.prog-preview .cap{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.7);color:#252A52}
.prog-preview .cap b{color:#252A52}
.ways-img{aspect-ratio:16/9;max-width:100%;border-radius:12px;overflow:hidden;margin:-8px -8px 6px;position:relative}
.ways-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.illus{position:absolute;left:12px;bottom:12px;font:500 .75rem var(--font-voice);color:#fff;padding:4px 10px;border-radius:999px;background:rgba(22,25,54,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

/* ===== review pass 1 fixes ===== */
/* hero: doors sit in a row under the buttons so the people in the photo stay visible */
@media(min-width:1024px){
  .hero.photohead .wrap{grid-template-columns:1fr;align-content:end;gap:28px;min-height:clamp(600px,calc(100vh - 44px),860px);padding-block:130px 48px}
  .hero.photohead h1{font-size:clamp(2.6rem,1.2rem + 4.2vw,4.75rem)}
  .hero.photohead .lead{margin-top:16px}.hero.photohead .ctas{margin-top:22px}
  .hero.photohead .doors{grid-template-columns:repeat(3,minmax(0,220px));gap:12px}
  .hero.photohead .door{grid-template-columns:auto 1fr;align-items:center;padding:12px 14px}
  .hero.photohead .door:hover{transform:translateY(-3px)}
}
.hero.photohead .hero-copy{max-width:760px}
/* stronger top and bottom shade so the menu and white text always read */
.photohead::before{background:
  linear-gradient(180deg,rgba(22,25,54,.72) 0,rgba(22,25,54,.12) 30%,rgba(22,25,54,0) 45%),
  linear-gradient(0deg,rgba(22,25,54,.9) 0,rgba(22,25,54,.55) 40%,rgba(22,25,54,.08) 72%),
  linear-gradient(90deg,rgba(22,25,54,.55) 0,rgba(22,25,54,0) 60%)}
.helpbox.photoband::before{background:linear-gradient(180deg,rgba(22,25,54,.78) 0,rgba(22,25,54,.5) 55%,rgba(22,25,54,.7) 100%)}
/* lead story fills its two rows instead of leaving a white gap */
@media(min-width:1100px){.stories .story.lead-story{grid-template-rows:1fr auto}.stories .story.lead-story .art{aspect-ratio:auto;min-height:300px}}
/* topic tabs scroll without a visible bar, with a soft fade at the edge */
.tabs{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.tabs::-webkit-scrollbar{display:none}
@media(min-width:1100px){.tabs{-webkit-mask-image:none;mask-image:none}}
/* magazine covers fade out at the edge so the cut-off cover reads as "scroll for more" */
.covers{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
/* reach figures never break mid-number */
.stat b{white-space:nowrap;font-size:clamp(2.1rem,1.4rem + 2.6vw,3.5rem)}
/* professional cards keep their text at the top */
.pro{align-content:start}
/* footer: tighter headline, 44px tap areas for links */
.f-top h2{line-height:1.1}
@media(max-width:899px){.f-cols a{min-height:44px}}
.f-base a{display:inline-block;padding:14px 4px;margin:-14px 0}

/* ===== round 6: type, hover, logos, ticker, language, header styles ===== */
/* headings in Neue Montreal (stand-in Inter Tight) with italic serif accents */
h1,h2,h3,h4{font-family:var(--font-voice)}
.h2,.pagehead h1,.hero h1,.prog-sec h2,.cta-band h2,.offer h2{font-weight:500;letter-spacing:-.035em}
.hero.photohead h1{font-weight:500;letter-spacing:-.045em;line-height:.98}
h1 em,h2 em,h3 em{font-family:var(--font-accent);font-style:italic;font-weight:400;letter-spacing:-.02em;color:var(--accent-text);padding-right:.04em}
.photohead h1 em,.photoband h2 em,.magazine h2 em,.pros h2 em,footer h2 em,.dark-band h2 em,.plum-band h2 em,.plum-hero h1 em,.mast-hero h1 em{color:var(--sun)}
.pfa h2 em,.cta-band h2 em{color:#12736E}
.partner .card h2 em{color:var(--accent-text)}
.hero h1 .hl::after{display:none}
/* hover goes lighter, press goes darker */
.btn,.talk,.door,.story,.tab,.chip,.hcard,.pro,a.card,button.card,.step a,.prog-list a,.cover,.edition,.logo-tile,.nav-item>button,.tlink{transition:filter .18s var(--ease),opacity .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}
.btn:hover,.talk:hover{filter:brightness(1.08) saturate(1.04)}
.btn:active,.talk:active{filter:brightness(.88);transform:scale(.98)}
.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn-ghost:active{background:rgba(22,25,54,.18)}
.story .art img,.ways-img img,.ph-art img{transition:opacity .25s var(--ease),transform .5s var(--ease)}
.story:hover .art img{opacity:.86;transform:scale(1.03)}
.story:active{filter:brightness(.94)}
.hero.photohead .door:active,.helpbox.photoband .hcard:active{background:rgba(22,25,54,.6)}
.tab:hover,.chip:hover{background:color-mix(in srgb,var(--chip) 70%,var(--teal-light))}
.tab:active,.chip:active{filter:brightness(.9)}
a.card:active,button.card:active,.pro:active,.step a:active,.prog-list a:active,.hcard:active{filter:brightness(.94)}
.cover:hover,.edition:hover .cover{opacity:.9}
.tlink:hover{opacity:.8}.tlink:active{opacity:1;filter:brightness(.8)}
/* partner logos: greyscale, colour on hover */
.logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;flex:1;min-width:0}
.logo-tile{height:92px;background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;padding:10px;overflow:hidden}
.logo-tile img{max-height:70px;max-width:100%;object-fit:contain;filter:grayscale(1) contrast(1.05);opacity:.62;transition:filter .3s var(--ease),opacity .3s var(--ease),transform .3s var(--ease)}
.logo-tile:hover img,.logo-tile:focus-within img{filter:none;opacity:1;transform:scale(1.04)}
.logo-tile span{font:600 .9375rem/1.2 var(--font-voice);color:#6B6C72;text-align:center;letter-spacing:-.01em;transition:color .3s}
.logo-tile:hover span{color:#252A52}
.partners{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}
@media(min-width:900px){.partners{grid-template-columns:150px 1fr;gap:32px}.partners>p{padding-top:34px}}
.partners ul.logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.partners ul.logos li{font:inherit;opacity:1}
.logo-tile{height:96px;padding:12px 16px;display:flex;align-items:center;justify-content:center}
.logo-tile img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:scale(var(--s,1));filter:grayscale(1) contrast(1.25) brightness(.92);opacity:.85}
.logo-tile:hover img,.logo-tile:focus-within img,.logo-tile:focus img{filter:none;opacity:1;transform:scale(calc(var(--s,1) * 1.05))}
.logo-tile:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
body.hdr-c .drawer summary svg{width:22px;height:22px}
body.hdr-c .drawer .drawer-photo img{object-position:78% 50%}
/* scrolling headline ticker (latest stories) */
.ticker{background:var(--midnight);color:#fff;border-block:1px solid rgba(255,255,255,.08);position:relative}
.ticker .wrap{display:flex;align-items:center;gap:16px;min-height:56px}
.ticker .label{flex:none;display:inline-flex;align-items:center;gap:8px;font:600 .75rem var(--font-voice);letter-spacing:.16em;text-transform:uppercase;color:var(--sun)}
.ticker .label i{width:8px;height:8px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 4px rgba(252,216,0,.2)}
.ticker .track-wrap{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 92%,transparent)}
.ticker .track{display:flex;width:max-content;animation:tick 60s linear infinite}
.ticker:hover .track,.ticker:focus-within .track,.ticker.paused .track{animation-play-state:paused}
.ticker .track a{display:inline-flex;align-items:center;gap:12px;padding:0 28px 0 0;min-height:44px;color:#E6E7F0;text-decoration:none;font:500 1rem var(--font-voice);white-space:nowrap}
.ticker .track a b{font:400 1rem var(--font-accent);font-style:italic;color:var(--teal-light)}
.ticker .track a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.ticker .track a::after{content:"";width:6px;height:6px;background:var(--sun);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);margin-left:16px}
.ticker .pause{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;display:grid;place-items:center}
@keyframes tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker .track{animation:none}.ticker .track-wrap{overflow-x:auto}}
/* language dropdown */
.lang{position:relative}
.lang>button{background:none;border:0;color:#fff;font:600 .8125rem var(--font-body);display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px}
.lang>button svg.globe{color:var(--teal-light)}
.lang ul{position:absolute;right:0;top:calc(100% + 4px);z-index:60;list-style:none;margin:0;padding:6px;min-width:190px;border-radius:14px;background:rgba(28,32,64,.86);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.16);box-shadow:0 20px 40px -20px rgba(0,0,0,.6)}
.lang li button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border:0;border-radius:10px;background:none;color:#E6E7F0;font:500 .9375rem var(--font-voice);text-align:left}
.lang li button:hover{background:rgba(255,255,255,.1)}
.lang li button[aria-checked="true"]{color:#fff}
.lang li button[aria-checked="true"]::after{content:"✓";color:var(--sun)}
.lang li small{color:#A9ADC8;font-size:.75rem}
.lang ul{max-height:min(70vh,460px);overflow-y:auto;overscroll-behavior:contain}
.lang li.lang-more{padding:10px 12px 6px;font:400 .75rem/1.4 var(--font-body);color:#A9ADC8;border-top:1px solid rgba(255,255,255,.12);margin-top:4px}
[dir="rtl"] .lang ul{right:auto;left:0}
[dir="rtl"] .btn .arr svg,[dir="rtl"] .door + .door svg{transform:scaleX(-1)}
[dir="rtl"] .hero.photohead .wrap{justify-items:start}
[dir="rtl"] .photohead::before{background:
  linear-gradient(180deg,rgba(22,25,54,.72) 0,rgba(22,25,54,.12) 30%,rgba(22,25,54,0) 45%),
  linear-gradient(0deg,rgba(22,25,54,.9) 0,rgba(22,25,54,.55) 40%,rgba(22,25,54,.08) 72%),
  linear-gradient(270deg,rgba(22,25,54,.62) 0,rgba(22,25,54,0) 62%)}
[dir="rtl"] .hero.photohead .ph-bg img{transform:scaleX(-1)}
.util .meta{display:flex;align-items:center;gap:16px}
.util .meta .util-reach{display:none}
@media(min-width:900px){.util .meta .util-reach{display:inline}}
.sw-note{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:85;padding:12px 18px;border-radius:999px;font:500 .875rem var(--font-voice);max-width:calc(100% - 32px)}
/* header styles: A classic (default) · B floating glass pill · C minimal with full-screen menu */
:root{--hdr-h:73px}
.photohead{margin-top:calc(var(--hdr-h) * -1)}
body.hdr-b header.site,body.hdr-b header.site:not(.over){background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding-top:8px}
body.hdr-b header.site .wrap{min-height:64px;margin-top:0;border-radius:999px;padding-left:20px;padding-right:10px;max-width:1240px;width:calc(100% - 32px);
  background:color-mix(in srgb,var(--surface) 72%,transparent);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);box-shadow:0 18px 40px -24px rgba(22,25,54,.45)}
body.hdr-b header.site.over .wrap{background:rgba(22,25,54,.28);border-color:rgba(255,255,255,.22)}
body.hdr-c header.site nav.main{display:none}
body.hdr-c .burger{display:inline-flex;width:auto;gap:8px;padding:0 16px;border-radius:999px;font:500 .9375rem var(--font-voice)}
body.hdr-c .burger::after{content:"Menu"}
body.hdr-c header.site .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
body.hdr-c header.site .logo{grid-column:2;margin:0}
body.hdr-c header.site .talk{grid-column:3;justify-self:end;grid-row:1}
body.hdr-c header.site .burger{grid-column:1;grid-row:1;justify-self:start}
body.hdr-c .drawer{background:#161936;color:#E6E7F0;display:grid;align-content:start}
@media(min-width:1024px){body.hdr-c .drawer:not([hidden]){grid-template-columns:1.2fr .8fr;column-gap:64px;padding:32px 80px}}
body.hdr-c .drawer .top{grid-column:1/-1}
body.hdr-c .drawer summary{color:#fff;font:500 clamp(1.75rem,1.2rem + 2vw,3rem)/1.2 var(--font-voice);min-height:76px;letter-spacing:-.03em}
body.hdr-c .drawer details{border-color:rgba(255,255,255,.12)}
body.hdr-c .drawer details a{color:#C9CBDA;font-size:1.125rem}
body.hdr-c .drawer .x{color:#fff;border-color:rgba(255,255,255,.3)}
body.hdr-c .drawer .drawer-photo{display:none}
@media(min-width:1024px){body.hdr-c .drawer .drawer-photo{display:block;grid-column:2;grid-row:2 / span 2;border-radius:24px;overflow:hidden;min-height:520px;position:relative}
  body.hdr-c .drawer .drawer-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}}
.drawer .drawer-photo{display:none}
@media(min-width:1180px){body.hdr-c .burger{display:inline-flex}}
.hdr-switch{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(68px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface);border:1.5px solid var(--text-strong);box-shadow:0 8px 20px -10px rgba(0,0,0,.4)}
.hdr-switch span{font:500 .75rem var(--font-voice);color:var(--muted);align-self:center;padding:0 6px 0 10px}
.hdr-switch button{min-width:52px;padding:0 10px;min-height:36px;border-radius:999px;border:0;background:transparent;color:var(--text-strong);font:600 .8125rem var(--font-voice)}
.hdr-switch button[aria-pressed="true"]{background:var(--midnight);color:#fff}
:root[data-theme="dark"] .hdr-switch button[aria-pressed="true"]{background:var(--sun);color:#252A52}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hdr-switch button[aria-pressed="true"]{background:var(--sun);color:#252A52}}

/* ===== brand patterns on plain colour fields (Brand Book 07 · Patterns & textures)
   "Conversation field" = rows of open bubbles; "Open ring" = the logo's front bubble.
   Flat, behind content, densest at one edge and faded out before any text. One pattern per section. */
:root{
  --bubbles:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72'%3E%3Cg fill='none' stroke='%23000' stroke-width='2.2'%3E%3Ccircle cx='18' cy='18' r='7'/%3E%3Ccircle cx='54' cy='54' r='7'/%3E%3C/g%3E%3Cg fill='%23000'%3E%3Cpath d='M12.4 22.4l-2.9 4.6 5.2-1.7z'/%3E%3Cpath d='M48.4 58.4l-2.9 4.6 5.2-1.7z'/%3E%3C/g%3E%3C/svg%3E");
  --ring:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath d='M58 30A80 80 0 1 1 30 142' fill='none' stroke='%23000' stroke-width='15' stroke-linecap='round'/%3E%3C/svg%3E");
}
.pfa,.pros,.reach,footer,.cta-band,.dark-band,.plum-band,.pagehead:not(.photohead),.mast-hero{position:relative;isolation:isolate;overflow:hidden}
.pfa::before,.pros::before,footer::before,.cta-band::before,.dark-band::before,.plum-band::before,.mast-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-color:var(--pat-c,#52C3BD);opacity:var(--pat-o,.2);
  -webkit-mask:var(--bubbles) 0 0/72px 72px repeat,linear-gradient(var(--pat-dir,90deg),transparent 42%,#000 92%);-webkit-mask-composite:source-in;
  mask:var(--bubbles) 0 0/72px 72px repeat,linear-gradient(var(--pat-dir,90deg),transparent 42%,#000 92%);mask-composite:intersect}
footer{--pat-c:#52C3BD;--pat-o:.2}
.pros{--pat-c:#FCD800;--pat-o:.12;--pat-dir:200deg}
.pfa{--pat-c:#252A52;--pat-o:.1;--pat-dir:270deg}
.cta-band{--pat-c:#252A52;--pat-o:.12}
.dark-band{--pat-c:#93D9D5;--pat-o:.16}
.plum-band{--pat-c:#FCD800;--pat-o:.1}
.mast-hero{--pat-c:#93D9D5;--pat-o:.14;--pat-dir:270deg}
.reach::before,.pagehead:not(.photohead)::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(520px,70vw);aspect-ratio:1;right:-120px;top:50%;transform:translateY(-50%);
  background-color:var(--ring-c,#252A52);opacity:var(--ring-o,.06);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.pagehead:not(.photohead){--ring-c:#52C3BD;--ring-o:.28}
@media(max-width:700px){.reach::before,.pagehead:not(.photohead)::before{right:-45%;opacity:calc(var(--ring-o,.06) * .7)}}

/* ===== header B, white: a solid white floating pill on every page and over every photo ===== */
body.hdr-b header.site .wrap,body.hdr-b header.site.over .wrap{background:rgba(255,255,255,.96);border:1px solid rgba(37,42,82,.08);box-shadow:0 18px 44px -24px rgba(22,25,54,.4);color:#252A52}
body.hdr-b header.site .nav-item>button,body.hdr-b header.site.over .nav-item>button{color:#252A52}
body.hdr-b header.site .nav-item>button:hover,body.hdr-b header.site .nav-item>button[aria-expanded="true"],body.hdr-b header.site.over .nav-item>button:hover{background:#F1F3F2}
body.hdr-b header.site .burger,body.hdr-b header.site.over .burger{color:#252A52;border-color:#D9D8D2}
body.hdr-b header.site.over .logo img{filter:none}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body.hdr-b header.site .wrap{background:#fff}}

/* ===== footer bottom bar: legal on one end, social icons on the other ===== */
.f-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;border-top:1px solid #2A2F5E;padding-top:20px;margin-top:8px}
.f-bottom p{max-width:62ch}
.social{display:flex;gap:8px;flex-wrap:wrap}
.social a{width:44px;height:44px;border-radius:50%;border:1px solid rgba(233,244,242,.28);display:grid;place-items:center;color:#E6E7F0;text-decoration:none;margin:0;padding:0}
.social a svg{width:18px;height:18px}
.social a:hover{background:var(--sun);border-color:var(--sun);color:#252A52}
.social a:active{filter:brightness(.9)}
.f-base{border-top:0;padding-top:0}

/* ===== LOOK: WHITE (predominantly white, single light theme by design) ===== */
.hero-white{display:none}
body.look-white{
  --bg:#FFFFFF; --surface:#FFFFFF; --surface-quiet:#F4F8F7; --text-strong:#252A52; --text:#45464A; --muted:#62646A;
  --line:#E3E7E6; --accent-text:#12736E; --chip:#FFFFFF; --focus:#12736E; --error:#C93838; --shadow:0 1px 2px rgba(22,25,54,.05);
  color-scheme:light;background:#fff}
/* the white look keeps the full-bleed photo hero on top (the collage hero stays available but unused) */
.hw-grid{display:grid;gap:40px;align-items:center;padding-block:40px 32px}
@media(min-width:1024px){.hw-grid{grid-template-columns:1.02fr .98fr;gap:56px;padding-block:64px 40px}}
.hw-copy h1{margin-top:16px;font-weight:500;font-size:clamp(2.6rem,1.2rem + 4.6vw,5.25rem);line-height:.98;letter-spacing:-.05em;color:#252A52}
.hw-copy h1 em{color:#12736E}
.hw-copy .lead{font:400 clamp(1.0625rem,1rem + .35vw,1.2rem)/1.55 var(--font-voice);color:#62646A;margin-top:22px;max-width:40ch}
.hw-copy .lead span{display:block;font-size:.9375rem;margin-top:6px}
.hw-copy .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hw-copy .btn-ghost{color:#252A52;box-shadow:inset 0 0 0 1.5px #D5DAD9}
.hw-copy .btn-ghost:hover{background:#F4F8F7}
.hw-trust{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font:500 .875rem var(--font-voice);color:#62646A}
.hw-trust li{display:inline-flex;align-items:center;gap:8px}
.hw-trust li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
.hw-collage{position:relative;min-height:420px;max-width:620px;width:100%;justify-self:center}
@media(min-width:1024px){.hw-collage{min-height:560px}}
.hw-ph{position:absolute;overflow:hidden;box-shadow:0 30px 60px -32px rgba(22,25,54,.45);background:#EEF2F1}
.hw-ph img{width:100%;height:100%;object-fit:cover;display:block}
.hw-1{right:0;top:0;width:74%;height:78%;border-radius:36px 36px 36px 8px}
.hw-1 img{object-position:65% 50%}
.hw-2{left:0;top:6%;width:30%;aspect-ratio:1;border-radius:50% 50% 50% 8px;border:6px solid #fff}
.hw-3{left:6%;bottom:0;width:42%;height:46%;border-radius:28px;border:6px solid #fff}
.hw-3 img{object-position:50% 30%}
.hw-say{position:absolute;z-index:2;font:500 .875rem/1.3 var(--font-voice);padding:10px 14px;border-radius:16px 16px 16px 4px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#252A52;box-shadow:0 14px 30px -18px rgba(22,25,54,.5);max-width:220px}
.hw-say.me{background:#12736E;color:#fff;border-radius:16px 16px 4px 16px}
.hw-s1{right:6%;top:9%}
.hw-s2{right:12%;top:52%}
.hw-s3{left:46%;bottom:6%}
.hw-ring{position:absolute;right:-26px;bottom:8%;width:120px;height:120px;z-index:1;opacity:.9}
@media(max-width:520px){.hw-say{font-size:.75rem;padding:8px 10px;max-width:160px}.hw-ring{display:none}}
.hw-doors{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:48px}
.hw-door{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:16px 18px;border-radius:20px;background:#F4F8F7;border:1px solid #E3E7E6;color:#252A52;text-decoration:none;min-height:44px;transition:background-color .18s,transform .18s}
.hw-door:hover{background:#EEF9F8;transform:translateY(-3px)}
.hw-door:active{filter:brightness(.95)}
.hw-door .ic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#252A52}
.hw-door b{font:500 1rem/1.25 var(--font-voice)}
.hw-door small{display:block;font:400 .8125rem var(--font-body);color:#62646A;margin-top:2px}
@media(max-width:620px){.hw-doors{grid-template-columns:1fr}}
/* white look: colour fields become rounded inset panels on white; photo heads become framed photos */
body.look-white .ticker{background:#fff;color:#252A52;border-block:1px solid #E3E7E6}
body.look-white .ticker .track a{color:#45464A}
body.look-white .ticker .track a:hover{color:#252A52}
body.look-white .ticker .track a b{color:#12736E}
body.look-white .ticker .label{color:#12736E}
body.look-white .ticker .label i{background:#12736E;box-shadow:0 0 0 4px rgba(18,115,110,.15)}
body.look-white .ticker .pause{color:#252A52;border-color:#D5DAD9}
body.look-white .magazine,body.look-white .pfa,body.look-white .pros,body.look-white .partner.photoband,body.look-white .dark-band,body.look-white .plum-band,body.look-white .cta-band,body.look-white .mast-hero,body.look-white .plum-hero{margin:24px max(16px,env(safe-area-inset-left,0px));border-radius:32px}
body.look-white .magazine{background:#EEF9F8;color:#45464A}
body.look-white .magazine h2{color:#252A52}
body.look-white .magazine h2 em{color:#12736E}
body.look-white .magazine .eyebrow{color:#12736E}
body.look-white .magazine .btn-ghost{color:#252A52}
body.look-white .magazine.photoband::before{background:linear-gradient(90deg,rgba(238,249,248,.97) 0,rgba(238,249,248,.9) 45%,rgba(238,249,248,.6))}
body.look-white .arrows button{color:#252A52;border-color:#C9D3D1}
body.look-white .reach{background:#fff}
body.look-white .stat{border-color:#E3E7E6}
body.look-white .helpbox.photoband{background:#fff}
body.look-white .helpbox.photoband>.ph-bg,body.look-white .helpbox.photoband::before{display:none}
body.look-white .helpbox.photoband .head .eyebrow{color:#12736E}
body.look-white .helpbox.photoband .head h2{color:#252A52}
body.look-white .helpbox.photoband .head h2 em{color:#12736E}
body.look-white .helpbox.photoband .hcard{background:#F4F8F7;border-color:#E3E7E6;color:#252A52;-webkit-backdrop-filter:none;backdrop-filter:none}
body.look-white .helpbox.photoband .hcard b{color:#252A52}
body.look-white .helpbox.photoband .hcard span{color:#62646A}
body.look-white .helpbox.photoband .hcard:hover{background:#EEF9F8}
body.look-white .photohead:not(.hero){margin:16px max(16px,env(safe-area-inset-left,0px)) 0;border-radius:32px}
body.look-white .pagehead.photohead .wrap{padding-block:120px 64px}
body.look-white .youth-card{border-radius:32px}
body.look-white footer{margin:24px max(16px,env(safe-area-inset-left,0px)) max(16px,env(safe-area-inset-bottom,0px));border-radius:32px}
body.look-white .prog-list a:hover,body.look-white .prog-list a.on{background:#F4F8F7}
body.look-white .stories .story{border-color:#E3E7E6}
body.look-white .tab[aria-selected="true"]{background:#252A52;color:#fff;border-color:#252A52}
body.look-white .chip[aria-pressed="true"]{background:#252A52;color:#fff;border-color:#252A52}
body.look-white .card.danger{background:#161936}
body.look-white .partner.photoband .card{background:rgba(255,255,255,.66);color:#252A52}
body.look-white .partner .card h2 em{color:#12736E}
body.look-white .hdr-switch{background:#fff;color:#252A52;border-color:#252A52}
body.look-white .hdr-switch button[aria-pressed="true"]{background:#252A52;color:#fff}

/* ===== partner logos: one line, scrolling on its own; pauses on hover/focus; still for reduced motion ===== */
.partners{display:grid;grid-template-columns:1fr;gap:16px;justify-items:center;margin-top:48px}
.partners>p{padding-top:0;text-align:center}
.logo-strip{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logo-track{display:flex;width:max-content;animation:tick 38s linear infinite}
.logo-strip:hover .logo-track,.logo-strip:focus-within .logo-track{animation-play-state:paused}
.partners ul.logos{display:flex;flex-wrap:nowrap;gap:12px;padding-right:12px}
.partners ul.logos .logo-tile{flex:none;width:176px}
@media (prefers-reduced-motion:reduce){.logo-track{animation:none}.logo-strip{overflow-x:auto}}
/* reach statement and footnote centred */
.reach .head{text-align:center;margin-inline:auto;justify-items:center}
.reach .head .h2{max-width:22ch;margin-inline:auto}
.reach .footnote{text-align:center}

/* ===== LOOK: WARM PAPER (builds on the white look: same curves and photo hero, warm palette) =====
   Paper #FBF7F0 ground, warm white cards, Ember 700 #9F513B for italic accents and links (AA on paper),
   Midnight for text, the Kitenge dot (Brand Book 07) as a faint texture in a few panels. Single light theme. */
body.look-paper{
  --bg:#FBF7F0; --surface:#FFFDF8; --surface-quiet:#F5EEE2; --text-strong:#252A52; --text:#4A4643; --muted:#6B645C;
  --line:#E9DFCF; --accent-text:#9F513B; --chip:#FFFDF8; --focus:#9F513B;
  background:#FBF7F0}
body.look-paper h1 em,body.look-paper h2 em,body.look-paper h3 em{color:#9F513B}
body.look-paper .photohead h1 em,body.look-paper .pros h2 em,body.look-paper footer h2 em,body.look-paper .plum-band h2 em,body.look-paper .plum-hero h1 em{color:var(--sun)}
body.look-paper .pfa h2 em,body.look-paper .cta-band h2 em{color:#9F513B}
body.look-paper .ticker{background:#FBF7F0;border-color:#E9DFCF}
body.look-paper .ticker .label{color:#9F513B}
body.look-paper .ticker .label i{background:#F2784B;box-shadow:0 0 0 4px rgba(242,120,75,.18)}
body.look-paper .ticker .track a b{color:#9F513B}
body.look-paper .ticker .track a::after{background:#F2784B}
body.look-paper .reach,body.look-paper .helpbox.photoband{background:#FBF7F0}
body.look-paper .stat{border-color:#E9DFCF}
body.look-paper .stats{border-top-color:#252A52}
body.look-paper .logo-tile{border-color:#E9DFCF}
body.look-paper .magazine{background:#F3E7D3}
body.look-paper .magazine.photoband::before{background:linear-gradient(90deg,rgba(243,231,211,.97) 0,rgba(243,231,211,.9) 45%,rgba(243,231,211,.62))}
body.look-paper .magazine h2 em,body.look-paper .magazine .eyebrow{color:#9F513B}
body.look-paper .arrows button{border-color:#D9C9B0}
body.look-paper .helpbox.photoband .head .eyebrow,body.look-paper .helpbox.photoband .head h2 em{color:#9F513B}
body.look-paper .helpbox.photoband .hcard{background:#FFFDF8;border-color:#E9DFCF}
body.look-paper .helpbox.photoband .hcard:hover{background:#F5EEE2}
body.look-paper .stories .story,body.look-paper a.card,body.look-paper .card{border-color:#E9DFCF}
body.look-paper .story .cat{color:#9F513B}
body.look-paper .prog-list a:hover,body.look-paper .prog-list a.on{background:#FFFDF8}
body.look-paper .tab,body.look-paper .chip{border-color:#E2D5C1}
body.look-paper .tab:hover,body.look-paper .chip:hover{background:#F5EEE2}
body.look-paper .partner.photoband .card{background:rgba(255,253,248,.7)}
body.look-paper .partner .card h2 em{color:#9F513B}
body.look-paper .step a{background:#FFFDF8}
@media(min-width:900px){body.look-paper .step a{background:transparent}}
body.look-paper .hdr-switch button[aria-pressed="true"]{background:#9F513B;color:#fff}
body.look-paper .pagehead:not(.photohead){--ring-c:#F2784B;--ring-o:.22}
body.look-paper .reach{--ring-c:#F2784B;--ring-o:.12}
body.look-paper ::selection{background:#FCE1D7}
/* Kitenge dot texture: ember and sun dots, faded into one corner, never under text */
body.look-paper .magazine::after,body.look-paper .helpbox::after,body.look-paper .stories-band::after{content:"";position:absolute;z-index:0;pointer-events:none;right:0;top:0;width:min(46%,520px);height:100%;
  background-image:radial-gradient(circle,rgba(242,120,75,.32) 0 9px,transparent 10px),radial-gradient(circle,rgba(252,216,0,.55) 0 5px,transparent 6px);
  background-size:64px 64px,64px 64px;background-position:0 0,32px 32px;
  -webkit-mask-image:radial-gradient(120% 90% at 100% 0%,#000 0,transparent 62%);mask-image:radial-gradient(120% 90% at 100% 0%,#000 0,transparent 62%)}
body.look-paper .helpbox{position:relative;isolation:isolate;overflow:hidden}
body.look-paper .helpbox::after{z-index:-1;left:0;right:auto;width:min(40%,420px);-webkit-mask-image:radial-gradient(110% 90% at 0% 100%,#000 0,transparent 60%);mask-image:radial-gradient(110% 90% at 0% 100%,#000 0,transparent 60%);top:auto;bottom:0}
body.look-paper .magazine .wrap{position:relative;z-index:1}
body.look-paper footer{--pat-c:#F2784B;--pat-o:.16}

/* ===== PFA feature: the course name is the title ===== */
.pfa .pfa-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(37,42,82,.1);font-size:.75rem;letter-spacing:.16em}
.pfa .pfa-kicker span{font-weight:700}
.pfa h2.pfa-title{margin-top:18px;font-weight:500;font-size:clamp(2.6rem,1.3rem + 4.4vw,5rem);line-height:.95;letter-spacing:-.045em;color:var(--midnight);text-wrap:balance}
.pfa .pfa-hook{margin-top:16px;font:400 clamp(1.25rem,1rem + 1vw,1.75rem)/1.25 var(--font-voice);color:var(--midnight);letter-spacing:-.02em}
.pfa .pfa-hook em{font-family:var(--font-accent);font-style:italic;color:#12736E}
body.look-paper .pfa .pfa-hook em{color:#9F513B}
.pfa p.lead{margin-top:14px}

/* ===== inner pages: shared parts ===== */
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font:500 .8125rem var(--font-display);color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--text-strong);text-decoration:underline}
.pagehead .wrap{padding-block:56px 64px;display:grid;gap:18px}
@media(min-width:1024px){.pagehead .wrap{padding-block:80px 88px}}
.pagehead h1{font-weight:700;font-size:clamp(2.25rem,1.3rem + 3.8vw,4.25rem);line-height:1.03;letter-spacing:-.035em;max-width:18ch}
.pagehead .lead{font-family:var(--font-voice);font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);max-width:38rem}
.pagehead.split .wrap{grid-template-columns:1fr}
@media(min-width:1024px){.pagehead.split .wrap{grid-template-columns:1.1fr .9fr;align-items:center;gap:56px}}
.ph-art{aspect-ratio:5/4;max-width:100%;border-radius:24px;overflow:hidden;position:relative}
.ph-art svg{position:absolute;inset:0;width:100%;height:100%}
.ph-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
img.cover{object-fit:cover;display:block}
.ph-art .slot{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.88);color:#252A52;font:500 .75rem var(--font-display);letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:var(--r-sm)}
.grid2,.grid3,.grid4{display:grid;gap:16px}
@media(min-width:720px){.grid2,.grid3,.grid4{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:grid;gap:10px;align-content:start;color:inherit;text-decoration:none}
a.card,button.card{transition:border-color .1s,transform .2s var(--ease);font:inherit;text-align:left;cursor:pointer}
a.card:hover,button.card:hover{border-color:var(--text-strong);transform:translateY(-3px)}
.card .k{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.card h3{font-size:1.25rem;font-weight:500;line-height:1.25}
.card p{font-size:.9375rem}
.card .go{font:500 .9375rem var(--font-display);color:var(--accent-text);margin-top:4px}
.card .ic{width:48px;height:48px;display:grid;place-items:center;color:var(--midnight);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}
.card.danger{background:var(--ink);border-color:var(--ink);color:#DADCEA}
.card.danger h3{color:#fff}.card.danger .k,.card.danger .go{color:var(--sun)}
.numlist{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:2px solid var(--text-strong);counter-reset:nl}
.numlist li{counter-increment:nl;display:grid;grid-template-columns:52px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}
.numlist li::before{content:counter(nl,decimal-leading-zero);font:700 .9375rem var(--font-display);color:var(--accent-text);padding-top:3px}
.numlist b{display:block;font:500 1.125rem var(--font-display);color:var(--text-strong)}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:10px}
.checks li::before{content:"";width:18px;height:18px;margin-top:3px;background:var(--accent-text);clip-path:polygon(14% 52%,0 66%,38% 100%,100% 22%,86% 8%,38% 72%)}
.steps4{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:s4}
@media(min-width:900px){.steps4{grid-template-columns:repeat(4,1fr)}}
.steps4 li{counter-increment:s4;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:grid;gap:6px}
.steps4 li::before{content:counter(s4);width:40px;height:40px;display:grid;place-items:center;font:700 1rem var(--font-display);color:var(--midnight);background:var(--teal-light);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}
.steps4 b{font:500 1.125rem var(--font-display);color:var(--text-strong)}
.steps4 span{font-size:.9375rem;color:var(--muted)}
.cta-band{background:var(--sun);color:var(--midnight)}
.cta-band .wrap{padding-block:48px;display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
.cta-band h2{color:var(--midnight);font-size:clamp(1.5rem,1.1rem + 1.6vw,2.25rem);font-weight:700;max-width:24ch}
.cta-band p{margin-top:6px}
.dark-band{background:var(--midnight);color:#D7D9E6}
.dark-band h2,.dark-band h3{color:#fff}.dark-band .eyebrow{color:var(--teal-light)}
.dark-band .stat b{color:#fff}.dark-band .stats{border-color:#fff}.dark-band .stat{border-color:rgba(255,255,255,.15)!important}
.dark-band .stat small{color:#A9ADC8}
.quote-block{border-left:4px solid var(--sun);padding:4px 0 4px 20px;display:grid;gap:10px}
.quote-block p{font:400 1.25rem/1.5 var(--font-voice);color:var(--text-strong)}
.quote-block cite{font-style:normal;font-size:.875rem;color:var(--muted)}
.chiprow{display:flex;flex-wrap:wrap;gap:8px}
.chiprow a,.chiprow span{display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--chip);color:var(--text-strong);text-decoration:none;font:500 .9375rem var(--font-display)}
.chiprow a:hover{border-color:var(--text-strong)}
.jump{position:sticky;top:73px;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}
.jump .wrap{display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.jump a{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);color:var(--text-strong);text-decoration:none;font:500 .875rem var(--font-display)}
.prog-sec .wrap{display:grid;gap:40px;align-items:center}
@media(min-width:1024px){.prog-sec .wrap{grid-template-columns:1fr 1fr;gap:72px}.prog-sec.flip .ph-art{order:2}}
.prog-sec h2{font-size:clamp(1.75rem,1.2rem + 2.2vw,2.75rem);font-weight:700;line-height:1.08;margin:12px 0 14px}
.prog-sec .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.minis{display:grid;gap:12px;margin-top:20px}
@media(min-width:640px){.minis{grid-template-columns:1fr 1fr}}
.mini{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:16px}
.mini b{display:block;font:500 1rem var(--font-display);color:var(--text-strong)}
.mini span{font-size:.875rem}
.plum-page{--accent-text:#B88FCB}
.plum-hero{background:var(--plum);color:#E6DDEA;overflow:hidden}
.plum-hero h1{color:#fff}.plum-hero .eyebrow{color:var(--sun)}.plum-hero .crumbs,.plum-hero .crumbs a{color:#C9B8D2}
.plum-hero::after{content:"";position:absolute;right:-6%;bottom:-40px;width:44%;height:90px;background:var(--sun);transform:rotate(-7deg)}
.plum-hero .btn-ghost{color:#fff}
:root:not([data-theme="dark"]) .plum-page{--accent-text:#6B4A7B}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .plum-page{--accent-text:#D3B5E0}}
.plum-band{background:var(--plum);color:#E6DDEA}.plum-band h2,.plum-band h3,.plum-band b{color:#fff}.plum-band .eyebrow{color:var(--sun)}
.plum-band .checks li::before{background:var(--sun)}
.pricecards{display:grid;gap:12px;grid-template-columns:1fr 1fr;max-width:520px}
.pricecard{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;background:var(--surface)}
.pricecard b{display:block;font:700 1.75rem var(--font-display);color:var(--text-strong);font-variant-numeric:tabular-nums}
.pricecard span{font-size:.875rem;color:var(--muted)}
.dash{background:#2B1B34;border-radius:20px;padding:20px;color:#E6DDEA;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);display:grid;gap:12px;max-width:420px;justify-self:center;width:100%}
.dash .row1{display:flex;gap:12px;align-items:center}
.dash .av{width:48px;height:48px;border-radius:50%;background:var(--teal-light);display:grid;place-items:center;color:var(--midnight);font:700 1rem var(--font-display)}
.dash b{color:#fff;font-family:var(--font-display);font-weight:500}
.dash .tile{background:rgba(255,255,255,.07);border-radius:var(--r-md);padding:14px;display:flex;justify-content:space-between;font-size:.875rem}
.dash .tile strong{color:var(--sun);font-family:var(--font-display)}
.dash .ver{display:inline-flex;gap:6px;align-items:center;font-size:.75rem;color:var(--lime)}
/* hub */
.hub-grid{display:grid;gap:40px}
@media(min-width:1024px){.hub-grid{grid-template-columns:220px 1fr;gap:56px}}
.toc{display:none}
@media(min-width:1024px){.toc{display:block;position:sticky;top:96px;align-self:start}}
.toc p{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.toc a{display:block;padding:8px 0 8px 14px;border-left:2px solid var(--line);color:var(--text);text-decoration:none;font-size:.9375rem}
.toc a:hover,.toc a.on{border-color:var(--accent-text);color:var(--text-strong)}
.prose{max-width:42rem;display:grid;gap:18px;font-size:1.125rem;line-height:1.7}
.prose h2{font-size:1.625rem;font-weight:700;margin-top:24px;scroll-margin-top:96px}
.prose h3{font-size:1.1875rem;font-weight:500}
.prose ul{margin:0;padding-left:1.2em;display:grid;gap:6px}
.signs{display:grid;gap:12px}
@media(min-width:720px){.signs{grid-template-columns:repeat(3,1fr)}}
.signs div{background:var(--teal-50);border-radius:var(--r-md);padding:16px;font-size:.9375rem;color:#252A52}
.signs b{display:block;font:500 1rem var(--font-display);margin-bottom:6px}
.review{display:inline-flex;gap:8px;align-items:center;font:500 .8125rem var(--font-display);padding:6px 12px;border-radius:var(--r-pill);background:rgba(242,120,75,.15);color:#9F513B}
:root[data-theme="dark"] .review{color:#FFB79C}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .review{color:#FFB79C}}
.checkcard{background:var(--midnight);border-radius:var(--r-lg);color:#D7D9E6;border-radius:var(--r-lg);padding:24px;display:grid;gap:10px}
.checkcard h3{color:#fff;font-size:1.25rem;font-weight:500}.checkcard .k{color:var(--teal-light)}
.checkcard.glass{background:rgba(22,25,54,.36)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.checkcard.glass{background:rgba(22,25,54,.85)}}
.photohead .review{background:rgba(255,255,255,.16);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25)}
.inline-cta{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--sun);border-radius:var(--r-md);padding:20px;display:grid;gap:8px;font-size:1rem}
.inline-cta .k{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.inline-cta b{font:500 1.125rem var(--font-display);color:var(--text-strong)}
/* self-check */
.quiz{max-width:44rem;display:grid;gap:16px}
.q{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;margin:0}
.q legend{font:500 1.0625rem/1.4 var(--font-display);color:var(--text-strong);padding:0;margin-bottom:12px;float:left;width:100%}
.q .opts{clear:both;display:grid;gap:8px}
@media(min-width:720px){.q .opts{grid-template-columns:repeat(4,1fr)}}
.q label{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1.5px solid var(--line);border-radius:var(--r-md);cursor:pointer;font-size:.9375rem}
.q label:has(input:checked){border-color:var(--text-strong);background:var(--surface-quiet)}
.q input{accent-color:#252A52;width:18px;height:18px;margin:0}
.q.missing{border-color:var(--error)}
.result{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;display:grid;gap:14px;max-width:44rem}
.meter{height:12px;border-radius:12px;background:linear-gradient(90deg,#B9D546,#FCD800 45%,#F2784B 75%,#C93838);position:relative}
.meter i{position:absolute;top:-6px;width:4px;height:24px;border-radius:2px;background:var(--text-strong);transform:translateX(-2px)}
.meter-l{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}
/* story + editions */
.article-head{max-width:52rem}
.article-head h1{font-size:clamp(2rem,1.3rem + 3vw,3.5rem);line-height:1.06;font-weight:700;margin-top:14px}
.article-meta{font:500 .8125rem var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text)}
.article-hero{aspect-ratio:21/9;max-width:100%;border-radius:24px;overflow:hidden;position:relative;margin-top:32px}
.article-hero svg{position:absolute;inset:0;width:100%;height:100%}
.art-grid{display:grid;gap:40px}
@media(min-width:1100px){.art-grid{grid-template-columns:200px 1fr 240px;gap:48px}}
.side{display:grid;gap:12px;align-content:start}
@media(min-width:1100px){.side{position:sticky;top:96px;align-self:start}}
.side .card{padding:18px}
.share{display:flex;gap:8px;flex-wrap:wrap}
.share button{min-height:44px;padding:8px 14px;border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--surface);color:var(--text-strong);font:500 .875rem var(--font-display)}
.reflect{background:var(--teal-50);border-radius:var(--r-lg);padding:22px;color:#252A52}
.reflect b{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;display:block;margin-bottom:6px}
.editions{display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}
@media(min-width:900px){.editions{grid-template-columns:repeat(4,1fr)}}
.edition{text-decoration:none;color:inherit;display:grid;gap:10px}
.edition .cover{flex:none;width:100%}
.edition b{font:500 1rem var(--font-display);color:var(--text-strong)}
.edition span{font-size:.875rem;color:var(--muted)}
.lib{display:grid;gap:12px}
@media(min-width:720px){.lib{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.lib{grid-template-columns:repeat(3,1fr)}}
.book{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px}
.book .spine{aspect-ratio:2/3;border-radius:4px;max-width:100%}
.book b{display:block;font:500 1rem var(--font-display);color:var(--text-strong)}
.book span{font-size:.8125rem;color:var(--muted)}
.mast-hero{background:var(--midnight);color:#D7D9E6;overflow:hidden}
.mast-hero .wrap{display:grid;gap:40px;padding-block:64px 80px;align-items:center}
@media(min-width:1024px){.mast-hero .wrap{grid-template-columns:1.1fr .9fr}}
.mast-hero h1{color:#fff;font:700 clamp(3.5rem,2rem + 7vw,7.5rem)/.9 var(--font-voice);letter-spacing:-.05em}
.mast-hero h1 small{display:block;font-size:.28em;letter-spacing:.3em;text-transform:uppercase;font-weight:500;color:var(--sun);margin-top:12px}
.mast-hero .btn-ghost{color:#fff}
.tilted{position:relative;height:340px;max-width:100%}
.tilted .cover{position:absolute;width:210px;max-width:60%}
.tilted .cover:first-child{left:8%;top:20px;transform:rotate(-8deg)}
.tilted .cover:last-child{right:8%;top:0;transform:rotate(6deg)}
/* about */
.facts{display:grid;gap:0;grid-template-columns:1fr 1fr;border-top:2px solid var(--text-strong);margin-top:32px}
@media(min-width:900px){.facts{grid-template-columns:repeat(4,1fr)}}
.facts div{padding:18px 16px 18px 0;border-bottom:1px solid var(--line)}
.facts dt{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:6px 0 0;font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.letter{display:grid;gap:32px}
@media(min-width:1024px){.letter{grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}}
.letter .prose p:first-of-type::first-letter{font:700 3.5em/.8 var(--font-display);float:left;margin:6px 10px 0 0;color:var(--accent-text)}
.portraits{display:flex;gap:16px}
.portrait-slot{flex:1;aspect-ratio:3/4;max-width:100%;border-radius:var(--r-lg);background:var(--surface-quiet);display:grid;place-items:center;text-align:center;font:500 .75rem var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:12px;position:relative}
.portrait-slot b{display:block;font-size:1.75rem;letter-spacing:0;color:var(--text-strong);margin-bottom:6px}
.mvp{display:grid;gap:16px}
@media(min-width:900px){.mvp{grid-template-columns:repeat(3,1fr)}}
.mvp div{border-top:4px solid var(--teal);padding-top:18px}
.mvp div:nth-child(2){border-color:var(--lime)}.mvp div:nth-child(3){border-color:var(--sun)}
.mvp b{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.mvp p{font:500 1.25rem/1.4 var(--font-display);color:var(--text-strong);margin-top:8px}
.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;margin-top:40px}
@media(min-width:900px){.timeline{grid-template-columns:repeat(4,1fr);border-top:2px solid rgba(255,255,255,.4)}}
.timeline li{padding:20px 20px 0 0;display:grid;gap:6px;font-size:.9375rem}
.timeline b{font:700 1.5rem var(--font-display);color:var(--sun)}
.leaders{display:grid;gap:24px}
@media(min-width:900px){.leaders{grid-template-columns:1fr 1fr}}
.leader{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:start}
.leader .portrait-slot{aspect-ratio:1;border-radius:50%;flex:none}
.leader .role{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text)}
.leader h3{font-size:1.375rem;font-weight:700;margin:4px 0 8px}
.leader blockquote{margin:12px 0 0;font:400 1rem/1.5 var(--font-display);color:var(--text-strong)}
.gov{display:grid;gap:12px;margin-top:32px}
@media(min-width:900px){.gov{grid-template-columns:repeat(4,1fr)}}
.gov div{background:var(--surface-quiet);border-radius:var(--r-md);padding:16px;font-size:.9375rem}
.gov b{display:block;font:500 1rem var(--font-display);color:var(--text-strong)}
.values{display:grid;gap:16px}
@media(min-width:720px){.values{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.values{grid-template-columns:repeat(3,1fr)}}
.value{padding:22px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);display:grid;gap:6px}
.value b{font:700 1.25rem var(--font-display);color:var(--text-strong)}
.value i{font-style:normal;font:500 1rem var(--font-display);color:var(--accent-text)}
.commit{display:grid;gap:0;counter-reset:c}
@media(min-width:900px){.commit{grid-template-columns:1fr 1fr;column-gap:48px}}
.commit div{counter-increment:c;display:grid;grid-template-columns:44px 1fr;gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
.commit div::before{content:counter(c,decimal-leading-zero);font:700 .875rem var(--font-display);color:var(--accent-text);padding-top:2px}
.commit b{display:block;font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.commit span{font-size:.9375rem}
.roadmap{display:grid;gap:16px}
@media(min-width:900px){.roadmap{grid-template-columns:repeat(3,1fr)}}
.roadmap div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}
.roadmap b{font:700 1.25rem var(--font-display);color:var(--text-strong)}
.roadmap ul{margin:12px 0 0;padding-left:1.1em;display:grid;gap:6px;font-size:.9375rem}
.news-list{display:grid;gap:0;border-top:2px solid var(--text-strong)}
.news-list a{display:grid;grid-template-columns:1fr auto;gap:12px;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.news-list a:hover b{text-decoration:underline}
.news-list b{font:500 1.125rem var(--font-display);color:var(--text-strong)}
.news-list span{font-size:.875rem;color:var(--muted);white-space:nowrap}
/* contact */
.contact-grid{display:grid;gap:40px}
@media(min-width:1024px){.contact-grid{grid-template-columns:1.2fr .8fr;gap:72px}}
.cform{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
@media(min-width:640px){.cform{padding:32px}}
.cform .field{margin:0 0 16px}
.consent{display:grid;grid-template-columns:auto 1fr;gap:12px;font-size:.9375rem;margin:4px 0 20px;align-items:start}
.consent input{width:20px;height:20px;accent-color:#252A52;margin-top:2px}
.direct{display:grid;gap:24px;align-content:start}
.direct div{display:grid;gap:4px}
.direct .k{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.direct b{font:500 1.125rem var(--font-display);color:var(--text-strong);user-select:all}
/* pop-up extras */
.sheet.wide{max-width:760px;padding:0;display:grid;overflow:hidden}
@media(min-width:760px){.sheet.wide{grid-template-columns:220px 1fr}}
.app-side{background:var(--plum);color:#E6DDEA;padding:24px;display:none}
@media(min-width:760px){.app-side{display:block}}
.app-side ol{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px;counter-reset:a}
.app-side li{counter-increment:a;display:flex;gap:10px;align-items:center;font-size:.875rem;opacity:.6}
.app-side li::before{content:counter(a);width:26px;height:26px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font:500 .75rem var(--font-display);flex:none}
.app-side li.on{opacity:1;color:#fff}.app-side li.on::before{background:var(--sun);border-color:var(--sun);color:var(--midnight)}
.app-side li.done{opacity:1}
.app-main{padding:28px 24px calc(28px + env(safe-area-inset-bottom,0px));overflow:auto;max-height:92vh}
@media(min-width:640px){.app-main{padding:32px}}
.two{display:grid;gap:0 12px}
@media(min-width:560px){.two{grid-template-columns:1fr 1fr}}
.pick{display:flex;flex-wrap:wrap;gap:8px}
.pick label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid var(--line);border-radius:var(--r-pill);cursor:pointer;font-size:.9375rem}
.pick label:has(input:checked){border-color:var(--text-strong);background:var(--surface-quiet)}
.pick input{accent-color:#252A52}
.reviewlist{display:grid;gap:8px;font-size:.9375rem;background:var(--surface-quiet);border-radius:var(--r-md);padding:16px;margin-bottom:16px}
.reviewlist div{display:flex;justify-content:space-between;gap:12px}
.reviewlist dt{color:var(--muted)}.reviewlist dd{margin:0;color:var(--text-strong);text-align:right}

/* build notes */
.devtoggle{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:70;background:var(--surface);color:var(--text-strong);border:1.5px solid var(--text-strong);border-radius:var(--r-pill);padding:10px 16px;min-height:44px;font:500 .8125rem var(--font-display);display:flex;gap:8px;align-items:center;box-shadow:0 8px 20px -10px rgba(0,0,0,.4)}
.devtoggle[aria-pressed="true"]{background:var(--ember);border-color:var(--ember);color:var(--midnight)}
.build{display:none}
body.dev [data-build]{outline:2px dashed var(--ember);outline-offset:-2px}
body.dev .build{display:block;position:absolute;z-index:30;left:8px;top:8px;max-width:min(560px,calc(100% - 16px));background:var(--ember);color:#252A52;font:500 .75rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;padding:10px 12px;border-radius:var(--r-sm)}
body.dev .build b{font-family:var(--font-display);display:block;font-size:.8125rem;margin-bottom:2px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}

/* ===== CONVO E-THERAPY: light and warm on the shared Photo look. Colour comes in bands (deep teal, light teal, sunbeam),
   photos carry the emotion, and the brand bubble pattern sits on the plain colour fields. Single light theme by design. ===== */
body.et-light{
  --bg:#F7F6F2; --surface:#FFFFFF; --surface-quiet:#F1F0EB; --text-strong:#252A52; --text:#45464A; --muted:#666769;
  --line:#E2E1DB; --accent-text:#12736E; --chip:#FFFFFF; --focus:#12736E; --error:#C93838; --shadow:0 1px 2px rgba(22,25,54,.06);
  color-scheme:light;background:#F7F6F2;color:#45464A}
.logo .prod{font:500 .875rem/1 var(--font-voice);padding-left:12px;margin-left:10px;border-left:1.5px solid #D9D8D2;color:#12736E;white-space:nowrap}
.head.center{text-align:center;margin-inline:auto;justify-items:center}
.et-band{position:relative;isolation:isolate;overflow:hidden}
.et-band::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-color:var(--pat-c,#52C3BD);opacity:var(--pat-o,.18);
  -webkit-mask:var(--bubbles) 0 0/72px 72px repeat,linear-gradient(var(--pat-dir,90deg),transparent 45%,#000 95%);-webkit-mask-composite:source-in;
  mask:var(--bubbles) 0 0/72px 72px repeat,linear-gradient(var(--pat-dir,90deg),transparent 45%,#000 95%);mask-composite:intersect}
.et-ring{position:relative;isolation:isolate;overflow:hidden}
.et-ring::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(520px,70vw);aspect-ratio:1;left:-140px;top:40px;background-color:var(--ring-c,#93D9D5);opacity:var(--ring-o,.5);-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
/* hero */
.et-hero .hero-copy h1{font-size:clamp(2.4rem,1.2rem + 3.6vw,4.25rem);max-width:15ch}
.et-hero .wrap{position:relative}
.et-reassure{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.et-reassure li{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.28);color:#fff;font:500 .8125rem var(--font-voice)}
.et-reassure li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--sun)}
.et-bubbles{display:none}
@media(min-width:1024px){.et-bubbles{display:grid;gap:12px;position:absolute;right:max(80px,env(safe-area-inset-right,0px));bottom:120px;width:300px}}
.et-say{font:500 .9375rem/1.35 var(--font-voice);padding:12px 16px;border-radius:18px 18px 18px 4px;background:rgba(255,255,255,.92);color:#252A52;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 14px 30px -18px rgba(0,0,0,.6);justify-self:start;max-width:260px}
.et-say.me{justify-self:end;background:rgba(18,115,110,.92);color:#fff;border-radius:18px 18px 4px 18px}
/* topics: white field, bubbles at the edge, chips with a brand-colour dot */
.et-topicband{background:#fff;--pat-c:#52C3BD;--pat-o:.22}
.et-topics{justify-content:center;max-width:900px;margin-inline:auto}
.et-topics button{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:8px 20px 8px 14px;border-radius:999px;border:1.5px solid #E2E1DB;background:#fff;color:#252A52;font:500 .9375rem var(--font-voice);cursor:pointer;transition:background-color .18s,border-color .18s,transform .18s var(--ease)}
.et-topics button::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--dot,#52C3BD)}
.et-topics button:nth-child(5n+2){--dot:#FCD800}.et-topics button:nth-child(5n+3){--dot:#F2784B}.et-topics button:nth-child(5n+4){--dot:#B9D546}.et-topics button:nth-child(5n+5){--dot:#252A52}
.et-topics button:hover{background:#EEF9F8;border-color:#52C3BD;transform:translateY(-2px)}
.et-topics button:active{background:#DDF1EF;transform:none}
/* ways: photo cards */
.et-ways{display:grid;gap:16px}
@media(min-width:720px){.et-ways{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.et-ways{grid-template-columns:repeat(4,1fr)}}
.et-way{display:grid;grid-template-rows:auto 1fr;border-radius:22px;overflow:hidden;background:#fff;border:1px solid #E2E1DB;text-decoration:none;color:inherit;text-align:left;font:inherit;padding:0;cursor:pointer;box-shadow:0 20px 40px -30px rgba(22,25,54,.35);transition:transform .2s var(--ease),box-shadow .2s}
.et-way:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(22,25,54,.45)}
.et-way:active{transform:none;filter:brightness(.97)}
.et-way-img{aspect-ratio:4/3;position:relative;overflow:hidden;display:block}
.et-way-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.et-way:hover .et-way-img img{transform:scale(1.04)}
.et-way-body{display:grid;gap:6px;padding:20px 20px 22px;align-content:start;border-top:4px solid var(--tag,#FCD800)}
.et-way:nth-child(2){--tag:#52C3BD}.et-way:nth-child(3){--tag:#F2784B}.et-way:nth-child(4){--tag:#B9D546}
.et-way-body b{font:500 1.25rem var(--font-voice);color:#252A52;letter-spacing:-.02em}
.et-way-body span{font-size:.9375rem}
.et-way-body .go{color:#12736E;font:500 .9375rem var(--font-voice);margin-top:6px}
/* how it works: deep teal colour band */
.et-teal{background:#12736E;color:#E3F4F2;--pat-c:#93D9D5;--pat-o:.2;--pat-dir:270deg}
.et-teal h2,.et-teal .h2{color:#fff}.et-teal h2 em{color:#FCD800}.et-teal .eyebrow{color:#FCD800}
.et-teal .steps4 li{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.et-teal .steps4 li::before{background:#FCD800}
.et-teal .steps4 b{color:#fff}.et-teal .steps4 span{color:#CDEBE8}
/* trust */
.et-trust .card{box-shadow:0 18px 36px -30px rgba(22,25,54,.35);border-color:#ECEBE6}
/* light-teal field for therapists */
.et-mint{background:#EEF9F8;--ring-c:#93D9D5;--ring-o:.55}
/* therapist cards */
.et-cards{display:grid;gap:16px}
@media(min-width:900px){.et-cards{grid-template-columns:repeat(3,1fr)}}
.tcard{background:#fff;border:1px solid #E2E1DB;border-radius:22px;padding:22px;display:grid;gap:14px;align-content:start;position:relative;box-shadow:0 20px 40px -32px rgba(22,25,54,.4)}
.tcard .sample{position:absolute;right:16px;top:16px;font:500 .75rem var(--font-voice);color:#666769;border:1px dashed #CFCEC7;border-radius:8px;padding:2px 8px}
.tcard .who{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.mono{width:72px;height:72px;position:relative;display:grid;place-items:center;flex:none}
.mono span{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font:600 1.125rem var(--font-voice);color:#252A52}
.mono svg{position:absolute;inset:0;width:100%;height:100%}
.tcard h3{font-size:1.1875rem;font-weight:500;line-height:1.25}
.tcard .title{font-size:.875rem;color:#666769}
.badge-ok,.badge-trainee{display:inline-flex;align-items:center;gap:6px;font:500 .8125rem var(--font-voice);padding:4px 10px;border-radius:999px;width:max-content}
.badge-ok{background:#EEF6D6;color:#4F6410}
.badge-trainee{background:#FFF6C2;color:#6B5A00}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags span{font-size:.8125rem;padding:4px 10px;border-radius:999px;background:#EEF9F8;color:#12736E}
.tcard dl{display:grid;gap:6px;margin:0;font-size:.875rem;border-top:1px solid #ECEBE6;padding-top:12px}
.tcard dl div{display:flex;justify-content:space-between;gap:12px}
.tcard dt{color:#666769} .tcard dd{margin:0;color:#252A52;text-align:right;font-variant-numeric:tabular-nums}
.tcard .acts{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.tcard .why{font-size:.8125rem;color:#12736E;font-weight:600}
.tcard .rvcount{font-size:.8125rem;color:#12736E;font-weight:600}
/* verified feedback: sunbeam field */
.et-sunny{background:#FFF7CF;--pat-c:#F2784B;--pat-o:.14;--pat-dir:200deg}
.et-reviews{display:grid;gap:16px}
@media(min-width:900px){.et-reviews{grid-template-columns:repeat(3,1fr)}}
.rv{background:#fff;border-radius:22px;padding:24px;display:grid;gap:14px;align-content:space-between;box-shadow:0 20px 40px -32px rgba(22,25,54,.45);position:relative;margin:0}
.rv blockquote{margin:0;font:400 1.125rem/1.5 var(--font-voice);color:#252A52;letter-spacing:-.01em}
.rv blockquote::before{content:"“";display:block;font:500 3rem/0.6 var(--font-accent);color:#F2784B;margin-bottom:10px}
.rv figcaption{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:.8125rem;color:#666769}
.verified{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#E3F4F2;color:#12736E;font:600 .75rem var(--font-voice)}
.verified svg{width:14px;height:14px}
.rv .sample{font:500 .6875rem var(--font-voice);color:#666769;border:1px dashed #CFCEC7;border-radius:8px;padding:1px 6px}
.et-rvnote{margin-top:18px;font-size:.875rem;color:#5A5B5E;max-width:52rem}
/* fees */
.et-fees-grid{display:grid;gap:40px}
@media(min-width:1024px){.et-fees-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:start}}
.et-prices{display:grid;gap:10px}
.et-prices div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #E2E1DB}
.et-prices div:nth-child(1){background:#EEF6D6;border-color:#DDEBB2}
.et-prices div:nth-child(3){background:#FFF6C2;border-color:#F4E48A}
.et-prices b{font:500 1.375rem var(--font-voice);color:#252A52;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.02em}
.et-prices span{color:#5A5B5E;font-size:.9375rem;text-align:right}
.et-abroad{position:relative;margin-top:16px;border-radius:22px;overflow:hidden;min-height:220px;display:grid;align-items:end}
.et-abroad img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.et-abroad .glass{position:relative;margin:14px;padding:16px 18px;border-radius:16px;display:grid;gap:4px}
.et-abroad .glass span{font-size:.9375rem}
.faq details{border-bottom:1px solid #E2E1DB}
.faq details:first-child{border-top:1px solid #E2E1DB}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:18px 0;min-height:44px;font:500 1.0625rem/1.4 var(--font-voice);color:#252A52}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:#12736E}
.faq summary .tg{flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid #D9D8D2;display:grid;place-items:center;transition:transform .32s var(--ease)}
.faq details[open] summary .tg{transform:rotate(45deg);background:#FCD800;border-color:#FCD800;color:#252A52}
.faq details p{padding:0 44px 20px 0;max-width:40rem}
/* CTA + urgent */
.et-cta{padding-block:120px}
.urgent-band{background:#FDEDE6;border-top:4px solid #F2784B}
.urgent-band .wrap{display:grid;gap:18px;padding-block:36px}
@media(min-width:1024px){.urgent-band .wrap{grid-template-columns:1fr auto;align-items:center}}
.urgent-band h2{font-size:1.25rem;font-weight:500;color:#252A52}
.urgent-band p{color:#5A4A45;margin-top:6px;max-width:44rem}
.urgent-band .nums{display:flex;flex-wrap:wrap;gap:8px}
.urgent-band .nums a{display:inline-flex;align-items:center;min-height:48px;padding:8px 18px;border-radius:999px;background:#252A52;color:#fff;text-decoration:none;font:500 1rem var(--font-voice)}
.urgent-band .nums a:hover{background:#363C6E}
/* directory */

.et-dirhead .wrap{grid-template-columns:minmax(0,1fr);padding-block:56px 40px}
.et-dirhead .wrap>*{max-width:100%}
.et-dirhead h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem)}
.et-answers .btn{white-space:normal;text-align:left;height:auto}
.et-answers{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.et-answers span{display:inline-flex;align-items:center;min-height:36px;padding:4px 14px;border-radius:999px;background:#fff;border:1px solid #CFE9E6;font:500 .875rem var(--font-voice);color:#252A52}
.et-answers .tlink{min-height:36px}
.et-dir{display:grid;gap:24px}
@media(min-width:1024px){.et-dir{grid-template-columns:280px 1fr;gap:40px;align-items:start}}
.et-filters{background:#fff;border:1px solid #E2E1DB;border-radius:20px;padding:20px;display:grid;gap:4px}
@media(min-width:1024px){.et-filters{position:sticky;top:100px}}
@media(max-width:1023px){.et-filters[data-collapsed="true"]{display:none}}
.et-filters-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.et-filters-head b{font:500 1.125rem var(--font-voice);color:#252A52}
.et-filters .field{margin:0 0 12px;border:0;padding:0}
.et-filters .field>span,.et-filters legend{font:500 .875rem var(--font-voice);color:#252A52;margin-bottom:6px;display:block}
.et-filters input[type=search],.et-filters select{font:400 .9375rem var(--font-body);padding:10px 12px;min-height:44px;border-radius:12px;border:1.5px solid #E2E1DB;background:#F7F6F2;color:#252A52;width:100%}
.et-filters .pick label{min-height:40px;padding:6px 12px;font-size:.875rem}
.et-resultbar{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:16px}
.et-resultbar p{font:500 1rem var(--font-voice);color:#252A52}
.et-sort{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;color:#666769}
.et-sort select{min-height:40px;border-radius:999px;border:1.5px solid #E2E1DB;background:#fff;color:#252A52;padding:0 12px;font:500 .875rem var(--font-voice)}
.et-filter-btn{min-height:44px;padding:6px 18px}
@media(min-width:1024px){.et-filter-btn{display:none}}
.et-list{display:grid;gap:14px}
.et-list .tcard{grid-template-columns:1fr}
@media(min-width:760px){.et-list .tcard{grid-template-columns:1.2fr 1fr;align-items:start;column-gap:28px}.et-list .tcard dl{border-top:0;padding-top:0}.et-list .tcard .acts{grid-column:1/-1}}
.et-list .tcard .sample{top:auto;bottom:24px}
.et-empty{display:grid;gap:10px;justify-items:start;padding:28px;border-radius:20px;border:1px dashed #CFCEC7;background:#fff}
.et-empty b{font:500 1.125rem var(--font-voice);color:#252A52}
/* profile */
.et-prof{display:grid;gap:32px}
@media(min-width:1024px){.et-prof{grid-template-columns:1.2fr .8fr;gap:56px;align-items:start}}
.et-prof-top{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}
.et-prof-top .mono{width:120px;height:120px}.et-prof-top .mono span{width:100px;height:100px;font-size:1.75rem}
.et-prof h1{font-size:clamp(1.9rem,1.3rem + 2vw,2.75rem)}
.et-prof section{display:grid;gap:10px;margin-top:28px}
.et-prof section h2{font-size:1.25rem;font-weight:500}
.et-prof .rv{box-shadow:none;border:1px solid #E2E1DB}
.et-prof .rv blockquote{font-size:1rem}
.et-book{background:#fff;border:1px solid #E2E1DB;border-top:5px solid #FCD800;border-radius:22px;padding:22px;display:grid;gap:12px;box-shadow:0 24px 48px -34px rgba(22,25,54,.45)}
@media(min-width:1024px){.et-book{position:sticky;top:100px}}
.et-book b{font:500 1.25rem var(--font-voice);color:#252A52}
/* sheets (light) */
.et-sheet h2{font-weight:500;font-size:1.5rem;letter-spacing:-.02em}
.et-sheet .opts{display:grid;gap:10px;margin:18px 0}
.et-sheet .opt{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:14px 16px;min-height:56px;border:1.5px solid #E2E1DB;border-radius:14px;cursor:pointer;background:#fff}
.et-sheet .opt:hover{border-color:#93D9D5}
.et-sheet .opt:has(input:checked){border-color:#12736E;background:#EEF9F8}
.et-sheet .opt input{accent-color:#12736E;width:20px;height:20px;margin:0}
.et-sheet .opt b{display:block;font:500 1rem var(--font-voice);color:#252A52}
.et-sheet .opt span{font-size:.875rem;color:#666769}
.et-sheet .pick label:has(input:checked){border-color:#12736E;background:#EEF9F8}
.et-sheet .pick input,.et-sheet .consent input{accent-color:#12736E}
.et-sheet .chiprow button{min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid #E2E1DB;background:#fff;color:#252A52;font:500 .9375rem var(--font-voice);cursor:pointer}
.et-sheet .chiprow button:hover{border-color:#93D9D5}
.et-sheet .chiprow button[aria-pressed="true"]{background:#12736E;border-color:#12736E;color:#fff}
.et-sheet .chiprow{margin:16px 0}
.et-prog{display:flex;gap:6px;margin-bottom:20px}
.et-prog i{flex:1;height:4px;border-radius:4px;background:#ECEBE6}
.et-prog i.on{background:linear-gradient(90deg,#52C3BD,#B9D546)}
.et-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px}
.et-scale label{display:grid;justify-items:center;gap:6px;padding:12px 4px;border:1.5px solid #E2E1DB;border-radius:14px;cursor:pointer;text-align:center;font-size:.8125rem;color:#252A52;min-height:64px}
.et-scale label:has(input:checked){border-color:#12736E;background:#EEF9F8}
.et-scale input{accent-color:#12736E}
.et-safety{margin-top:14px;display:grid;gap:6px;padding:14px 16px;border-radius:14px;background:#FFF6C2;border:1.5px solid #E8C800;color:#3E3A20;font-size:.9375rem}
.et-safety b{color:#252A52;font:500 1rem var(--font-voice)}
.et-safety a{color:#252A52;font-weight:700}
.et-sheet .et-nav{margin-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.et-sheet .et-nav>span{display:none}
.et-danger-line{margin-top:16px;font-size:.8125rem;color:#666769;border-top:1px solid #ECEBE6;padding-top:12px}
.et-who{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin-bottom:12px}
.et-who b{font:500 1.0625rem var(--font-voice);color:#252A52;display:block}
.et-slots{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}
.et-slots label{position:relative}
.et-slots input{position:absolute;opacity:0}
.et-slots span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1.5px solid #E2E1DB;border-radius:999px;font:500 .9375rem var(--font-voice);color:#252A52;cursor:pointer;font-variant-numeric:tabular-nums}
.et-slots span:hover{border-color:#93D9D5}
.et-slots input:checked+span{background:#12736E;border-color:#12736E;color:#fff}
.et-slots input:focus-visible+span{outline:2px solid #12736E;outline-offset:2px}
.done-tick svg{width:84px;height:84px}
button.tlink{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:600}
.talk .t-short{display:none}
@media(max-width:559px){.talk .t-long{display:none}.talk .t-short{display:inline}.logo .prod{padding-left:8px;margin-left:6px;font-size:.8125rem}}
@media(max-width:419px){header.site .talk{display:none}}
/* ===== "you are in E-Therapy": framed photo banners. The main site's photo heads run edge to edge under the header;
   E-Therapy's sit inside a rounded window below it, with a glass place-marker chip. ===== */
.photohead.et-window{margin:12px clamp(10px,1.6vw,24px) 0;border-radius:28px;box-shadow:0 30px 60px -40px rgba(22,25,54,.55)}
.hero.photohead.et-window .wrap{min-height:clamp(540px,76vh,780px);padding-block:72px 48px}
@media(min-width:1024px){.hero.photohead.et-window .wrap{padding-block:88px 64px}}
.pagehead.photohead.et-window .wrap{padding-block:64px 48px}
@media(min-width:1024px){.pagehead.photohead.et-window .wrap{padding-block:96px 64px}}
.et-dirhead.et-window .wrap{min-height:clamp(380px,48vh,480px);align-content:end}
.et-slim.et-window .wrap{padding-block:40px 32px!important;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.et-slim.et-window .et-place{margin:0}
.et-slim.et-window .lead{color:#fff;font-size:1.125rem}
.et-place{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:0 0 18px;padding:7px 14px 7px 12px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;font:500 .8125rem var(--font-voice)}
.et-place svg{color:var(--sun);flex:none}
.et-place b,.et-place span{white-space:nowrap}
@media(max-width:479px){.et-place span{display:none}}
.et-place b{font-weight:600}
.et-place span{color:#DADCEA;padding-left:8px;border-left:1px solid rgba(255,255,255,.3)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.et-place{background:rgba(22,25,54,.6)}}
.photohead .et-answers span{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.photohead .et-answers .tlink{color:var(--sun)}
.photohead .et-answers>span:first-child{background:none;border:0;color:#DADCEA;backdrop-filter:none}
/* ===== E-Therapy hero: light mint field, headline arrives word by word, quick-start form on the right, teal ribbon marks the place ===== */
.et-hero2{background:#EEF9F8;--pat-c:#52C3BD;--pat-o:.28;--pat-dir:270deg}
.hero2-bg{position:absolute;inset:0;z-index:-3}
.et-hero2 .lead{color:#252A52!important}.et-hero2 .lead span{color:#3A3D52!important}.et-hero2 .ctas .tlink{color:#0B4F4B;font-weight:600}
.et-hero2 .lead,.et-hero2 .ctas .tlink{text-shadow:0 1px 12px rgba(255,255,255,.7)}
.hero2-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 55%;display:block;transform:scaleX(-1)}
.et-hero2:has(.hero2-bg){background:#EEF9F8}
.et-hero2 .hero2-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,246,242,.5) 0,rgba(247,246,242,.3) 40%,rgba(247,246,242,0) 70%)}
@media(max-width:1023px){.et-hero2 .hero2-bg::after{background:linear-gradient(180deg,rgba(247,246,242,.15) 0,rgba(247,246,242,.45) 45%,rgba(247,246,242,.15) 100%)}}
.et-hero2::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:min(620px,80vw);aspect-ratio:1;right:-180px;top:-140px;background-color:#93D9D5;opacity:.55;-webkit-mask:var(--ring) center/contain no-repeat;mask:var(--ring) center/contain no-repeat}
.et-hero2>.wrap{display:grid;gap:36px;padding-block:48px 56px;align-items:center}
@media(min-width:1024px){.et-hero2>.wrap{grid-template-columns:1.15fr .85fr;gap:64px;padding-block:72px 80px;min-height:clamp(560px,72vh,720px)}}
.et-hero2 h1{font-size:clamp(2.6rem,1.3rem + 4.6vw,5rem);font-weight:500;letter-spacing:-.045em;line-height:1;color:#252A52;max-width:12ch}
.et-hero2 .lead{font:400 clamp(1.0625rem,1rem + .35vw,1.25rem)/1.55 var(--font-voice);margin-top:22px;max-width:32rem;color:#45464A}
.et-hero2 .lead span{display:block;color:#666769;font-size:.9375rem;margin-top:6px}
.et-hero2 .ctas{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:28px}
.et-hero2 .et-place{background:#fff;border-color:#CFE9E6;color:#252A52;-webkit-backdrop-filter:none;backdrop-filter:none}
.et-hero2 .et-place svg{color:#12736E}
.et-hero2 .et-place span{color:#666769;border-left-color:#D9D8D2}
.et-hero2 .et-reassure li{background:#fff;border-color:#DDEFEC;color:#252A52;-webkit-backdrop-filter:none;backdrop-filter:none}
.et-hero2 .et-reassure li::before{background:#52C3BD}
@media(max-width:1023px){.et-hero2 .et-reassure{display:none}.et-hero2 .ctas{margin-top:20px}}
.h-c .w{display:inline-block;opacity:0;transform:translateY(.35em);animation:wIn .7s var(--ease) forwards;animation-delay:calc(var(--i) * 110ms + 150ms)}
.h-c .rot{font-family:var(--font-accent);font-style:italic;font-weight:500;color:#12736E;background:linear-gradient(transparent 68%,rgba(252,216,0,.7) 68%,rgba(252,216,0,.7) 92%,transparent 92%);padding:0 .06em}
.h-c .rot.swap{animation:wIn .55s var(--ease) both;animation-delay:0s}
@keyframes wIn{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.h-c .w{opacity:1;transform:none;animation:none}}
.hero2-side{position:relative}
.hero2-says{display:grid;gap:10px;margin-bottom:16px}
.hero2-says .et-say{box-shadow:0 14px 30px -18px rgba(22,25,54,.45)}
.hero2-says .et-say{max-width:280px}
@media(prefers-reduced-motion:no-preference){.hero2-says .et-say{opacity:0;animation:wIn .6s var(--ease) forwards;animation-delay:1.1s;transform:translateY(8px)}.hero2-says .et-say.me{animation-delay:1.9s}}
.et-quick{background:#fff;border-radius:24px;padding:26px 24px 22px;box-shadow:0 34px 70px -40px rgba(22,25,54,.5);border-top:5px solid #FCD800;display:grid;gap:2px;position:relative}
.et-quick h2{font-size:1.5rem;font-weight:500;letter-spacing:-.02em;margin:2px 0 6px}
.et-quick .field{margin:10px 0 4px;border:0;padding:0}
.et-quick .field>span,.et-quick legend{font:500 .875rem var(--font-voice);color:#252A52;margin-bottom:6px;display:block}
.et-quick select{font:400 1rem var(--font-body);padding:11px 12px;min-height:48px;border-radius:12px;border:1.5px solid #E2E1DB;background:#F7F6F2;color:#252A52;width:100%}
.et-quick select:hover{border-color:#93D9D5}
.field .pick input{min-height:0;padding:0;width:18px;height:18px;margin:0;flex:none}
.et-quick .pick{flex-wrap:nowrap;gap:8px}
.et-quick .pick label{display:inline-flex;align-items:center;gap:8px;flex:1;justify-content:center;min-height:44px;height:auto;padding:6px 12px;margin:0;font:500 .9375rem var(--font-voice);color:#252A52}
.et-quick .pick label:has(input:checked){border-color:#12736E;background:#EEF9F8}
.et-quick .pick input{accent-color:#12736E}
.et-quick .btn{justify-content:center;width:100%;margin-top:14px}
.qf-note{font-size:.8125rem;color:#666769;text-align:center;margin-top:10px}
.et-ribbon{background:#12736E;color:#E3F4F2}
.et-ribbon .wrap{display:flex;flex-wrap:nowrap;gap:10px 28px;align-items:center;min-height:56px;overflow-x:auto;scrollbar-width:none;font:500 .875rem var(--font-voice);white-space:nowrap}
.et-ribbon .wrap::-webkit-scrollbar{display:none}
.et-ribbon b{color:#FCD800;font-weight:600}
.et-ribbon span{display:inline-flex;align-items:center;gap:10px}
.et-ribbon span::before{content:"";width:6px;height:6px;border-radius:50%;background:#B9D546}
/* ===== one-line course title on desktop; frosted (translucent) cards on the right of photo banners ===== */
@media(min-width:1024px){
  .ac-hero>.wrap{grid-template-columns:1.05fr .95fr}
  .ac-flag h2{white-space:nowrap;font-size:min(1.625rem,2.05vw)}
  .ac-course.flag b{white-space:nowrap;font-size:min(1.25rem,1.42vw)}}
.ac-hero .ac-flag,.et-hero2 .et-quick{background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);border:1px solid rgba(255,255,255,.7);box-shadow:0 34px 70px -40px rgba(22,25,54,.45),inset 0 1px 0 rgba(255,255,255,.8)}
.ac-hero .ac-flag{border-top:5px solid #FCD800}
.et-hero2 .et-quick{border-top:5px solid #FCD800}
.ac-hero .ac-offer{background:rgba(251,247,240,.7)}
.ac-hero .ac-include li{background:rgba(255,255,255,.7)}
.et-hero2 .et-quick select{background:rgba(255,255,255,.85)}
.et-hero2 .et-quick .pick label{background:rgba(255,255,255,.6)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ac-hero .ac-flag,.et-hero2 .et-quick{background:rgba(255,255,255,.94)}}
/* ===== banners round 3 (from the reference designs) ===== */
.b-link{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:4px 0;min-height:44px;font:500 1.0625rem var(--font-voice);color:#252A52;text-decoration:none;border-bottom:2px solid #12736E;cursor:pointer}
.b-link:hover{color:#12736E}
.b-link.light{color:#fff;border-bottom:0}
.b-link.light:hover{color:#93D9D5}
/* E-Therapy home: deep teal + photo */
.b-et{position:relative;isolation:isolate;overflow:hidden;background:#0B4A4C;color:#E3F4F2}
.b-et-bg{position:absolute;inset:0;z-index:-3}
.b-et-bg img{width:100%;height:100%;object-fit:cover;object-position:72% 38%;display:block}
.b-et::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0B4A4C 0,#0B4A4C 30%,rgba(11,74,76,.86) 44%,rgba(11,74,76,.25) 62%,rgba(11,74,76,0) 76%)}
.b-et-glow{position:absolute;z-index:-1;left:44%;top:6%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(252,216,0,.55),rgba(252,216,0,0) 68%);filter:blur(10px)}
.b-et-curve{position:absolute;z-index:-1;left:42%;right:0;bottom:6%;width:58%;height:26%;pointer-events:none}
.b-et .wrap{position:relative;padding-block:72px 64px}
@media(min-width:1024px){.b-et .wrap{min-height:clamp(620px,80vh,820px);display:grid;align-content:center;padding-block:96px 80px}}
.b-et-copy{max-width:640px}
.b-et .eyebrow{color:#93D9D5;letter-spacing:.22em}
.b-et h1{font-size:clamp(3rem,1.2rem + 6vw,6.25rem);font-weight:600;letter-spacing:-.055em;line-height:.95;color:#FBF7F0;margin-top:22px}
.b-et h1 em{display:block;font-family:var(--font-accent);font-style:italic;font-weight:500;color:#93D9D5;letter-spacing:-.03em}
.b-et .lead{font:400 clamp(1.125rem,1rem + .4vw,1.375rem)/1.55 var(--font-voice);color:#F4F4F8;margin-top:26px;max-width:32rem}
.b-et-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:34px}
.b-et-ctas .vr{width:1px;height:44px;background:rgba(255,255,255,.3)}
.b-lock{display:flex;align-items:center;gap:10px;margin-top:22px;font-size:1rem;color:#CDE7E5}
.b-youth{display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:16px 0 6px;border-top:1px solid rgba(255,255,255,.22);border-bottom:2px solid #52C3BD;min-width:min(400px,100%);color:#fff;text-decoration:none;font:500 1.0625rem var(--font-voice)}
.b-youth:hover{color:#93D9D5}
@media(max-width:1023px){
  .b-et-bg img{object-position:68% 30%}
  .b-et::before{background:linear-gradient(180deg,rgba(11,74,76,.35) 0,rgba(11,74,76,.85) 38%,#0B4A4C 70%)}
  .b-et .wrap{padding-top:240px}
  .b-et-glow{left:auto;right:-60px;top:40px;width:200px;height:200px}
  .b-et-ctas .vr{display:none}.b-et-curve{display:none}}
/* Young people: mint + organic photos */
.b-yth{position:relative;isolation:isolate;overflow:hidden;background:#E8F6F3}
.b-yth-grid{display:grid;gap:36px;padding-block:56px 64px;align-items:center}
@media(min-width:1024px){.b-yth h1 em{white-space:nowrap}.b-yth-grid{grid-template-columns:1.12fr .88fr;gap:40px;padding-block:72px 88px;min-height:clamp(600px,76vh,780px)}}
.b-yth .eyebrow{color:#12736E;letter-spacing:.22em}
.b-yth h1{font-size:clamp(2.8rem,1rem + 4.4vw,5.25rem);font-weight:600;letter-spacing:-.055em;line-height:.96;color:#252A52;margin-top:20px}
.b-yth h1 em{display:inline-block;position:relative;font-family:var(--font-accent);font-style:italic;font-weight:500;color:#12736E;letter-spacing:-.03em;padding-bottom:.1em}
.b-yth h1 em::after{content:"";position:absolute;left:14%;right:12%;bottom:-.02em;height:.14em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 24' preserveAspectRatio='none'%3E%3Cpath d='M4 16C90 6 210 4 396 10c-120 2-250 6-392 14' fill='%23FCD800'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.b-yth .lead{font:400 clamp(1.0625rem,1rem + .35vw,1.3125rem)/1.55 var(--font-voice);color:#252A52;margin-top:24px;max-width:30rem}
.b-yth-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;margin-top:30px}
.b-small{margin-top:22px;font-size:1rem;line-height:1.6;color:#5A5B5E}
.b-yth-art{position:relative;height:clamp(340px,52vw,600px)}
.b-yth-art .sun{position:absolute;left:4%;top:0;width:44%;height:62%;background:#FCD800;border-radius:60% 40% 30% 70%/60% 50% 50% 40%}
.b-yth-art .mint{position:absolute;right:-12%;bottom:-6%;width:70%;height:55%;background:#BFE8E2;border-radius:50% 30% 40% 60%/50% 40% 60% 50%}
.b-yth-art .ph{position:absolute;left:8%;right:-6%;top:6%;bottom:8%;overflow:hidden;border-radius:46% 20% 30% 42%/34% 18% 40% 52%}
.b-yth-art .ph img,.b-yth-art .inset img{width:100%;height:100%;object-fit:cover;display:block}
.b-yth-art .ph img{object-position:60% 40%}
.b-yth-art .inset{position:absolute;left:0;bottom:2%;width:38%;aspect-ratio:1.15;overflow:hidden;border-radius:44% 56% 50% 50%/52% 46% 54% 48%;border:5px solid #fff;box-shadow:0 20px 40px -24px rgba(22,25,54,.5)}
.b-yth-art .inset img{object-position:28% 82%;transform:scale(2.2);transform-origin:28% 82%}
.b-yth-art .say{position:absolute;right:2%;top:8%;margin:0;background:#FFFBF2;color:#12736E;font:600 clamp(1.25rem,.9rem + 1.3vw,2rem)/1.05 "Caveat",cursive;padding:14px 24px 16px;border-radius:40px;transform:rotate(-6deg);box-shadow:0 14px 30px -18px rgba(22,25,54,.45)}
.b-yth-art .say::after{content:"";position:absolute;left:18%;bottom:-14px;border:9px solid transparent;border-top:16px solid #FFFBF2;border-left-width:4px;transform:skewX(-18deg)}
.b-yth-art .curve{position:absolute;left:30%;right:4%;bottom:0;height:16%;width:66%}
/* ===== spacing + banner type, shared across the three sites: one headline size for every banner (the convo.africa home size),
   a shorter home banner, and tighter gaps between blocks ===== */
:root{--banner-h1:clamp(2.6rem,1rem + 4vw,4.75rem)}
.band{padding-block:56px}
@media(min-width:1024px){.band{padding-block:80px}}
.band[style*="padding-top:0"]{padding-top:0!important}
.hero.photohead .wrap{min-height:clamp(520px,72vh,700px);align-content:center;padding-block:120px 48px}
@media(min-width:1024px){.hero.photohead .wrap{padding-block:128px 56px}}
.b-yth h1,.b-ac h1,.ac-pfa2 h1,.b-mc h1,.b-et2 h1,.b-et h1,.hero.photohead h1{font-size:var(--banner-h1)!important}
.b-yth-grid{padding-block:48px 56px}
@media(min-width:1024px){.b-yth-grid,.b-mc-grid{min-height:clamp(540px,68vh,680px);padding-block:56px 64px}.b-ac-main{min-height:clamp(560px,72vh,700px);padding-block:56px}.ac-pfa2>.pfa2-main{min-height:clamp(540px,68vh,680px);padding-block:56px 32px}}
.mc-sec{padding-block:clamp(56px,6vw,80px)}
.mc-quoteband{padding-block:clamp(48px,5vw,72px)}
/* E-Therapy home v4: deep teal, photo inside a speech bubble (reference design) */
.b-et2{position:relative;isolation:isolate;overflow:hidden;background:#0D5C5B;color:#E3F4F2}
.b-et2-grid{display:grid;gap:40px;padding-block:44px 56px;align-items:center}
@media(min-width:1024px){.b-et2-grid{grid-template-columns:1fr 1fr;gap:40px;padding-block:56px 64px;min-height:clamp(560px,70vh,700px)}}
.b-et2 .eyebrow{color:#7FD6D0;letter-spacing:.24em}
.b-et2 h1{font-size:var(--banner-h1);font-weight:600;letter-spacing:-.05em;line-height:.98;color:#FBF7F0;margin-top:18px}
.b-et2 h1 em{display:block;font-family:var(--font-accent);font-style:italic;font-weight:600;color:#FCD800;font-size:1.45em;line-height:.95;letter-spacing:-.03em}
.b-et2 .lead{font:400 clamp(1.0625rem,1rem + .4vw,1.375rem)/1.5 var(--font-voice);color:#F4F4F8;margin-top:22px;max-width:30rem}
.b-et2-sw{margin-top:12px;font:400 1.0625rem var(--font-voice);color:#7FD6D0}
.b-et2-ctas{display:flex;flex-wrap:wrap;gap:14px 18px;margin-top:28px}
.b-et2-ctas .btn{min-height:56px;padding-inline:28px 22px;font-size:1.0625rem}
.b-pill-out{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 26px;border-radius:999px;background:transparent;color:#fff;border:2px solid rgba(255,255,255,.8);font:500 1.0625rem var(--font-voice);cursor:pointer}
.b-pill-out:hover{background:#fff;color:#0D5C5B}
.b-et2-quick{display:flex;flex-wrap:wrap;align-items:center;margin-top:30px}
.b-et2-quick a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;color:#7FD6D0;text-decoration:none;font:500 1rem var(--font-voice)}
.b-et2-quick a:first-child{padding-left:0}
.b-et2-quick a+a{border-left:1px solid rgba(127,214,208,.4)}
.b-et2-quick a:hover{color:#fff}
.b-et2-art{position:relative;height:clamp(320px,46vw,560px)}
.b-et2-art .sun{position:absolute;right:-2%;top:-4%;width:58%;height:72%;background:#FCD800;border-radius:48% 52% 30% 70%/56% 40% 60% 44%}
.b-et2-art .outline{position:absolute;inset:-3% -1% -6% 4%;width:97%;height:109%;z-index:2;pointer-events:none}
.b-et2-art .ph{position:absolute;inset:4% 2% 0 0;z-index:1;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M12 2H88Q99 2 99 14V68Q99 80 88 80H34L8 98L16 80H12Q1 80 1 68V14Q1 2 12 2Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M12 2H88Q99 2 99 14V68Q99 80 88 80H34L8 98L16 80H12Q1 80 1 68V14Q1 2 12 2Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.b-et2-art .ph img{width:100%;height:100%;object-fit:cover;object-position:68% 35%;display:block}
.b-et2-art .pill{position:absolute;z-index:3;right:6%;bottom:22%;background:#FBF7F0;color:#0D5C5B;font:500 .9375rem var(--font-voice);padding:10px 18px;border-radius:999px;box-shadow:0 14px 30px -18px rgba(0,0,0,.5)}
@media(max-width:600px){.b-et2-art .pill{font-size:.8125rem;bottom:24%}}
/* ===== tighter rhythm (round 2): less space between sections and between the elements inside them ===== */
.band{padding-block:40px}
@media(min-width:1024px){.band{padding-block:56px}}
.head{margin-bottom:24px;gap:8px}
.head-row{margin-bottom:24px}
.head-row .head{margin-bottom:0}
.hero.photohead .wrap{min-height:clamp(460px,62vh,600px);gap:24px;padding-block:104px 40px}
@media(min-width:1024px){.hero.photohead .wrap{padding-block:108px 44px}}
.hero .ctas{margin-top:22px}
.hero .lead{margin-top:16px}
.pagehead .wrap{padding-block:40px 40px}
.pagehead.photohead .wrap{padding-block:120px 48px}
.helpbox.band{padding-block:56px!important}
.cta-band .wrap{padding-block:40px}
.et-cta{padding-block:72px}
.b-yth-grid,.b-mc-grid{padding-block:36px 44px}
@media(min-width:1024px){.b-yth-grid,.b-mc-grid{min-height:clamp(480px,60vh,600px);padding-block:44px 52px}.b-ac-main{min-height:clamp(500px,64vh,620px);padding-block:44px}.ac-pfa2>.pfa2-main{min-height:clamp(480px,60vh,600px);padding-block:44px 24px}.b-et .wrap{min-height:clamp(500px,64vh,640px);padding-block:56px 48px}}
.b-et .wrap{padding-block:48px 44px}
.mc-sec{padding-block:clamp(40px,4.5vw,64px)}
.mc-quoteband{padding-block:clamp(36px,4vw,56px)}
.mc-head-row{margin-bottom:28px}
.mc-qhead{margin-bottom:28px}
/* E-Therapy hook header: one tap on a feeling shows a matching therapist and their next free slot */
.b-hook h1{max-width:12ch}
.b-hook .lead b{color:#FCD800;font-weight:600}
.hk-feel{border:0;padding:0;margin:26px 0 0}
.hk-feel legend{font:500 1.0625rem var(--font-voice);color:#fff;margin-bottom:12px;padding:0}
.hk-chips{display:flex;flex-wrap:wrap;gap:8px;max-width:36rem}
.hk-chips button{min-height:46px;padding:8px 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font:500 .9375rem var(--font-voice);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color .18s,border-color .18s,transform .18s var(--ease)}
.hk-chips button:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}
.hk-chips button[aria-pressed="true"]{background:#FCD800;border-color:#FCD800;color:#252A52}
.hk-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:26px}
.hk-youth{margin:0;padding:6px 0;border-top:0;min-width:0}
.hk-card{position:relative;z-index:2;margin:0 16px 28px;background:rgba(255,255,255,.95);color:#45464A;border-radius:22px;padding:18px 20px;display:grid;gap:10px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:opacity .25s}
.hk-card.swap{animation:hkIn .35s var(--ease)}
@keyframes hkIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hk-card .say{font:italic 500 1.0625rem/1.4 var(--font-accent);color:#12736E;margin:0}
.hk-card .who{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}
.hk-card .mono{width:58px;height:58px}.hk-card .mono span{width:48px;height:48px;font-size:1rem}
.hk-card .who b{display:block;font:500 1.0625rem var(--font-voice);color:#252A52}
.hk-card .who small{font-size:.8125rem;color:#666769}
.hk-card .slot{display:flex;align-items:center;gap:8px;font:500 .9375rem var(--font-voice);color:#252A52}
.hk-card .slot::before{content:"";width:10px;height:10px;border-radius:50%;background:#25B35A;box-shadow:0 0 0 4px rgba(37,179,90,.2)}
.hk-card .acts{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.hk-card .acts .btn{min-height:46px}
.hk-card .sample{font:500 .6875rem var(--font-voice);color:#666769;border:1px dashed #CFCEC7;border-radius:8px;padding:1px 6px;justify-self:start}
@media(min-width:1024px){.hk-card{position:absolute;right:max(32px,calc((100vw - 1200px)/2));bottom:56px;margin:0;width:340px}.b-hook .wrap{min-height:clamp(560px,72vh,700px)}}
@media(prefers-reduced-motion:reduce){.hk-card.swap{animation:none}}
/* ===== WhatsApp channel: visible on every reader page, in the story share row and in the footer ===== */
.wa-band{background:#E7F8EE;border-block:1px solid #C7EED6}
.wa-grid{display:grid;grid-template-columns:auto 1fr;gap:14px 18px;align-items:center;padding-block:22px}
@media(min-width:760px){.wa-grid{grid-template-columns:auto 1fr auto}}
.wa-ic{width:52px;height:52px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center}
.wa-grid b{display:block;font:500 1.1875rem var(--font-voice);color:#0B3D24}
.wa-grid span{font-size:.9375rem;color:#2C5A41}
.wa-btn{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:999px;background:#128C4A;color:#fff;text-decoration:none;font:500 1rem var(--font-voice)}
@media(min-width:760px){.wa-btn{grid-column:auto}}
.wa-btn:hover{background:#0E7A40}
.wa-mini{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;background:#25D366;color:#073B20;text-decoration:none;font:500 .9375rem var(--font-voice)}
.wa-mini::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15l-1.4 5 5.1-1.3A10 10 0 1 0 12 2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15l-1.4 5 5.1-1.3A10 10 0 1 0 12 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.wa-mini:hover{background:#3BE07A}
.wa-foot{display:inline-flex;align-items:center;gap:10px;margin-top:16px;min-height:48px;padding:0 20px;border-radius:999px;background:#25D366;color:#073B20;text-decoration:none;font:500 .9375rem var(--font-voice)}
.wa-foot:hover{background:#3BE07A}
/* ===== ecosystem strip: the four Convo sites, top left of the utility bar on every site ===== */
@media(max-width:759px){.util .eco a{padding:0 7px!important;font-size:.75rem!important}.util .eco a[aria-current="page"]::after{left:7px!important;right:7px!important}}
.util .eco{display:flex;align-items:center;gap:2px;margin-right:auto;margin-left:-10px}
.util .eco a{color:#A9ADC8;font:500 .8125rem var(--font-voice);padding:0 10px;min-height:44px;position:relative;white-space:nowrap;gap:0}
.util .eco a:hover{color:#fff}
.util .eco a:active{color:#D9DBE8}
.util .eco a[aria-current="page"]{color:#fff}
.util .eco a[aria-current="page"]::after{content:"";position:absolute;left:10px;right:10px;bottom:8px;height:2px;border-radius:2px;background:var(--sun)}
.util .eco .sep{width:1px;height:14px;background:rgba(255,255,255,.16);margin:0 4px}
@media(max-width:1279px){.util .util-reach{display:none!important}}
@media(max-width:759px){
  .util .wrap{flex-wrap:wrap;column-gap:12px;row-gap:0}
  .util .eco{order:-1;width:calc(100% + 20px);margin:0 -10px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(255,255,255,.1)}
  .util .eco::-webkit-scrollbar{display:none}
  .util .eco a{min-height:38px;flex:none}
  .util .wrap>a{flex:1 1 0;min-width:0;font-size:.8125rem;line-height:1.3}
  .util .meta{flex:none}
  .util .eco a[aria-current="page"]::after{bottom:5px}}
/* ===== chat: live chat + WhatsApp, bottom right on every page ===== */
.cw{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:80;display:grid;justify-items:end;gap:12px;font-family:var(--font-body)}
body:has(#acSticky.on) .cw{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
body:has(#shBagBtn:not([hidden])) .sh-bagbtn{bottom:calc(88px + env(safe-area-inset-bottom,0px))}
.cw-fab{position:relative;width:60px;height:60px;border-radius:50%;border:0;background:#252A52;color:#FCD800;display:grid;place-items:center;cursor:pointer;box-shadow:0 16px 32px -12px rgba(22,25,54,.6);transition:transform .2s var(--ease)}
.cw-fab:hover{transform:translateY(-2px)}
.cw-fab .dot{position:absolute;top:4px;right:4px;width:14px;height:14px;border-radius:50%;background:#7BD957;border:2.5px solid #252A52}
.cw-fab .dot.off{background:#A3A6B8}
.cw-fab .ic-x{display:none}
.cw.open .cw-fab .ic-x{display:block}.cw.open .cw-fab .ic-c,.cw.open .cw-fab .dot{display:none}
.cw-hint{background:var(--surface);color:var(--text-strong);border:1px solid var(--line);border-radius:16px 16px 4px 16px;padding:10px 14px;font:500 .9375rem var(--font-display);box-shadow:0 12px 28px -16px rgba(22,25,54,.45);max-width:240px;display:flex;gap:8px;align-items:center;animation:cwIn .35s var(--ease) both}
.cw-hint button{border:0;background:none;color:var(--muted);width:32px;height:32px;flex:none;border-radius:50%}
.cw-panel{width:min(380px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 110px));background:var(--surface);border-radius:24px;box-shadow:0 30px 60px -20px rgba(22,25,54,.5);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid var(--line);animation:cwIn .25s var(--ease) both;transform-origin:100% 100%}
@keyframes cwIn{from{opacity:0;transform:translateY(10px) scale(.97)}}
@media(prefers-reduced-motion:reduce){.cw-panel,.cw-hint{animation:none}}
.cw-head{background:#252A52;color:#D7D9E6;padding:16px 16px 14px 20px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background-image:radial-gradient(circle at 100% 0,rgba(82,195,189,.4),transparent 60%)}
.cw-av{display:flex}
.cw-av span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font:700 .875rem var(--font-display);color:#252A52;border:2px solid #252A52}
.cw-av span+span{margin-left:-10px}
.cw-head b{display:block;color:#fff;font:500 1.0625rem var(--font-display)}
.cw-head small{display:flex;gap:6px;align-items:center;font-size:.8125rem}
.cw-head small i{width:8px;height:8px;border-radius:50%;background:#7BD957}
.cw-head small i.off{background:#A3A6B8}
.cw-head .x{width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);background:none;color:#fff;display:grid;place-items:center}
.cw-body{overflow:auto;padding:16px;display:grid;gap:10px;align-content:start;background:var(--bg)}
.cw-start{display:grid;gap:10px}
.cw-opt{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;text-align:left;width:100%;padding:12px 14px;border-radius:16px;border:1.5px solid var(--line);background:var(--surface);color:var(--text-strong);text-decoration:none;cursor:pointer;font:inherit}
.cw-opt:hover{border-color:var(--text-strong)}
.cw-opt .i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center}
.cw-opt b{display:block;font:500 1rem var(--font-display)}
.cw-opt small{font-size:.8125rem;color:var(--muted)}
.cw-opt em{font-style:normal;color:var(--muted)}
.cw-safe{font-size:.8125rem;color:var(--muted);padding:4px 2px}
.cw-safe a{font-weight:600}
.cw-msg{max-width:85%;padding:10px 14px;border-radius:18px;font-size:.9375rem;line-height:1.45;background:var(--surface);color:var(--text-strong);border:1px solid var(--line);border-bottom-left-radius:6px;justify-self:start}
.cw-msg.me{justify-self:end;background:#252A52;color:#fff;border-color:#252A52;border-bottom-left-radius:18px;border-bottom-right-radius:6px}
.cw-msg small{display:block;font-size:.75rem;color:var(--muted);margin-bottom:2px}
.cw-msg.sos{background:#FDECE4;border-color:#F2B49A;color:#252A52;max-width:100%}
.cw-msg.sos b{display:block;font:600 1rem var(--font-display);margin-bottom:4px}
.cw-msg.sos a{display:inline-flex;align-items:center;min-height:40px;margin-right:12px;font-weight:600;color:#9F513B}
.cw-typing{justify-self:start;display:flex;gap:4px;padding:12px 14px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}
.cw-typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:cwDot 1s infinite}
.cw-typing i:nth-child(2){animation-delay:.15s}.cw-typing i:nth-child(3){animation-delay:.3s}
@keyframes cwDot{0%,60%,100%{opacity:.3}30%{opacity:1}}
.cw-quick{display:flex;flex-wrap:wrap;gap:6px}
.cw-quick button{min-height:40px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--accent-text);background:var(--surface);color:var(--accent-text);font:500 .875rem var(--font-display);cursor:pointer}
.cw-quick button:hover{background:var(--teal-50,#EEF9F8)}
.cw-foot{border-top:1px solid var(--line);background:var(--surface);padding:10px 10px 10px 14px}
.cw-form{display:flex;gap:8px;align-items:center}
.cw-form input{flex:1;min-width:0;min-height:44px;border:0;background:none;font:400 1rem var(--font-body);color:var(--text-strong);outline:none}
.cw-form button{width:44px;height:44px;border-radius:50%;border:0;background:#FCD800;color:#252A52;display:grid;place-items:center;flex:none;cursor:pointer}
.cw-form button:disabled{opacity:.45;cursor:default}
.cw-wa{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;font:500 .875rem var(--font-display);color:#128C4A;text-decoration:none}
.cw-note{font-size:.75rem;color:var(--muted);text-align:center;padding-top:2px}
@media(max-width:480px){
  .cw-panel{position:fixed;inset:auto 0 0 0;width:100%;max-height:calc(100dvh - 24px);height:calc(100dvh - 24px);border-radius:24px 24px 0 0;border:0}
  .cw.open .cw-fab{display:none}
  .cw-foot{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* ===== after booking: confirmation, check-in, my sessions, session room, after, therapist side, team page ===== */
.tx-sm{min-height:44px;padding:6px 18px;font-size:.9375rem}
.hdr-sign{font:500 .9375rem var(--font-display);color:var(--text-strong);text-decoration:none;min-height:44px;display:inline-flex;align-items:center;padding:0 6px}
.hdr-sign:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:420px){.hdr-sign{display:none}}
.tx-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;background:#252A52;color:#fff;padding:12px 20px;border-radius:999px;font:500 .9375rem var(--font-display);z-index:300;transition:.25s var(--ease);pointer-events:none;max-width:calc(100% - 32px);text-align:center}
.tx-toast.on{opacity:1;transform:translate(-50%,0)}
.tx-hero{padding:32px 0 64px;background:radial-gradient(circle at 90% 0,rgba(147,217,213,.35),transparent 45%),radial-gradient(circle at 0 100%,rgba(252,216,0,.14),transparent 40%)}
.tx-hero h1{font-size:clamp(2.2rem,1.2rem + 3.4vw,4rem);line-height:1.03;font-weight:700}
.tx-hero h1 em,.tx-wait-room h1 em{font:italic 400 1em var(--font-accent);color:#12736E}
.tx-hero .lead{font:400 1.125rem/1.55 var(--font-voice);max-width:38rem;margin-top:12px}
.tx-split{display:grid;gap:28px;align-items:start}
@media(min-width:1024px){.tx-split{grid-template-columns:1fr 360px;gap:48px}}
.tx-main{display:grid;gap:14px;justify-items:start}
.tx-narrow{max-width:52rem}
.tx-acts{display:flex;flex-wrap:wrap;gap:10px}
.tx-small{font-size:.875rem;color:var(--muted);margin-top:4px}
.tx-back{display:inline-flex;align-items:center;min-height:44px;font:500 .9375rem var(--font-display);text-decoration:none;margin-bottom:8px}
.tx-appt{display:grid;grid-template-columns:auto 1fr;gap:16px 18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;width:100%;max-width:40rem;box-shadow:0 20px 40px -30px rgba(22,25,54,.4)}
.tx-appt-t{display:grid;gap:4px;justify-items:start}
.tx-appt-t small{font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:#12736E}
.tx-appt-t b{font:600 1.25rem/1.25 var(--font-display);color:var(--text-strong)}
.tx-appt-t span{font-size:.9375rem}
.tx-appt-how{grid-column:1/-1;display:grid;gap:4px;padding-top:14px;border-top:1px solid var(--line);font-size:.9375rem}
.tx-appt-how b{font:500 .9375rem var(--font-display);color:var(--text-strong)}
.tx-paid{font-weight:600;color:#4F6410}
.tx-side{display:grid;gap:14px;align-content:start}
@media(min-width:1024px){.tx-split .tx-side{position:sticky;top:96px}}
.tx-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 20px;display:grid;gap:8px;align-content:start;font-size:.9375rem}
.tx-card .k{font:500 .75rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.tx-card b{font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.tx-card .btn{justify-self:start}
.tx-ol{margin:0;padding-left:1.2em;display:grid;gap:6px}
.tx-calm{background:#EEF9F8;border-color:transparent;color:#252A52}
.tx-sos{background:#FDECE4;border-color:transparent;color:#252A52}
.tx-sos a{font-weight:700;color:#9F513B}
/* check-in */
.tx-form{display:grid;gap:18px;margin-top:24px}
.tx-form fieldset{border:1px solid var(--line);border-radius:20px;padding:18px 20px;margin:0;background:#fff}
.tx-form legend{display:flex;gap:10px;align-items:center;font:500 1.125rem var(--font-display);color:var(--text-strong);padding:0 6px}
.tx-form legend span{width:28px;height:28px;border-radius:50%;background:#FCD800;color:#252A52;display:grid;place-items:center;font-size:.875rem;font-weight:700}
.tx-form .field small{font-weight:400;color:var(--muted)}
.tx-form .consent{display:flex;gap:12px;align-items:flex-start;margin:10px 0;font-size:.9375rem}
.tx-form .consent input{width:20px;height:20px;margin-top:3px;accent-color:#12736E;flex:none}
.tx-form>.btn{justify-self:start}
.tx-chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.tx-chips label{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);cursor:pointer;font:500 .9375rem var(--font-display);color:var(--text-strong);background:#fff}
.tx-chips input{position:absolute;opacity:0;pointer-events:none}
.tx-chips label:has(input:checked){background:#12736E;border-color:#12736E;color:#fff}
.tx-chips label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
/* my sessions */
.tx-dhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px}
.tx-dhead h1{font-size:clamp(2.2rem,1.2rem + 3vw,3.5rem)}
.tx-next-in{display:grid;gap:16px 24px;align-items:center;background:#12736E;color:#D8F1EF;border-radius:24px;padding:22px;background-image:radial-gradient(circle at 100% 0,rgba(252,216,0,.3),transparent 50%)}
@media(min-width:900px){.tx-next-in{grid-template-columns:1.2fr 1fr auto}}
.tx-next-l small{font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:#FCD800}
.tx-next-l b{display:block;font:600 1.375rem/1.25 var(--font-display);color:#fff;margin:4px 0}
.tx-ready{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:.9375rem}
.tx-ready li.ok{color:#fff}
.tx-ready a{color:#FCD800;font-weight:600}
.tx-next-r{display:grid;gap:6px;justify-items:start}
.tx-next-r small{font-size:.8125rem;color:#BDE3E0}
.tx-tabs{display:flex;gap:4px;overflow-x:auto;margin:28px 0 16px;border-bottom:1px solid var(--line);scrollbar-width:none}
.tx-tabs::-webkit-scrollbar{display:none}
.tx-tabs button{flex:none;min-height:48px;padding:0 16px;border:0;background:none;color:var(--muted);font:500 .9375rem var(--font-display);border-bottom:3px solid transparent;margin-bottom:-1px}
.tx-tabs button[aria-selected="true"]{color:var(--text-strong);border-bottom-color:#12736E}
.tx-list{display:grid;gap:10px}
.tx-row{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px 16px}
@media(min-width:640px){.tx-row{grid-template-columns:auto 1fr auto}}
.tx-row .mono{width:52px;height:52px}.tx-row .mono span{width:42px;height:42px;font-size:.9375rem}
.tx-row b{display:block;font:500 1rem var(--font-display);color:var(--text-strong)}
.tx-row small{font-size:.8125rem;color:var(--muted)}
.tx-row-a{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;grid-column:1/-1}
@media(min-width:640px){.tx-row-a{grid-column:auto}}
.tx-row-a .tlink{background:none;border:0;padding:0}
.tx-ic{width:52px;height:52px;border-radius:14px;background:#B9D546;color:#252A52;display:grid;place-items:center;font:700 .75rem var(--font-display)}
.tx-empty{padding:24px;border:1.5px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted)}
.tx-thcard{display:grid;gap:18px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}
@media(min-width:640px){.tx-thcard{grid-template-columns:auto 1fr}}
.tx-thcard>div{display:grid;gap:6px;justify-items:start}
.tx-thcard b{font:600 1.25rem var(--font-display);color:var(--text-strong)}
.tx-thcard p{font-size:.9375rem}
.tx-saved{font-size:.9375rem;color:#12736E;font-weight:600;margin-left:10px}
/* session room: no site chrome */
body.in-room .util,body.in-room header.site,body.in-room footer,body.in-room .helpbox,body.in-room .cw,body.in-room .hdr-switch{display:none!important}
.tx-room{min-height:100vh;min-height:100dvh;background:#10131F;color:#D7D9E6;display:grid;grid-template-rows:auto 1fr auto}
.tx-rtop{display:flex;align-items:center;gap:14px;padding:12px max(16px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.04)}
.tx-rtop>div{flex:1;min-width:0}
.tx-rtop b{display:block;color:#fff;font:500 1rem var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tx-rtop small{font-size:.8125rem;color:#93D9D5}
.tx-leave-top{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;border:1.5px solid rgba(255,255,255,.25);flex:none}
.tx-timer{font:600 1rem ui-monospace,Menlo,monospace;color:#FCD800;background:rgba(252,216,0,.12);padding:6px 12px;border-radius:999px}
.tx-stage{display:grid;place-items:center;padding:20px}
.tx-wait-room{max-width:34rem;text-align:center;display:grid;gap:12px;justify-items:center}
.tx-wait-room h1{color:#fff;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);line-height:1.15}
.tx-self{width:min(320px,80vw);aspect-ratio:4/3;border-radius:20px;background:linear-gradient(135deg,#2A3350,#161936);display:grid;place-items:center;margin-bottom:8px}
.tx-self span{font:500 .875rem var(--font-display);color:#A3A6B8}
.tx-check{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.tx-check li{padding:6px 12px;border-radius:999px;background:rgba(185,213,70,.15);color:#D8EE8A;font:500 .875rem var(--font-display)}
.tx-wait-room .tx-small{color:#A3A6B8}
.tx-tiles{position:relative;width:100%;max-width:960px;display:grid;place-items:center;gap:12px}
.tx-tile.them{width:100%;aspect-ratio:16/10;max-height:68vh;border-radius:24px;background:radial-gradient(circle at 50% 40%,#2A3B5A,#161936 70%);display:grid;place-content:center;justify-items:center;gap:12px}
.tx-tiles.voice .tx-tile.them{aspect-ratio:auto;min-height:340px;background:radial-gradient(circle at 50% 40%,#12736E,#10131F 70%)}
.tx-tile .mono{width:120px;height:120px}.tx-tile .mono span{width:100px;height:100px;font-size:1.75rem}
.tx-tile .nm{font:500 1rem var(--font-display);color:#fff}
.tx-tile.me{position:absolute;right:16px;bottom:44px;width:min(200px,32vw);aspect-ratio:4/3;border-radius:16px;background:linear-gradient(135deg,#3A4566,#202842);display:grid;place-items:center;border:2px solid rgba(255,255,255,.15)}
.tx-tile.me span{font-size:.8125rem;color:#C9CBDA}
.tx-sub{font-size:.8125rem;color:#A3A6B8}
.wave{display:flex;gap:5px;align-items:center;height:28px}
.wave i{width:5px;border-radius:3px;background:#93D9D5;animation:txWave 1s ease-in-out infinite}
.wave i:nth-child(1){height:10px}.wave i:nth-child(2){height:22px;animation-delay:.1s}.wave i:nth-child(3){height:14px;animation-delay:.2s}.wave i:nth-child(4){height:26px;animation-delay:.3s}.wave i:nth-child(5){height:12px;animation-delay:.4s}
@keyframes txWave{50%{transform:scaleY(.4)}}
@media(prefers-reduced-motion:reduce){.wave i{animation:none}}
.tx-chat{width:100%;max-width:640px;height:min(64vh,560px);display:grid;grid-template-rows:1fr auto;background:#F7F6F2;border-radius:20px;overflow:hidden}
.tx-chat-log{overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.tx-chat-log p{max-width:85%;padding:10px 14px;border-radius:18px;font-size:.9375rem;line-height:1.45;color:#252A52}
.tx-chat-log .them{background:#fff;border:1px solid #E2E1DB;align-self:flex-start;border-bottom-left-radius:6px}
.tx-chat-log .them b{display:block;font-size:.75rem;color:#12736E}
.tx-chat-log .me{background:#12736E;color:#fff;align-self:flex-end;border-bottom-right-radius:6px}
.tx-chat-log .sys{align-self:center;font-size:.75rem;color:#666769;padding:0}
.tx-chat-in{display:flex;gap:8px;padding:10px;border-top:1px solid #E2E1DB;background:#fff}
.tx-chat-in input{flex:1;min-width:0;min-height:44px;border:0;font:400 1rem var(--font-body);outline:none;padding:0 8px;color:#252A52}
.tx-chat-in button{width:52px;height:44px;border-radius:999px;border:0;background:#FCD800;color:#252A52;display:grid;place-items:center}
.tx-chat-in .arr{width:auto;height:auto;background:none}
.tx-controls{display:flex;justify-content:center;gap:10px;padding:14px 16px calc(18px + env(safe-area-inset-bottom,0px));flex-wrap:wrap}
.tx-controls button{display:grid;justify-items:center;gap:4px;min-width:64px;padding:10px 8px;border:0;border-radius:18px;background:rgba(255,255,255,.08);color:#fff;font:500 .75rem var(--font-display)}
.tx-controls button[aria-pressed="true"]{background:#fff;color:#10131F}
.tx-controls .end{background:#C93838}
/* after */
.tx-feel{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.tx-feel button{min-height:48px;padding:0 18px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--text-strong);font:500 1rem var(--font-display)}
.tx-feel button[aria-pressed="true"]{background:#12736E;border-color:#12736E;color:#fff}
.tx-choices{display:grid;gap:12px;margin-top:8px}
.tx-choice{display:grid;grid-template-columns:1fr auto;gap:12px 16px;align-items:center;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:18px 20px;text-decoration:none;color:var(--text);font:inherit;cursor:pointer;width:100%}
.tx-choice.main{grid-template-columns:auto 1fr;border-color:#12736E;cursor:default;box-shadow:0 20px 40px -30px rgba(18,115,110,.6)}
@media(min-width:760px){.tx-choice.main{grid-template-columns:auto 1fr auto}}
.tx-choice.main .btn{grid-column:1/-1;justify-self:start}
@media(min-width:760px){.tx-choice.main .btn{grid-column:auto}}
.tx-choice:not(.main):hover{border-color:var(--text-strong)}
.tx-choice small{font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:#12736E}
.tx-choice b{display:block;font:500 1.1875rem/1.3 var(--font-display);color:var(--text-strong);margin:2px 0}
.tx-choice span{font-size:.9375rem}
.tx-choice em{font-style:normal;font-size:1.25rem;color:var(--muted)}
.tx-shared{margin:20px 0 12px;background:#FFF9D6;border-color:#F1E08A;color:#252A52}
.tx-rate{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px 20px;margin-bottom:12px}
.tx-rate>b{font:500 1rem var(--font-display);color:var(--text-strong)}
.tx-stars{display:flex;gap:6px}
.tx-stars input{position:absolute;opacity:0;pointer-events:none}
.tx-stars span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--line);font:600 .9375rem var(--font-display);color:var(--text-strong);cursor:pointer}
.tx-stars label:has(input:checked) span{background:#FCD800;border-color:#FCD800}
.tx-stars label:has(input:focus-visible) span{outline:2px solid var(--focus);outline-offset:2px}
/* therapist side */
.tx-pro{background:radial-gradient(circle at 90% 0,rgba(217,199,240,.45),transparent 45%)}
.tx-pgrid{display:grid;gap:20px}
@media(min-width:1024px){.tx-pgrid{grid-template-columns:1fr 340px;align-items:start}}
.tx-prow{display:grid;grid-template-columns:64px 1fr;gap:8px 14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
@media(min-width:760px){.tx-prow{grid-template-columns:64px 1fr auto;align-items:center}}
.tx-prow .h{font:700 1.0625rem var(--font-display);color:var(--text-strong)}
.tx-prow b{font:500 1.0625rem var(--font-display);color:var(--text-strong)}
.tx-prow small{display:block;font-size:.8125rem;color:var(--muted)}
.tx-prow.done{opacity:.7}
.tx-prow.flag{border-color:#F2B49A;border-width:1.5px}
.tx-flag{margin-top:8px;padding:10px 12px;border-radius:12px;background:#FDECE4;color:#252A52;font-size:.875rem}
.tx-flag b{display:block;font-size:.875rem;color:#9F513B}
.tx-stats{display:grid;gap:10px}
.tx-stats b{display:block;font:700 1.375rem var(--font-display);color:var(--text-strong)}
.tx-stats span{font-size:.8125rem;color:var(--muted)}
/* team page */
.tx-jpick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.9375rem;margin-top:18px}
.tx-jpick a{min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--text-strong);text-decoration:none;font:500 .875rem var(--font-display)}
.tx-jpick a:hover{border-color:var(--text-strong)}
.tx-journey{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tx-journey li{display:grid;gap:8px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;font-size:.9375rem}
.tx-journey .n{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#12736E;color:#fff;font:700 1rem var(--font-display)}
.tx-journey b{font:500 1.125rem/1.3 var(--font-display);color:var(--text-strong)}
.tx-journey i{display:block;font:500 .6875rem var(--font-display);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.tx-journey .hd{display:none}
@media(min-width:1100px){
  .tx-journey li{grid-template-columns:44px 180px 1.3fr 1fr 1.1fr;gap:20px;align-items:start}
  .tx-journey i{display:none}
  .tx-journey .hd{display:grid;background:none;border:0;padding:0 18px;font:500 .75rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
}
.tx-parts{display:grid;gap:12px}
@media(min-width:760px){.tx-parts{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.tx-parts{grid-template-columns:repeat(3,1fr)}}
.tx-parts div{display:grid;gap:6px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line);border-top:6px solid var(--c)}
.tx-parts b,.tx-edges b{font:500 1.0625rem/1.3 var(--font-display);color:var(--text-strong)}
.tx-parts span,.tx-edges span{font-size:.9375rem}
.tx-edges{display:grid;gap:12px}
@media(min-width:760px){.tx-edges{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.tx-edges{grid-template-columns:repeat(3,1fr)}}
.tx-edges div{display:grid;gap:6px;padding:18px;border-radius:18px;background:#F1F0EB}
/* payment step in the booking pop-up */
.tx-pay{display:grid;gap:12px;justify-items:start}
.tx-phone{justify-self:center;width:200px;border-radius:26px;background:#161936;padding:18px 16px 22px;color:#fff;display:grid;gap:8px;text-align:center}
.tx-phone span{font:700 .75rem var(--font-display);letter-spacing:.2em;color:#7BD957}
.tx-phone b{font:500 .875rem/1.35 var(--font-display)}
.tx-phone i{font-style:normal;letter-spacing:.3em;color:#FCD800;font-size:1.25rem}
.tx-wait{display:flex;gap:10px;align-items:center;font:500 .9375rem var(--font-display);background:#EEF9F8;color:#12736E;padding:10px 14px;border-radius:12px}
.spin{width:18px;height:18px;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:txSpin .8s linear infinite;flex:none}
@keyframes txSpin{to{transform:rotate(360deg)}}
