@font-face{font-family:Manrope;src:url('/fonts/manrope-cyrillic.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;src:url('/fonts/manrope-latin.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#f8f9fc;--surface:#fff;--ink:#172033;--text:#263248;--muted:#526077;--quiet:#718097;--line:#e2e8f1;--blue:#5264e9;--blue-deep:#3446c9;--navy:#172339;--lime:#d3f76b;--radius:22px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #6677fa;outline-offset:3px}
::selection{background:#d4d9ff;color:#172339}[hidden]{display:none!important}
.shell{width:min(100% - 48px,1240px);margin-inline:auto}
.skip-link{position:fixed;top:-70px;left:20px;z-index:100;padding:11px 16px;background:#fff;border:1px solid var(--line);border-radius:9px}.skip-link:focus{top:12px}
.section{padding:112px 0}.section-kicker{display:block;margin-bottom:23px;color:#6475a9;font-size:11px;font-weight:800;letter-spacing:.17em}.section-kicker-light{color:#b9c9ec}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:38px}
.section-heading h2,.faq-intro h2,.organization-intro h2{margin:0;font-size:clamp(38px,4.2vw,54px);line-height:1.12;letter-spacing:-.065em;font-weight:800}
.section-heading>p{max-width:350px;margin:0 0 5px;color:var(--muted);font-size:16px}.accent-ink{color:var(--blue)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:52px;padding:0 22px;border:1px solid transparent;border-radius:13px;font-size:13px;font-weight:800;white-space:nowrap;transition:background .17s,transform .17s,border-color .17s,box-shadow .17s}
.button:hover{transform:translateY(-2px)}.button span:last-child{font-size:19px;line-height:1;font-weight:500}
.button-primary{color:#fff;background:var(--blue);box-shadow:0 8px 18px rgba(82,100,233,.18)}.button-primary:hover{background:var(--blue-deep)}
.button-dark{color:#fff;background:var(--navy)}.button-dark:hover{background:#2b3d5e}.button-outline{color:var(--ink);border-color:#d9e0eb;background:rgba(255,255,255,.78)}.button-outline:hover{border-color:#9ba7d6;background:#fff}
.site-header,.detail-header{position:sticky;top:0;z-index:50;background:rgba(248,249,252,.93);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(213,221,234,.78)}
.header-inner{min-height:76px;display:flex;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:22px;letter-spacing:-.075em;font-weight:800}.brand-dot{color:var(--blue)}
.brand-mark{display:grid;grid-template-columns:repeat(2,6px);grid-template-rows:repeat(2,6px);gap:3px;transform:rotate(-20deg)}.brand-mark i{width:6px;height:6px;border-radius:2px;background:var(--blue)}.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){opacity:.5}
.desktop-nav{display:flex;align-items:center;gap:25px;margin-left:auto}.desktop-nav a,.detail-header nav a{font-size:12px;font-weight:800;color:#536179}.desktop-nav a:hover,.detail-header nav a:hover{color:var(--blue)}.header-cta{min-height:42px;padding:0 15px;gap:14px;font-size:12px}.menu-toggle{display:none}.mobile-menu{display:none}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 75% 38%,#edf0ff 0%,transparent 38%),linear-gradient(#fbfcff,#f7f9fc)}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(203,211,229,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(203,211,229,.35) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent 24%,black 100%);pointer-events:none}
.hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,49fr) minmax(0,51fr);align-items:center;gap:30px;min-height:670px;padding:72px 0}
.hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:11px;color:#62718e;font-size:11px;font-weight:800;letter-spacing:.16em}.status-dot{width:8px;height:8px;border-radius:50%;background:#7dca9b;box-shadow:0 0 0 5px rgba(125,202,155,.15)}
.hero h1{margin:24px 0 27px;font-size:clamp(64px,6.7vw,88px);line-height:1.02;letter-spacing:-.09em;font-weight:800}.hero h1>span:not(.hero-period){color:var(--blue)}.hero-period{color:#adc0fc}
.hero-lead{margin:0 0 9px;font-size:19px;line-height:1.35;font-weight:800;letter-spacing:-.02em}.hero-intro{max-width:530px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-tracks{display:flex;flex-wrap:wrap;gap:8px;margin-top:38px}.hero-tracks span{padding:7px 11px;background:#fff;border:1px solid #e0e6f0;border-radius:7px;font-size:10px;font-weight:800;color:#697890}
.hero-visual{position:relative;height:550px;isolation:isolate}.visual-grid{position:absolute;inset:40px 0 10px 40px;border-radius:50%;border:1px dashed #cbd4ed}.visual-grid:before,.visual-grid:after{content:"";position:absolute;inset:65px;border:1px solid #dfe5f2;border-radius:50%}.visual-grid:after{inset:120px}
.visual-main{position:absolute;inset:75px 76px 70px 84px;padding:32px;background:linear-gradient(145deg,#192942,#1e2b50);border-radius:30px;color:#fff;box-shadow:0 25px 65px rgba(29,46,90,.2);display:flex;flex-direction:column}
.visual-caption{color:#acbad9;font-size:10px;font-weight:800;letter-spacing:.2em}.visual-main strong{font-size:clamp(39px,4.2vw,59px);line-height:1.06;letter-spacing:-.075em;margin:auto 0;font-weight:800}.visual-main em{font-style:normal;color:#c6d4ff}.visual-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.18);padding-top:12px;color:#a1b1ce;font-size:10px;letter-spacing:.14em}.visual-bottom span:last-child{color:#d3f76b;font-size:24px}
.visual-rail{position:absolute;z-index:4;top:45px;left:40px;display:flex;align-items:center;gap:6px;transform:rotate(-21deg)}.rail-dot{width:12px;height:12px;border-radius:50%;background:#7184eb}.rail-line{width:95px;height:2px;background:#8c9ce5}.rail-plane{width:28px;height:28px;transform:rotate(30deg);border:2px solid #8c9ce5;background:#edf0ff}
.visual-note{position:absolute;z-index:3;padding:16px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 16px 38px rgba(27,45,84,.12)}.visual-note>span:not(.checkmark),.visual-note>div>span{display:block;color:#8794a9;font-size:9px;font-weight:800;letter-spacing:.13em}.visual-note strong{display:block;font-weight:800}.visual-note-math{top:43px;right:-12px;transform:rotate(5deg)}.visual-note-math strong{font-size:20px;letter-spacing:-.05em;margin:7px 0 0}.visual-note-math small{font-size:10px;color:#77859b}.visual-note-code{bottom:46px;left:-8px;transform:rotate(-5deg)}.visual-note-code code{display:block;margin-top:8px;font-family:ui-monospace,Consolas,monospace;font-size:14px;color:#5364cb;line-height:1.55}.visual-note-exam{bottom:32px;right:-13px;display:flex;align-items:center;gap:12px;transform:rotate(4deg)}.visual-note-exam strong{font-size:16px}.checkmark{display:grid;place-items:center;width:38px;height:38px;background:#e5f6dd;color:#428566;border-radius:10px;font-size:23px;font-weight:800}
.courses-section{background:#fff}.advisor{border:1px solid #dfe5f0;background:#f8faff;border-radius:20px;margin:0 0 26px}.advisor summary{list-style:none;display:flex;align-items:center;gap:17px;padding:18px 23px;cursor:pointer;min-height:82px}.advisor summary::-webkit-details-marker{display:none}.advisor-icon{display:grid;place-items:center;flex:none;width:43px;height:43px;background:#e7eaff;border-radius:12px;color:var(--blue);font-size:25px;font-weight:800}.advisor summary strong{display:block;font-size:16px;letter-spacing:-.025em}.advisor summary small{display:block;color:var(--muted);font-size:12px;margin-top:1px}.advisor-chevron{margin-left:auto;font-size:24px;color:#7484ab;transition:transform .2s}.advisor[open] .advisor-chevron{transform:rotate(180deg)}.advisor-panel{border-top:1px solid #e1e7f2;padding:25px 25px 28px}.advisor-progress{display:flex;align-items:center;gap:20px;color:#7785a0;font-size:10px;letter-spacing:.14em;font-weight:800}.advisor-progress-line{flex:1;height:4px;background:#e5eaf4;border-radius:9px}.advisor-progress-line i{display:block;height:100%;width:33%;background:var(--blue);border-radius:9px;transition:width .2s}.advisor-question{font-size:23px;letter-spacing:-.04em;margin:25px 0 16px}.advisor-options{display:flex;flex-wrap:wrap;gap:8px}.advisor-options button{min-height:44px;border:1px solid #dfe5f0;background:#fff;color:#2e3c54;border-radius:10px;padding:0 15px;font-size:13px;font-weight:800;transition:background .16s,border-color .16s}.advisor-options button:hover{background:#edf0ff;border-color:#a9b3ec}.advisor-back,.advisor-reset{border:0;background:none;color:#5869a8;padding:7px 0;margin-top:18px;font-size:12px;font-weight:800}.advisor-result{margin-top:25px}.advisor-result>b{display:inline-block;color:#528466;background:#e9f6e9;border-radius:7px;padding:6px 8px;font-size:10px;letter-spacing:.1em}.advisor-result h3{font-size:26px;letter-spacing:-.05em;margin:13px 0 5px}.advisor-result p{font-size:13px;color:var(--muted);margin:0 0 18px}.advisor-result .button{margin-right:16px}.advisor-result a:not(.button){color:var(--blue);font-size:12px;font-weight:800}
.filters-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:19px;background:#f7f9fc;border:1px solid #e5eaf1;border-radius:18px}.filter-field label{display:block;margin:0 0 7px;color:#5a687f;font-size:11px;font-weight:800}.filter-field select{appearance:none;width:100%;min-height:49px;padding:0 38px 0 14px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2356677f' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 15px center;border:1px solid #dfe5ee;border-radius:10px;color:var(--ink);font-size:13px;font-weight:700;cursor:pointer}
.catalog-status{display:flex;justify-content:space-between;align-items:center;margin:22px 0 17px}.catalog-status p{margin:0;color:#5b6880;font-size:13px;font-weight:800}.catalog-status button{border:0;background:none;color:var(--blue);font-size:12px;font-weight:800;padding:10px}
.courses-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.course-card{display:flex;flex-direction:column;min-height:380px;padding:23px;background:#fff;border:1px solid #e0e6ee;border-radius:20px;transition:transform .18s,border-color .18s,box-shadow .18s}.course-card:hover{transform:translateY(-3px);border-color:#b9c5ea;box-shadow:0 14px 32px rgba(29,49,91,.07)}
.course-overline{display:flex;flex-wrap:wrap;gap:6px}.course-overline span{display:inline-block;padding:5px 8px;background:#f0f2fb;border-radius:6px;color:#5b6cad;font-size:10px;font-weight:800}.course-overline span+span{color:#66758e;background:#f2f5f8}
.course-card h3{font-size:24px;line-height:1.18;letter-spacing:-.055em;margin:22px 0 9px}.course-card h3 a:hover{color:var(--blue)}.course-description{font-size:13px;color:var(--muted);margin:0 0 18px;line-height:1.65}.course-facts{margin:auto 0 0;display:grid;gap:6px}.course-facts div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f5;padding:7px 0}.course-facts dt{font-size:11px;color:#7b889d}.course-facts dd{margin:0;text-align:right;font-size:11px;color:#27364d;font-weight:800}
.course-footer{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #e9edf3}.course-price strong{display:block;white-space:nowrap;font-size:23px;line-height:1.1;letter-spacing:-.05em}.course-price strong.price-question{font-size:15px;letter-spacing:-.02em}.course-price small{display:block;margin-top:4px;color:#768298;font-size:10px}.course-actions{display:flex;align-items:center;gap:8px}.course-actions a{color:var(--blue);font-size:11px;font-weight:800}.course-actions a:hover{text-decoration:underline}.course-actions button{border:0;background:#edf0ff;color:#3f51d0;padding:0 11px;min-height:42px;border-radius:9px;font-size:11px;font-weight:800;white-space:nowrap}.course-actions button:hover{background:#dce2ff}.course-empty{background:#f7f9fc;padding:30px;border:1px dashed #cad4e5;border-radius:16px}.course-empty strong{font-size:17px}.course-empty p{color:var(--muted);margin:6px 0 12px}.course-empty a{color:var(--blue);font-weight:800}
.projects-section{background:#fff;padding-top:0}.projects-shell{background:var(--navy);color:#fff;border-radius:30px;padding:66px}.projects-heading{max-width:680px}.projects-heading h2{font-size:clamp(41px,4.8vw,64px);line-height:1.08;letter-spacing:-.07em;margin:0 0 18px}.projects-heading h2 span{color:var(--lime)}.projects-heading p{max-width:590px;color:#bac6d7;font-size:16px}.project-motif,.signup-motif{display:flex;align-items:center;gap:10px;color:var(--lime);font-size:27px;font-weight:800}.project-motif i,.signup-motif i{width:45px;height:1px;background:#7990a3}.project-demos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:37px}.demo-card{background:#243650;border:1px solid #354a65;border-radius:18px;overflow:hidden}.demo-art{height:165px;position:relative;overflow:hidden;display:grid;place-items:center}.demo-copy{padding:19px 20px 22px}.demo-copy>span{color:#b0c2db;font-size:9px;font-weight:800;letter-spacing:.1em}.demo-copy h3{font-size:19px;line-height:1.25;letter-spacing:-.04em;margin:9px 0 7px}.demo-copy p{font-size:12px;line-height:1.6;color:#b2c0d0;min-height:60px;margin:0 0 17px}.demo-copy a{font-size:11px;font-weight:800;color:#d3f76b}
.scratch-scene{background:linear-gradient(155deg,#6684bc,#a3b8e7)}.scratch-ground{position:absolute;bottom:0;width:100%;height:40px;background:#d1e4a0;clip-path:polygon(0 30%,100% 0,100% 100%,0 100%)}.scratch-character{width:82px;height:82px;border-radius:27px 34px 30px 24px;background:#fff5cc;box-shadow:inset -10px -10px #f5d899,0 14px 20px rgba(26,47,83,.2);transform:rotate(-12deg)}.scratch-character:before,.scratch-character:after{content:"";position:absolute;top:30px;width:8px;height:10px;border-radius:50%;background:#2c3a54}.scratch-character:before{left:27px}.scratch-character:after{left:48px}.scratch-star{position:absolute;right:55px;top:22px;color:#fff3a7;font-size:45px}.lego-scene{background:#bfe3d9}.lego-wheel{position:absolute;width:98px;height:98px;border:20px dashed #4e7a83;border-radius:50%;background:#9dccc7}.wheel-one{left:calc(50% - 85px);top:30px}.wheel-two{left:calc(50% + 4px);top:45px;width:82px;height:82px;border-width:16px}.lego-bar{position:absolute;width:150px;height:13px;background:#f7d276;border-radius:7px;transform:rotate(-25deg);top:40px}.model-scene{background:#99b0b9;background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);background-size:23px 23px}.model-outline,.model-solid{position:absolute;width:95px;height:95px;transform:rotate(20deg) skew(8deg,8deg);border:2px solid #e1f8e3}.model-outline{left:calc(50% - 95px);top:35px}.model-solid{left:calc(50% + 15px);top:35px;background:#c9eabb;box-shadow:16px 16px 0 #84baaa}.model-axis{position:absolute;height:2px;width:50px;background:#e8f9e6;transform:rotate(20deg)}
.teachers-section{background:#fff;padding-top:75px}.teachers-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.teacher-card{background:#fff;border:1px solid #e1e7ef;border-radius:20px;overflow:hidden}.teacher-art{height:174px;background:#e9edfc;display:grid;place-items:center;position:relative;overflow:hidden}.teacher-art:before,.teacher-art:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #cbd4f4;border-radius:50%}.teacher-art:before{left:-100px;top:-105px}.teacher-art:after{right:-90px;bottom:-150px}.teacher-art span{font-size:68px;font-weight:800;letter-spacing:-.1em;color:#8292db;transform:rotate(-8deg)}.teacher-card:nth-child(2) .teacher-art{background:#e3f1f6}.teacher-card:nth-child(2) .teacher-art span{color:#6da9bc}.teacher-card:nth-child(3) .teacher-art{background:#eaf2df}.teacher-card:nth-child(3) .teacher-art span{color:#8cae75}.teacher-card:nth-child(4) .teacher-art{background:#f8ebe5}.teacher-card:nth-child(4) .teacher-art span{color:#cf9b83}.teacher-body{padding:20px}.teacher-subject{margin:0 0 6px;color:var(--blue);font-size:10px;font-weight:800}.teacher-body h3{font-size:19px;line-height:1.2;letter-spacing:-.045em;margin:0 0 11px}.teacher-body>p:not(.teacher-subject){font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 18px}.teacher-body a{font-size:11px;font-weight:800;color:var(--blue)}
.organization-section{background:#f3f6fa}.organization-layout{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:55px}.organization-intro h2{margin:0 0 22px}.organization-intro>p{max-width:410px;color:var(--muted);font-size:16px}.organization-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.organization-card{min-height:183px;padding:23px;background:#fff;border:1px solid #e3e9f1;border-radius:17px}.organization-card>span{display:block;color:#7383af;font-size:11px;font-weight:800;margin-bottom:18px}.organization-card h3{font-size:18px;line-height:1.2;letter-spacing:-.04em;margin:0 0 8px}.organization-card p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.organization-fact a{display:inline-block;margin-top:9px;color:var(--blue);font-size:12px;font-weight:800}.organization-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:24px;font-size:13px;font-weight:800;color:var(--blue)}.organization-contact span{color:var(--muted)}
.faq-section{background:#fff}.faq-layout{display:grid;grid-template-columns:minmax(0,38fr) minmax(0,62fr);gap:50px}.faq-intro h2{margin:0 0 18px}.faq-intro p{max-width:300px;color:var(--muted);font-size:14px}.faq-list{border-top:1px solid #dfe5ee}.faq-list details{border-bottom:1px solid #dfe5ee}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:62px;padding:16px 0;list-style:none;cursor:pointer;font-size:14px;font-weight:800}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:#eef0ff;color:var(--blue);font-size:19px;font-weight:500;transition:transform .18s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:13px;line-height:1.7;color:var(--muted);max-width:590px;margin:-3px 45px 20px 0}
.signup-section{background:var(--navy);color:#fff;padding:105px 0}.signup-layout{display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr);gap:62px;align-items:start}.signup-copy h2{font-size:clamp(42px,5vw,65px);line-height:1.1;letter-spacing:-.07em;margin:0 0 20px}.signup-copy h2 span{color:var(--lime)}.signup-copy>p{color:#b9c7d8;font-size:16px;max-width:430px}.signup-motif{margin-top:55px}.signup-contact{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:30px;font-size:13px;font-weight:800;color:#d4eeae}
.form-panel{background:#fff;color:var(--ink);border-radius:22px;padding:29px}.form-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;margin-bottom:19px;border-bottom:1px solid #e8edf3;color:#8491a5;font-size:10px;font-weight:800;letter-spacing:.15em}.form-head span:last-child{font-size:21px;color:var(--blue);line-height:1}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin-bottom:14px}.field label,.contact-choice legend{display:block;margin-bottom:7px;font-size:11px;font-weight:800;color:#536178}.field label b,.contact-choice legend b{color:var(--blue)}.field label span{color:#8591a4;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:46px;border:1px solid #dfe5ee;background:#f9fafc;border-radius:10px;padding:10px 12px;color:var(--ink);font-size:13px;outline:none}.field textarea{resize:vertical;min-height:68px}.field input::placeholder,.field textarea::placeholder{color:#98a4b5}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#8290ed;box-shadow:0 0 0 3px rgba(82,100,233,.09)}.field [aria-invalid=true]{border-color:#c95353;background:#fffafb}.field-error{display:block;min-height:0;color:#b73c3c;font-size:10px;font-weight:700}.field-error:not(:empty){margin-top:4px}.contact-choice{display:flex;gap:7px;flex-wrap:wrap;border:0;padding:0;margin:1px 0 14px}.contact-choice legend{margin-bottom:7px}.contact-choice label{position:relative;cursor:pointer}.contact-choice input{position:absolute;opacity:0;inset:0}.contact-choice span{display:grid;place-items:center;min-height:42px;padding:0 15px;border:1px solid #dfe5ee;border-radius:9px;color:#536178;font-size:12px;font-weight:800}.contact-choice input:checked+span{background:#edf0ff;border-color:#aeb9ee;color:#3d50c8}.contact-choice input:focus-visible+span{outline:3px solid #6677fa;outline-offset:3px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.consent{display:flex;align-items:flex-start;gap:9px;margin:6px 0 4px;cursor:pointer;color:#728096;font-size:10px;line-height:1.5}.consent input{flex:none;width:16px;height:16px;margin:1px 0 0;accent-color:var(--blue)}.consent a{color:var(--blue);text-decoration:underline}.form-submit{display:flex;justify-content:space-between;width:100%;margin-top:15px}.form-submit:disabled{cursor:wait;opacity:.7;transform:none}.form-message{min-height:18px;margin:10px 0 0;color:#3e805c;font-size:12px;font-weight:700}.form-message.error{color:#b73c3c}
.site-footer{background:#111c2d;color:#fff}.footer-main{display:flex;justify-content:space-between;gap:45px;padding:50px 0 42px}.footer-main p{color:#8999ae;font-size:12px;margin:13px 0 0}.footer-main nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 23px;max-width:680px}.footer-main nav a,.footer-contact a{font-size:11px;font-weight:700;color:#b3bed0}.footer-main nav a:hover,.footer-contact a:hover{color:#fff}.footer-contact{display:flex;flex-direction:column;gap:7px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.1);padding:20px 0;color:#8291a7;font-size:10px;font-weight:700}.mobile-sticky-cta{display:none}
.detail-header nav{display:flex;gap:25px;margin-left:auto}.detail-header-cta{min-height:42px;font-size:12px;padding:0 15px}.detail-hero{padding:42px 0 82px;background:radial-gradient(circle at 80% 25%,#edf0ff,transparent 42%),#f8f9fc}.detail-back{display:inline-block;margin-bottom:45px;color:var(--blue);font-size:13px;font-weight:800}.detail-hero-layout{display:grid;grid-template-columns:minmax(0,62fr) minmax(0,38fr);gap:70px;align-items:center}.detail-hero h1{font-size:clamp(48px,6vw,78px);letter-spacing:-.075em;line-height:1.08;margin:0 0 19px}.detail-hero-layout>div:first-child>p{max-width:650px;font-size:18px;color:var(--muted);margin:0 0 28px;line-height:1.65}.detail-chips{display:flex;flex-wrap:wrap;gap:8px}.detail-chips span{padding:8px 11px;border:1px solid #dce3ed;background:#fff;color:#586882;border-radius:8px;font-size:11px;font-weight:800}.detail-price-card{background:#fff;border:1px solid #e1e7ef;border-radius:23px;padding:27px}.detail-price-card>span{color:#8492a7;font-size:10px;font-weight:800;letter-spacing:.14em}.detail-price{margin:26px 0}.detail-price strong{display:block;font-size:34px;line-height:1.1;letter-spacing:-.055em}.detail-price span{display:block;margin-top:5px;color:var(--muted);font-size:13px}.detail-price-card .button{width:100%;justify-content:space-between}.detail-price-card small{display:block;margin-top:13px;color:#7c889c;font-size:11px}.detail-content{background:#fff}.detail-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.detail-content h2,.detail-teacher h2{font-size:clamp(29px,3.5vw,43px);line-height:1.15;letter-spacing:-.06em;margin:0 0 28px}.topic-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.topic-list li{padding:16px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:700}.topic-list li:before{content:"↗";display:inline-grid;place-items:center;width:26px;height:26px;margin-right:12px;background:#e9edff;color:var(--blue);border-radius:7px;font-size:16px}.detail-facts{margin:0}.detail-facts div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.detail-facts dt{color:var(--muted);font-size:13px}.detail-facts dd{margin:0;text-align:right;font-size:13px;font-weight:800}.detail-condition{font-size:12px;color:var(--muted);margin:20px 0 0}.detail-teacher{padding:70px 0;background:#f2f5fa}.detail-teacher-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.detail-teacher-layout>div:last-child{color:var(--muted);font-size:15px}.detail-teacher-layout p:first-child{font-weight:800;color:var(--ink)}.detail-bottom{padding:75px 0;background:var(--navy);color:#fff}.detail-bottom h2{font-size:clamp(36px,4vw,52px);line-height:1.1;letter-spacing:-.06em;margin:0 0 13px}.detail-bottom p{max-width:550px;color:#b9c6d8;font-size:15px;margin:0 0 24px}
@media(max-width:1120px){.desktop-nav{gap:16px}.desktop-nav a{font-size:11px}.hero-layout{grid-template-columns:minmax(0,51fr) minmax(0,49fr)}.hero-visual{transform:scale(.83);transform-origin:center}.courses-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teachers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-card{display:grid;grid-template-columns:38% 62%}.teacher-art{height:auto;min-height:220px}.organization-layout{gap:30px}.signup-layout{gap:35px}}
@media(max-width:920px){.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:44px;height:44px;padding:0;border:0;background:transparent}.menu-toggle span{width:21px;height:2px;background:var(--ink);border-radius:2px;transition:transform .16s}.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{display:flex;flex-direction:column;padding:9px 24px 18px;background:#fff;border-top:1px solid var(--line)}.mobile-menu a{padding:10px 2px;border-bottom:1px solid #edf0f5;font-size:13px;font-weight:800}.hero-layout{grid-template-columns:1fr 1fr;gap:0}.hero h1{font-size:clamp(59px,7vw,75px)}.hero-visual{transform:scale(.69);transform-origin:25% center}.projects-shell{padding:45px}.demo-art{height:130px}.organization-layout,.faq-layout{grid-template-columns:1fr}.organization-intro>p{max-width:600px}.faq-intro p{max-width:500px}.signup-layout{grid-template-columns:minmax(0,43fr) minmax(0,57fr)}}
@media(max-width:700px){html{scroll-padding-top:68px}.shell{width:min(100% - 40px,560px)}.section{padding:76px 0}.section-kicker{font-size:10px;margin-bottom:18px}.section-heading{display:block;margin-bottom:26px}.section-heading h2,.faq-intro h2,.organization-intro h2{font-size:clamp(31px,8vw,42px)}.section-heading>p{margin-top:14px;font-size:14px}.header-inner{min-height:64px}.brand{font-size:20px}.header-cta{display:none}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:42px 0 28px;min-height:0}.hero h1{font-size:clamp(45px,12vw,57px);margin:19px 0 19px}.hero-lead{font-size:17px}.hero-intro{font-size:14px;line-height:1.65}.eyebrow{font-size:9px}.hero-actions{margin-top:23px}.hero-actions .button{min-height:48px;gap:11px;font-size:11px;padding:0 13px}.hero-tracks{margin-top:21px}.hero-tracks span{font-size:9px}.hero-visual{width:100%;height:290px;min-width:500px;transform:scale(.62);transform-origin:0 0;margin-top:10px;margin-bottom:-100px}.visual-main{inset:42px 70px 45px 75px}.visual-note-math{top:5px;right:0}.visual-note-code{bottom:0}.visual-note-exam{right:0;bottom:-5px}.visual-rail{top:0}.advisor summary{padding:14px 15px;gap:11px}.advisor summary strong{font-size:14px}.advisor summary small{font-size:11px}.advisor-icon{width:38px;height:38px}.advisor-panel{padding:18px}.advisor-question{font-size:19px}.filters-panel{grid-template-columns:1fr;gap:11px;padding:14px}.filter-field select{min-height:46px}.catalog-status{margin:15px 0 10px}.courses-grid{grid-template-columns:1fr;gap:11px}.course-card{min-height:0;padding:19px}.course-card h3{font-size:23px;margin-top:17px}.course-description{font-size:12px}.course-footer{margin-top:19px}.projects-section{padding:0}.projects-shell{width:100%;max-width:none;border-radius:0;padding:66px max(20px,calc((100% - 560px)/2))}.projects-heading h2{font-size:clamp(36px,9vw,47px)}.projects-heading p{font-size:14px}.project-demos{grid-template-columns:1fr;margin-top:29px}.demo-card{display:grid;grid-template-columns:38% 62%;min-height:175px}.demo-art{height:auto;min-height:175px}.demo-copy{padding:17px}.demo-copy h3{font-size:17px}.demo-copy p{min-height:0;font-size:11px}.scratch-character{transform:scale(.75) rotate(-12deg)}.scratch-star{right:8px}.lego-wheel{transform:scale(.7)}.wheel-one{left:-17px}.wheel-two{left:45px}.lego-bar{left:5px;transform:scale(.65) rotate(-25deg)}.model-outline{left:5px;transform:scale(.7) rotate(20deg) skew(8deg,8deg)}.model-solid{left:54px;transform:scale(.7) rotate(20deg) skew(8deg,8deg)}.teachers-section{padding-top:75px}.teachers-grid{grid-template-columns:1fr;gap:11px}.teacher-card{grid-template-columns:32% 68%}.teacher-art{min-height:190px}.teacher-art span{font-size:48px}.teacher-body{padding:16px}.teacher-body h3{font-size:17px}.teacher-body>p:not(.teacher-subject){font-size:11px}.organization-layout{display:block}.organization-intro{margin-bottom:26px}.organization-intro>p{font-size:14px}.organization-cards{gap:9px}.organization-card{padding:18px;min-height:175px}.organization-card h3{font-size:15px}.organization-card p{font-size:11px}.faq-layout{display:block}.faq-intro{margin-bottom:25px}.faq-intro p{font-size:13px}.faq-list summary{font-size:13px}.signup-section{padding:70px 0}.signup-layout{display:block}.signup-copy{margin-bottom:32px}.signup-copy h2{font-size:clamp(39px,9vw,52px)}.signup-copy>p{font-size:14px}.signup-motif{margin-top:23px}.form-panel{padding:22px}.footer-main{display:block;padding:42px 0 30px}.footer-main nav{justify-content:flex-start;margin-top:24px;gap:12px 18px}.footer-contact{margin-top:20px}.footer-bottom{font-size:9px}.mobile-sticky-cta{position:fixed;z-index:45;left:16px;right:16px;bottom:12px;display:flex;justify-content:space-between;align-items:center;min-height:50px;padding:0 18px;background:var(--blue);color:#fff;border-radius:12px;box-shadow:0 12px 32px rgba(28,47,139,.28);font-size:12px;font-weight:800;transform:translateY(80px);opacity:0;pointer-events:none;transition:transform .2s,opacity .2s}.mobile-sticky-cta.visible{transform:none;opacity:1;pointer-events:auto}.mobile-sticky-cta span{font-size:20px}.detail-header nav{display:none}.detail-header-cta{margin-left:auto}.detail-hero{padding:25px 0 60px}.detail-back{margin-bottom:31px}.detail-hero-layout{display:block}.detail-hero h1{font-size:clamp(43px,10vw,58px)}.detail-hero-layout>div:first-child>p{font-size:15px}.detail-price-card{margin-top:28px}.detail-content-grid,.detail-teacher-layout{grid-template-columns:1fr;gap:55px}.detail-content h2,.detail-teacher h2{font-size:31px}.detail-bottom{padding:60px 0}}
@media(max-width:390px){.shell{width:min(100% - 32px,560px)}.hero h1{font-size:clamp(43px,12vw,49px)}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .button{white-space:normal;text-align:center;line-height:1.2;min-height:52px;padding:7px 9px;gap:5px}.hero-actions .button span:last-child{font-size:16px}.hero-visual{transform:scale(.55);margin-bottom:-125px}.form-two{grid-template-columns:1fr;gap:0}.teacher-card{grid-template-columns:30% 70%}.teacher-body h3{font-size:15px}.teacher-body>p:not(.teacher-subject){font-size:10px}.demo-card{grid-template-columns:34% 66%}.demo-copy{padding:12px}.demo-copy>span{font-size:8px}.demo-copy h3{font-size:15px}.demo-copy p{font-size:10px}.course-actions{gap:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Keep the primary navigation and course actions comfortable to tap. */
.brand,.desktop-nav a,.detail-header nav a,.mobile-menu a,.course-card h3 a,.course-actions a,.demo-copy a,.teacher-body a,.detail-back,.footer-main nav a{display:inline-flex;align-items:center;min-height:44px}
.header-cta,.detail-header-cta,.course-actions button,.contact-choice span,.advisor-back,.advisor-reset,.catalog-status button{min-height:44px}
.consent{min-height:44px;align-items:center}
