:root{--ink:#14283e;--blue:#244ed8;--blue-dark:#183cab;--green:#076e62;--bg:#f5f7fa;--radius:18px}
.eyebrow{font-size:.875rem;letter-spacing:.065em}.demo-bar,.demo-bar button{font-size:.8125rem}.premium-hero{gap:40px;padding-top:45px;padding-bottom:62px}.premium-hero h1{font-size:clamp(2.8rem,4.7vw,4.25rem);letter-spacing:-.045em;line-height:1.08}.premium-hero .hero-media{height:510px}.premium-hero .hero-image{height:100%;object-fit:cover;object-position:62% center}.premium-hero .image-caption strong{font-size:1.7rem;line-height:1.2;margin-top:20px;display:block}.premium-hero .floating.top{top:35px;left:-24px}.hero-assurance{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:.875rem;margin-top:30px}.hero-assurance span{display:flex;align-items:center;gap:7px}.hero-assurance svg{width:18px}.goal-section{padding:20px 0 65px;scroll-margin-top:20px}.goal-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.goal-card{padding:30px;border-radius:20px;min-height:264px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.goal-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #10253c18}.goal-card.lgs{background:#dcefe9;color:#0c4f45}.goal-card.yks{background:#213d8d;color:#fff}.goal-card.school{background:#f2e9d9;color:#59431e}.goal-index{font-size:.8125rem;letter-spacing:.07em;font-weight:700}.goal-card h3{font-size:2.3rem;margin:20px 0 12px;letter-spacing:-.04em}.goal-card p{font-size:1rem;opacity:.9;line-height:1.6}.goal-foot{border-top:1px solid #ffffff38;margin-top:23px;padding-top:18px;font-size:.875rem;font-weight:650;display:flex;align-items:center;justify-content:space-between}.lgs .goal-foot,.school .goal-foot{border-color:#14362725}.goal-intro{display:flex;justify-content:space-between;align-items:center;padding:26px 0 32px;gap:24px}.goal-intro h1{font-size:clamp(2.2rem,4.2vw,3.4rem);line-height:1.12}.goal-intro h1 em{font-style:normal;color:var(--blue)}.goal-intro p{margin-top:18px;color:var(--muted)}.goal-emblem{font-size:clamp(2.5rem,6vw,5rem);font-weight:800;letter-spacing:-.08em;padding:30px;color:var(--blue);background:#e8edfd;border-radius:24px;min-width:180px;text-align:center}.goal-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:15px 0 24px}.goal-tabs .tab{border:1px solid var(--line);border-radius:999px;background:white;min-height:44px;padding:11px 19px}.goal-tabs .tab.active{background:var(--ink);color:white;border-color:var(--ink)}.topic-browser{padding:32px}.subject-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.subject-choice{display:flex;gap:10px;align-items:center;padding:15px 20px;border:1px solid var(--line);border-radius:12px;font-weight:600;background:#fff}.subject-choice.active{background:var(--blue);color:white;border-color:var(--blue)}.topic-stage{margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}.topic-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.topic-links a{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:5px 12px;background:var(--bg);padding:18px;border-radius:12px}.topic-links a:hover{background:var(--sky)}.topic-links a>span{grid-row:span 2;color:var(--blue);font-size:.875rem}.topic-links small{color:var(--muted);font-size:.875rem}.catalog-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:22px}.course-topic{color:var(--blue)!important;font-size:.875rem!important;font-weight:650;margin-bottom:10px!important}.course-cover.amber{background:#f1e5ca;color:#745426}.compare-toggle{background:none;border:0;border-top:1px solid var(--line);margin-top:16px;padding-top:15px;min-height:44px;text-align:left;color:var(--blue);font-size:.875rem;font-weight:600;width:100%}.teacher-card{display:flex;flex-direction:column}.teacher-card .card-desc{flex:1}.teacher-card .card-bottom{gap:8px;flex-wrap:wrap}.curriculum{border-bottom:1px solid var(--line);padding:19px 0}.curriculum summary{display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-weight:650;min-height:35px;align-items:center}.curriculum summary:after{content:'+';font-size:1.3rem;color:var(--blue)}.curriculum[open] summary:after{content:'−'}.curriculum small{color:var(--muted);font-weight:400;font-size:.875rem}.curriculum p{margin:14px 0;color:var(--muted)}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:25px}.detail-facts small{display:block;color:var(--muted);margin-bottom:8px;letter-spacing:.06em;font-size:.8125rem}.detail-facts strong{font-size:1rem;line-height:1.5}.reading-stage{background:#112c40;color:white;padding:40px;border-radius:20px}.reading-stage>h2{margin:26px 0 20px}.reading-stage>p{color:#d1e0ef;font-size:1.1rem;line-height:1.85}.practice-box{background:#ffffff0d;border:1px solid #ffffff26;border-radius:15px;padding:25px;margin-top:30px}.practice-box>p{margin:16px 0;color:#e5edf7}.practice-box details{border-top:1px solid #ffffff30;padding-top:17px}.practice-box summary{cursor:pointer;color:#b8d6ff}.practice-box details p{margin-top:15px}.teacher-switch{display:flex;align-items:center;gap:15px;padding:16px 20px;background:#eef2fb;border:1px solid #d9e2f6;border-radius:12px;margin-bottom:30px;flex-wrap:wrap;font-size:.875rem}.teacher-switch select{border:1px solid #cbd6ec;border-radius:8px;background:white;padding:9px;max-width:100%}.teacher-switch span{color:var(--muted)}.ticket{border-bottom:1px solid var(--line);padding:20px 0}.ticket h4{margin-top:15px}.compare-card h2{font-size:1.7rem}.compare-card dl{margin:20px 0}.compare-card dt{font-size:.875rem;color:var(--muted);margin-top:20px}.compare-card dd{margin:6px 0 0;line-height:1.6}.room-avatar{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#183347;color:white}#compare-tray{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 15px 12px 22px;border-radius:15px;box-shadow:0 10px 45px #14244140;z-index:20;display:flex;gap:20px;align-items:center;font-size:.875rem;max-width:calc(100% - 24px)}#compare-tray[hidden]{display:none}.mobile-goals{display:none}.dash-content{min-width:0}.lesson-item{width:100%;text-align:left;white-space:normal;line-height:1.5}.form-grid{min-width:0}.card input,.card select,.card textarea{max-width:100%}.row-actions{flex-wrap:wrap}.breadcrumbs{flex-wrap:wrap}.empty{grid-column:1/-1}.page-heading h1,.dash-heading h1{line-height:1.15}.card-tags a{padding:6px 10px;background:var(--sky);border-radius:7px;color:var(--blue);font-size:.875rem}.profile-main,.booking,.search-layout>div{min-width:0}.course-detail-head h1{overflow-wrap:anywhere}.teacher-course>div{min-width:0}.teacher-course h4{overflow-wrap:anywhere}.profile-info{flex-wrap:wrap}.course-meta{flex-wrap:wrap}.sidebar .side-link{font-size:.9rem}
@media(min-width:801px){.sidebar{position:sticky;top:15px;max-height:calc(100vh - 30px);overflow:auto}.course-cover{height:185px}.section{padding-top:65px;padding-bottom:65px}}
@media(max-width:1000px){.nav-links{gap:16px}.goal-card{padding:24px}.goal-card h3{font-size:2rem}.premium-hero .hero-media{height:445px}.goal-grid{gap:14px}.stats{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.mobile-goals{display:flex;gap:20px;padding:0 20px 15px;overflow:auto;white-space:nowrap;font-size:.875rem}.nav{height:76px}.premium-hero{padding-top:25px;gap:30px}.premium-hero .hero-media{height:360px}.premium-hero .floating.top{left:15px;top:20px}.goal-grid{grid-template-columns:1fr}.goal-card{min-height:0;padding:25px}.goal-card h3{font-size:2.15rem;margin-top:15px}.goal-card p br{display:none}.goal-foot{margin-top:18px;padding-top:14px}.goal-emblem{display:none}.goal-intro{padding-top:10px}.goal-tabs{gap:7px}.goal-tabs .tab{font-size:.875rem;padding:10px 14px}.topic-browser{padding:22px}.topic-links{grid-template-columns:1fr}.subject-choice{padding:12px 14px}.reading-stage{padding:26px}.detail-facts{gap:20px}.teacher-switch{align-items:flex-start;flex-direction:column;gap:9px}.teacher-switch select{width:100%}.curriculum summary{flex-wrap:wrap}.dash-layout .sidebar{display:flex;overflow-x:auto;gap:8px;padding:12px 16px;max-width:100%;width:100%;border-bottom:1px solid var(--line)}.sidebar .side-label,.sidebar .side-bottom{display:none}.sidebar .side-link{white-space:nowrap;flex:0 0 auto;margin:0}.dash-layout{display:block}.dash-content{padding:25px 20px}.goal-section{padding-bottom:35px}.hero-assurance{gap:12px}.section-title{align-items:flex-start}.section-title>p{font-size:.9rem}.list-row{flex-wrap:wrap}.list-row .grow{min-width:180px}.course-detail-head h1{font-size:2.3rem}.goal-intro h1{font-size:2.4rem}.room-avatar{min-height:260px}.contact-row{flex-wrap:wrap}}
@media(max-width:450px){.wrap{padding-left:20px;padding-right:20px}.premium-hero h1{font-size:2.9rem}.premium-hero .hero-media{height:310px}.brand{font-size:1.5rem}.nav-actions .btn{font-size:.8125rem;padding:10px}.image-caption{left:22px!important;bottom:25px!important}.premium-hero .image-caption strong{font-size:1.5rem}.hero-assurance{font-size:.8125rem}.goal-tabs{flex-wrap:nowrap;overflow-x:auto}.goal-tabs a{flex-shrink:0}.detail-facts{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:17px}.stat-value{font-size:1.6rem}.stat-label{font-size:.8125rem}.stats svg{display:none}.form-grid{grid-template-columns:1fr}.booking-price{font-size:2rem}#compare-tray{bottom:12px;gap:12px;padding:10px;width:calc(100% - 24px)}#compare-tray>span{font-size:.8125rem}.teacher-course{flex-wrap:wrap;gap:14px}.topic-browser h2{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Route focus is retained for screen readers; interactive controls keep focus rings. */
#app:focus{outline:none}
