@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-cyrillic-ext-wght-normal.6e45df54.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-cyrillic-wght-normal.01cec89f.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-vietnamese-wght-normal.4cfbb1da.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-latin-ext-wght-normal.e54f6524.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-latin-wght-normal.a838cfed.woff2) format("woff2-variations");unicode-range:u+00??,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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-ext-wght-normal.460bdf14.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-wght-normal.491cbc05.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-ext-wght-normal.23aae568.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-wght-normal.4449bf7a.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-vietnamese-wght-normal.113a630f.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-ext-wght-normal.3835a68e.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-wght-normal.6c596dfc.woff2) format("woff2-variations");unicode-range:u+00??,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{--violet:#7546e8;--violet-600:#6537d9;--violet-700:#5a2fc4;--violet-50:#f3effd;--violet-100:#e7defb;--charcoal:#27252d;--text:#55515f;--muted:#7a7684;--page:#f8f7fc;--card:#ffffff;--line:#e6e3ed;--ok:#157a4a;--bad:#b42318;--radius:16px;--shadow:0 1px 2px rgba(39,37,45,.04),0 10px 30px rgba(117,70,232,.06);--head:"Montserrat Variable","Montserrat",system-ui,sans-serif;--body:"Inter Variable","Inter",system-ui,sans-serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--text);font:16px/1.65 var(--body)}img{max-width:100%;height:auto;display:block}a{color:var(--violet)}h1,h2,h3,h4{font-family:var(--head);font-weight:600;color:var(--charcoal);line-height:1.15;margin:0 0 .5em;letter-spacing:-.02em}h1{font-size:clamp(2.4rem,6vw,4rem);line-height:1.05}h2{font-size:clamp(1.7rem,3.6vw,2.5rem)}h3{font-size:1.2rem;letter-spacing:-.01em}p{margin:0 0 1em}.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}.narrow{max-width:780px}.muted{color:var(--muted)}.small{font-size:.9rem}.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--text);max-width:620px}.eyebrow{display:inline-block;font:600 .78rem/1 var(--body);letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}.accent,.eyebrow{color:var(--violet)}.skip{position:absolute;left:-999px;top:8px;background:var(--charcoal);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}.skip:focus{left:8px}:focus-visible{outline:3px solid var(--violet);outline-offset:2px;border-radius:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border-radius:8px;border:1.5px solid var(--violet);background:var(--violet);color:#fff;font:600 .98rem/1 var(--body);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.btn:hover{background:var(--violet-600);border-color:var(--violet-600);box-shadow:0 6px 18px rgba(117,70,232,.25)}.btn:active{transform:translateY(1px)}.btn.ghost{background:transparent;color:var(--violet)}.btn.ghost:hover{background:var(--violet-50);box-shadow:none}.btn.sm{min-height:38px;padding:8px 14px;font-size:.88rem}.btn.danger{background:#fff;color:var(--bad);border-color:#f1c4bf}.btn:disabled,.btn[disabled]{opacity:.5;cursor:default}.btn svg{width:18px;height:18px}.site-head{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}.site-head .in{display:flex;align-items:center;gap:28px;min-height:92px}.brand{display:inline-flex;text-decoration:none;flex:none}.brand .logo{height:66px;width:auto}.nav{display:flex;align-items:center;gap:6px;margin:0 auto}.nav a{position:relative;color:var(--charcoal);text-decoration:none;font:500 .95rem/1 var(--body);padding:12px 14px}.nav a:hover{color:var(--violet)}.nav a[aria-current=page]:after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;background:var(--violet);border-radius:2px}.head-cta{flex:none}.menu{display:none;margin-left:auto}.menu summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:44px;height:44px;border-radius:10px;border:1px solid var(--line)}.menu summary::-webkit-details-marker{display:none}.menu summary svg{width:22px;height:22px;color:var(--charcoal)}.menu .panel{display:none;position:absolute;left:0;right:0;top:92px;background:#fff;border-bottom:1px solid var(--line);padding:8px 20px 20px;box-shadow:var(--shadow)}.menu[open] .panel{display:grid}.menu .panel a{padding:14px 4px;color:var(--charcoal);text-decoration:none;font:500 1.02rem/1.2 var(--body);border-bottom:1px solid var(--line)}.menu .panel .btn{margin-top:14px;border-bottom:0;color:#fff}@media (max-width:960px){.head-cta,.nav{display:none}.menu{display:block}}@media (max-width:600px){.site-head .in{min-height:76px}.brand .logo{height:54px}.menu .panel{top:76px}}.section{padding:88px 0}.section.tight{padding-top:0}.section.white{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{max-width:680px;margin-bottom:36px}.section-head.center{margin-left:auto;margin-right:auto;text-align:center}.section-head .lead{margin-left:inherit;margin-right:inherit}.section-head.center .lead{margin:0 auto}.h-sm{font-size:clamp(1.4rem,2.6vw,1.9rem);margin-bottom:14px}.row-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:24px}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px;align-items:start}@media (max-width:900px){.split{grid-template-columns:1fr;gap:28px}}@media (max-width:700px){.section{padding:60px 0}}.hero{padding:72px 0 56px}.hero .grid{display:grid;grid-template-columns:1fr 1.05fr;grid-gap:40px;gap:40px;align-items:center}.hero h1 .accent{display:inline}.hero .lead{margin:22px 0 32px}.hero .actions{display:flex;flex-wrap:wrap;gap:14px}@media (max-width:960px){.hero .grid{grid-template-columns:1fr}.hero{padding:48px 0 32px}}.mock{position:relative;width:100%;max-width:560px;margin:0 auto;aspect-ratio:560/400}.mock .laptop{position:absolute;left:0;top:4%;width:86%}.mock .screen{background:#2b2933;border-radius:16px 16px 4px 4px;padding:10px;box-shadow:0 30px 60px rgba(39,37,45,.18)}.mock .dash{background:#fff;border-radius:8px;display:grid;grid-template-columns:26% 1fr;aspect-ratio:16/10;overflow:hidden;font-size:8px;color:var(--text)}.mock .side{border-right:1px solid var(--line);padding:10px 8px;display:grid;align-content:start;grid-gap:7px;gap:7px}.mock .side img{width:54px;margin-bottom:6px}.mock .side span{display:flex;align-items:center;gap:5px;padding:4px 5px;border-radius:5px}.mock .side span.on{background:var(--violet-50);color:var(--violet);font-weight:600}.mock .side i{width:7px;height:7px;border-radius:2px;border:1.2px solid}.mock .main{padding:10px;display:grid;grid-gap:8px;gap:8px;align-content:start}.mock .cards2{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:8px;gap:8px}.mock .box{border:1px solid var(--line);border-radius:7px;padding:7px}.mock .box b{display:block;font:600 8px/1.2 var(--body);color:var(--charcoal);margin-bottom:6px}.mock .bars{display:flex;align-items:flex-end;gap:4px;height:52px}.mock .bars i{flex:1 1;background:linear-gradient(180deg,#a98bf5,var(--violet));border-radius:2px 2px 0 0}.mock .ring{width:54px;height:54px;margin:0 auto 4px;background:conic-gradient(var(--violet) 0 92%,var(--violet-100) 92% 100%);place-items:center}.mock .ring,.mock .ring span{border-radius:50%;display:grid}.mock .ring span{width:42px;height:42px;background:#fff;place-items:center;font:700 10px/1 var(--head);color:var(--charcoal)}.mock .center{text-align:center}.mock .act{display:grid;grid-gap:5px;gap:5px}.mock .act div{display:flex;align-items:center;gap:6px}.mock .act i{width:10px;height:10px;border-radius:50%;background:var(--violet-100);box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 10px var(--violet)}.mock .act span{flex:1 1}.mock .act em{font-style:normal;color:var(--muted)}.mock .base{height:12px;margin:0 -6%;background:linear-gradient(180deg,#e9e7ef,#c9c6d2);border-radius:0 0 14px 14px}.mock .phone{position:absolute;right:0;bottom:0;width:27%;aspect-ratio:9/18;background:#1f1d24;border-radius:22px;padding:6px;box-shadow:0 24px 50px rgba(39,37,45,.25)}.mock .phone>div{background:#fff;border-radius:17px;height:100%;display:grid;align-content:center;justify-items:center;grid-gap:10px;gap:10px;padding:10px;text-align:center}.mock .phone svg.qr{width:72%;height:auto}.mock .tick{width:30px;height:30px;border-radius:50%;background:var(--violet);color:#fff;display:grid;place-items:center}.mock .tick svg{width:16px;height:16px}.mock .phone b{font:600 9px/1.3 var(--body);color:var(--charcoal)}@media (max-width:960px){.mock{max-width:480px;margin-top:12px}}.cards3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px}.cards3,.cards4{display:grid;gap:20px}.cards4{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px}@media (max-width:900px){.cards3,.cards4{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}a.card:hover{border-color:var(--violet-100);box-shadow:var(--shadow);transform:translateY(-2px)}.card .ico{width:60px;height:60px;border-radius:14px;display:grid;place-items:center;background:var(--violet-50);color:var(--violet);margin-bottom:22px}.card .ico svg{width:30px;height:30px}.card h3{font-size:1.3rem;margin-bottom:10px}.card p{color:var(--text);margin-bottom:18px}.card .more{margin-top:auto;font:600 1rem/1 var(--body);color:var(--violet);display:inline-flex;gap:6px;align-items:center}.card .more svg{width:17px;height:17px;transition:transform .15s}a.card:hover .more svg{transform:translateX(3px)}.chips{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:6px}.chips li{font:500 .8rem/1 var(--body);padding:7px 11px;border-radius:999px;background:var(--page);border:1px solid var(--line);color:var(--text)}.approach{display:grid;grid-template-columns:1fr 1.15fr;grid-gap:40px;gap:40px;align-items:center}.approach h2{font-size:clamp(2rem,4vw,2.8rem);line-height:1.1}.flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:start;text-align:center}.flow li.step{display:grid;justify-items:center;grid-gap:8px;gap:8px}.flow .circle{width:76px;height:76px;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);display:grid;place-items:center;color:var(--violet)}.flow .circle svg{width:32px;height:32px}.flow b{font:600 1.05rem/1.2 var(--head);color:var(--violet)}.flow span{font-size:.92rem;color:var(--text);max-width:150px}.flow li.arrow{color:var(--violet);padding-top:26px}.flow li.arrow svg{width:26px;height:26px}@media (max-width:900px){.approach{grid-template-columns:1fr}}@media (max-width:560px){.flow{grid-template-columns:1fr;gap:18px}.flow li.arrow{transform:rotate(90deg);padding:0;justify-self:center}}.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.bento>div{padding:28px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px;min-height:260px}.bento>div:last-child{border-right:0}.bento .col{padding:0;gap:0}.bento .col>div{padding:28px;flex:1 1;display:flex;flex-direction:column;gap:8px}.bento .col>div+div{border-top:1px solid var(--line)}.bento .kicker{font:600 .72rem/1 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--violet)}.bento h3{font-size:1.35rem;margin:6px 0 0}.bento p{margin:0;color:var(--text)}.bento .notes{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.bento .notes div{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 6px 16px rgba(39,37,45,.05);font:600 .74rem/1.3 var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--charcoal)}.bento .notes div:last-child{opacity:.45}.bento .notes small{display:block;font-weight:500;color:var(--muted);letter-spacing:.03em}.bento .notes i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--violet-50);color:var(--violet)}.bento .notes i svg{width:15px;height:15px}.bento .tools{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.bento .tools span{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:#fff;font:700 .72rem/1 var(--body);color:var(--charcoal)}.bento .chat{border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:0 12px 30px rgba(39,37,45,.08);margin-bottom:auto}.bento .chat p{display:flex;gap:8px;align-items:center;color:var(--charcoal);font-size:.92rem;margin-bottom:26px}.bento .chat p svg{width:16px;height:16px;color:var(--violet)}.bento .chat small{color:var(--muted);font:600 .66rem/1 var(--body);letter-spacing:.08em;text-transform:uppercase}@media (max-width:900px){.bento{grid-template-columns:1fr}.bento>div{border-right:0;border-bottom:1px solid var(--line);min-height:0}.bento>div:last-child{border-bottom:0}}.page-hero{padding:64px 0 36px}.crumbs{font-size:.88rem;margin-bottom:14px}.crumbs,.crumbs a{color:var(--muted)}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--violet)}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.feature{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}.feature h3{font-size:1rem;display:flex;gap:10px;align-items:flex-start;margin-bottom:6px}.feature h3 svg{width:20px;height:20px;color:var(--violet);flex:none}.feature p{margin:0;font-size:.95rem}@media (max-width:900px){.features{grid-template-columns:1fr 1fr}}@media (max-width:560px){.features{grid-template-columns:1fr}}.steps-row{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.steps-row li{counter-increment:s;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;grid-gap:4px;gap:4px}.steps-row li:before{content:counter(s);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--violet);color:#fff;font:600 .9rem/1 var(--head);margin-bottom:8px}.steps-row b{font-family:var(--head);font-weight:600;color:var(--charcoal)}.steps-row span{font-size:.94rem}@media (max-width:700px){.steps-row{grid-template-columns:1fr}}.faqs{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:0 22px}.faqs details{border-bottom:1px solid var(--line)}.faqs details:last-child{border-bottom:0}.faqs summary{list-style:none;cursor:pointer;padding:18px 36px 18px 0;font:600 1rem/1.4 var(--head);color:var(--charcoal);position:relative}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:"+";position:absolute;right:4px;top:14px;font:400 1.5rem/1 var(--body);color:var(--violet)}.faqs details[open] summary:after{content:"–"}.faqs p{margin:0 0 18px;padding-right:36px}.statement{font:600 clamp(1.3rem,2.4vw,1.7rem)/1.4 var(--head);color:var(--charcoal);letter-spacing:-.01em}.vals{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.vals li{display:flex;gap:12px;flex-wrap:wrap}.vals b{font-family:var(--head);font-weight:600;color:var(--charcoal);min-width:140px}.linklist{list-style:none;padding:0 18px;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.linklist a{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--charcoal)}.linklist li:last-child a{border-bottom:0}.linklist a:hover b,.linklist svg{color:var(--violet)}.linklist svg{width:22px;height:22px;flex:none;margin-top:2px}.linklist span{display:grid;grid-gap:2px;gap:2px}.linklist b{font-family:var(--head);font-weight:600}.linklist small{color:var(--text);font-size:.9rem}.prose{max-width:760px}.prose h2{font-size:1.35rem;margin-top:1.8em}.prose ol,.prose ul{padding-left:1.2em}.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow)}.form{grid-gap:16px}.form,.form .row{display:grid;gap:16px}.form .row{grid-template-columns:1fr 1fr;grid-gap:16px}@media (max-width:600px){.form .row{grid-template-columns:1fr}.form-card{padding:22px 18px}}label{display:grid;grid-gap:6px;gap:6px;font:600 .88rem/1.3 var(--body);color:var(--charcoal)}label .opt{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;font:400 1rem/1.4 var(--body);color:var(--charcoal);background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;min-height:48px}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-100)}.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}.alert{border-radius:10px;padding:12px 14px;font-size:.95rem}.alert.err{background:#fdecea;color:var(--bad)}.alert.ok{background:#e7f6ee;color:var(--ok)}.thanks{text-align:center;padding:20px 6px}.thanks .tick{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#e7f6ee;color:var(--ok)}.thanks .tick svg{width:32px;height:32px}.contact-list{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-gap:14px;gap:14px}.contact-list li{display:flex;gap:14px;align-items:flex-start}.contact-list i{flex:none;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--violet-50);color:var(--violet)}.contact-list i svg{width:20px;height:20px}.contact-list b{display:block;font-family:var(--head);font-weight:600;color:var(--charcoal)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:18px;gap:18px}.course{display:flex;flex-direction:column;gap:6px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}.course:hover{border-color:var(--violet-100);box-shadow:var(--shadow);transform:translateY(-2px)}.course .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.course h3{font-size:1.05rem;margin-bottom:4px}.course p{font-size:.94rem;flex:1 1}.course .foot{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line);padding-top:12px}.course .foot span{display:inline-flex;align-items:center;gap:6px}.course .foot svg{width:16px;height:16px}.tag{display:inline-block;padding:5px 11px;border-radius:999px;font:600 .74rem/1 var(--body);letter-spacing:.05em;text-transform:uppercase}.tag.free{background:#e7f6ee;color:var(--ok)}.tag.paid{background:var(--violet-50);color:var(--violet-700)}.course-layout{display:grid;grid-template-columns:1fr 340px;grid-gap:48px;gap:48px;align-items:start}.course-side{position:-webkit-sticky;position:sticky;top:110px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.course-side dl{display:grid;grid-template-columns:auto 1fr;grid-gap:10px 14px;gap:10px 14px;margin:0 0 18px;font-size:.94rem}.course-side dt{color:var(--muted)}.course-side dd{margin:0;font-weight:600;color:var(--charcoal)}.course-side .btn{width:100%}@media (max-width:900px){.course-layout{grid-template-columns:1fr}.course-side{position:static}}.lessons{list-style:none;padding:0;margin:0;counter-reset:l;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.lessons li{counter-increment:l;border-top:1px solid var(--line)}.lessons li:first-child{border-top:0}.lessons .row,.lessons a{display:flex;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;color:var(--charcoal)}.lessons a:hover{background:var(--page)}.lessons .n:before{content:counter(l);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--violet-50);color:var(--violet);font:600 .85rem/1 var(--head)}.lessons .t{flex:1 1;font-weight:600}.lessons .m{color:var(--muted);font-size:.86rem;white-space:nowrap}.outcomes{list-style:none;padding:0;margin:0 0 8px;display:grid;grid-gap:10px;gap:10px}.outcomes li{display:flex;gap:10px}.outcomes svg{flex:none;width:20px;height:20px;color:var(--ok);margin-top:2px}.lesson-wrap{max-width:760px;margin:0 auto}.lesson-wrap .prose{font-size:1.06rem;line-height:1.75}.lesson-wrap .prose h2{font-size:1.3rem;margin:1.8em 0 .5em}.lesson-wrap .prose li{margin-bottom:6px}.lesson-nav{display:flex;justify-content:space-between;gap:12px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}.lesson-nav a{display:grid;grid-gap:4px;gap:4px;text-decoration:none;padding:14px 16px;border:1px solid var(--line);border-radius:12px;max-width:48%;background:#fff}.lesson-nav a span{color:var(--muted);font-size:.82rem}.lesson-nav a b{font-family:var(--head);font-weight:600;color:var(--charcoal)}.lesson-nav a.next{margin-left:auto;text-align:right}@media (max-width:600px){.lesson-nav a{max-width:100%;width:100%}}.progress{height:4px;background:var(--line);border-radius:4px;overflow:hidden;margin:18px 0 0}.progress i{display:block;height:100%;background:var(--violet)}.blog-list{max-width:860px;display:grid;grid-gap:14px;gap:14px}.post{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;scroll-margin-top:110px}.post summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:160px 1fr;grid-gap:20px;gap:20px;padding:16px;align-items:center}.post summary::-webkit-details-marker{display:none}.post summary:hover b{color:var(--violet)}.post summary .ph,.post summary img{width:160px;height:110px;object-fit:cover;border-radius:10px;background:var(--violet-50)}.post .txt{display:grid;grid-gap:6px;gap:6px}.post time{color:var(--muted);font-size:.86rem}.post b{font:600 1.15rem/1.3 var(--head);color:var(--charcoal)}.post .sum{font-size:.95rem}.post .read{color:var(--violet);font:600 .88rem/1 var(--body)}.post[open] .read{font-size:0}.post[open] .read:before{content:"Close ";font-size:.88rem}.post[open] .read span{display:inline-block;transform:rotate(180deg);font-size:.88rem}.post-body{padding:4px 28px 24px;border-top:1px solid var(--line)}.post-body .prose{font-size:1.04rem;line-height:1.75}.hero-img{width:100%;max-height:460px;object-fit:cover;border-radius:12px;margin:22px 0}@media (max-width:600px){.post summary{grid-template-columns:96px 1fr;gap:14px;padding:12px}.post summary .ph,.post summary img{width:96px;height:76px}.post b{font-size:1.02rem}.post .sum{display:none}.post-body{padding:4px 16px 20px}}.site-foot{background:#fff;border-top:1px solid var(--line);padding:56px 0 28px;color:var(--text)}.site-foot .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-gap:32px;gap:32px}.site-foot img{height:70px;width:auto;margin-bottom:14px}.site-foot h4{font-size:.95rem;margin-bottom:14px;color:var(--charcoal)}.site-foot ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.site-foot a{color:var(--text);text-decoration:none}.site-foot a:hover{color:var(--violet)}.site-foot .base{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:.88rem;color:var(--muted)}@media (max-width:800px){.site-foot .grid{grid-template-columns:1fr}}.admin{background:var(--page);min-height:100vh}.admin-top{background:#fff;border-bottom:1px solid var(--line)}.admin-top .in{display:flex;align-items:center;gap:14px;min-height:64px;flex-wrap:wrap}.admin-top img{height:26px;width:auto}.admin-top .sp{flex:1 1}.admin main{padding:28px 0 60px}.admin-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px}.admin-nav a{white-space:nowrap;padding:9px 13px;border-radius:8px;text-decoration:none;color:var(--text);font:600 .9rem/1 var(--body)}.admin-nav a:hover{background:var(--page)}.admin-nav a.on{background:var(--violet-50);color:var(--violet-700)}.auth-box{max-width:420px;margin:8vh auto}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin:18px 0 24px}.tile{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.tile b{display:block;font:600 1.6rem/1.1 var(--head);color:var(--charcoal)}.tile span{color:var(--muted);font-size:.88rem}@media (max-width:700px){.tiles{grid-template-columns:1fr 1fr}}.admin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:800px){.admin-grid{grid-template-columns:1fr}}.panel-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.panel-card h2{font-size:1.1rem}.mini{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-gap:10px;gap:10px}.mini li{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.95rem}.mini .pill{margin-left:auto}.mini.links a{font-weight:600;text-decoration:none}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;align-items:center}.filters a{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--text);font:600 .88rem/1 var(--body)}.filters a.on{background:var(--violet);border-color:var(--violet);color:#fff}.enq{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:12px}.enq .top{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline}.enq .top b{font:600 1.05rem/1.2 var(--head);color:var(--charcoal)}.enq .meta{color:var(--muted);font-size:.88rem}.enq .msg{margin:10px 0;white-space:pre-wrap}.enq .acts{margin-top:10px}.enq .acts,.enq .acts form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.enq .acts input[name=note]{min-height:40px;padding:8px 12px;width:min(320px,100%)}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font:600 .76rem/1.2 var(--body)}.pill.new{background:var(--violet-50);color:var(--violet-700)}.pill.contacted{background:#fff5e0;color:#8a5a00}.pill.closed{background:#eef0f3;color:var(--muted)}.editor{display:grid;grid-gap:18px;gap:18px}.editor fieldset{border:1px solid var(--line);background:#fff;border-radius:12px;padding:20px;margin:0;display:grid;grid-gap:14px;gap:14px;min-width:0}.editor legend{font:600 1rem/1 var(--head);color:var(--charcoal);padding:0 6px}.field{display:grid;grid-gap:6px;gap:6px}.field>span{font:600 .88rem/1.3 var(--body)}.field small{font-weight:400}.row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}@media (max-width:760px){.row3{grid-template-columns:1fr}}.check{display:flex;align-items:center;gap:10px;font-weight:600}.check input{width:20px;height:20px;min-height:0}.savebar{position:-webkit-sticky;position:sticky;bottom:0;background:rgba(248,247,252,.96);padding:12px 0;border-top:1px solid var(--line)}.table-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.95rem}.tbl td,.tbl th{text-align:left;padding:12px 14px;border-top:1px solid var(--line);vertical-align:middle}.tbl thead th{border-top:0;font:600 .76rem/1 var(--body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--page)}.tbl a{text-decoration:none}.nowrap{white-space:nowrap}form.inline{display:inline-flex;gap:4px}.inline-del{display:inline-block;position:relative}.inline-del summary{list-style:none;display:inline-flex}.inline-del summary::-webkit-details-marker{display:none}.inline-del form{position:absolute;right:0;top:44px;z-index:5;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px;box-shadow:0 8px 24px rgba(39,37,45,.12)}.lesson-edit{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;align-items:start}.lesson-edit textarea{font:14px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width:1000px){.lesson-edit{grid-template-columns:1fr}}.preview-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 24px;max-height:80vh;overflow:auto}.preview-box .prose h2{font-size:1.15rem}.thumb{width:56px;height:40px;object-fit:cover;border-radius:6px;display:block;background:var(--violet-50)}.pick-preview{max-height:240px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.pick-empty,.pick-preview{width:100%;max-width:420px}.pick-empty{height:120px;border:1.5px dashed var(--line);border-radius:10px;display:grid;place-items:center;color:var(--muted)}.cards.four{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}@media (max-width:800px){.cards.four{grid-template-columns:1fr}}