@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--ink: #101923;--paper: #f4f2ec;--white: #fffefb;--lime: #bdf43f;--lime-dark: #91c51e;--teal: #0d776f;--muted: #6d756f;--line: rgba(16, 25, 35, .14);font-family:DM Sans,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}.site-header{height:78px;padding:0 clamp(22px,5vw,82px);display:flex;align-items:center;justify-content:space-between;background:#f4f2ecf0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:absolute;z-index:20;inset:0 0 auto;border-bottom:1px solid rgba(255,255,255,.24)}.brand{display:inline-flex;align-items:center;gap:12px;font:800 14px Manrope,sans-serif;letter-spacing:.05em}.brand b{color:var(--teal)}.brand-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:var(--lime);color:var(--ink)}.brand-mark svg{width:19px}.brand-mark img{width:23px;height:23px;color:var(--ink)}.nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.nav>a:hover{color:var(--teal)}.menu-button{display:none;border:0;background:none;color:var(--ink)}.button{min-height:48px;border:1px solid transparent;padding:0 22px;border-radius:4px;display:inline-flex;gap:10px;align-items:center;justify-content:center;font-weight:700;font-size:14px;cursor:pointer;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button svg{width:18px;height:18px}.button-small{min-height:41px;padding-inline:18px}.button-primary{background:var(--lime);color:var(--ink)}.button-primary:hover{background:#cbff52}.button-dark{background:var(--ink);color:#fff}.button-ghost{color:#fff;border-color:#ffffff6b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.button-light{background:#fff}.button-outline{border-color:var(--line);background:transparent}.button-full{width:100%}.hero{min-height:780px;height:92vh;position:relative;overflow:hidden;display:flex;align-items:center;color:#fff;background:var(--ink)}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#051218f0,#051218b8 42%,#0512181f 75%),linear-gradient(0deg,rgba(5,18,24,.76),transparent 45%)}.hero-content{width:min(700px,86vw);margin-left:clamp(22px,7vw,116px);padding-top:70px;position:relative;z-index:2}.eyebrow{font:800 11px Manrope,sans-serif;letter-spacing:.18em;margin:0 0 18px;color:var(--teal);display:flex;align-items:center;gap:9px}.eyebrow.light{color:var(--lime)}.eyebrow>span{width:20px;height:2px;background:currentColor}h1,h2,h3{font-family:Manrope,sans-serif;margin:0;letter-spacing:-.045em;line-height:1.04}.hero h1{font-size:clamp(50px,6.8vw,96px);max-width:850px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}.hero-copy{max-width:620px;font-size:clamp(16px,1.35vw,20px);line-height:1.65;color:#ffffffc7;margin:28px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.next-class-card{position:absolute;z-index:3;left:clamp(22px,7vw,116px);right:clamp(22px,5vw,82px);bottom:28px;min-height:76px;padding:16px 22px;display:flex;align-items:center;gap:22px;background:#0b1d24b8;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.next-class-card>div{display:flex;flex-direction:column;gap:3px}.next-class-card>div:nth-child(2){flex:1}.next-class-card small{font-size:9px;letter-spacing:.16em;color:#ffffff85}.next-class-card b{font-size:13px}.pulse{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#bdf43f2e}.pulse span{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime)}.proof-strip{min-height:140px;display:grid;grid-template-columns:repeat(4,1fr);background:var(--lime);padding:0 clamp(22px,7vw,116px)}.proof-strip>div{display:flex;align-items:center;justify-content:center;gap:14px;border-right:1px solid rgba(16,25,35,.16)}.proof-strip>div:last-child{border-right:0}.proof-strip b{font:800 clamp(34px,4vw,56px)/1 Manrope,sans-serif;letter-spacing:-.07em}.proof-strip span{font-size:10px;font-weight:800;line-height:1.5;letter-spacing:.12em}.course-intro,.bootcamp,.schedule-section,.faq{padding:clamp(90px,10vw,150px) clamp(22px,7vw,116px)}.course-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:9vw;align-items:end}.section-heading h2,.pricing h2,.ai-section h2{font-size:clamp(42px,5vw,72px);max-width:850px}.course-copy{font-size:18px;line-height:1.7;color:var(--muted)}.mini-points{display:flex;flex-direction:column;gap:12px;margin-top:24px;font-size:14px;color:var(--ink);font-weight:700}.mini-points span{display:flex;align-items:center;gap:10px}.mini-points svg{color:var(--teal)}.project-showcase{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2px;background:var(--ink)}.project-card{min-height:510px;position:relative;overflow:hidden;color:#fff}.project-card img{width:100%;height:100%;object-fit:cover;transition:scale .7s ease}.project-card:hover img{scale:1.035}.project-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#040d14e6,#040d140d 68%)}.project-overlay{position:absolute;z-index:2;left:30px;right:30px;bottom:28px}.project-overlay .number{font:600 11px Manrope;position:absolute;bottom:6px;right:0;color:#ffffff80}.project-overlay p{font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--lime)}.project-overlay h3{font-size:clamp(28px,2.7vw,42px);margin-bottom:18px}.tag,.coming-pill{display:inline-flex;padding:7px 10px;border:1px solid rgba(189,244,63,.6);color:var(--lime);font:800 9px Manrope;letter-spacing:.13em}.tag.muted{color:#fff;border-color:#ffffff52}.section-heading.split{display:grid;grid-template-columns:1.4fr .8fr;gap:9vw;align-items:end;margin-bottom:60px}.section-heading.split>p{margin:0;color:var(--muted);line-height:1.7}.bootcamp{background:var(--white)}.bootcamp-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.bootcamp-grid article{padding:30px;min-height:330px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:42px}.day-top span{font:800 42px Manrope;letter-spacing:-.07em;color:var(--lime-dark)}.day-top b,.bootcamp-grid article>p:first-of-type{font-size:10px;letter-spacing:.12em}.bootcamp-grid h3{font-size:25px;margin:10px 0 18px}.bootcamp-grid article>p{font-size:14px;line-height:1.6;color:var(--muted)}.time-row{display:flex;gap:9px;align-items:center;margin-top:auto;font-size:12px}.time-row svg{color:var(--teal)}.time-row span{margin-left:auto;color:var(--muted)}.schedule-section{background:var(--ink);color:#fff}.schedule-section .section-heading.split>p{color:#ffffff94}.schedule-list{border-top:1px solid rgba(255,255,255,.15)}.schedule-row{min-height:78px;display:grid;grid-template-columns:52px 130px 1.4fr 1fr 22px;gap:22px;align-items:center;border-bottom:1px solid rgba(255,255,255,.13);transition:background .2s}.schedule-row:hover{background:#ffffff0a}.schedule-number{color:var(--lime);font:800 12px Manrope}.schedule-date,.schedule-result{color:#ffffff85;font-size:13px}.schedule-row b{font-size:15px}.pricing{padding:clamp(90px,10vw,150px) clamp(22px,10vw,160px);display:grid;grid-template-columns:1.1fr .8fr;gap:10vw;background:var(--teal);color:#fff;align-items:center}.pricing-copy>p:last-child{color:#ffffffb8;max-width:580px;line-height:1.75;font-size:17px;margin-top:28px}.price-card{background:var(--white);color:var(--ink);padding:clamp(28px,4vw,52px);box-shadow:18px 18px #0837356b}.price-card>p{font:800 10px Manrope;letter-spacing:.18em;color:var(--teal)}.price{display:flex;align-items:flex-start;gap:8px;margin:10px 0 24px}.price small{margin-top:10px;font-weight:800}.price b{font:800 clamp(52px,6vw,78px)/1 Manrope;letter-spacing:-.07em}.price-breakdown{border-block:1px solid var(--line);padding:18px 0;display:flex;flex-direction:column;gap:10px}.price-breakdown span{display:flex;justify-content:space-between;font-size:12px}.price-card ul{list-style:none;padding:12px 0;margin:16px 0;display:grid;gap:12px;font-size:13px}.price-card li{display:flex;align-items:center;gap:10px}.price-card li svg{color:var(--teal)}.price-card .button+.button{margin-top:10px}.ai-section{min-height:650px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.ai-section>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.ai-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(9,14,29,.93),rgba(9,14,29,.56) 53%,transparent)}.ai-content{position:relative;z-index:2;margin-left:clamp(22px,7vw,116px);width:min(680px,86vw)}.ai-content>p:not(.eyebrow){max-width:600px;color:#ffffffb3;line-height:1.7;margin:24px 0}.faq{display:grid;grid-template-columns:.7fr 1fr;gap:9vw;background:var(--white)}.faq-list{border-top:1px solid var(--line)}.faq-list article{border-bottom:1px solid var(--line)}.faq-list button{width:100%;min-height:82px;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;color:var(--ink)}.faq-list button span{font-size:24px;color:var(--teal)}.faq-list article>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.faq-list article>div>p{overflow:hidden;margin:0;color:var(--muted);line-height:1.7;font-size:14px}.faq-list article.open>div{grid-template-rows:1fr}.faq-list article.open>div>p{padding-bottom:28px}.store-cta{margin:0 clamp(22px,7vw,116px) 100px;background:var(--lime);padding:50px 56px;display:flex;align-items:center;justify-content:space-between}.store-cta>div{display:grid;grid-template-columns:42px 1fr}.store-cta .eyebrow{margin:0;color:var(--ink)}.store-cta h2{grid-column:2;font-size:clamp(30px,4vw,54px)}footer{min-height:120px;padding:34px clamp(22px,7vw,116px);display:flex;align-items:center;gap:40px;background:var(--ink);color:#fff;font-size:12px}footer p{color:#ffffff80;flex:1}footer>div{display:flex;gap:24px}footer>span{color:#ffffff5c}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:22px;background:#060e14c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.access-modal{width:min(480px,100%);background:var(--white);padding:44px;position:relative;box-shadow:0 28px 90px #00000057}.modal-icon{width:56px;height:56px;display:grid;place-items:center;background:var(--lime);margin-bottom:28px}.access-modal h2{font-size:38px}.access-modal>p:not(.eyebrow){color:var(--muted);line-height:1.6}.access-modal label{display:block;font-size:12px;font-weight:800;margin:24px 0 8px}.access-modal input{width:100%;height:54px;border:1px solid var(--line);background:#fff;padding:0 15px;outline:0;text-transform:uppercase;margin-bottom:12px}.access-modal input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0d776f1f}.icon-button{border:0;background:transparent;cursor:pointer}.modal-close{position:absolute;top:18px;right:18px}.access-modal small{display:block;text-align:center;color:var(--muted);margin-top:16px}.text-button{border:0;background:none;color:var(--teal);text-decoration:underline;cursor:pointer;padding:0}.form-message{color:#b23c2a;font-size:12px;margin:0 0 12px}.classroom-shell{min-height:100vh;display:grid;grid-template-columns:310px 1fr;background:#edf0ec}.classroom-sidebar{background:var(--ink);color:#fff;padding:30px 24px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.classroom-sidebar .brand b{color:var(--lime)}.student-chip{display:flex;gap:11px;align-items:center;padding:20px 0;margin:32px 0;border-block:1px solid rgba(255,255,255,.12)}.student-chip>span{display:flex;flex-direction:column;font-weight:700;font-size:13px}.student-chip small,.classroom-sidebar nav>p{font-size:8px;letter-spacing:.16em;color:#ffffff6b}.classroom-sidebar nav{display:grid;gap:6px}.lesson-link{display:grid;grid-template-columns:27px 1fr 18px;gap:8px;align-items:center;min-height:52px;padding:8px 10px;border:0;background:transparent;color:#ffffff9e;text-align:left;cursor:pointer}.lesson-link span{font-size:9px;color:var(--lime)}.lesson-link b{font-size:11px;line-height:1.35}.lesson-link.active{background:#bdf43f1c;color:#fff}.lesson-link:disabled{opacity:.45;cursor:not-allowed}.sign-out{margin-top:auto;border:0;background:transparent;color:#ffffff94;display:flex;gap:8px;cursor:pointer}.classroom-main{padding:clamp(30px,5vw,72px)}.classroom-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:32px}.classroom-heading h1{font-size:clamp(38px,5vw,68px);max-width:800px}.classroom-heading>div>p:last-child{color:var(--muted)}.live-pill{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border:1px solid var(--line);background:#fff;font-size:10px;font-weight:800;white-space:nowrap}.live-pill span{width:7px;height:7px;border-radius:50%;background:var(--teal)}.lesson-video{aspect-ratio:16/9;background:#101923;box-shadow:0 20px 50px #0f1f2a26}.lesson-video video{width:100%;height:100%;object-fit:cover}.empty-video,.empty-state{height:100%;display:grid;place-content:center;justify-items:center;text-align:center;color:#ffffffad}.empty-video svg{color:var(--lime)}.materials-panel{background:#fff;padding:30px;margin-top:24px;display:grid;grid-template-columns:.7fr 1fr;gap:40px}.materials-panel h2{font-size:26px}.material-list{display:grid;gap:8px}.material-list>a,.audio-card{min-height:62px;display:grid;grid-template-columns:44px 1fr 20px;align-items:center;gap:12px;padding:8px;border:1px solid var(--line)}.material-icon{width:38px;height:38px;display:grid;place-items:center;background:#e9f2e2;color:var(--teal)}.material-list b,.material-list small{display:block;font-size:11px}.material-list small{color:var(--muted);margin-top:3px}.audio-card{grid-template-columns:44px 1fr;opacity:.66}.hero-images{position:absolute;top:0;right:0;bottom:0;left:0}.hero-images img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity 1.1s ease,transform 7s ease}.hero-images img.active{opacity:1;transform:scale(1)}.hero-dots{position:absolute;z-index:5;right:clamp(22px,5vw,82px);top:50%;display:grid;gap:9px}.hero-dots button{width:8px;height:8px;padding:0;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:transparent;cursor:pointer}.hero-dots button.active{background:var(--lime);border-color:var(--lime);scale:1.35}.hero-copy-transition{animation:heroCopyIn .7s ease both}@keyframes heroCopyIn{0%{opacity:1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.nav-register{border:0;background:transparent;color:var(--teal);font-weight:800;cursor:pointer}.project-showcase{grid-template-columns:1.35fr 1fr 1fr}.project-showcase .project-card:nth-child(4){grid-column:1 / -1;min-height:590px}.project-card.portrait img{object-position:center 18%}.camera-story{padding:clamp(70px,8vw,120px) clamp(22px,7vw,116px);background:#122e38;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:end}.camera-story h2{font-size:clamp(40px,5vw,70px)}.camera-story>p{color:#ffffffb3;line-height:1.8;font-size:17px;margin:0}.free-sprint,.timeline{padding:clamp(90px,10vw,150px) clamp(22px,7vw,116px)}.free-sprint{background:var(--white)}.sprint-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.sprint-grid article{min-height:330px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.sprint-grid article>div{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.sprint-grid article>div span{font:800 42px Manrope;color:var(--lime-dark)}.sprint-grid article>div b,.sprint-grid article>p:first-of-type{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.sprint-grid h3{font-size:25px;margin:10px 0 18px}.sprint-grid article>p{color:var(--muted);line-height:1.65;font-size:14px}.sprint-grid article footer{min-height:0;padding:20px 0 0;margin-top:auto;border-top:1px solid var(--line);background:transparent;color:var(--ink);display:flex;gap:9px;font-size:12px}.sprint-grid article footer svg{color:var(--teal)}.sprint-grid article footer span{margin-left:auto;color:var(--muted)}.timeline{background:var(--paper);overflow:hidden}.timeline-controls{display:flex;flex-direction:column;gap:20px}.timeline-controls p{color:var(--muted);line-height:1.7;margin:0}.timeline-controls>span{display:flex;gap:8px}.timeline-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;cursor:pointer}.timeline-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--teal) transparent;padding:4px 0 24px}.timeline-track article{flex:0 0 min(360px,82vw);min-height:370px;padding:30px;background:var(--ink);color:#fff;scroll-snap-align:start;display:flex;flex-direction:column;position:relative;overflow:hidden}.timeline-track article:after{content:"";width:150px;height:150px;border-radius:50%;background:#bdf43f14;position:absolute;right:-50px;top:-50px}.timeline-track article>div{display:flex;align-items:center;justify-content:space-between}.timeline-track article>div span{font:800 52px Manrope;color:var(--lime);letter-spacing:-.07em}.timeline-track article small{color:#ffffff80}.timeline-track article>p{color:var(--lime);text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:800;margin-top:65px}.timeline-track h3{font-size:30px;margin-top:12px}.timeline-track article>button{margin-top:auto;border:0;border-top:1px solid rgba(255,255,255,.14);padding:18px 0 0;background:transparent;color:#fff;display:flex;justify-content:space-between;cursor:pointer;font-size:12px}.payment-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.payment-details>*{padding:18px;border:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column;gap:6px}.payment-details span{font-size:8px;letter-spacing:.16em;color:#fff9}.payment-details b{font:700 21px Manrope}.module-modal{width:min(650px,100%);max-height:calc(100vh - 44px);overflow:auto;background:var(--white);padding:clamp(32px,5vw,62px);position:relative}.module-modal h2{font-size:clamp(38px,6vw,62px);margin:12px 0}.module-count{font:800 10px Manrope;letter-spacing:.18em;color:var(--teal)}.module-lead{color:var(--muted);font-size:18px}.module-detail{padding:20px 0;border-top:1px solid var(--line)}.module-detail span{font:800 9px Manrope;letter-spacing:.15em;color:var(--teal)}.module-detail p{color:var(--muted);line-height:1.7;margin-bottom:0}.registration-modal{width:min(720px,100%);max-height:calc(100vh - 32px);overflow-y:auto;background:var(--white);padding:clamp(28px,5vw,56px);position:relative}.registration-modal h2,.registration-success h2{font-size:clamp(38px,6vw,62px)}.registration-modal form{display:grid}.registration-modal label{margin:15px 0 7px;font-size:11px;font-weight:800}.registration-modal input{height:50px;border:1px solid var(--line);padding:0 13px;background:#fff}.registration-modal>small{display:block;color:var(--muted);text-align:center;margin-top:14px}.plan-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 8px}.plan-picker button{min-height:125px;padding:18px;border:1px solid var(--line);background:#fff;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer}.plan-picker button.active{border:2px solid var(--teal);background:#edf5ef}.plan-picker button:disabled{opacity:.45;cursor:not-allowed}.plan-picker span{color:var(--muted);font-size:12px}.plan-picker strong{margin-top:auto;color:var(--teal);font:800 18px Manrope}.registration-total{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px;padding:15px;background:#edf0ec}.registration-total span{color:var(--muted);font-size:11px}.registration-total b{color:var(--teal)}.registration-success>p:not(.eyebrow){color:var(--muted);line-height:1.7}.price-signin{display:block;margin:18px auto 0}.access-modal input{text-transform:none}.access-modal input+label{margin-top:10px}.student-chip>b{margin-left:auto;display:flex;align-items:center;gap:4px;color:var(--lime);font-size:11px}.sidebar-head{display:flex;justify-content:space-between;align-items:center}.sidebar-close{display:none;border:0;color:#fff;background:transparent}.classroom-mobile-bar{display:none}.classroom-main{min-width:0}.class-gate{width:min(670px,100%);margin:10vh auto;background:#fff;padding:clamp(28px,6vw,72px);box-shadow:0 24px 70px #1019231a}.gate-icon{width:64px;height:64px;display:grid;place-items:center;background:var(--lime);margin-bottom:28px}.gate-icon svg{width:32px;height:32px}.class-gate h1{font-size:clamp(42px,7vw,72px)}.class-gate>p:not(.eyebrow):not(.form-message){color:var(--muted);line-height:1.7}.class-gate form{display:flex;gap:10px;margin:26px 0 12px}.class-gate input{flex:1;min-width:0;height:52px;border:1px solid var(--line);padding:0 14px;text-transform:uppercase}.dashboard-top{display:grid;grid-template-columns:1fr 300px;gap:50px;align-items:end}.dashboard-top h1{font-size:clamp(38px,5vw,68px)}.dashboard-top>div:first-child>p:last-child{color:var(--muted);line-height:1.6}.progress-card{background:#fff;padding:22px}.progress-card>span{display:flex;align-items:baseline;gap:8px;font-size:11px;font-weight:700}.progress-card>span b{font:800 32px Manrope;color:var(--teal)}.progress-card>div{height:7px;background:#e6e9e3;margin:16px 0 10px;overflow:hidden}.progress-card i{display:block;height:100%;background:var(--lime-dark)}.progress-card small{color:var(--muted)}.class-tabs{display:flex;overflow-x:auto;margin:34px 0 22px;border-bottom:1px solid var(--line)}.class-tabs button{min-height:52px;padding:0 19px;border:0;border-bottom:3px solid transparent;background:transparent;display:flex;gap:8px;align-items:center;white-space:nowrap;cursor:pointer;color:var(--muted);font-size:12px;font-weight:700}.class-tabs button.active{border-color:var(--teal);color:var(--ink)}.class-tabs button span{min-width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:var(--ink);font-size:9px}.lesson-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:24px;align-items:start}.lesson-layout .materials-panel{margin:0;grid-template-columns:1fr}.lesson-complete{width:100%;margin-top:14px;background:var(--ink);color:#fff}.lesson-complete.done{background:#dfe9d9;color:var(--teal)}.practice-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:24px;align-items:start}.terminal-card{background:#0a1016;color:#d9e6df;min-width:0;box-shadow:0 18px 50px #0a10162e}.terminal-top{height:46px;display:flex;align-items:center;gap:7px;padding:0 16px;background:#161e25}.terminal-top>span{width:10px;height:10px;border-radius:50%;background:#ff665c}.terminal-top>span:nth-child(2){background:#ffc24b}.terminal-top>span:nth-child(3){background:#4fc06d}.terminal-top b{margin-left:8px;font-size:10px;color:#81918a}.terminal-output{height:470px;overflow-y:auto;padding:20px}.terminal-output pre{margin:0 0 12px;white-space:pre-wrap;font:12px/1.6 Courier New,monospace}.terminal-output .system{color:var(--lime)}.terminal-output .command{color:#63d7ff}.terminal-output .output{color:#c5cec9}.terminal-input{min-height:62px;display:flex;align-items:center;gap:7px;border-top:1px solid rgba(255,255,255,.1);padding:10px 14px;font:12px Courier New,monospace}.terminal-input span{color:var(--lime);white-space:nowrap}.terminal-input input{flex:1;min-width:50px;border:0;outline:0;background:transparent;color:#fff;font:inherit}.terminal-input button{width:34px;height:34px;border:0;background:var(--lime);display:grid;place-items:center;cursor:pointer}.challenge-list{background:#fff;padding:26px}.challenge-list h2{font-size:30px;margin-bottom:20px}.challenge{width:100%;min-height:83px;padding:13px 0;border:0;border-top:1px solid var(--line);background:transparent;display:grid;grid-template-columns:36px 1fr 35px;gap:9px;text-align:left;cursor:pointer}.challenge>span{width:30px;height:30px;display:grid;place-items:center;background:#e9f2e2;color:var(--teal)}.challenge>div{display:flex;flex-direction:column;gap:3px}.challenge small{color:var(--muted)}.challenge code{width:max-content;padding:3px 5px;background:#edf0ec;font-size:10px}.challenge em{color:var(--teal);font:800 10px Manrope}.challenge.done{opacity:.58}.ai-classroom{display:grid;grid-template-columns:.7fr 1fr;gap:40px;align-items:start}.ai-classroom-copy{padding:36px;background:var(--teal);color:#fff}.ai-classroom-copy h2{font-size:44px}.ai-classroom-copy>p:not(.eyebrow){line-height:1.7;color:#ffffffb3}.mode-switch{display:grid;grid-template-columns:1fr 1fr;margin-top:28px}.mode-switch button{min-height:56px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;display:flex;gap:8px;justify-content:center;align-items:center;cursor:pointer}.mode-switch button.active{background:var(--lime);color:var(--ink)}.chat-card{background:#fff;padding:20px}.chat-messages{min-height:390px;max-height:500px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:8px}.chat-message{max-width:82%;padding:13px 15px;border-radius:14px 14px 14px 3px;background:#edf0ec;line-height:1.55;font-size:13px;white-space:pre-wrap}.chat-message.user{align-self:flex-end;border-radius:14px 14px 3px;background:var(--ink);color:#fff}.chat-card form{display:grid;grid-template-columns:1fr 48px;gap:8px;margin-top:14px}.chat-card textarea{height:82px;resize:vertical;border:1px solid var(--line);padding:12px;font:inherit}.chat-card form button{border:0;background:var(--lime);cursor:pointer}.chat-card>small{display:block;color:var(--muted);margin-top:10px}.question-panel{display:grid;grid-template-columns:.6fr 1fr;gap:50px}.question-panel>div:first-child>p:last-child{color:var(--muted);line-height:1.7}.question-list{display:grid;gap:10px}.question-list article,.empty-question{padding:22px;background:#fff}.question-list article>span{font-size:9px;color:var(--muted)}.question-list article h3{margin:8px 0 15px;font-size:19px}.question-list article p{color:var(--muted);line-height:1.6;font-size:13px}.question-list .tutor-answer{padding:12px;background:#ecf5e8;color:var(--teal)}.empty-question{min-height:220px;display:grid;place-content:center;justify-items:center;color:var(--muted)}.pending-access{min-height:100vh;display:grid;place-items:center;padding:20px;background:#edf0ec}.pending-access .class-gate{margin:0}.pending-access .text-button{display:block;margin:22px auto 0}.code-playground{margin-top:24px;padding:28px;background:#fff}.code-editor-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.code-editor-head h2{font-size:clamp(28px,4vw,44px)}.code-editor-head select{min-width:140px;height:44px;border:1px solid var(--line);padding:0 10px;background:#fff}.code-workspace{display:grid;grid-template-columns:1.35fr .65fr;min-height:360px;background:#0a1016}.code-workspace textarea{min-height:360px;resize:vertical;border:0;border-right:1px solid rgba(255,255,255,.12);outline:0;padding:22px;background:#0a1016;color:#d8e7df;font:13px/1.7 Courier New,monospace;-moz-tab-size:2;tab-size:2}.code-result{display:flex;flex-direction:column;padding:22px;color:#fff}.code-result>span{color:var(--lime);font:800 9px Manrope;letter-spacing:.16em}.code-result pre{flex:1;white-space:pre-wrap;color:#bfcac4;font:12px/1.65 Courier New,monospace}.code-playground>small{display:block;color:var(--muted);line-height:1.6;margin-top:13px}@media(max-width:960px){.menu-button{display:block}.nav{display:none;position:absolute;top:78px;left:0;right:0;padding:24px;background:var(--paper);flex-direction:column;align-items:stretch;gap:20px;box-shadow:0 20px 40px #0000001f}.nav.open{display:flex}.proof-strip{grid-template-columns:repeat(2,1fr);padding-block:18px}.proof-strip>div{min-height:86px}.project-showcase{grid-template-columns:1fr 1fr}.project-card-large{grid-column:1 / -1}.pricing,.faq,.camera-story,.dashboard-top,.lesson-layout,.practice-grid,.ai-classroom,.question-panel,.code-workspace{grid-template-columns:1fr}.code-workspace textarea{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.classroom-shell{grid-template-columns:1fr}.classroom-sidebar{position:fixed;z-index:60;inset:0 auto 0 0;width:min(340px,88vw);height:100vh;transform:translate(-102%);transition:transform .25s ease;box-shadow:20px 0 60px #00000040}.classroom-sidebar.open{transform:translate(0)}.classroom-sidebar nav{grid-template-columns:1fr;overflow-y:auto}.sidebar-close,.classroom-mobile-bar{display:flex}.classroom-mobile-bar{align-items:center;justify-content:space-between;margin-bottom:28px}.classroom-mobile-bar button{border:0;background:var(--ink);color:#fff;padding:11px 14px;display:flex;gap:8px;align-items:center}.classroom-mobile-bar span{display:flex;gap:5px;align-items:center;color:var(--teal);font-weight:700;font-size:12px}.sign-out{margin-top:24px}}@media(max-width:720px){.site-header{height:68px}.hero{min-height:740px;height:100svh}.hero-shade{background:linear-gradient(0deg,#051218f2,#05121861 70%,#05121873)}.hero-content{margin:0 22px;padding-top:30px}.hero h1{font-size:clamp(42px,12vw,60px)}.next-class-card{left:14px;right:14px;bottom:14px;gap:12px;padding:13px}.next-class-card>div:last-child{display:none}.proof-strip{padding-inline:10px}.proof-strip b{font-size:36px}.course-intro,.section-heading.split{grid-template-columns:1fr;gap:32px}.project-showcase{grid-template-columns:1fr}.project-card-large,.project-showcase .project-card:nth-child(4){grid-column:auto}.project-card{min-height:430px}.sprint-grid{grid-template-columns:1fr}.schedule-row{grid-template-columns:40px 1fr 20px;gap:12px;padding-block:16px}.schedule-date{grid-column:2;grid-row:2}.schedule-result{display:none}.pricing{padding-inline:22px}.store-cta{padding:30px 26px;flex-direction:column;align-items:stretch;gap:28px}footer{flex-wrap:wrap}footer p{flex-basis:100%}.access-modal{padding:36px 24px 28px}.classroom-sidebar nav{grid-template-columns:1fr}.materials-panel{grid-template-columns:1fr}.hero-dots{top:auto;right:22px;bottom:118px;display:flex}.camera-story{padding-inline:22px}.payment-details{grid-template-columns:1fr}.timeline,.free-sprint{padding-inline:22px}.classroom-main{padding:20px 14px 40px}.class-gate{margin:2vh auto}.class-gate form{flex-direction:column}.class-tabs button{padding-inline:13px}.terminal-output{height:390px}.terminal-input{align-items:flex-start;flex-wrap:wrap}.terminal-input input{min-width:55%}.ai-classroom-copy{padding:28px}.ai-classroom-copy h2{font-size:36px}.chat-messages{min-height:320px}.plan-picker{grid-template-columns:1fr}.code-editor-head{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}
