:root{color-scheme:light;--bg:#f8faff;--surface:#fff;--text:#15263f;--muted:#576780;--line:#dfe7f3;--accent:#345eea;--soft:#eef3ff;--shadow:0 16px 60px #28487b12;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
:root[data-theme="dark"]{color-scheme:dark;--bg:#101925;--surface:#172334;--text:#edf2fb;--muted:#b0bfd4;--line:#2e4058;--accent:#91a9ff;--soft:#20314b;--shadow:0 16px 60px #0003}
*{box-sizing:border-box;min-width:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.04em}h1{font-size:clamp(2.7rem,5vw,4.7rem);line-height:1.08;margin-bottom:24px}h1 span{color:var(--accent)}h2{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.2;margin-bottom:18px}h3{font-size:1.17rem;margin-bottom:12px}p,li{line-height:1.7}section{scroll-margin-top:90px}.skip-link{position:absolute;left:16px;top:-80px;padding:12px;background:var(--surface);z-index:5}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:32px;padding:16px max(24px,calc((100vw - 1280px)/2));background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:750;letter-spacing:-.03em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#345eea;color:#fff;font-size:30px}.site-header nav{display:flex;gap:26px;margin-left:auto;color:var(--muted);font-size:.9rem}.header-actions{display:flex;align-items:center;gap:18px;font-size:.9rem;font-weight:650}.theme-toggle{border:1px solid var(--line);border-radius:10px;width:36px;height:36px;background:var(--surface);color:var(--text);cursor:pointer;font-size:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 23px;min-height:48px;background:#345eea;color:#fff;border:1px solid #345eea;border-radius:12px;font-size:.95rem;font-weight:700;transition:background .15s}.button:hover{background:#264ac7}.button.secondary{background:var(--surface);color:var(--text);border-color:var(--line)}.button.secondary:hover{background:var(--soft)}.button.small{padding:10px 16px;min-height:42px}.landing-main{max-width:1280px;margin:auto}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:48px;align-items:center;padding:80px 24px 70px}.eyebrow{font-size:.78rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.lede{font-size:1.05rem;color:var(--muted);max-width:560px;margin-bottom:26px}.actions{display:flex;flex-wrap:wrap;gap:12px}.caption,figcaption{font-size:.8rem;line-height:1.5;color:var(--muted)}.caption{margin:18px 0 0}.product-shot{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.shot-bar{display:flex;align-items:center;gap:20px;padding:13px 18px;font-size:.78rem;font-weight:600;color:var(--muted);border-bottom:1px solid var(--line)}.shot-bar>span:first-child{font-size:.65rem;letter-spacing:3px;color:#8297b8}figcaption{padding:10px 16px;margin:0}.section{padding:64px 24px}.section-heading{margin-bottom:32px;max-width:760px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.steps article{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.steps p,.trust p{color:var(--muted);font-size:.95rem;margin-bottom:0}.step-number{display:inline-block;color:var(--accent);font-size:.8rem;font-weight:750;padding:7px 11px;background:var(--soft);border-radius:9px;margin-bottom:20px}.teacher-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}.feature-list{padding-left:22px;color:var(--muted);font-size:.95rem}.feature-list li{padding:4px 0}.text-link{display:inline-block;margin-top:10px;font-size:.9rem;color:var(--accent);font-weight:700}.trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;background:var(--soft);border-radius:18px;margin:32px 24px;padding:36px}.trust h3{font-size:1rem}.faq{max-width:880px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:1rem;font-weight:650;line-height:1.6}.faq details p{margin:14px 0 0;color:var(--muted);font-size:.94rem}.cta{text-align:center;margin:24px;border-radius:24px;background:var(--surface);border:1px solid var(--line)}.cta p{color:var(--muted)}.cta .actions{justify-content:center}footer{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:40px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}footer p{margin:0}footer .brand{color:var(--text)}
@media(max-width:1000px){.site-header nav{display:none}.header-actions{margin-left:auto}.hero,.teacher-section{gap:28px}.hero{padding-top:56px}h1{font-size:3rem}.steps article{padding:22px}}
@media (max-width: 767px){.site-header{padding:12px 16px;gap:12px}.brand{font-size:1.05rem}.brand-mark{height:30px;width:30px}.header-actions{gap:12px;font-size:.8rem}.theme-toggle{width:30px;height:32px;font-size:21px}.header-actions .button{padding:9px 12px;min-height:38px}.hero,.teacher-section{grid-template-columns: minmax(0, 1fr)}.hero{padding:44px 20px}.hero-copy{max-width:540px}h1{font-size:2.65rem}.section{padding:44px 20px}.steps{grid-template-columns:minmax(0,1fr)}.steps article{padding:24px}.steps .step-number{float:right;margin:0 0 12px 16px}.trust{grid-template-columns:minmax(0,1fr);margin:12px 20px;padding:28px;gap:25px}.cta{margin:20px}.teacher-section{gap:30px}.lede{font-size:1rem}.button{padding:13px 18px}.shot-bar{padding:11px 14px}footer{padding:30px 20px;gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.language-toggle{border:1px solid var(--line);border-radius:10px;min-width:42px;height:36px;padding:0 9px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.75rem;font-weight:800;letter-spacing:.04em}
@media (max-width:767px){.language-toggle{min-width:36px;height:32px;padding:0 7px}.header-actions{gap:8px}.header-actions .login-link{display:none}}
