
:root{--bg:#f6f8fa;--card:#fff;--ink:#12203a;--mut:#56627a;--line:#dde3ec;--navy:#12203a;--on:#fff;--acc:#0e8a8c;--accT:#fff;--hi:#ffe08a;--soft:#e8f3f3;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0d1526;--card:#16213a;--ink:#eef2f8;--mut:#a7b3c9;--line:#27334f;--navy:#0a111f;--acc:#3bc0c2;--accT:#06121a;--hi:#7a6420;--soft:#12313a}}
:root[data-theme="dark"]{--bg:#0d1526;--card:#16213a;--ink:#eef2f8;--mut:#a7b3c9;--line:#27334f;--navy:#0a111f;--acc:#3bc0c2;--accT:#06121a;--hi:#7a6420;--soft:#12313a}
html{scroll-behavior:smooth;scroll-padding-top:calc(72px + env(safe-area-inset-top,0px))}
*,*:before,*:after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 Figtree,system-ui,sans-serif}
h1,h2,h3{font-family:Newsreader,Georgia,serif;font-weight:600;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,7vw,4.2rem)}h2{font-size:clamp(1.8rem,4.5vw,2.6rem)}h3{font-size:1.25rem}
p{margin:0 0 1em}a{color:inherit}
.w{max-width:1080px;margin:0 auto;padding:0 20px}
section{padding:64px 0}
.lead{color:var(--mut);max-width:62ch;font-size:1.08rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:10px;font-weight:600;text-decoration:none;border:2px solid var(--acc);background:var(--acc);color:var(--accT);cursor:pointer;font-size:1rem;font-family:inherit}
.btn.o{background:transparent;color:inherit;border-color:currentColor}
:focus-visible{outline:3px solid var(--hi);outline-offset:2px}
header{position:sticky;top:0;z-index:20;background:var(--navy);color:#fff;padding-top:env(safe-area-inset-top,0px)}
header .w{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:Newsreader,serif;font-size:1.35rem;font-weight:600;text-decoration:none;white-space:nowrap}
.logo i{font-style:normal;color:#3bc0c2}
nav{display:none;gap:18px;font-size:.92rem}nav a{text-decoration:none;opacity:.9}nav a:hover{opacity:1;text-decoration:underline}
header .btn{min-height:40px;padding:0 16px;font-size:.9rem;background:#3bc0c2;border-color:#3bc0c2;color:#06121a}
#menu{background:none;border:0;color:#fff;font-size:1.6rem;min-width:44px;min-height:44px}
#drawer{display:none;background:var(--navy);padding:8px 20px 16px;color:#fff}#drawer.open{display:block}
#drawer a{display:block;padding:12px 0;border-bottom:1px solid #ffffff22;text-decoration:none}
@media(min-width:960px){nav{display:flex}#menu,#drawer{display:none!important}.bar{display:none!important}}
.hero{background:var(--navy);color:#fff;padding:56px 0 64px}
.hero .g{display:grid;gap:36px;align-items:center}
@media(min-width:900px){.hero .g{grid-template-columns:1.1fr .9fr}}
.hero p{color:#c5d0e4;font-size:1.15rem;max-width:50ch}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero .btn{background:#3bc0c2;border-color:#3bc0c2;color:#06121a}.hero .btn.o{background:transparent;color:#fff;border-color:#ffffff88}
.sol{background:#0f1a30;border:1px solid #ffffff25;border-radius:14px;padding:22px;font-family:Newsreader,serif;font-size:1.2rem;background-image:linear-gradient(#ffffff0d 1px,transparent 1px),linear-gradient(90deg,#ffffff0d 1px,transparent 1px);background-size:24px 24px}
.sol small{display:block;font:600 .8rem Figtree,sans-serif;color:#8fa3c4;margin-bottom:10px}
.sol .ln{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed #ffffff22;opacity:0;animation:in .5s forwards}
.sol .ln span{font:500 .82rem Figtree,sans-serif;color:#7fe0e2;text-align:right}
.sol .ln:nth-of-type(2){animation-delay:.5s}.sol .ln:nth-of-type(3){animation-delay:1s}.sol .ln:nth-of-type(4){animation-delay:1.5s}.sol .ln:nth-of-type(5){animation-delay:2s}
.sol mark{background:var(--hi);color:#12203a;padding:0 6px;border-radius:4px}
@keyframes in{to{opacity:1}}
@media(prefers-reduced-motion:reduce){.sol .ln{animation:none;opacity:1}html{scroll-behavior:auto}}
.strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.strip span{border:1px solid #ffffff44;border-radius:99px;padding:4px 14px;font-size:.9rem}
.grid{display:grid;gap:16px}
@media(min-width:700px){.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px}
.card h3{margin-bottom:.3em}.card p{color:var(--mut);margin:0;font-size:.97rem}
.alt{background:var(--soft)}
.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin:20px 0}
.tabs button{flex:none;min-height:44px;padding:0 18px;border-radius:99px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:600 .95rem Figtree;cursor:pointer}
.tabs button[aria-selected=true]{background:var(--navy);color:#fff;border-color:var(--navy)}
.pane h3{margin-top:0}.pane ul{padding-left:1.1em;margin:.3em 0 0;color:var(--mut);font-size:.97rem}
.steps{counter-reset:s;display:grid;gap:16px}
.steps .card{position:relative;padding-left:70px}
.steps .card:before{counter-increment:s;content:counter(s);position:absolute;left:20px;top:20px;width:34px;height:34px;border-radius:50%;background:var(--acc);color:var(--accT);display:grid;place-items:center;font-weight:700}
.ph{display:inline-block;background:var(--hi);color:#12203a;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:4px;vertical-align:middle}
.lock{opacity:.75}.lock:after{content:"Premium - coming soon";display:block;margin-top:10px;font-size:.8rem;font-weight:700;color:var(--acc)}
.dash{border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}
.dash .top{background:var(--navy);color:#fff;padding:12px 18px;display:flex;justify-content:space-between;font-size:.9rem}
.dash .b{padding:18px;display:grid;gap:14px}
@media(min-width:700px){.dash .b{grid-template-columns:repeat(3,1fr)}}
.bar2{height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:8px}.bar2 i{display:block;height:100%;background:var(--acc)}
.price{text-align:left}.price b{font:600 2.2rem Newsreader,serif;display:block}
.price.f{border:2px solid var(--acc)}
details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:0 18px;margin-bottom:10px}
summary{cursor:pointer;font-weight:600;padding:16px 0;min-height:48px}details p{color:var(--mut)}
input,select,textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}
textarea{min-height:90px}label{display:block;font-weight:600;font-size:.92rem;margin-bottom:4px}
.fld{margin-bottom:14px}.err{color:#c0392b;font-size:.85rem;display:none}.bad+.err,.bad ~ .err{display:block}.bad{border-color:#c0392b}
@media(prefers-color-scheme:dark){.err{color:#ff8a7a}}
.slot{border:2px dashed var(--acc);border-radius:12px;padding:20px;text-align:center;color:var(--mut);margin-bottom:20px}
#msg{margin-top:14px;padding:14px;border-radius:8px;background:var(--soft);display:none}
footer{background:var(--navy);color:#c5d0e4;padding:40px 0 100px;font-size:.92rem}footer a{display:block;padding:4px 0}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--navy);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))}
.bar .btn{width:100%;background:#3bc0c2;border-color:#3bc0c2;color:#06121a}
.tbl{overflow-x:auto}
.crumb{font-size:.88rem;color:#a9b8d4;margin-bottom:14px}.crumb a{color:#a9b8d4}.hero.sm{padding:40px 0 48px}.hero.sm .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}ul.ck{padding-left:1.1em;margin:0;color:var(--mut)}ul.ck li{margin-bottom:.4em}.rel{display:flex;flex-wrap:wrap;gap:10px}.rel a{border:1px solid var(--line);background:var(--card);border-radius:99px;padding:8px 16px;text-decoration:none;font-weight:600;font-size:.92rem}
.tutor{display:block;width:140px;height:140px;border-radius:50%;object-fit:cover;object-position:center 25%;margin-bottom:16px;border:3px solid var(--card);box-shadow:0 0 0 1px var(--line)}
.doc{max-width:760px}.doc h2{font-size:1.35rem;margin-top:1.8em}.doc li{margin-bottom:.4em;color:var(--mut)}.doc p{color:var(--mut)}
