@font-face{font-family:Geist;src:url('/academy/assets/Geist-Variable.woff2') format('woff2-variations');font-weight:100 900;font-display:swap}
:root{--paper:#fff;--ink:#1d2025;--ink-soft:#454a54;--muted:#585e69;--blue:#1d5ce0;--blue-strong:#164ec2;--blue-deep:#0f3d99;--line:#e5e7eb;--surface:#f3f4f6;--surface-2:#e9ebef;--warm:#fbf7f0;--warm-line:#e3dccd;--card:12px;--input:8px;--page:78rem;--prose:44rem;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-padding-top:5rem;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 Geist,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:3px}:focus-visible{outline:2px solid var(--blue);border-radius:4px}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}.page-shell{width:100%;max-width:var(--page);margin-inline:auto;padding-inline:2rem}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--paper) 92%,transparent);backdrop-filter:blur(16px)}.header-inner{min-height:4.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand img,.header-inner>a>img{width:5.25rem;height:auto}nav{display:flex;align-items:center;gap:1.75rem;font-size:.875rem;font-weight:550}nav a:hover{color:var(--blue)}.nav-cta{min-height:2.75rem;display:inline-flex;align-items:center;padding:0 1rem;color:#fff;background:var(--blue);border-radius:var(--input)}.nav-cta:hover{color:#fff;background:var(--blue-strong)}
.member-header nav{flex:1;margin-left:.75rem}.member{display:flex;align-items:center;gap:.6rem;padding-left:1.35rem;border-left:1px solid var(--line)}.member-id{display:grid;justify-items:end;max-width:15rem}.member-id strong{max-width:100%;overflow:hidden;font-size:.8125rem;font-weight:650;letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis}.member-progress{max-width:100%;min-height:1rem;overflow:hidden;color:var(--muted);font-size:.6875rem;line-height:1rem;white-space:nowrap;text-overflow:ellipsis}.member-resume{min-height:2.75rem;display:inline-flex;align-items:center;gap:.3rem;padding:0 1rem;border:0;border-radius:var(--input);color:#fff;background:var(--blue);font-size:.8125rem;font-weight:600;white-space:nowrap;cursor:pointer}.member-resume:hover{background:var(--blue-strong)}.member-exit{min-height:2.75rem;padding:0 .55rem;border:0;color:var(--muted);background:transparent;font-size:.8125rem;font-weight:550;white-space:nowrap;cursor:pointer}.member-exit:hover{color:var(--ink)}.member .corto{display:none}
.hero{padding-top:clamp(2.5rem,5vw,4.25rem);padding-bottom:clamp(2rem,4vw,3.25rem)}.hero-copy{max-width:56rem}.eyebrow,.kicker{margin:0 0 1rem;color:var(--blue);font-size:.75rem;line-height:1.2;font-weight:650;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3{margin-top:0;text-wrap:balance}h1{max-width:56rem;margin-bottom:1.25rem;font:300 clamp(2.75rem,5vw,4rem)/1 Geist,sans-serif;letter-spacing:-.035em}h2{margin-bottom:1rem;font:300 clamp(2.25rem,4vw,2.75rem)/1.05 Geist,sans-serif;letter-spacing:-.028em}.lead,.intro{max-width:var(--prose);margin:0;color:var(--ink-soft);font-size:1.1875rem;line-height:1.6}.hero-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.6rem}.hero-meta span{padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.showcase-band{padding-block:clamp(2rem,4vw,3.5rem);background:var(--surface);border-block:1px solid var(--line)}.watch-layout{display:grid;grid-template-columns:minmax(0,1fr) 21rem;gap:1rem;align-items:stretch}.video-column{min-width:0}.video-heading{height:5.8rem;display:flex;align-items:center;gap:1.15rem;overflow:hidden;padding:.9rem 1.05rem;margin-bottom:.65rem;border:1px solid var(--line);border-radius:var(--card);background:var(--paper)}.video-heading>div{min-width:0}.video-heading img{width:5.75rem;height:auto;flex:0 0 auto}.video-heading p{margin:0 0 .2rem;color:var(--blue-deep);font-size:.6875rem;font-weight:700;letter-spacing:.065em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-heading h2{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;margin:0;font-size:1.35rem;line-height:1.15;font-weight:600;letter-spacing:-.02em}.player{overflow:hidden;background:var(--ink);border:1px solid var(--ink);border-radius:var(--card);box-shadow:0 2px 8px -2px hsl(220 20% 0%/5%),0 4px 16px -4px hsl(220 20% 0%/5%)}.video-stage{position:relative}.video-stage video{width:100%;aspect-ratio:16/9;background:var(--ink)}video::cue{font-family:Geist,system-ui,sans-serif;font-size:clamp(.75rem,1.35vw,1.35rem)}.end-screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(1.5rem,5vw,4rem);color:#fff;background:linear-gradient(180deg,transparent 12%,rgb(15 19 26/.92) 78%)}.end-screen[hidden]{display:none}.end-screen p{margin:0 0 .45rem;color:#9eb6fa;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.end-screen h3{max-width:34rem;margin:0 0 1.2rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.08}.end-screen button{min-height:2.8rem;padding:0 1rem;border:0;border-radius:8px;color:#fff;background:var(--blue);font-weight:650;cursor:pointer}.video-actions{min-height:3.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding-top:.75rem}.now-playing{margin:0;color:var(--muted);font-size:.8125rem;font-weight:550;font-variant-numeric:tabular-nums}.now-playing[data-done=true]{color:var(--blue-deep)}.caption-toggle{min-height:2.75rem;border:0;cursor:pointer;color:var(--ink-soft);background:transparent}.caption-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:0 .8rem;font-size:.8125rem;font-weight:600}.caption-toggle span{min-width:2rem;padding:.08rem .3rem;border:1px solid currentColor;border-radius:4px;text-align:center;font-size:.6875rem;letter-spacing:.08em}.caption-toggle[aria-pressed=true]{color:var(--blue-deep)}.next-strip{width:100%;min-height:4.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.7rem;padding:.8rem 1rem;border:1px solid #cbd8fb;border-radius:var(--card);color:var(--ink);background:#eef3ff;text-align:left;cursor:pointer}.next-strip span{display:grid}.next-strip small{color:var(--blue-deep);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.next-strip strong{font-size:.9rem}.next-strip b{color:var(--blue-deep);font-size:.8rem;white-space:nowrap}
.chapter-panel{min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:var(--card)}.chapter-heading{padding:1.35rem;border-bottom:1px solid var(--line)}.chapter-heading .eyebrow{margin-bottom:.6rem}.chapter-heading h2{margin-bottom:.55rem;font-size:1.75rem}.chapter-heading p:last-child{margin:0;color:var(--muted);font-size:.8125rem;line-height:1.5}.chapter-list{min-height:0;max-height:36.9rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--surface-2) transparent}.chapter{width:100%;min-height:4.25rem;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.65rem;align-items:start;padding:.8rem 1.1rem;border:0;border-bottom:1px solid var(--line);cursor:pointer;color:var(--ink);background:transparent;text-align:left;transition:background-color 180ms var(--ease),box-shadow 180ms var(--ease)}.chapter:hover,.chapter:focus-visible{color:var(--ink);background:var(--surface)}.chapter:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}.chapter[aria-current=true]{box-shadow:inset 3px 0 var(--blue);color:var(--ink);background:#eef3ff}.chapter[aria-current=true]:hover,.chapter[aria-current=true]:focus-visible{color:var(--ink);background:#e6edff}.chapter-number{color:var(--muted);font-size:.6875rem;font-weight:650;letter-spacing:.06em}.chapter:hover .chapter-number,.chapter:focus-visible .chapter-number,.chapter[aria-current=true] .chapter-number{color:var(--blue-deep)}.chapter-copy{min-width:0;display:flex;align-items:start;justify-content:space-between;gap:.5rem;font-size:.8125rem;line-height:1.35;font-weight:600}.chapter-copy>span{min-width:0;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.chapter-copy small{flex:0 0 auto;color:var(--muted);font-size:.6875rem;font-variant-numeric:tabular-nums}.chapter:hover .chapter-copy small,.chapter:focus-visible .chapter-copy small,.chapter[aria-current=true] .chapter-copy small{color:var(--muted)}.chapter-back{width:100%;min-height:3rem;padding:.6rem 1.1rem;border:0;border-bottom:1px solid var(--line);cursor:pointer;color:var(--blue-deep);background:var(--surface);text-align:left;font-size:.8125rem;font-weight:600}.notice{max-width:66rem;margin:1.4rem 0 0;color:var(--muted);font-size:.75rem;line-height:1.65}
.academy-band{padding-block:clamp(5rem,9vw,8rem)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2rem}.section-head>div:first-child{max-width:45rem}.section-intro{max-width:40rem;margin:0;color:var(--muted);font-size:1.0625rem}.filters{display:flex;gap:.6rem;flex-shrink:0}input,select{min-height:2.75rem;max-width:100%;padding:.6rem .8rem;border:1px solid var(--line);border-radius:var(--input);color:var(--ink);background:var(--paper)}.count{margin:0 0 1.25rem;color:var(--muted);font-size:.8125rem}.library{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.lesson{min-height:21rem;display:flex;flex-direction:column;padding:1.4rem;border:1px solid var(--line);border-radius:var(--card);background:var(--paper)}.lesson-top{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.6875rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.lesson h3{margin:2rem 0 .75rem;font:600 1.375rem/1.25 Geist,sans-serif;letter-spacing:-.02em}.lesson>p:not(.status){margin:0 0 1.25rem;color:var(--muted);font-size:.875rem}.watch{align-self:start;min-height:2.75rem;margin-bottom:.8rem;padding:0 1rem;border:0;border-radius:var(--input);cursor:pointer;color:#fff;background:var(--blue);font-weight:600}.watch:hover{background:var(--blue-strong)}.lesson details{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);font-size:.8125rem}.lesson summary{min-height:2rem;cursor:pointer;color:var(--blue);font-weight:600}.lesson ol{padding-left:1.2rem}.lesson li{margin-bottom:.6rem}.lesson-progress{margin:.9rem 0 .25rem}.lesson-progress progress{display:block;width:100%;height:5px;margin:.5rem 0;accent-color:var(--blue)}.progress-copy{color:var(--ink-soft);font-size:.8125rem;font-weight:550}.blocker{padding:.75rem;border-radius:var(--input);color:var(--ink-soft);background:var(--warm)}.status{margin:.8rem 0 0;color:var(--muted);font-size:.75rem}.empty{grid-column:1/-1;padding:2rem;border:1px dashed var(--line)}
.transcript-band{padding-block:clamp(4rem,8vw,7rem);background:var(--warm);border-top:1px solid var(--warm-line)}.transcript{columns:2;column-gap:3rem;max-width:62rem;margin-top:2rem}.transcript p{break-inside:avoid;margin:0 0 1.5rem;color:var(--ink-soft);font-size:.875rem}.transcript span{display:block;margin-bottom:.35rem;color:var(--blue);font-size:.6875rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}footer{color:#f3f4f6;background:#0f131a}.footer-inner{min-height:8rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;font-size:.8125rem}.footer-inner img{width:5.75rem;height:auto}.footer-inner p{color:#9ea3ae;text-align:center}.footer-inner a{justify-self:end;color:#c7d8ff}
@media(max-width:62rem){.member-header nav{display:none}.member{padding-left:0;border-left:0}}
@media(max-width:68rem){.watch-layout{grid-template-columns:1fr}.chapter-list{display:grid;grid-template-columns:repeat(2,1fr);max-height:24rem}.chapter:nth-child(odd){border-right:1px solid var(--line)}.section-head{display:block}.filters{margin-top:1.5rem}.library{grid-template-columns:repeat(2,1fr)}}
@media(max-width:42rem){.page-shell{padding-inline:1.1rem}.header-inner{min-height:4rem;gap:.5rem}.nav-cta{min-height:2.5rem}.member{gap:.2rem}.member-id strong{display:none}.member-id{max-width:8rem}.member .largo{display:none}.member .corto{display:inline}.member-resume{padding:0 .8rem}.hero{padding-top:2.25rem;padding-bottom:2rem}h1{font-size:clamp(2.25rem,9vw,3rem)}.watch-layout{margin-inline:-1.1rem}.video-heading{margin-inline:1.1rem}.video-heading img{width:4.8rem}.video-heading h2{font-size:1.05rem}.player,.chapter-panel{border-inline:0;border-radius:0}.video-actions{padding-inline:1.1rem}.chapter-list{display:block;max-height:24rem}.chapter:nth-child(odd){border-right:0}.filters{flex-direction:column}.library{grid-template-columns:1fr}.transcript{columns:1}.footer-inner{grid-template-columns:1fr;padding-block:2rem}.footer-inner p{margin:0;text-align:left}.footer-inner a{justify-self:start}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
.site-header,main,footer{max-width:none;margin:0;padding:0}.hero{display:block}

/* Native iPhone footage stays portrait and readable, with the heading outside. */
.video-stage.portrait{background:var(--surface);display:flex;justify-content:center}
.video-stage.portrait video{display:block;width:auto;max-width:100%;height:min(76vh,850px);aspect-ratio:1080/2340;object-fit:contain;background:var(--surface)}
