/* Independent characters, restored split hero, expressive curriculum deck. */
.loop-portrait{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1;background:var(--ice)}.loop-portrait>img,.loop-portrait>video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}.loop-portrait>video{opacity:0;transition:opacity 180ms}.loop-portrait>video.is-playing{opacity:1}.portrait-window .loop-portrait{position:absolute;inset:0;aspect-ratio:auto}.portrait-window .loop-portrait>img,.portrait-window .loop-portrait>video{object-position:center 35%}.creator .loop-portrait{background:var(--blue)}.community .loop-portrait{background:var(--light-blue)}.strategy .loop-portrait{background:white}.gimbal-portrait{width:100%;max-width:500px;border-radius:16px;background:var(--light-blue)}.motion-toggle{border:0;background:transparent;color:var(--blue);padding:10px 0;font:600 13px/1.4 Archivo,sans-serif;min-height:44px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.motion-toggle[hidden]{display:none}.section-motion{display:block;margin-block:5px}.scene-caption{font-size:12px;gap:12px}.scene-caption .motion-toggle{white-space:nowrap}.idea-ticket{margin-top:-12px}.audience-heading{align-items:center;gap:20px}.audience-portrait{width:200px;min-width:120px;flex-shrink:0;border-radius:16px;background:var(--paper)}.contact-layout>.cta-portrait{width:100%;margin:0;border-radius:20px;background:var(--ice)}.contact-layout{grid-template-columns:1.2fr .8fr;gap:65px}.contact-layout>.cta-portrait{align-self:center}.contact .section-motion{margin-top:14px}
.curriculum{grid-template-columns:29% 1fr;gap:64px}.curriculum .section-intro h2{font-size:clamp(36px,3.7vw,52px)}.module-stack{min-width:0}.module-stack>li{--card-bg:#cddcff;--card-ink:#000028;--card-line:#00002830;display:grid;grid-template-columns:140px minmax(0,1fr);gap:28px;min-height:440px;padding:36px;background:var(--card-bg);color:var(--card-ink);border:0;border-radius:24px;box-shadow:0 18px 45px #00002812;overflow:hidden;margin-bottom:34px;transform-origin:50% 0}.module-stack>li:nth-child(3n+2){--card-bg:#0000ff;--card-ink:#fff;--card-line:#ffffff55}.module-stack>li:nth-child(3n){--card-bg:#000028;--card-ink:#fff;--card-line:#ffffff40}.module-stack>li:nth-child(4),.module-stack>li:nth-child(7){--card-bg:#e8efff}.module-card-content{min-width:0}.module-stack .module-number,.module-stack .module-number span{color:var(--card-ink);font-size:14px;line-height:1.5}.module-stack .module-number{margin-bottom:18px;display:flex;justify-content:space-between;border-bottom:1px solid var(--card-line);padding-bottom:12px}.module-stack .module-card-header h3{font-size:clamp(29px,2.8vw,40px);line-height:1.05;letter-spacing:-.035em;margin-bottom:20px;text-wrap:balance}.module-stack .module-card-content>p{font-size:17px;line-height:1.6;color:var(--card-ink);margin:0 0 24px}.module-stack .module-topics{margin:0;padding:0;border:0}.module-stack .module-topics li{border:0;border-top:1px solid var(--card-line);padding:10px 0;font-size:15px;line-height:1.55;color:var(--card-ink);background:none}.module-art{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:8px}.module-art>span{font-size:94px;font-weight:700;line-height:.9;letter-spacing:-.04em}.module-art svg{width:122px;height:122px;stroke-width:2;opacity:.8}
@media(min-width:1001px) and (min-height:760px) and (prefers-reduced-motion:no-preference){.module-stack>li{top:calc(36px + var(--module-index)*8px)}}
@media(max-width:1100px){.curriculum{gap:30px;grid-template-columns:30% 1fr}.module-stack>li{padding:28px;grid-template-columns:90px minmax(0,1fr);gap:20px}.module-art>span{font-size:70px}.module-art svg{width:85px;height:85px}.audience-portrait{width:155px}.contact-layout{gap:32px}}
@media(max-width:1000px){.curriculum{grid-template-columns:1fr}.module-stack>li{grid-template-columns:130px minmax(0,1fr);min-height:0}.module-art>span{font-size:90px}.module-art svg{width:110px;height:110px}}
@media(max-width:760px){.scene-caption{font-size:10px;align-items:flex-start}.scene-caption .motion-toggle{font-size:11px;padding-top:0;min-height:36px}.module-stack>li{padding:25px 22px;grid-template-columns:minmax(0,1fr);gap:20px;border-radius:20px;box-shadow:none}.module-art{flex-direction:row;align-items:center;padding:0}.module-art>span{font-size:70px}.module-art svg{width:70px;height:70px}.module-stack .module-card-header h3{font-size:32px}.module-stack .module-card-content>p,.module-stack .module-topics li{font-size:16px}.module-stack .module-number{margin-bottom:18px}.audience-heading{display:block}.audience-portrait{width:100%;max-width:300px;margin:22px 0}.contact-layout{grid-template-columns:1fr}.contact-layout>.cta-portrait{position:relative;right:auto;bottom:auto;opacity:1;max-width:340px;justify-self:center;z-index:auto;margin-top:20px}.idea-ticket{margin-top:0}}
@media(prefers-reduced-motion:reduce){.loop-portrait>video{transition:none}}
.module-stack>li:nth-child(n){background:var(--card-bg)}.module-stack .module-topics li::before{display:none}.classroom-stage{padding-top:45px}.conversation-question{top:-20px;right:0}
@media(min-width:1001px){.curriculum{grid-template-columns:32% 1fr;gap:45px}.curriculum .section-intro h2{font-size:43px}}
/* Loops: once the video plays, the poster underneath is hidden so no second figure or box shows through. */
.loop-portrait>img{transition:opacity 180ms}.loop-portrait:has(>video.is-playing)>img{opacity:0}
/* Transparent loops (WebM VP9 alpha / HEVC alpha): the surface colour comes only from CSS, no masks needed. */
.loop-portrait.is-transparent.invitation-portrait,.loop-portrait.is-transparent.invitation-portrait>img,.loop-portrait.is-transparent.invitation-portrait>video{-webkit-mask-image:none;mask-image:none}
@media(prefers-reduced-motion:reduce){.loop-portrait>img{transition:none}}
