@font-face{font-family:Onest;src:url('./assets/fonts/onest-cyrillic-400-normal.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-cyrillic-500-normal.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-cyrillic-600-normal.woff2') format('woff2');font-weight:600;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-cyrillic-700-normal.woff2') format('woff2');font-weight:700;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-latin-400-normal.woff2') format('woff2');font-weight:400;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-latin-500-normal.woff2') format('woff2');font-weight:500;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-latin-600-normal.woff2') format('woff2');font-weight:600;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;src:url('./assets/fonts/onest-latin-700-normal.woff2') format('woff2');font-weight:700;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Unbounded;src:url('./assets/fonts/unbounded-cyrillic-700-normal.woff2') format('woff2');font-weight:700;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Unbounded;src:url('./assets/fonts/unbounded-cyrillic-800-normal.woff2') format('woff2');font-weight:800;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Unbounded;src:url('./assets/fonts/unbounded-latin-700-normal.woff2') format('woff2');font-weight:700;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Unbounded;src:url('./assets/fonts/unbounded-latin-800-normal.woff2') format('woff2');font-weight:800;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+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{color-scheme:dark;--bg:#0b0e11;--surface:#171b20;--text:#f5f5f4;--muted:#afb1b9;--line:#ffffff26;--yellow:#fee252;--red:#ff3420;--space:clamp(22px,4vw,64px)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.45 Onest,sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}::selection{background:var(--yellow);color:var(--bg)}input{caret-color:var(--yellow)}::-webkit-scrollbar{width:8px;height:5px}::-webkit-scrollbar-thumb{background:#43464b;border-radius:8px}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1,h2,.card-title{font-family:Unbounded,Onest,sans-serif;letter-spacing:-.035em}h1{font-size:clamp(35px,5.4vw,80px);line-height:1.12;font-weight:750}h2{font-size:clamp(24px,2.4vw,34px);line-height:1.25;font-weight:650}h3{font-size:24px}small{font-size:14px}.icon{width:24px;height:24px;flex-shrink:0;vertical-align:middle}.muted{color:var(--muted)}.skip-link{position:fixed;top:-80px;left:20px;background:var(--yellow);color:#111;padding:12px;z-index:100}.skip-link:focus{top:12px}.header{height:104px;padding:22px var(--space);display:flex;align-items:center;gap:30px;position:relative;z-index:5}.logo{display:block;width:190px;height:48px;object-fit:contain;object-position:left}.header-nav{border-left:1px solid #ffffff45;padding-left:30px;display:flex;align-items:center;gap:10px}.profile{margin-left:auto;width:44px;height:44px;border-radius:50%;background:#ffffff14;display:grid;place-items:center}.profile:hover{background:#ffffff25}.hero{min-height:570px;position:relative;margin-top:-104px;padding:160px var(--space) 44px;isolation:isolate;overflow:hidden;display:flex;align-items:center}.hero-art{position:absolute;inset:0 0 0 auto;width:78%;height:100%;object-fit:cover;object-position:center 35%;z-index:-3;animation:reveal .6s cubic-bezier(.16,1,.3,1)}.hero:after{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0b0e11 2%,#0b0e11f2 16%,#0b0e11a6 43%,#0b0e1100 70%),linear-gradient(0deg,#0b0e11,transparent 21%)}.hero-copy{position:relative;width:min(780px,65%)}.hero .subtitle{font-size:clamp(20px,2vw,27px);margin-top:10px;color:#dbdbdf}.hero .description{font-size:21px;margin:23px 0 22px;max-width:590px}.selection-instruction{margin-bottom:12px;font-size:17px;color:#d3d3d7}.primary{background:var(--yellow);color:#101113;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 25px;border-radius:9px;font-weight:650}.primary:hover:not(:disabled){background:#ffe976;transform:translateY(-1px)}.primary:disabled{background:#4c4f55;color:#e0e0e3}.hero-price{font-size:27px;font-weight:650;margin-top:16px}.offer-link{padding:0;color:var(--yellow);display:inline-flex;gap:9px;align-items:center;text-align:left;text-underline-offset:5px;text-decoration:underline;text-decoration-color:#fee25277;font-size:16px}.offer-link .icon{width:19px;height:19px}.hero-controls{position:absolute;bottom:37px;right:var(--space);display:flex;gap:10px;align-items:center}.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:50%;background:#0b0e1140}.icon-button:hover{background:#ffffff18}.previous .icon{transform:rotate(180deg)}.slide-position{font-size:13px;color:#ddd;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}.shelf{padding:16px var(--space) 34px;position:relative;z-index:2}.shelf-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:10px;padding:5px 0;color:#ddd;border-bottom:1px solid #ffffff30}.text-link:hover{color:var(--yellow);border-color:var(--yellow)}.catalog{display:flex;gap:16px;overflow-x:auto;padding:5px 4px 20px;margin:0 -4px;scroll-snap-type:x proximity}.subject-card{position:relative;flex:0 0 clamp(210px,20.5vw,320px);height:280px;border:1px solid #ffffff29;border-radius:12px;overflow:hidden;text-align:left;isolation:isolate;scroll-snap-align:start;padding:21px;display:flex;flex-direction:column;transition:border-color .18s,transform .18s;background:#15191d}.subject-card:hover{transform:translateY(-4px);border-color:#ffffff80}.subject-card.selected{border:2px solid var(--yellow);padding:20px}.card-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.subject-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#06090bd9,transparent 47%,#06090b88)}.card-title{font-size:clamp(20px,1.6vw,26px);line-height:1.2;font-weight:680;max-width:86%;text-shadow:0 2px 10px #0009}.card-subtitle{font-size:14px;color:#e3e3e6;margin-top:6px}.choice-indicator{position:absolute;top:17px;right:15px;width:27px;height:27px;border:1.5px solid #f5f5f5;border-radius:50%;display:grid;place-items:center;background:#090b1050}.selected .choice-indicator{background:var(--yellow);color:#111;border-color:var(--yellow)}.choice-indicator .icon{width:19px;height:19px}.card-teacher{margin-top:auto;color:#fff;font-size:14px}.library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.library .subject-card{width:100%;height:305px;padding:30px;justify-content:center}.library .card-title{font-size:clamp(23px,2.4vw,36px);max-width:65%}.library .card-art{object-position:center 35%}.library .subject-card:after{background:linear-gradient(90deg,#06090bcc,transparent 90%),linear-gradient(0deg,#06090b80,transparent 45%)}.card-action{margin-top:auto;color:var(--yellow);display:flex;align-items:center;gap:18px;font-weight:600;padding-top:24px}.library .card-subtitle{font-size:16px}.library .card-teacher{margin-top:8px}.trial-footer{padding:4px var(--space) 28px;display:flex;align-items:flex-end;justify-content:flex-end;gap:24px}.trial-footer-inner{text-align:right}.trial-footer p{font-size:14px;margin-top:9px;color:var(--muted)}.trial-footer .primary{min-width:320px}.package-link{margin-right:auto;max-width:380px}.demo-footer{margin:30px var(--space) 0;padding:20px 0 28px;border-top:1px solid #ffffff13;display:flex;align-items:center;gap:18px;color:#a5a7af;font-size:12px}.demo-footer details{margin-left:auto}.demo-footer summary{cursor:pointer;text-align:right}.demo-controls{display:flex;gap:14px;padding:12px 0;flex-wrap:wrap}.demo-controls button{text-decoration:underline;text-underline-offset:4px}.demo-controls select{font-size:12px;background:#20242b;border:1px solid #555;color:#eee;border-radius:4px;padding:3px}.subject-main{padding:20px var(--space) 40px}.subject-title{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:26px}.subject-title h1{font-size:clamp(34px,4.5vw,64px)}.subject-title .subtitle{font-size:21px;margin-top:8px}.subject-tools{display:flex;gap:24px;font-size:15px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:42px;margin-bottom:27px;overflow-x:auto}.tab{font-size:20px;color:var(--muted);padding:0 0 16px;white-space:nowrap;position:relative}.tab[aria-selected=true]{color:var(--yellow)}.tab[aria-selected=true]:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--yellow)}.learning-grid{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(260px,1fr);gap:30px}.video-frame{aspect-ratio:16/9;position:relative;isolation:isolate;border-radius:12px;overflow:hidden;background:#16191c;display:flex;align-items:center;justify-content:center}.video-frame .card-art{object-position:center 34%}.video-frame:after{content:'';inset:0;position:absolute;background:linear-gradient(90deg,#0b0e119c,transparent);z-index:-1}.video-title{position:absolute;left:5%;bottom:15%;font-family:Unbounded,sans-serif;font-size:clamp(22px,2.6vw,39px);font-weight:650;line-height:1.25;width:55%;letter-spacing:-.025em}.play-button{width:76px;height:76px;border-radius:50%;background:#09090bbd;display:grid;place-items:center;position:relative}.play-button .icon{width:31px;height:31px}.video-label{position:absolute;bottom:17px;left:22px;font-size:12px;color:#eee}.video-frame video{width:100%;height:100%;background:#111}.lesson-info{margin-top:23px}.lesson-info h2{font-size:clamp(22px,2.1vw,30px)}.lesson-info p{margin-top:8px;color:var(--muted)}.lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}.program{border-left:1px solid var(--line);padding-left:26px}.program h2{font-size:26px;margin-bottom:19px}.search{position:relative;margin-bottom:20px}.search .icon{position:absolute;left:13px;top:13px;color:var(--muted);width:21px}.search input{width:100%;background:#ffffff05;border:1px solid #ffffff29;color:#fff;padding:12px 13px 12px 43px;border-radius:7px;font-size:15px}.search input::placeholder{color:#a9abb3}.lesson-row{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:17px 11px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.4}.lesson-row.active{background:#fee25214;color:var(--yellow)}.lesson-row:hover{background:#ffffff09}.lesson-row .icon{width:20px}.lesson-duration{display:block;font-size:12px;color:#a7a9b1;margin-top:4px}.program-empty{padding:15px 0;color:var(--muted)}.teacher-help{display:flex;align-items:center;gap:12px;margin-top:36px;font-size:14px}.teacher-help img{width:37px;height:37px;object-fit:cover;object-position:50% 22%;border-radius:50%}.practice{min-height:450px;padding:30px 0}.practice-intro{margin:12px 0 32px;color:var(--muted);max-width:640px}.task-number{font-size:13px;color:var(--muted);margin-bottom:14px}.task-question{font-size:23px;max-width:650px;line-height:1.5}.answer-form{margin-top:27px;display:flex;gap:12px;align-items:end;flex-wrap:wrap}.answer-form label{display:grid;gap:8px;font-size:14px}.answer-form input{background:#181d23;border:1px solid #6c6f76;border-radius:7px;padding:14px;color:#fff;min-width:230px}.feedback{padding:20px 0;color:#e3e3e6;max-width:620px}.feedback.correct{color:var(--yellow)}.loading,.error-state{padding:100px var(--space);text-align:center}.error-state p{margin:14px 0 22px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);max-width:min(90vw,650px);background:#f2f1ec;color:#141518;border-radius:10px;padding:13px 22px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{background:#171b20;color:var(--text);border:1px solid #ffffff25;border-radius:16px;padding:34px;width:min(560px,calc(100% - 32px));max-height:90dvh;box-shadow:0 24px 90px #0008}dialog::backdrop{background:#030507bd}dialog .close{position:absolute;right:14px;top:14px}dialog h2{padding-right:25px;font-size:26px;margin-bottom:18px}dialog p{color:#bec0c7;margin-bottom:17px}dialog .modal-price{font-size:37px;color:white;font-weight:700;margin:18px 0 2px}dialog s{font-size:20px;color:#9c9fa8;margin-left:10px}dialog .offer-table{width:100%;border-collapse:collapse;font-size:14px;margin:22px 0}dialog td{padding:13px 0;border-bottom:1px solid #ffffff20}dialog td:last-child{text-align:right;white-space:nowrap}dialog .modal-actions{display:flex;flex-direction:column;gap:14px;margin-top:24px}.report-list{padding-left:20px;color:#c6c8ce}.report-list li{margin:10px 0}.busy{pointer-events:none;opacity:.6}@keyframes reveal{from{filter:brightness(.72)}to{filter:brightness(1)}}
@media(min-width:1700px){.hero{min-height:680px}.subject-card{height:330px}.hero-art{width:74%}}@media(max-width:1000px){.hero{min-height:570px}.hero-copy{width:75%}.hero-art{width:90%;opacity:.8}.hero:after{background:linear-gradient(90deg,#0b0e11 0%,#0b0e1199 55%,#0b0e1100),linear-gradient(0deg,#0b0e11,transparent 30%)}.hero h1{font-size:clamp(35px,6vw,65px)}.learning-grid{grid-template-columns:1fr}.program{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.subject-title{display:block}.subject-tools{margin-top:20px}.library .subject-card{height:280px}.header{height:90px}.hero{margin-top:-90px;padding-top:150px}.logo{width:163px}.header-nav{font-size:15px;padding-left:22px}.trial-footer{align-items:center}.video-title{font-size:clamp(25px,4vw,40px)}}@media(max-width:600px){body{font-size:16px}.header{height:82px;padding-top:17px;padding-bottom:17px;gap:15px}.logo{width:134px;height:36px}.header-nav{padding-left:15px;font-size:12px;gap:5px}.header-nav .icon{width:17px}.profile{width:35px;height:35px}.hero{margin-top:-82px;min-height:615px;padding-top:270px;padding-bottom:42px;align-items:flex-end}.hero-art{width:100%;height:78%;opacity:1;object-position:64% 25%;top:35px}.hero:after{background:linear-gradient(0deg,#0b0e11 1%,#0b0e11ed 24%,#0b0e1199 47%,#0b0e1100 72%),linear-gradient(180deg,#0b0e1155,transparent 20%)}.hero-copy{width:100%;z-index:1}.hero h1{font-size:clamp(30px,8.1vw,44px)}.hero .subtitle{font-size:18px}.hero .description{font-size:16px;margin:16px 0}.selection-instruction{font-size:14px;margin-bottom:9px}.hero .primary{min-height:49px;font-size:15px;padding:12px 19px}.hero-price{font-size:22px;margin-top:14px}.offer-link{font-size:13px;gap:6px}.hero-controls{top:212px;right:var(--space);bottom:auto}.hero-controls .icon-button{background:#06080ab3}.shelf{padding-top:8px}.shelf-heading{margin-bottom:13px}.shelf-heading h2{font-size:23px}.shelf-heading .text-link{font-size:12px;gap:4px}.shelf-heading .icon{width:18px}.subject-card{flex-basis:210px;height:260px;padding:18px}.subject-card.selected{padding:17px}.card-title{font-size:21px}.library{grid-template-columns:1fr;gap:17px}.library .subject-card{height:240px;padding:25px}.library .card-title{font-size:26px}.library .card-action{font-size:15px}.trial-footer{display:block;padding-bottom:20px}.trial-footer-inner{text-align:left}.trial-footer .primary{min-width:0;width:100%;font-size:16px}.trial-footer p{text-align:center;font-size:12px}.package-link{margin:0 0 18px}.demo-footer{margin-top:12px;gap:10px;align-items:start;font-size:11px}.subject-main{padding-top:14px}.subject-title h1{font-size:32px}.subject-title .subtitle{font-size:16px}.subject-tools{gap:20px;font-size:13px}.tabs{gap:22px;margin-bottom:21px}.tab{font-size:14px;padding-bottom:13px}.subject-main .video-frame{margin:0 calc(-1 * var(--space));border-radius:0}.video-title{font-size:22px;bottom:24%;width:55%}.play-button{width:55px;height:55px}.video-label{font-size:10px;left:15px;bottom:12px}.lesson-info h2{font-size:23px}.lesson-actions{align-items:start;flex-direction:column}.lesson-actions .primary{width:100%;font-size:14px}.practice{padding-top:12px}.task-question{font-size:20px}.answer-form,.answer-form label,.answer-form input{width:100%}.answer-form .primary{width:100%}dialog{padding:29px 22px}dialog h2{font-size:23px}dialog .modal-price{font-size:31px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The supplied SVG is the original mark; the wordmark remains real text. */
.brand{display:flex;align-items:center;gap:12px;font:700 32px/1 Unbounded,Onest,sans-serif;letter-spacing:-.035em;white-space:nowrap}.brand .logo{width:48px;height:40px;object-fit:contain}.brand>span{padding-bottom:1px}@media(max-width:1000px){.brand{font-size:27px;gap:10px}.brand .logo{width:41px;height:35px}}@media(max-width:600px){.brand{font-size:22px;gap:8px}.brand .logo{width:33px;height:29px}}

/* Program topics stay in their own bounded, keyboard-scrollable shelf. */
.program-scroll{height:clamp(250px,31vw,440px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px 9px 4px 4px;display:flex;flex-direction:column;gap:8px}.program-scroll .lesson-row{flex:0 0 auto;border:1px solid #ffffff16;border-radius:8px;background:#ffffff04;padding:14px 12px;min-height:62px}.program-scroll .lesson-row:hover{background:#ffffff0c}.program-scroll .lesson-row.active{border-color:#fee25240;background:#fee25214}.teacher-help{margin-top:23px}.hero-price s{font-size:.65em;font-weight:400;color:var(--muted);margin-left:12px}.price-caption{font-size:13px;color:var(--muted);margin:3px 0 5px}@media(max-width:600px){.program-scroll{height:330px}.hero-price s{display:inline-block;margin-left:8px}}

.header-avatar{width:100%;height:100%;object-fit:cover;border-radius:50%}.offer-countdown{font-size:14px;color:var(--muted);margin:7px 0 9px}.offer-countdown time{font-variant-numeric:tabular-nums;color:var(--yellow);white-space:nowrap}.learning-grid.learning-full{grid-template-columns:minmax(0,1fr)}.lesson-status{display:block;font-size:12px;color:var(--muted);margin-top:5px}.lesson-status.submitted{color:var(--yellow)}.diagnostic-link{max-width:300px;text-align:left}.boost-context h2{font-size:24px}.boost-context p{font-size:15px;color:var(--muted);margin-top:12px;line-height:1.55}@media(max-width:600px){.offer-countdown{font-size:12px}.diagnostic-link{max-width:none}}

.spatial-app{height:100svh;width:100%;padding:0;margin:0;max-width:none}.spatial-app iframe{display:block;border:0;width:100%;height:100%;background:#0b0e11}

.hero-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 16px}.hero-price s{margin-left:0}.hero-price .price-timer{color:var(--yellow);font-size:16px;font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Primary navigation is a destination, not a back action. */
.header .header-nav{border-left:0;padding-left:0;margin-left:16px;color:#b9bcc2;font-weight:600;white-space:nowrap}.header .header-nav:hover,.header .header-nav:focus-visible{color:#f5f5f4}@media(max-width:600px){.header .header-nav{margin-left:0}}

/* Touch carousel: preserve vertical page scrolling and pinch zoom. */
@media(max-width:600px){.hero{touch-action:pan-y pinch-zoom}.hero-controls .icon-button{display:none}.hero-controls{pointer-events:none}.slide-position{background:#0b0e11b3;border-radius:20px;padding:5px 10px}}

/* Keep the mobile lesson player visible while the lesson and mentor scroll. */
@media (max-width:900px){
  .learning-grid:has(> #learning-panel > .video-frame){align-items:start;row-gap:24px}
  .learning-grid > #learning-panel:has(> .video-frame){display:contents}
  .learning-grid > #learning-panel > .video-frame{
    position:sticky;
    top:0;
    z-index:20;
    align-self:start;
    max-height:45svh;
    background:#0b0e11;
    border-radius:0;
  }
  .learning-grid > #learning-panel > .video-frame video{object-fit:contain}
}

.subject-remove{display:block;margin-top:14px;font-size:14px;min-height:36px}.empty-subjects{margin:24px 0;max-width:600px}

.hero-price-total{flex-wrap:wrap;gap:10px 16px;font-size:clamp(20px,2.2vw,32px)}
.hero-price-total>span{max-width:100%}
@media(max-width:600px){.hero-copy>.primary{max-width:100%;white-space:normal}.hero-price-total{font-size:20px}}

.hero-navigation-label{font-size:14px;line-height:1.4;max-width:180px}.hero-controls{flex-wrap:wrap}

.hero-pricing .hero-price{margin-bottom:6px}.hero-price-caption{margin:0;color:#bfc2ca;font:400 15px/1.5 Onest,sans-serif}

/* QA: preserve touch target at 320px without pushing the header outside viewport. */
.header .profile{flex-shrink:0;min-width:44px;min-height:44px}
@media(max-width:360px){.header{gap:12px;padding-inline:16px}.header .logo{width:108px;min-width:0;flex-shrink:1}.header-nav{padding-left:8px;font-size:12px;min-width:0}.header .profile{width:44px;height:44px}}

/* Keep avatar geometry independent of global button padding. */
.header .profile{width:44px;height:44px;min-width:44px;min-height:44px;aspect-ratio:1;padding:0;overflow:hidden;display:grid;place-items:center;border-radius:50%}
.header .profile .header-avatar{display:block;width:100%;height:100%;min-width:0;object-fit:cover;aspect-ratio:1;border-radius:50%}
