@import "https://fonts.googleapis.com/css2?family=Archivo+Black&family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Sans:wght@500;600;700&display=swap";:root{color:#fff7eb;background:#1b2340;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#1b2340;min-width:320px}a{color:inherit}button,input{font:inherit}button{cursor:pointer}html{scroll-behavior:smooth}.landing-page{isolation:isolate;background:#1b2340;align-items:flex-end;min-height:100svh;padding:clamp(24px,5vw,72px);display:flex;position:relative;overflow:hidden}.wall-picture,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.wall-animation{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(1.015)}.wall-picture{z-index:-3;background:#e8503a}.hero-shade{z-index:-2;background:linear-gradient(#1b234014 15%,#1b234047 55%,#1b2340f0 100%);transition:background .65s}.hero-content{z-index:1;opacity:0;filter:blur(10px);max-width:800px;padding-bottom:86px;transition:opacity .76s,transform .76s cubic-bezier(.2,.8,.2,1),filter .76s;transform:translateY(26px)}.eyebrow{color:#ffdfb9;letter-spacing:.13em;text-transform:uppercase;margin:0 0 13px;font-family:Barlow Condensed,sans-serif;font-size:clamp(14px,1.6vw,19px);font-weight:700}h1{color:#fff7eb;letter-spacing:-.065em;text-wrap:balance;margin:0;font-family:Archivo Black,Barlow Condensed,sans-serif;font-size:clamp(43px,7vw,100px);line-height:.94}.subheadline{color:#fff1df;letter-spacing:-.025em;max-width:620px;margin:22px 0 0;font-size:clamp(17px,2.4vw,26px);font-weight:600;line-height:1.24}.subheadline span{color:#1b2340;letter-spacing:.025em;text-transform:uppercase;background:#ffce7a;margin-left:.1em;padding:.03em .27em .07em;font-family:Barlow Condensed,sans-serif;font-size:1.23em;font-weight:900;line-height:.92;display:inline-block;transform:rotate(-2deg);box-shadow:4px 4px #e8503a}.start-button{z-index:2;color:#fff7eb;letter-spacing:.015em;text-transform:uppercase;background:#e8503a;border:2px solid #fff7eb;border-radius:999px;align-items:center;gap:16px;min-height:58px;padding:15px 26px 16px 30px;font-family:Barlow Condensed,sans-serif;font-size:23px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex;position:absolute;bottom:clamp(24px,5vw,72px);right:clamp(24px,5vw,72px);box-shadow:5px 5px #ffce7a}.start-button:hover,.start-button:focus-visible{background:#fa624b;outline:none;transform:translate(-2px,-2px);box-shadow:8px 8px #ffce7a}.intro-label{z-index:1;color:#fff7eb;letter-spacing:.06em;opacity:.9;text-transform:uppercase;margin:0;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:700;position:absolute;top:clamp(20px,3vw,42px);left:clamp(24px,5vw,72px)}.login-link{z-index:3;color:#fff7eb;text-transform:uppercase;background:#1b234066;border:1px solid #fff7ebcc;border-radius:999px;padding:9px 14px;font-size:14px;font-weight:800;position:absolute;top:clamp(20px,3vw,42px);right:clamp(24px,5vw,72px)}.login-page,.unlock-screen{color:#fff7eb;background:#1b2340;place-items:center;min-height:100svh;padding:24px;display:grid}.login-page{background-image:radial-gradient(circle at 84% 12%,#e8503a 0 12%,#0000 12.2%);position:relative}.login-back{color:#ffce7a;background:0 0;border:0;padding:0;font-weight:800;position:absolute;top:26px;left:26px}.login-card{color:#1b2340;background:#fff7eb;border:2px solid #ffce7a;width:min(100%,460px);padding:clamp(30px,7vw,56px);box-shadow:10px 10px #e8503a}.login-card .eyebrow{color:#e8503a}.login-card h1{color:#1b2340;font-size:clamp(44px,7vw,66px)}.login-card>p:not(.eyebrow){color:#5c6071;margin:19px 0 28px;font-weight:600;line-height:1.45}.login-card form{gap:16px;display:grid}.login-card label{gap:7px;font-size:14px;font-weight:800;display:grid}.login-card input{color:#1b2340;background:#fffdf8;border:2px solid #1b2340;border-radius:0;width:100%;padding:13px 14px}.login-card input:focus{outline:3px solid #ffce7a}.login-card form>button{color:#fff7eb;text-transform:uppercase;background:#e8503a;border:2px solid #1b2340;margin-top:5px;padding:13px 17px;font-family:Barlow Condensed,sans-serif;font-size:21px;font-weight:900}.login-card form>button:disabled{cursor:wait;opacity:.65}.login-error{color:#b32323;margin:0;font-size:14px;font-weight:700}.unlock-screen{background:#1b2340;padding:0;position:relative;overflow:hidden}.unlock-screen img{object-fit:cover;width:100%;height:100svh}.unlock-screen p{color:#fff7eb;letter-spacing:.04em;text-transform:uppercase;margin:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(20px,4vw,30px);font-weight:800;position:absolute;bottom:8%}.student-dashboard{color:#1b2340;background:#fff7eb;min-height:100svh}.dashboard-nav{border-bottom:2px solid #1b2340;justify-content:space-between;align-items:center;gap:20px;padding:20px max(24px,50vw - 590px);display:flex}.dashboard-brand{text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:25px;font-weight:900}.dashboard-brand span{color:#e8503a}.dashboard-nav>div:last-child{align-items:center;gap:13px;display:flex}.student-email{text-overflow:ellipsis;white-space:nowrap;max-width:250px;font-size:13px;font-weight:700;overflow:hidden}.dashboard-nav button{background:0 0;border:2px solid #1b2340;padding:7px 10px;font-size:13px;font-weight:800}.dashboard-welcome{color:#fff7eb;background:#1b2340;padding:clamp(55px,9vw,105px) max(24px,50vw - 590px) 60px}.dashboard-welcome .eyebrow{color:#ffce7a}.dashboard-welcome h1{max-width:670px;font-size:clamp(47px,7vw,88px)}.dashboard-welcome h1 em{color:#ffce7a;font-style:normal}.dashboard-welcome>p:last-child{max-width:510px;margin:21px 0 0;font-size:18px;font-weight:600;line-height:1.45}.dashboard-content{grid-template-columns:300px 1fr;gap:42px;width:min(1180px,100% - 48px);margin:0 auto;padding:55px 0;display:grid}.lesson-rail{align-content:start;gap:9px;display:grid}.lesson-rail button{color:#1b2340;text-align:left;background:0 0;border:2px solid #0000;gap:4px;padding:14px;font-size:17px;font-weight:800;display:grid}.lesson-rail button span{color:#e8503a;letter-spacing:.08em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:900}.lesson-rail button.active{background:#ffce7a;border-color:#1b2340;box-shadow:4px 4px #1b2340}.lesson-panel{background:#fffdf8;border:2px solid #1b2340;min-height:345px;padding:clamp(28px,5vw,55px);box-shadow:7px 7px #e8503a}.lesson-kicker{color:#e8503a;letter-spacing:.09em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:16px;font-weight:900}.lesson-panel h2{letter-spacing:-.06em;margin:20px 0 14px;font-family:Archivo Black,sans-serif;font-size:clamp(32px,5vw,58px);line-height:.96}.lesson-panel>p{max-width:570px;font-size:17px;font-weight:600;line-height:1.45}.lesson-actions{flex-wrap:wrap;gap:12px;margin-top:31px;display:flex}.lesson-actions button{text-transform:uppercase;border:2px solid #1b2340;padding:12px 17px;font-family:Barlow Condensed,sans-serif;font-size:19px;font-weight:900}.primary-action{color:#fff7eb;background:#e8503a}.secondary-action{color:#1b2340;background:#ffce7a}.is-revealed .wall-picture{opacity:.62;transition:opacity .7s}.is-revealed .hero-content{opacity:1;filter:blur();transform:translateY(0)}.is-revealed .hero-shade{background:linear-gradient(#1b23401a 8%,#1b23406b 53%,#1b2340f5 100%)}.course-page{color:#1b2340;background:#fff7eb;min-height:100svh;overflow:hidden}.course-nav{justify-content:space-between;align-items:center;width:min(1180px,100% - 48px);margin:0 auto;padding:23px 0;display:flex}.brand-button,.back-to-start{color:#1b2340;text-transform:uppercase;background:0 0;border:0;padding:0;font-family:Barlow Condensed,sans-serif;font-size:24px;font-weight:900}.brand-button span{color:#e8503a}.nav-question{border:2px solid #1b2340;border-radius:999px;padding:10px 15px;font-size:14px;font-weight:700;text-decoration:none}.course-hero{color:#fff7eb;background:#1b2340;min-height:59svh;padding:clamp(54px,11vw,136px) max(24px,50vw - 590px) 70px;position:relative;overflow:hidden}.course-hero .eyebrow{color:#ffce7a}.course-hero>:not(.student-orbit){z-index:1;position:relative}.course-hero h1,.section-heading h2,.outcome-card h2{letter-spacing:-.055em;font-family:Archivo Black,sans-serif;line-height:.93}.course-hero h1{max-width:800px;font-size:clamp(48px,8vw,105px)}.course-hero h1 em{color:#ffce7a;font-style:normal}.course-hero>p:not(.eyebrow){max-width:500px;margin:28px 0;font-size:19px;font-weight:600;line-height:1.4}.enroll-button{z-index:1;color:#fff7eb;text-transform:uppercase;background:#e8503a;border:2px solid #ffce7a;border-radius:999px;align-items:center;gap:15px;margin:4px 18px 0 0;padding:14px 25px 15px;font-family:Barlow Condensed,sans-serif;font-size:22px;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex;position:relative;box-shadow:4px 4px #ffce7a}.enroll-button:hover,.enroll-button:focus-visible{outline:none;transform:translate(-2px,-2px);box-shadow:7px 7px #ffce7a}.student-orbit{width:min(40vw,555px);height:min(43vw,550px);position:absolute;bottom:20px;right:max(4vw,50vw - 590px)}.orbit-photo{z-index:1;object-fit:cover;border:6px solid #fff7eb;border-radius:50%;position:absolute;box-shadow:7px 7px #e8503a}.orbit-photo-main{object-position:50% 38%;background:#ffce7a;width:42%;height:42%;bottom:0;right:0}.orbit-photo-code{object-position:54% 50%;width:29%;height:29%;top:1%;right:4%}.orbit-photo-study{object-position:50% 41%;width:28%;height:28%;bottom:8%;left:3%}.scroll-cue{color:#fff7eb;border-bottom:2px solid #ffce7a;gap:12px;padding-bottom:7px;font-weight:700;text-decoration:none;display:inline-flex}.course-section{width:min(1180px,100% - 48px);margin:0 auto;padding:clamp(74px,11vw,132px) 0}.section-heading{max-width:610px}.section-heading .eyebrow,.outcome-card .eyebrow{color:#e8503a}.section-heading h2,.outcome-card h2{margin:0;font-size:clamp(41px,6vw,73px)}.section-heading>p:last-child{color:#5c6071;margin:20px 0 0;font-size:18px;font-weight:600;line-height:1.45}.day-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:46px;display:grid}.day-card{background:#fffdf8;border:2px solid #1b2340;min-height:170px;transition:transform .22s,box-shadow .22s,background .22s;position:relative;box-shadow:5px 5px #1b2340}.day-card:nth-child(2),.day-card:nth-child(3){background:#ffce7a}.day-card:nth-child(4){color:#fff7eb;background:#e8503a}.day-card:hover{transform:translate(-4px,-4px);box-shadow:10px 10px #1b2340}.domain-toggle{width:100%;min-height:170px;color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:26px;display:flex}.day-number{letter-spacing:-.035em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:clamp(25px,3vw,38px);font-weight:900;line-height:.98}.card-arrow{border:2px solid;border-radius:50%;flex:none;place-items:center;width:37px;height:37px;font-size:27px;font-weight:400;line-height:1;transition:transform .26s;display:grid}.is-open .card-arrow{transform:rotate(45deg)}.domain-details{opacity:0;max-height:0;padding:0 26px;transition:max-height .52s,padding .42s,opacity .26s;overflow:hidden}.is-open .domain-details{opacity:1;max-height:700px;padding:0 26px 28px}.domain-intro{margin:0 0 18px;font-size:15px;font-weight:600;line-height:1.35}.road-title{color:inherit;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:900}.learning-road{gap:11px;margin:0;padding:0;list-style:none;display:grid;position:relative}.learning-road:before{content:"";opacity:.48;border-left:2px dashed;position:absolute;top:17px;bottom:17px;left:15px}.learning-road li{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.road-dot{color:#1b2340;background:#fff7eb;border:2px solid;border-radius:50%;flex:0 0 31px;place-items:center;width:31px;height:31px;font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:900;display:grid}.learning-road li>div{flex-wrap:wrap;align-items:baseline;gap:5px 9px;display:flex}.learning-road strong{letter-spacing:.04em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:16px;font-weight:900}.learning-road li>div>span{font-size:14px;font-weight:600}.learning-road .project-step .road-dot{color:#fff7eb;background:#1b2340}.day-card:nth-child(4) .learning-road .project-step .road-dot{color:#e8503a;background:#fff7eb}.outcomes-section{padding-top:0}.outcome-card{color:#fff7eb;background:#e8503a;border-radius:26px;padding:clamp(35px,7vw,85px)}.outcome-card .eyebrow{color:#1b2340}.outcome-card h2 span{color:#ffce7a}.outcome-card ul{grid-template-columns:repeat(3,1fr);gap:24px;margin:43px 0 0;padding:0;list-style:none;display:grid}.outcome-card li{border-top:2px solid #ffce7a;padding-top:13px;font-size:17px;font-weight:700;line-height:1.3}.faq-section{padding-top:0}.faq-list{border-top:2px solid #1b2340;margin-top:44px}.faq-list details{border-bottom:2px solid #1b2340}.faq-list summary{justify-content:space-between;align-items:center;padding:21px 0;font-size:clamp(20px,2.7vw,29px);font-weight:800;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#e8503a;font-size:30px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:#5c6071;max-width:650px;margin:-3px 0 23px;font-size:17px;font-weight:600;line-height:1.45}.question-form{color:#fff7eb;background:#1b2340;margin-top:50px;padding:clamp(24px,4vw,42px)}.question-form label{letter-spacing:-.05em;margin-bottom:17px;font-family:Archivo Black,sans-serif;font-size:clamp(26px,4vw,42px);display:block}.question-row{gap:12px;display:flex}.question-row input{color:#1b2340;background:#fff7eb;border:2px solid #0000;border-radius:0;outline:none;flex:1;min-width:0;padding:16px 18px;font-weight:600}.question-row input:focus{border-color:#ffce7a}.question-row button{color:#1b2340;text-transform:uppercase;background:#ffce7a;border:2px solid #ffce7a;padding:13px 21px;font-family:Barlow Condensed,sans-serif;font-size:21px;font-weight:900}.form-note{color:#ffce7a;margin:15px 0 0;font-size:14px;font-weight:600}.course-footer{color:#fff7eb;background:#1b2340;justify-content:space-between;align-items:center;gap:20px;padding:27px max(24px,50vw - 590px);display:flex}.course-footer .back-to-start{color:#fff7eb;font-size:18px}.course-footer p{color:#ffce7a;margin:0;font-weight:800}@media (width<=560px){.landing-page{padding:24px 20px}.wall-animation{object-position:48% center}.hero-content{padding-bottom:88px}h1{font-size:clamp(40px,12vw,58px)}.subheadline{margin-top:17px;font-size:18px}.start-button{min-height:54px;padding:13px 20px 14px 24px;font-size:21px;bottom:24px;right:20px}.intro-label{font-size:13px;top:22px;left:20px}.login-link{font-size:12px;top:20px;right:20px}.course-nav,.course-section{width:min(100% - 40px,1180px)}.course-nav{padding:18px 0}.brand-button{font-size:21px}.nav-question{padding:8px 11px;font-size:12px}.course-hero{min-height:63svh;padding:74px 20px 54px}.course-hero h1{font-size:clamp(44px,13vw,62px)}.course-hero>p:not(.eyebrow){margin:22px 0;font-size:17px}.enroll-button{margin-top:0;padding:12px 20px 13px;font-size:20px}.student-orbit{opacity:.34;width:255px;height:310px;bottom:-25px;right:-22px}.course-section{padding:75px 0}.day-grid{grid-template-columns:1fr;margin-top:34px}.day-card,.domain-toggle{min-height:144px}.outcomes-section,.faq-section{padding-top:0}.outcome-card{border-radius:17px}.outcome-card ul{grid-template-columns:1fr;gap:17px;margin-top:33px}.question-row{flex-direction:column}.question-row button{min-height:51px}.course-footer{flex-direction:column;align-items:flex-start;padding:24px 20px}.login-card{box-shadow:6px 6px #e8503a}.student-email{display:none}.dashboard-content{grid-template-columns:1fr;gap:28px;width:min(100% - 40px,1180px);padding:35px 0}.lesson-rail{grid-template-columns:none;grid-auto-columns:minmax(155px,1fr);grid-auto-flow:column;padding-bottom:8px;overflow-x:auto}.lesson-rail button{min-height:78px}}@media (prefers-reduced-motion:reduce){.hero-content{opacity:1;filter:none;transition:none;transform:none}.hero-shade,.start-button{transition:none}}
