:root{--night:#100b1d;--panel:#191228;--panel2:#241936;--purple:#7750c9;--purple2:#4d2b8f;--teal:#14c7bd;--aqua:#8be0dc;--cream:#f5f0e7;--white:#fff;--muted:#b8afc8;--coral:#ff795f;--line:rgba(255,255,255,.13);--shadow:0 26px 70px rgba(0,0,0,.42)}
.rail-scroll-wrap{position:relative;min-width:0}
.rail-next{position:absolute;right:.4rem;top:32%;z-index:3;width:48px;height:48px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(16,11,29,.88);color:#fff;font:400 30px/1 Manrope,sans-serif;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s,background .15s;box-shadow:0 3px 16px #100b1d66}
.rail-scroll-wrap:hover .rail-next,.rail-scroll-wrap:focus-within .rail-next{opacity:1;pointer-events:auto}
.rail-next:hover{background:#4d2b8f}
.rail-next:focus-visible{opacity:1;outline:3px solid #8be0dc;outline-offset:3px}
.rail-next[hidden]{display:none}
footer#support .powered-by img{width:89.6px;height:89.6px}
footer#support{padding-block:1rem;row-gap:1rem}
#meet-the-team>.people-heading>.label{font-size:16px;line-height:1.5}
@media(hover:none){.rail-next{opacity:1;pointer-events:auto}}
@media(max-width:600px){footer#support .powered-by img{width:72.8px;height:72.8px}}
.powered-by{display:flex;align-items:center;justify-content:center;gap:.85rem;color:#c8bfd5;font-size:11px;line-height:1.5}
.powered-by img{width:64px;height:64px;object-fit:contain;flex:none}
.profile-gate>.powered-by{align-self:end;margin:0 auto}
body>footer{grid-template-columns:1fr auto}
footer .powered-by{justify-content:flex-start}
@media(max-width:600px){.powered-by{font-size:10px;gap:.6rem}.powered-by span{max-width:220px}.powered-by img{width:52px;height:52px}body>footer{grid-template-columns:1fr}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--night)}
body{margin:0;background:var(--night);color:var(--white);font-family:Manrope,sans-serif;overflow-x:hidden}
button,a{font:inherit}
button{color:inherit}
.skip{position:fixed;left:-999px;top:1rem;z-index:100;background:#fff;color:#111;padding:1rem}
.skip:focus{left:1rem}
.review{height:28px;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;background:#08060e;color:#9d93af;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:600}
.site-header{height:78px;display:flex;align-items:center;gap:2.2rem;padding:0 4vw;position:sticky;top:0;z-index:30;background:rgba(16,11,29,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.7rem;color:#fff;text-decoration:none;flex:0 0 auto}
.brand img{width:64px;height:64px;object-fit:contain}
.brand span{display:grid;gap:.05rem;line-height:1}
.brand b{font:18px/1 'Archivo Black';letter-spacing:.08em}
.brand small{max-width:155px;color:#bdb3ca;font-size:8px;line-height:1.25;text-transform:uppercase;letter-spacing:.09em;font-weight:600}
.site-header nav{display:flex;align-items:center;gap:2rem;margin-left:auto}
.nav-donate{border:0;border-radius:5px;background:var(--purple2);color:#fff;padding:.8rem 1.15rem;font-size:12px;font-weight:600;letter-spacing:.06em;cursor:pointer}
.nav-donate:hover{background:var(--purple)}
.nav-donate:focus-visible{outline:2px solid var(--aqua);outline-offset:3px}
.donation-preview{width:min(440px,90vw);padding:2rem;background:var(--panel);color:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.donation-preview::backdrop{background:rgba(8,5,15,.65)}
.donation-preview h2{font-size:24px;font-weight:600}
.donation-preview p{color:var(--muted);line-height:1.6;font-weight:400}
.site-header nav a,.nav-dropdown summary{color:#c8bfd5;text-decoration:none;font-size:12px;font-weight:600;transition:.2s}
.site-header nav>a:hover,.site-header nav>a.active,.nav-dropdown summary:hover,.nav-dropdown summary:focus-visible{color:#fff}
.nav-dropdown{position:relative}
.nav-dropdown summary:focus-visible{outline:2px solid var(--aqua);outline-offset:6px;border-radius:2px}
section[id]{scroll-margin-top:100px}
.story-pending{padding:4rem 6vw;border-top:1px solid var(--line);background:var(--panel)}
.story-pending h2{font-size:clamp(30px,4vw,52px);margin-bottom:1rem}
.story-pending>p:last-child{color:var(--muted);line-height:1.6;margin:0}
.nav-dropdown summary{display:flex;align-items:center;gap:.5rem;list-style:none;cursor:pointer;outline:0}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary span{color:var(--teal);font-size:14px;transition:transform .2s}
.nav-dropdown[open] summary{color:#fff}
.nav-dropdown[open] summary span{transform:rotate(180deg)}
.nav-dropdown-menu{position:absolute;top:calc(100% + 1rem);left:50%;width:220px;padding:.55rem;transform:translateX(-50%);display:grid;gap:.2rem;background:rgba(19,13,32,.98);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}
.nav-dropdown-menu:before{content:'';position:absolute;left:0;right:0;top:-1rem;height:1rem}
.nav-dropdown-menu a{padding:.8rem .9rem;border-radius:5px}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible,.nav-dropdown-menu a.active{color:#fff;background:rgba(20,199,189,.12);outline:0}
.profile-chip{border:1px solid var(--line);background:#20172f;border-radius:999px;padding:.45rem .85rem .45rem .5rem;font-size:11px;font-weight:600;display:flex;align-items:center;gap:.6rem}
.profile-chip span{display:grid;place-items:center;width:28px;height:28px;background:var(--teal);color:#092e31;border-radius:50%}
.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:.55rem .75rem}
.learning-hero{min-height:680px;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,#100b1d 0%,rgba(16,11,29,.94) 35%,rgba(16,11,29,.25) 72%),url('assets/brand/kids-hero-no-text-v2.png') right top/contain no-repeat;isolation:isolate}
.learning-hero:after{content:"";position:absolute;inset:auto 0 0;height:35%;z-index:-1;background:linear-gradient(transparent,var(--night))}
.hero-shade{position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 75% 32%,rgba(20,199,189,.18),transparent 34%)}
.hero-content{max-width:760px;padding:7rem 5vw 8rem}
.kicker,.label{text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:600;color:var(--aqua)}
.kicker{display:flex;align-items:center;gap:.7rem}
.kicker span{width:28px;height:3px;background:var(--teal)}
h1,h2,h3,p{margin-top:0}
h1,.section-heading h2,.rail-heading h2,.resource-banner h2,.dialog-body h2{font-family:'Archivo Black';text-transform:uppercase;letter-spacing:-.045em}
h1{font-size:clamp(58px,7.4vw,112px);line-height:.86;margin:.7rem 0 1.7rem;max-width:850px}
.hero-content h1{font-family:Manrope,sans-serif;font-weight:600;text-transform:none;line-height:1.04;letter-spacing:-.045em}
#main h2,#main h3,.dialog-body h2{font-family:Manrope,sans-serif;font-weight:600;text-transform:none;letter-spacing:-.025em}
#main .section-heading h2,#main .rail-heading h2,#main .resource-banner h2,#main .shop-teaser h2,.dialog-body h2{text-transform:uppercase}
#main .resource-banner h2,#main .shop-teaser h2,.dialog-body h2{line-height:1.1}
.hero-summary{max-width:650px;font-size:clamp(16px,1.6vw,21px);line-height:1.65;color:#e5dfec;font-weight:400}
.hero-actions{display:flex;gap:.8rem;margin-top:2rem}
.primary-action,.secondary-action{min-height:48px;padding:.85rem 1.25rem;border-radius:5px;border:0;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-size:12px;font-weight:600;cursor:pointer;transition:.2s}
.primary-action{background:var(--white);color:var(--night)}
.primary-action:hover{background:var(--teal);transform:translateY(-2px)}
.secondary-action{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.2)}
.secondary-action:hover{background:rgba(255,255,255,.24)}
.hero-meta{display:flex;gap:2rem;margin:3.2rem 0 0;padding:1.4rem 0 0;border-top:1px solid var(--line)}
.hero-meta div{display:grid;gap:.2rem}
.hero-meta dt{color:var(--teal);text-transform:uppercase;letter-spacing:.12em;font-size:calc(8px + 3pt);font-weight:600}
.hero-meta dd{margin:0;font-size:calc(11px + 3pt);font-weight:400;color:#c8bfd5}
.header-mace-circle{display:block;flex:none;width:64px;height:64px;border-radius:50%;background:url('assets/brand/mace-logo.png') center top/156.5% auto no-repeat}
.hero-photo-message{position:absolute;right:3vw;top:5.6vw;margin:0;text-align:right;font-family:Manrope,sans-serif;font-size:3.2vw;font-weight:400;font-style:italic;line-height:1.35;color:rgba(68,48,98,.6);pointer-events:none}
@media(max-width:600px){.header-mace-circle{width:52px;height:52px}}
.hero-mace-mark{position:absolute;right:.32vw;top:34.76vw;width:12vw;height:12vw;border-radius:50%;background:url('assets/brand/mace-logo.png') center top/156.5% auto no-repeat;pointer-events:none}
.hero-brand{position:absolute;right:4vw;bottom:7rem;width:180px;opacity:.9}
.hero-brand img{width:100%;filter:drop-shadow(0 10px 20px #000)}
.learning-shell{padding:0 0 7rem}
.continue-panel{width:min(1180px,90vw);margin:-2.7rem auto 5.5rem;position:relative;z-index:2;background:linear-gradient(110deg,#302244,#1c142c);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:1.2rem;box-shadow:var(--shadow)}
.continue-art{height:78px;border-radius:8px;overflow:hidden;background:#fff}
.continue-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:scale(1.14);transform-origin:center}
.continue-panel h2{font-size:18px;margin:.15rem 0 .25rem}
.continue-panel p:last-child{margin:0;color:var(--muted);font-size:12px}
.resume-button{border:0;background:none;font-weight:600;display:flex;align-items:center;gap:.8rem;cursor:pointer}
.resume-button i{width:42px;height:42px;border-radius:50%;background:var(--teal);color:#0f3638;display:grid;place-items:center;font-style:normal;font-size:20px}
.path-picker,.rail-section,.resource-banner{width:min(1400px,92vw);margin-inline:auto}
.section-heading,.rail-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}
.section-heading h2{font-size:clamp(34px,4vw,62px);margin:.2rem 0}
.section-heading>p{max-width:340px;color:var(--muted);font-size:13px;line-height:1.6}
.audience-tabs{display:flex;gap:.55rem;overflow:auto;padding:1.5rem 0 3.7rem;scrollbar-width:none}
.audience-tab{white-space:nowrap;background:transparent;border:1px solid #554a65;color:#c6bdd1;border-radius:999px;padding:.65rem 1rem;font-size:11px;font-weight:600;cursor:pointer}
.audience-tab:hover,.audience-tab.active{background:var(--teal);border-color:var(--teal);color:#082b2e}
.rail-section{margin-bottom:4.7rem;transition:.25s}
.rail-section[hidden]{display:none}
.rail-heading{margin-bottom:1.1rem}
.rail-heading h2{font-size:clamp(27px,3vw,43px);margin:.15rem 0}
.text-action{background:none;border:0;color:#d6cfdf;font-size:11px;font-weight:600;cursor:pointer}
.text-action span{color:var(--teal);font-size:18px;margin-left:.3rem}
.lesson-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(255px,1fr);grid-template-rows:1fr;gap:.9rem;overflow-x:auto;overflow-y:hidden;padding:.5rem .25rem 1.5rem;scroll-snap-type:x proximity;scrollbar-color:#4b4059 transparent}
.lesson-card{min-width:0;background:#1a1328;border-radius:9px;overflow:hidden;scroll-snap-align:start;cursor:pointer;transition:transform .22s,box-shadow .22s,background .22s;outline:0}
.lesson-card:hover,.lesson-card:focus-visible{transform:translateY(-8px) scale(1.015);background:#271c39;box-shadow:0 24px 40px rgba(0,0,0,.38)}
.lesson-card.complete{box-shadow:inset 0 0 0 2px var(--teal)}
.lesson-card.complete:after{content:'✓ Complete';position:absolute;right:.65rem;top:.65rem;background:var(--teal);color:#082b2e;padding:.3rem .5rem;border-radius:4px;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.07em}
.lesson-card{position:relative}
.thumb{height:164px;position:relative;overflow:hidden;background:#2d2540}
.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.lesson-card:hover .thumb img{transform:scale(1.06)}
.thumb-kids{background:#fff}
.thumb-kids img{object-fit:contain;object-position:center}
.lesson-card:hover .thumb-kids img{transform:none}
.thumb-animal{background:linear-gradient(135deg,var(--teal),#d1f4ef);padding:10px}
.thumb-animal.alt{background:linear-gradient(135deg,#8a62d3,#e6d6ff)}
.thumb-animal img{object-fit:contain}
.episode,.coming,.tag{position:absolute;left:.65rem;top:.65rem;padding:.3rem .45rem;background:rgba(11,7,19,.82);border-radius:4px;font-size:9px;font-weight:600}
.coming{left:auto;right:.65rem;background:var(--purple)}
.thumb button{position:absolute;inset:auto auto .7rem .7rem;width:38px;height:38px;border-radius:50%;border:0;background:#fff;color:#111;opacity:0;transform:scale(.85);transition:.2s;cursor:pointer}
.lesson-card:hover .thumb button,.lesson-card:focus-visible .thumb button{opacity:1;transform:scale(1)}
.card-copy{padding:1rem 1rem 1.15rem;min-height:128px}
.card-copy p{color:var(--teal);text-transform:uppercase;letter-spacing:.12em;font-size:calc(8px + 2pt);font-weight:600;margin-bottom:.4rem}
.card-copy h3{font-size:calc(14px + 2pt);line-height:1.25;margin-bottom:.45rem}
.card-copy span{color:#a99fb8;font-size:calc(11px + 2pt);line-height:1.45;display:block}
.editorial{display:grid;place-items:center;background:var(--cream);color:var(--night)}
.editorial.one{background:var(--teal)}.editorial.two{background:#d7c9f5}.editorial.three{background:#ffb8a8}
.big-number{font:96px/.8 'Archivo Black';opacity:.23}
.tag{top:auto;bottom:.65rem;background:var(--night);color:#fff}
.type-card{padding:1.2rem;display:flex;flex-direction:column;justify-content:space-between}
.type-card strong{font:24px/.95 'Archivo Black';text-transform:uppercase;letter-spacing:-.04em}
.type-card.purple strong{color:#000}
.type-card span{align-self:end;font:54px/.8 'Archivo Black';opacity:.28}
.type-card.teal{background:var(--teal);color:#092e31}.type-card.purple{background:#805ed2}.type-card.coral{background:var(--coral);color:#2b1010}
.resource-banner{margin-top:7rem;padding:3.5rem;min-height:413px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:4rem;background:linear-gradient(115deg,rgba(20,199,189,.94),rgba(20,199,189,.72)),url('assets/brand/owl-transparent-v1.png') 90% center/min(372.6px,calc(100% - 32px)) auto no-repeat;color:#092d30}
.resource-banner>div{max-width:760px}
.resource-banner .label{color:#174c4d}
.resource-banner h2{color:#fff;font-size:clamp(38px,5vw,72px);line-height:.92;margin:.4rem 0 1.2rem}
.resource-banner p:last-child{font-size:16px;line-height:1.7;max-width:650px}
.resource-banner .secondary-action{white-space:nowrap;background:#092d30;color:#fff}
.mission-strip{padding:2.2rem 5vw;background:var(--cream);color:var(--night);display:grid;grid-template-columns:178px 1fr auto;gap:2rem;align-items:center}
.mission-strip img{width:168px;height:119px;object-fit:contain}
.mission-strip p{margin:0;line-height:1.6}
.mission-strip a{color:var(--purple2);font-weight:600;text-decoration:none;font-size:12px}
.shop-teaser{min-height:310px;padding:3rem 6vw;display:grid;grid-template-columns:360px 1fr auto;gap:3rem;align-items:center;background:var(--purple2);overflow:hidden}
.shop-stickers{height:230px;position:relative}
.shop-stickers img{position:absolute;width:170px;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(0,0,0,.35))}
.shop-stickers img:nth-child(1){left:0;top:30px;transform:rotate(-10deg)}
.shop-stickers img:nth-child(2){left:95px;top:0;transform:rotate(7deg)}
.shop-stickers img:nth-child(3){left:190px;top:42px;transform:rotate(14deg)}
.shop-teaser h2{font:clamp(42px,5vw,75px)/.9 'Archivo Black';text-transform:uppercase;letter-spacing:-.05em;margin:.4rem 0 1rem}
.shop-teaser p:last-child{color:#ddd2ed;line-height:1.6;max-width:600px}
.shop-teaser .secondary-action{white-space:nowrap}
footer{padding:3.5rem 5vw;display:grid;grid-template-columns:180px 1fr auto;gap:2rem;align-items:center;background:#08060e;color:#93899f}
footer img{width:140px;height:105px;object-fit:contain}
footer p{margin:0}
footer nav{display:flex;gap:1.2rem}
footer a{color:#c9c2d1;font-size:11px}
.course-dialog{width:min(980px,92vw);max-height:92vh;padding:0;border:1px solid #544766;border-radius:14px;background:#171022;color:#fff;box-shadow:0 35px 100px #000;overflow:auto}
.course-dialog::backdrop{background:rgba(5,3,9,.82);backdrop-filter:blur(8px)}
.dialog-close{position:sticky;float:right;top:1rem;margin:1rem 1rem -4rem 0;z-index:3;width:40px;height:40px;border-radius:50%;border:0;background:#0a0710;color:#fff;font-size:25px;cursor:pointer}
.dialog-media{min-height:310px;background:#08060d;display:grid}
.dialog-media video,.dialog-media iframe,.video-placeholder{grid-area:1/1;width:100%;height:100%;max-height:520px;aspect-ratio:16/9}
.dialog-media video{display:none;background:#000}
.dialog-media video.active{display:block}
.dialog-media iframe{display:none;border:0;background:#000}
.dialog-media iframe.active{display:block}
.video-placeholder{display:none;place-items:center;text-align:center;background:linear-gradient(135deg,#4d2b8f,#141020);padding:3rem}
.video-placeholder.active{display:grid}
.video-placeholder span{color:var(--aqua);font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:600}
.video-placeholder strong{display:block;font:clamp(28px,4vw,52px)/1 'Archivo Black';max-width:650px;text-transform:uppercase}
.dialog-body{padding:2rem 2.4rem 2.5rem}
.dialog-body h2{font-size:clamp(34px,5vw,65px);line-height:.95;margin:.4rem 0 1rem}
.dialog-body>p:not(.label){color:#c7bdd1;line-height:1.6;max-width:730px}
.dialog-actions{display:flex;gap:.7rem;margin:1.6rem 0}
.series-progress{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#a99eb4}
.series-progress>div{height:4px;background:#392f45;border-radius:99px;overflow:hidden}
.series-progress i{display:block;height:100%;width:0;background:var(--teal);transition:.3s}
.toast{position:fixed;left:50%;bottom:2rem;transform:translate(-50%,120px);z-index:100;background:#fff;color:#181020;padding:.8rem 1rem;border-radius:7px;font-size:12px;font-weight:600;box-shadow:var(--shadow);transition:.28s}
.toast.show{transform:translate(-50%,0)}
@media(max-width:900px){.site-header nav{display:none}.site-header nav.open{display:flex;align-items:stretch;position:absolute;top:78px;left:0;right:0;padding:1.1rem 5vw 1.4rem;background:#130d20;flex-direction:column;gap:.35rem;border-bottom:1px solid var(--line);box-shadow:0 24px 50px rgba(0,0,0,.4)}.site-header nav>a,.nav-dropdown summary{padding:.75rem 0}.nav-dropdown summary{justify-content:space-between}.nav-dropdown-menu{position:static;width:100%;padding:.25rem 0 .45rem .8rem;transform:none;background:transparent;border:0;border-left:1px solid rgba(20,199,189,.35);border-radius:0;box-shadow:none}.nav-dropdown-menu a{padding:.65rem .8rem}.menu-toggle{display:block;margin-left:auto}.learning-hero{min-height:650px;background-position:63% center}.hero-content{padding-top:6rem}.hero-brand{display:none}.section-heading{align-items:start}.continue-panel{grid-template-columns:80px 1fr}.resume-button{grid-column:1/-1;justify-content:flex-end}.resource-banner{padding:2.5rem;align-items:start;flex-direction:column}.mission-strip,footer{grid-template-columns:1fr}.mission-strip img{width:140px}.shop-teaser{grid-template-columns:1fr}.shop-stickers{max-width:360px}.shop-teaser .secondary-action{justify-self:start}footer nav{flex-wrap:wrap}}
@media(max-width:600px){.review span:last-child{display:none}.review{justify-content:center}.site-header{height:68px}.brand img{width:50px;height:50px}.brand small{max-width:105px;font-size:6px}.brand b{font-size:15px}.learning-hero{min-height:670px;background-position:67% center}.learning-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#100b1d 10%,rgba(16,11,29,.84) 65%,rgba(16,11,29,.28))}.hero-content{padding:12rem 5vw 6rem;align-self:end}h1{font-size:54px}.hero-summary{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch}.hero-meta{display:none}.continue-panel{margin-top:-1rem;margin-bottom:4rem}.continue-art{display:none}.continue-panel{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:1rem}.lesson-rail{grid-auto-columns:82vw}.rail-heading{align-items:start}.rail-heading .text-action{display:none}.resource-banner{width:90vw;padding:2rem}.resource-banner h2{font-size:43px}.dialog-body{padding:1.5rem}.dialog-actions{flex-direction:column}.series-progress{grid-template-columns:1fr}.series-progress>div{order:3}.mission-strip{padding:2rem 5vw}}
@media(max-width:900px){.learning-hero{background:var(--night) url('assets/brand/kids-hero-no-text-v2.png') right top/100% auto no-repeat}.learning-hero:before{display:none}.hero-content{padding-top:calc(47.66vw + 2rem)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Audience profile gate — a cinematic front door into the Learning Room */
.profile-gate{position:fixed;inset:0;z-index:90;display:grid;grid-template-rows:minmax(min-content,1fr) auto;gap:1.5rem;place-items:center;padding:6rem 4vw 1rem;overflow:auto;background:rgba(8,5,15,.38);opacity:1;visibility:visible;transition:opacity .42s ease,visibility .42s ease}
.profile-gate:before{content:'';position:fixed;inset:0;z-index:-2;backdrop-filter:blur(19px) saturate(.7);-webkit-backdrop-filter:blur(19px) saturate(.7);background:linear-gradient(180deg,rgba(9,5,18,.5),rgba(9,5,18,.88))}
.profile-gate:after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E")}
.profile-gate.is-dismissed{opacity:0;visibility:hidden;pointer-events:none}
.profile-gate-glow{position:fixed;width:70vw;height:70vw;left:15vw;top:-55vw;border-radius:50%;background:var(--teal);filter:blur(100px);opacity:.17;pointer-events:none}
.profile-gate-panel{width:min(1300px,94vw);text-align:center;position:relative;isolation:isolate;animation:profile-rise .72s cubic-bezier(.2,.8,.2,1) both}
.profile-gate-panel:before{content:'';position:absolute;z-index:-1;left:50%;top:36%;width:min(78vw,1000px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(128,94,210,.22) 0,rgba(20,199,189,.075) 42%,transparent 70%);pointer-events:none}
.profile-home{position:fixed;left:clamp(20px,3vw,46px);top:clamp(25px,4vh,42px);display:flex;align-items:center;gap:.75rem;border:0;padding:.4rem 0;background:none;color:rgba(255,255,255,.68);font:600 10px/1 'Manrope';letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:color .2s,transform .2s}
.profile-home:after{content:'';position:absolute;left:28px;right:0;bottom:0;height:1px;background:var(--aqua);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.profile-home span{color:var(--aqua);font-size:18px;line-height:0;transition:transform .2s}
.profile-home:hover,.profile-home:focus-visible{color:#fff;transform:translateX(-2px);outline:0}
.profile-home:hover:after,.profile-home:focus-visible:after{transform:scaleX(1)}
.profile-home:hover span,.profile-home:focus-visible span{transform:translateX(-3px)}
.profile-gate-mark{position:absolute;z-index:-1;left:50%;top:35%;width:min(64vw,800px);height:min(64vw,800px);object-fit:contain;transform:translate(-50%,-50%);opacity:.18;filter:saturate(1.05) contrast(1.28) drop-shadow(0 35px 80px rgba(0,0,0,.5));pointer-events:none;user-select:none}
.profile-eyebrow{margin:0 0 .9rem;color:var(--aqua);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.profile-gate h1{font-size:clamp(48px,6.5vw,94px);line-height:.88;margin:0 auto;text-transform:uppercase;max-width:none;text-align:center;text-shadow:0 5px 24px rgba(6,3,12,.95)}
.profile-gate-panel>#profile-intro{max-width:650px;margin:1.15rem auto 2.5rem;color:#cfc6d8;font-size:15px;line-height:1.65}
.profile-options{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(.75rem,1.5vw,1.5rem);align-items:start}
.profile-option{appearance:none;border:0;background:transparent;color:#fff;padding:0;cursor:pointer;font-family:inherit;display:grid;justify-items:center;min-width:0}
.profile-orbit{width:min(14vw,178px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;overflow:hidden;border:3px solid rgba(255,255,255,.13);box-shadow:0 20px 50px rgba(0,0,0,.36);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.profile-orbit:after{content:'';position:absolute;inset:7px;border:1px solid rgba(255,255,255,.2);border-radius:50%}
.profile-option:hover .profile-orbit,.profile-option:focus-visible .profile-orbit{transform:translateY(-10px) scale(1.045);border-color:#fff;box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 0 5px rgba(20,199,189,.16)}
.profile-option:focus-visible{outline:0}.profile-option:focus-visible strong{color:var(--aqua)}
.profile-orbit img{width:100%;height:100%;object-fit:cover}
.profile-orbit b{font:clamp(34px,5vw,70px)/1 'Archivo Black';text-transform:uppercase;letter-spacing:-.07em}
.profile-kids .profile-orbit{background:linear-gradient(145deg,#77e6dc,#127b80)}
.profile-teens .profile-orbit{background:radial-gradient(circle at 35% 28%,#aa91eb,#5732a7 58%,#261248)}
.profile-parents .profile-orbit{background:radial-gradient(circle at 35% 28%,#ffc4b7,#e97167 58%,#743342)}
.profile-teachers .profile-orbit{background:radial-gradient(circle at 35% 28%,#f3e9c8,#c6a85e 58%,#57401f);color:#171020}
.profile-young .profile-orbit{background:radial-gradient(circle at 35% 28%,#8ce4ef,#147f9e 58%,#123b59)}
.profile-option strong{margin-top:1.1rem;font:clamp(14px,1.5vw,20px)/1 'Archivo Black';text-transform:uppercase;transition:color .2s}
.profile-option small{margin-top:.45rem;color:#9f95aa;font-size:10px;line-height:1.3}
.profile-browse-all{margin:2.4rem auto 0;border:0;border-bottom:1px solid rgba(255,255,255,.42);padding:.45rem .15rem;background:none;color:#ddd6e4;font:600 10px/1.2 'Manrope';letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.profile-browse-all span{color:var(--aqua);margin-left:.4rem}
.profile-privacy{margin:1.2rem 0 0;color:#756b81;font-size:9px;letter-spacing:.05em}
.profile-chip b{font:inherit}
body.choosing-profile{overflow:hidden}
body.choosing-profile>header,body.choosing-profile>main,body.choosing-profile>footer{pointer-events:none}
@keyframes profile-rise{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:900px){.profile-gate{align-items:start;padding-top:5.5rem}.profile-options{grid-template-columns:repeat(3,1fr);row-gap:1.8rem}.profile-orbit{width:min(24vw,160px)}}
@media(max-width:600px){.profile-gate{padding:5.25rem 5vw 1.5rem}.profile-home{left:18px;top:20px;z-index:2}.profile-gate-mark{top:31%;width:145vw;height:145vw;opacity:.14}.profile-gate-panel:before{top:31%;width:150vw}.profile-gate h1{font-size:45px}.profile-gate-panel>#profile-intro{font-size:12px;margin-bottom:1.5rem;text-shadow:0 2px 14px #08050f}.profile-options{grid-template-columns:repeat(2,1fr);gap:1.25rem .65rem}.profile-orbit{width:min(34vw,138px)}.profile-option:last-child{grid-column:1/-1}.profile-option strong{font-size:13px;margin-top:.75rem}.profile-option small{display:none}.profile-browse-all{margin-top:1.5rem}.profile-privacy{margin-top:.8rem}}
@media(max-width:600px){.profile-chip{padding:.3rem;border:0;background:transparent}.profile-chip span{width:32px;height:32px}.profile-chip b{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}

/* Approved site-wide type hierarchy: lighter headings, regular supporting copy. */
h1,.profile-gate h1,.profile-option strong,.type-card strong,.video-placeholder strong{font-family:Manrope,sans-serif;font-weight:600;line-height:1.1}
.mission-strip strong,.founder-feature strong{font-weight:400}
.story-page #main h2{text-transform:uppercase;line-height:1.1}
.story-page #main h3{line-height:1.2}
.story-page .story-hero h1{font-family:Manrope,sans-serif;font-weight:600;line-height:1.04}
.story-number,.timeline b{font-family:Manrope,sans-serif;font-weight:600}

/* Who We Are — editorial movement story */
.header-join{padding:.65rem .9rem;border:1px solid var(--teal);border-radius:4px;color:var(--teal);text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:600;white-space:nowrap}
.story-hero{min-height:720px;display:grid;grid-template-columns:55% 45%;position:relative;overflow:hidden;background:var(--night)}
.story-hero-copy{padding:8rem 3rem 7rem 6vw;align-self:center;position:relative;z-index:2}
.story-hero h1{font-size:clamp(62px,8vw,125px);line-height:.82;margin:.8rem 0 2rem}
.story-hero h1 em{color:var(--teal);font-style:normal}
.story-hero-copy>p:not(.kicker){max-width:650px;color:#d1c8db;font-size:18px;line-height:1.65}
.story-hero-image{position:relative;background:var(--purple2);overflow:hidden}
.story-hero-image:before{content:'';position:absolute;inset:8% -12% -20% 10%;border-radius:50% 50% 0 0;background:var(--teal);opacity:.75}
.story-hero-image img{position:relative;width:100%;height:100%;object-fit:cover;object-position:48% center;mix-blend-mode:luminosity;filter:contrast(1.08)}
.vertical-note{position:absolute;right:1.2rem;bottom:2rem;z-index:3;writing-mode:vertical-rl;color:rgba(255,255,255,.6);font-size:8px;letter-spacing:.2em;font-weight:600}
.story-intro{padding:8rem 6vw;display:grid;grid-template-columns:.8fr 1fr;gap:4vw;align-items:center;background:var(--purple2);color:#fff}
.story-intro .story-prose>p:last-child{margin-bottom:0}
.story-page #story .story-prose{grid-column:auto}
@media(max-width:1000px){.story-page #story{grid-template-columns:1fr}}
.story-intro .label,.story-intro .story-number{color:var(--aqua)}
.story-number{font:80px/.8 'Archivo Black';color:var(--teal)}
.story-intro h2,.architecture-heading h2,.history-lead h2,.people-heading h2,.join-story h2{font:clamp(46px,6vw,86px)/.9 'Archivo Black';text-transform:uppercase;letter-spacing:-.055em;margin:.4rem 0}
.story-prose{font-size:17px;line-height:1.8;color:#eee7f8}
.brand-architecture{padding:8rem 6vw;background:#0b0712}
.architecture-heading{max-width:900px;margin-bottom:3rem}
.architecture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.architecture-card{min-height:490px;padding:2rem;display:grid;grid-template-rows:auto 285px 1fr;border-radius:12px;overflow:hidden;position:relative}
.architecture-card>span{text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:600;opacity:.72}
.architecture-visual{height:285px;display:flex;align-items:center;justify-content:center;padding:1.4rem 0}
.architecture-card img{display:block;max-width:100%;max-height:230px;width:auto;height:auto;object-fit:contain}
.mace-card .architecture-visual img{max-width:230px;max-height:230px}
.pop-card .architecture-visual img{width:100%;max-width:350px;filter:brightness(0) invert(1)}
.architecture-copy{align-self:end;min-width:0;min-height:112px;display:flex;flex-direction:column;justify-content:flex-start;overflow-wrap:break-word}
.architecture-card h3{font:36px/1 'Archivo Black';margin:0 0 .8rem;text-transform:uppercase}
.architecture-card p{line-height:1.6;font-size:13px;margin:0;max-width:360px}
.mace-card{background:#eee7f8;color:#2d1858}.pop-card{background:var(--teal);color:#092d30}.school-card{background:var(--coral);color:#2d1110}
.architecture-card,.architecture-visual{min-width:0}
.school-card{container-type:inline-size}
.school-card .architecture-visual{justify-content:flex-start}
.school-card strong{font:600 clamp(24px,12cqw,42px)/1.05 Manrope,sans-serif;letter-spacing:-.04em;max-width:100%}
.history-section{padding:8rem 6vw;display:grid;grid-template-columns:.65fr 1.35fr;gap:8vw;background:var(--purple2)}
.history-lead{position:sticky;top:130px;align-self:start}.history-lead>p:last-child{line-height:1.7;color:#ded4ec;max-width:460px}
.timeline{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.25)}
.timeline li{display:grid;grid-template-columns:150px 1fr;gap:2rem;padding:2.2rem 0;border-bottom:1px solid rgba(255,255,255,.25)}
.timeline b{font:32px/1 'Archivo Black';color:var(--aqua);text-transform:uppercase}.timeline span{color:#e7dfef;line-height:1.6}
.people-section{padding:8rem 6vw;background:var(--cream);color:var(--night)}
.people-heading{max-width:1050px;margin-bottom:4rem}.people-heading>p:last-child{max-width:760px;font-size:17px;line-height:1.7;color:#564b60}
.founder-feature{padding:2.5rem;background:var(--night);color:#fff;display:grid;grid-template-columns:210px 1fr;gap:2.5rem;align-items:center;border-radius:12px;margin-bottom:1rem;overflow:hidden}
.founder-portrait{width:210px;aspect-ratio:1;object-fit:cover;object-position:center top;border-radius:50%;border:6px solid var(--teal);box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.founder-feature h3{font:clamp(38px,5vw,70px)/.9 'Archivo Black';text-transform:uppercase;margin:.3rem 0}.founder-feature strong{color:var(--aqua)}.founder-feature p:last-child{color:#c9bfd3;line-height:1.65;max-width:780px}
.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.people-grid article{min-height:420px;background:#e8e0ee;border-top:5px solid var(--purple2);overflow:hidden;display:flex;flex-direction:column}
.people-grid article>img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center top;filter:saturate(.9);transition:transform .35s ease,filter .35s ease}
.people-grid article:hover>img{transform:scale(1.025);filter:saturate(1.05)}
.people-grid article>div{padding:1.5rem;flex:1}.people-grid span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--purple2);font-weight:600}.people-grid h3{font:22px/1 'Archivo Black';text-transform:uppercase;margin:1.4rem 0 .8rem}.people-grid p{font-size:12px;line-height:1.6;color:#594e62}
.team-note{margin:2rem 0 0;color:#74697c;font-size:11px;font-weight:400}
.staff-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1100px;margin:1.5rem auto 0}
.consulting-cta{padding:0 6vw 5rem;background:var(--panel);text-align:center}
.consulting-cta .primary-action{max-width:760px;white-space:normal;line-height:1.6}
.consulting-cta p{color:var(--muted);font-size:14px;margin-top:1rem}
#meet-the-team>.people-heading{margin:0 auto 3rem;text-align:center}
#meet-the-team>.people-heading>p:last-child{margin-left:auto;margin-right:auto}
#meet-the-team .founder-feature{max-width:800px;margin:0 auto;grid-template-columns:1fr;justify-items:center;text-align:center;gap:1.5rem}
#meet-the-team .founder-feature h3{line-height:1.15}
#meet-the-team .founder-feature p:last-child{max-width:640px;margin-bottom:0}
.staff-grid article{min-height:0}
.staff-grid article>img.micah-portrait{object-fit:contain;object-position:center;background:#fff}
.staff-grid article>.portrait-placeholder{display:grid;place-items:center;flex:none;width:100%;aspect-ratio:1;padding:0;background:#dcd1e9;color:var(--purple2);font:400 70px/1 Manrope,sans-serif}
.curriculum-team{border-top:1px solid #d8cde1}
.consulting-section{padding:7rem 6vw;background:var(--panel)}
.scholarships-section{padding:7rem 6vw;background:var(--cream);color:var(--night)}
.scholarships-section>.label{color:var(--purple2)}
.scholarships-section h2{font-size:clamp(46px,6vw,86px);margin:.4rem 0 1.5rem}
.scholarships-intro{max-width:700px;font-size:17px;line-height:1.7;color:#564b60}
.scholarship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3rem}
.scholarship-grid article{border-radius:12px;overflow:hidden;display:flex;flex-direction:column;background:#fff}
.scholarship-art{height:260px;padding:2rem;display:grid;place-items:center}
.scholarship-art img{width:100%;height:100%;min-height:0;object-fit:contain}
.scholarship-copy{padding:2rem;display:flex;flex-direction:column;flex:1;background:#e8e0ee}
.scholarship-copy h3{font-size:28px;line-height:1.2}
.scholarship-copy p{font-size:16px;line-height:1.7;color:#564b60;margin-bottom:2rem}
.scholarship-copy a{align-self:flex-start;margin-top:auto;background:var(--purple2);color:#fff;font-size:14px}
@media(max-width:650px){.scholarships-section{padding:5rem 5vw}.scholarship-grid{grid-template-columns:1fr}.scholarship-art{height:230px}.scholarship-copy{padding:1.5rem}}
.consulting-section h2{font-size:clamp(46px,6vw,86px);margin:.4rem 0;letter-spacing:-.055em}
.consulting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:3rem}
.consulting-grid article{padding:2rem;border:1px solid #4e3d64;border-radius:12px;display:flex;flex-direction:column;min-width:0}
.company-name,.consulting-pop{height:150px;display:flex;align-items:center;justify-content:center;margin-bottom:2rem;background:var(--cream);border-radius:8px;color:var(--purple2);font:600 clamp(24px,2.7vw,40px)/1 Manrope,sans-serif}
.consulting-pop img{width:80%;height:110px;object-fit:contain}
.consulting-grid h3{font:600 22px/1.3 Manrope,sans-serif}
.consulting-grid p{font-weight:400;line-height:1.7;color:var(--muted)}
.consulting-grid a{margin-top:auto;padding-top:1rem;color:var(--aqua);font-weight:600}
@media(max-width:800px){.consulting-grid{grid-template-columns:1fr}.company-name{font-size:36px}}
@media(max-width:600px){.staff-grid{grid-template-columns:1fr}.consulting-section{padding:5rem 5vw}}
.join-story{padding:5rem 6vw;display:grid;grid-template-columns:180px 1fr auto;gap:3rem;align-items:center;background:var(--teal);color:#092d30}
.join-story img{width:160px}.join-story .label{color:#225453}.join-story h2{font-size:clamp(42px,5vw,72px)}.join-story p:last-child{line-height:1.6;max-width:700px}.join-story .primary-action{background:var(--night);color:#fff;white-space:nowrap}
@media(max-width:1000px){.header-join{display:none}.story-hero{grid-template-columns:1fr}.story-hero-image{min-height:480px;order:-1}.story-hero-copy{padding-top:5rem}.story-intro{grid-template-columns:80px 1fr}.story-prose{grid-column:2}.architecture-grid{grid-template-columns:1fr}.architecture-card{min-height:400px}.history-section{grid-template-columns:1fr}.history-lead{position:static}.people-grid{grid-template-columns:1fr 1fr}.join-story{grid-template-columns:130px 1fr}.join-story>a{grid-column:2;justify-self:start}}
@media(max-width:600px){.story-hero{min-height:auto}.story-hero-image{min-height:360px}.story-hero-copy{padding:4rem 5vw 5rem}.story-hero h1{font-size:57px}.story-hero-copy>p:not(.kicker){font-size:15px}.story-intro{padding:5rem 5vw;grid-template-columns:1fr}.story-number{font-size:55px}.story-prose{grid-column:auto}.brand-architecture,.history-section,.people-section{padding:5rem 5vw}.architecture-card{min-height:360px}.timeline li{grid-template-columns:1fr;gap:.8rem}.founder-feature{grid-template-columns:1fr;padding:2rem}.founder-portrait{width:140px}.people-grid{grid-template-columns:1fr}.join-story{grid-template-columns:1fr;padding:4rem 5vw}.join-story img{width:120px}.join-story>a{grid-column:auto}}
