/* Sten Digital — shared stylesheet for every page */
:root{color-scheme:light;
  --ink:#1d1640; --ink-2:#5b5578; --line:#e9e4fb; --bg:#fbfaff; --card:#ffffff;
  --violet:#6a3cf5; --violet-deep:#3e1fb0; --mint:#0aa77a; --sun:#ffd23f; --sun-deep:#d9a900; --coral:#ff6b57; --sky:#3fb6ff;
  --violet-soft:#efe9ff; --mint-soft:#dcf8ee; --coral-soft:#ffe8e4; --sun-soft:#fff6cf; --sky-soft:#e2f4ff;
  --on-dark:#ffffff; --on-dark-2:rgba(255,255,255,.8); --glass:rgba(255,255,255,.12); --glass-line:rgba(255,255,255,.3);
  --display:"Unbounded",Nunito,system-ui,sans-serif; --text:"Nunito",system-ui,sans-serif;
  --r:22px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--text);color:var(--ink);background:var(--bg);line-height:1.6;font-size:17px;overflow-x:hidden}
h1,h2,h3{font-family:var(--display);line-height:1.17;letter-spacing:-.01em;text-wrap:balance;font-feature-settings:"locl" 0}
a{color:inherit}
img{max-width:100%;height:auto}
button{font:inherit;cursor:pointer;color:inherit}
:focus-visible{outline:3px solid var(--sun);outline-offset:2px}
.wrap{max-width:1140px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:var(--card);padding:8px 12px;border-radius:8px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

/* header */
header.site{position:sticky;top:0;z-index:20;background:rgba(251,250,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:18px;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:17px;font-feature-settings:"locl" 0;flex:none}
nav.main{display:flex;gap:20px;margin-left:auto;font-weight:700;font-size:15px}
nav.main a{text-decoration:none;color:var(--ink-2)}
nav.main a:hover,nav.main a[aria-current]{color:var(--violet)}
.switch{display:inline-flex;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:3px;flex:none}
.switch a{border-radius:999px;padding:5px 10px;font-weight:800;font-size:13px;color:var(--ink-2);text-decoration:none}
.switch a[aria-current]{background:var(--ink);color:var(--on-dark)}
.cta{display:inline-block;background:var(--violet);color:var(--on-dark);border:0;border-radius:999px;padding:12px 24px;font-weight:800;text-decoration:none;box-shadow:0 4px 0 var(--violet-deep);transition:transform .12s;white-space:nowrap;text-align:center}
.cta:hover{transform:translateY(-1px)}
.cta.sun{background:var(--sun);color:var(--ink);box-shadow:0 4px 0 var(--sun-deep)}
.cta.ghost{background:var(--card);color:var(--violet);box-shadow:0 4px 0 var(--line);border:1px solid var(--line)}
.menu{display:none;margin-left:auto}
.menu summary{list-style:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--card);display:grid;place-items:center;cursor:pointer}
.menu summary::-webkit-details-marker{display:none}
.menu .drop{position:absolute;left:0;right:0;top:68px;background:var(--card);border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(29,22,64,.08);padding:12px 16px 18px;display:grid;gap:4px}
.menu .drop a{padding:10px 4px;font-weight:800;text-decoration:none;border-bottom:1px solid var(--line)}
.menu .drop .cta{margin-top:10px;border:0}

/* breadcrumbs */
.crumbs{font-size:14px;color:var(--ink-2);padding-top:18px}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--violet)}

/* index hero */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center;padding-block:54px 30px}
.hero h1{font-size:clamp(31px,4.6vw,52px)}
.hero h1 em,.page-hero h1 em,.intro h1 em{font-style:normal;color:var(--violet);background:linear-gradient(transparent 62%,var(--sun) 62%);padding:0 4px}
.hero .lead{font-size:19px;color:var(--ink-2);margin-top:18px;max-width:560px}
.board{background:var(--violet);border-radius:32px 32px 32px 8px;padding:26px;color:var(--on-dark);position:relative;overflow:hidden;min-height:340px}
.board::after{content:"";position:absolute;right:-50px;bottom:-50px;width:190px;height:190px;border-radius:50%;background:var(--coral)}
.board::before{content:"";position:absolute;right:120px;bottom:26px;width:64px;height:64px;border-radius:16px;background:var(--sun);transform:rotate(18deg)}
.board h3{font-family:var(--text);font-size:15px;font-weight:700;color:var(--on-dark-2);margin-bottom:14px}
.words{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1}
.words span{background:var(--glass);border:1px solid var(--glass-line);padding:6px 12px;border-radius:999px;font-size:15px;font-weight:700}
.words span:nth-child(3n){background:var(--sun);color:var(--ink);border-color:var(--sun)}
.words span:nth-child(4n){background:var(--mint);border-color:var(--mint)}
.formula{position:relative;z-index:1;margin-top:22px;font-family:var(--display);font-size:21px}
.formula small{display:block;font-family:var(--text);font-size:13px;color:var(--on-dark-2);margin-top:4px}

/* who picker */
.who{padding-block:8px 48px}
.who h2{font-size:20px;margin-bottom:14px}
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.door{border:2px solid var(--line);background:var(--card);border-radius:var(--r);padding:20px;text-align:left;display:grid;gap:6px;transition:transform .15s,border-color .15s,box-shadow .15s}
.door:hover{transform:translateY(-2px)}
.door .ic{width:52px;height:52px;border-radius:16px 16px 16px 4px;display:grid;place-items:center;font-size:26px}
.door:nth-child(1) .ic{background:var(--sun-soft)}.door:nth-child(2) .ic{background:var(--sky-soft)}.door:nth-child(3) .ic{background:var(--coral-soft)}
.door b{font-family:var(--display);font-size:19px;font-weight:700;font-feature-settings:"locl" 0}
.door small{color:var(--ink-2);font-size:15px}
.door[aria-pressed=true]{border-color:var(--violet);box-shadow:6px 6px 0 var(--sun)}

/* generic sections */
section.block{padding-block:60px}
.sec-h{margin-bottom:26px;max-width:720px}
.sec-h h2{font-size:clamp(25px,3.2vw,37px)}
.sec-h p{color:var(--ink-2);margin-top:10px}
.tint{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sunbg{background:var(--sun-soft)}
.pains{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.pain{display:flex;gap:14px;align-items:flex-start;background:var(--bg);border-radius:var(--r);padding:20px;font-weight:700;font-size:18px;line-height:1.4}
.tint .pain{background:var(--bg)}
.pain::before{content:"?";flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--coral-soft);color:var(--coral);font-family:var(--display)}
.bridge{margin-top:26px;font-family:var(--display);font-size:clamp(20px,2.4vw,26px);color:var(--violet);font-feature-settings:"locl" 0}
.sols{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sol{border-radius:var(--r);padding:22px;display:grid;gap:8px;align-content:start}
.sol:nth-child(1){background:var(--violet-soft)}.sol:nth-child(2){background:var(--mint-soft)}.sol:nth-child(3){background:var(--sun-soft)}.sol:nth-child(4){background:var(--sky-soft)}
.sol b{font-family:var(--display);font-size:17px;font-weight:700;line-height:1.25;font-feature-settings:"locl" 0}
.sol span{color:var(--ink-2);font-size:15px}
.tabs{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px;margin-bottom:18px}
.tabs button{border:0;background:transparent;border-radius:999px;padding:9px 18px;font-weight:800;color:var(--ink-2)}
.tabs button.on{background:var(--ink);color:var(--on-dark)}
.mini{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.mcard{border:1px solid var(--line);border-radius:var(--r);padding:18px;text-decoration:none;display:flex;flex-direction:column;gap:4px;transition:transform .15s,border-color .15s;background:linear-gradient(180deg,var(--a) 0 48%,var(--card) 48%)}
.mcard:hover{transform:translateY(-2px);border-color:var(--violet)}
.mcard:nth-child(5n+1){--a:var(--violet-soft)}.mcard:nth-child(5n+2){--a:var(--coral-soft)}.mcard:nth-child(5n+3){--a:var(--mint-soft)}.mcard:nth-child(5n+4){--a:var(--sun-soft)}.mcard:nth-child(5n){--a:var(--sky-soft)}
.mcard .nat{font-family:var(--display);font-size:20px;font-weight:500;font-feature-settings:"locl" 0}
.mcard .sub{color:var(--ink-2);font-size:14px}
.mcard .go{margin-top:10px;font-weight:800;font-size:14px;color:var(--violet)}
.mcard .ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--card);color:var(--violet);margin-bottom:4px}
.note{font-size:15px;color:var(--ink-2);margin-top:14px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.step{counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}
.step::before{content:counter(s);display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-family:var(--display);font-weight:700;margin-bottom:10px;background:var(--sun)}
.step:nth-child(2)::before{background:var(--coral);color:var(--on-dark)}.step:nth-child(3)::before{background:var(--mint);color:var(--on-dark)}.step:nth-child(4)::before{background:var(--violet);color:var(--on-dark)}
.step h3{font-size:16px;margin-bottom:6px}
.step p{font-size:15px;color:var(--ink-2)}
.disc{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.d{background:var(--card);border:2px dashed var(--line);border-radius:var(--r);padding:18px}
.d b{font-family:var(--display);font-size:28px;color:var(--coral)}
.d h3{font-size:15px;margin:4px 0}
.d p{font-size:14px;color:var(--ink-2)}

/* catalog */
.intro{padding-block:22px 26px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:end}
.intro h1{font-size:clamp(30px,4.4vw,50px)}
.intro p{color:var(--ink-2);font-size:18px;margin-top:14px;max-width:600px}
.count{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.count div{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:12px 18px;font-size:14px;color:var(--ink-2)}
.count b{display:block;font-family:var(--display);font-size:26px;color:var(--ink);font-feature-settings:"locl" 0}
.filters,.stages{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.filters button{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 16px;font-weight:800;font-size:15px;color:var(--ink-2)}
.filters button.on{background:var(--ink);border-color:var(--ink);color:var(--on-dark)}
.stages{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.stage{border:2px solid var(--line);background:var(--card);border-radius:18px;padding:14px 16px;text-align:left;display:grid;gap:2px}
.stage b{font-family:var(--display);font-size:16px;font-weight:700;font-feature-settings:"locl" 0}
.stage small{color:var(--ink-2);font-size:14px}
.stage[aria-pressed=true]{border-color:var(--violet);box-shadow:5px 5px 0 var(--sun)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;padding-bottom:56px}
.course{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s}
.course:hover{transform:translateY(-3px);border-color:var(--violet);box-shadow:6px 6px 0 var(--sun)}
.course img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.course .body{padding:14px 16px 16px;display:grid;gap:4px;flex:1}
.course .top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.course .nat{font-family:var(--display);font-size:19px;font-weight:500;font-feature-settings:"locl" 0}
.course .tag{font-size:12px;font-weight:800;border-radius:999px;padding:2px 9px;background:var(--coral);color:var(--on-dark);white-space:nowrap}
.course .name{color:var(--ink-2);font-size:15px}
.course h3{font-size:18px}
.course .hook{font-size:15px;line-height:1.45;margin-top:4px}
.course .go{margin-top:auto;padding-top:10px;font-weight:800;font-size:14px;color:var(--violet)}
.course[hidden]{display:none}
.pnote{color:var(--ink-2);font-size:15px;margin:-4px 0 18px;max-width:760px}
.help{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:56px}
.help div{border-radius:var(--r);padding:20px;display:grid;gap:6px;align-content:start}
.help div:nth-child(1){background:var(--violet-soft)}.help div:nth-child(2){background:var(--mint-soft)}.help div:nth-child(3){background:var(--sun-soft)}.help div:nth-child(4){background:var(--sky-soft)}
.help b{font-family:var(--display);font-size:16px;line-height:1.25;font-feature-settings:"locl" 0}
.help span{color:var(--ink-2);font-size:15px}
.sec2{font-size:clamp(22px,2.8vw,30px);margin-bottom:16px}

/* online band + final */
.online{background:var(--violet);color:var(--on-dark)}
.online .wrap{padding-block:56px}
.online h2{font-size:clamp(24px,3.2vw,36px);max-width:760px}
.online p.lead{color:var(--on-dark-2);margin-top:10px;max-width:640px}
.adv{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.adv div{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r);padding:20px}
.adv b{display:block;font-family:var(--display);font-size:16px;margin-bottom:6px;font-feature-settings:"locl" 0}
.adv span{color:var(--on-dark-2);font-size:15px}
.adv i{font-style:normal;font-size:24px;display:block;margin-bottom:8px}
.final{padding-block:56px}
.final .box{background:var(--sun-soft);border-radius:28px;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.final h2{font-size:clamp(22px,2.8vw,30px)}
.final p{color:var(--ink-2);margin-top:6px}

/* course page */
.page-hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-block:26px 50px}
.page-hero h1{font-size:clamp(30px,4.4vw,48px)}
.page-hero p.lead{font-size:19px;color:var(--ink-2);margin:18px 0 26px}
.page-hero .img{border-radius:28px 28px 28px 8px;overflow:hidden;box-shadow:10px 10px 0 var(--coral-soft)}
.page-hero .img img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.chips span{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700}
.chips span:nth-child(1){background:var(--mint-soft);border-color:var(--mint-soft)}
.chips span:nth-child(2){background:var(--sun-soft);border-color:var(--sun-soft)}
.chips span:nth-child(3){background:var(--sky-soft);border-color:var(--sky-soft)}
.why{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:start}
.why p{color:var(--ink-2)}
.why p+p{margin-top:12px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.stat{border-radius:var(--r);padding:18px}
.stat strong{display:block;font-family:var(--display);font-size:26px;line-height:1.2;font-feature-settings:"locl" 0}
.stat span{font-size:14px;color:var(--ink-2)}
.stat:nth-child(1){background:var(--violet-soft)}.stat:nth-child(2){background:var(--coral-soft)}.stat:nth-child(3){background:var(--mint-soft)}.stat:nth-child(4){background:var(--sky-soft)}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.feat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.feat h3{font-size:17px;margin:12px 0 8px}
.feat p{color:var(--ink-2);font-size:15px}
.feat .dot{width:44px;height:44px;border-radius:14px 14px 14px 4px;display:grid;place-items:center;font-size:20px}
.feat:nth-child(1) .dot{background:var(--violet-soft)}.feat:nth-child(2) .dot{background:var(--coral-soft)}.feat:nth-child(3) .dot{background:var(--mint-soft)}
.levels{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.lv{border-radius:18px;padding:16px;background:var(--card);border:1px solid var(--line)}
.lv b{display:block;font-family:var(--display);font-size:24px}
.lv span{font-size:14px;color:var(--ink-2)}
.lv:nth-child(-n+2) b{color:var(--mint)}.lv:nth-child(n+3):nth-child(-n+4) b{color:var(--violet)}.lv:nth-child(n+5) b{color:var(--coral)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.box h3{font-size:18px;margin-bottom:12px}
.box ul{list-style:none;display:grid;gap:10px}
.box li{display:flex;gap:12px;align-items:flex-start}
.box li i{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:17px}
.box li:nth-child(4n+1) i{background:var(--violet-soft)}.box li:nth-child(4n+2) i{background:var(--coral-soft)}.box li:nth-child(4n+3) i{background:var(--mint-soft)}.box li:nth-child(4n) i{background:var(--sun-soft)}
.box li small{display:block;color:var(--ink-2);font-size:14px}
.stagegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.stg{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}
.stg b{display:block;font-family:var(--display);font-size:16px;font-feature-settings:"locl" 0}
.stg small{display:block;color:var(--ink-2);font-size:14px;margin-bottom:8px}
.stg p{font-size:15px}

/* prices */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.price{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:10px}
.price.hl{border:2px solid var(--violet);box-shadow:6px 6px 0 var(--sun)}
.price .kind{font-family:var(--display);font-size:18px;font-feature-settings:"locl" 0}
.price .hrs{color:var(--mint);font-weight:800}
.amt{font-family:var(--display);font-size:32px;line-height:1.2}
.amt s{font-size:19px;color:var(--ink-2);font-weight:500;margin-right:8px}
.amt .promo,.save.promo{display:inline-block;vertical-align:middle;font-family:var(--text);font-size:13px;font-weight:800;background:var(--coral);color:var(--on-dark);border-radius:999px;padding:3px 10px;margin-left:6px}
.amt .ask{font-family:var(--text);font-size:16px;font-weight:700;color:var(--ink-2)}
.perh{font-size:14px;color:var(--ink-2);margin-top:-6px}
.price ul{list-style:none;display:grid;gap:6px;color:var(--ink-2);font-size:15px;margin-bottom:8px}
.price li::before{content:"✓";color:var(--mint);font-weight:800;margin-right:8px}
.price .cta{margin-top:auto}
.badge{align-self:flex-start;background:var(--coral);color:var(--on-dark);font-size:12px;font-weight:800;border-radius:999px;padding:3px 10px}
.paynote{margin-top:18px;color:var(--ink-2);font-size:15px;max-width:780px}
.fmt-tabs{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px;margin-bottom:20px}
.fmt-tabs button{border:0;background:transparent;border-radius:999px;padding:10px 20px;font-weight:800;color:var(--ink-2)}
.fmt-tabs button.on{background:var(--ink);color:var(--on-dark)}
.pk-note{color:var(--ink-2);margin-bottom:16px;max-width:720px}
.pkgs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pkg{background:var(--card);border:2px solid var(--line);border-radius:var(--r);padding:18px;display:flex;flex-direction:column;gap:4px;text-align:left;transition:border-color .15s,box-shadow .15s,transform .15s}
.pkg:hover{transform:translateY(-2px)}
.pkg.sel{border-color:var(--violet);box-shadow:6px 6px 0 var(--sun)}
.pkg .h{font-family:var(--display);font-size:26px;font-weight:700}
.pkg .h small{font-family:var(--text);font-size:14px;font-weight:700;color:var(--ink-2);margin-left:4px}
.pkg .pr{font-family:var(--display);font-size:20px;margin-top:6px}
.pkg .pr s{font-family:var(--text);font-size:15px;color:var(--ink-2);margin-right:6px}
.pkg .ph{font-size:14px;color:var(--ink-2)}
.save{align-self:flex-start;font-size:12px;font-weight:800;border-radius:999px;padding:2px 9px;background:var(--mint-soft);color:var(--mint);margin-top:4px}
.gsec h3{font-size:19px;margin:6px 0}
.gdesc{color:var(--ink-2);margin-bottom:14px;max-width:760px}
.gcards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:30px}
.gcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:6px}
.gcard .t{font-family:var(--display);font-size:16px;line-height:1.3;font-feature-settings:"locl" 0}
.gcard .hrs{color:var(--mint);font-weight:800;font-size:15px}
.gcard .opt{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px dashed var(--line);padding-top:8px;font-size:15px}
.gcard .opt b{font-family:var(--display);font-size:17px;white-space:nowrap}
.gcard .cta{margin-top:auto}

/* forms */
.contact{background:var(--violet);color:var(--on-dark);border-radius:28px;padding:40px;display:grid;grid-template-columns:.85fr 1.15fr;gap:36px}
.contact>*{min-width:0}
.contact h2{font-size:clamp(24px,3vw,32px)}
.contact p{color:var(--on-dark-2);margin-top:12px}
.contact .small{font-size:14px}
form.enq{display:grid;grid-template-columns:1fr 1fr;gap:12px}
form.enq label{display:grid;gap:6px;font-size:14px;font-weight:700;min-width:0}
form.enq .full{grid-column:1/-1}
form.enq input,form.enq select,form.enq textarea{font:inherit;font-size:16px;border:1px solid var(--glass-line);background:var(--glass);color:var(--on-dark);border-radius:12px;padding:11px 12px;width:100%;min-width:0}
form.enq input::placeholder,form.enq textarea::placeholder{color:rgba(255,255,255,.6)}
form.enq select option,form.enq select optgroup{color:var(--ink);background:var(--card)}
form.enq textarea{min-height:90px;resize:vertical}
form.enq .req{color:var(--sun)}
form.enq .consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-weight:600}
form.enq .consent input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--sun)}
form.enq .consent a{color:var(--on-dark)}
.sent{grid-column:1/-1;background:var(--glass);padding:12px;border-radius:12px}

/* legal pages */
.legal{max-width:820px;padding-block:20px 60px}
.legal h1{font-size:clamp(28px,4vw,42px);margin:10px 0 8px}
.legal .upd{color:var(--ink-2);font-size:15px;margin-bottom:26px}
.legal h2{font-size:20px;margin:30px 0 10px}
.legal p,.legal li{color:var(--ink);margin-bottom:10px}
.legal ol,.legal ul{padding-left:22px}

footer.site{padding-block:36px 56px;color:var(--ink-2);font-size:14px;border-top:1px solid var(--line);margin-top:20px}
footer.site .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer.site a{margin-right:16px}

@media (max-width:920px){
  nav.main,.bar>.cta{display:none}
  .menu{display:block}
  .hero,.page-hero,.why,.two,.contact,.intro{grid-template-columns:1fr}
  .board{min-height:auto}
  .count{justify-content:flex-start}
  .sols,.steps,.disc,.adv,.stagegrid,.stages,.help,.pkgs{grid-template-columns:1fr 1fr}
  .prices,.feats,.gcards{grid-template-columns:1fr}
  .levels{grid-template-columns:repeat(3,1fr)}
  .contact{padding:26px}
}
@media (max-width:620px){
  .logo span{display:none}
  .doors,.pains,.sols,.steps,.disc,.adv,.stagegrid,.stages,.help{grid-template-columns:1fr}
  form.enq{grid-template-columns:1fr}
  .mini{grid-template-columns:1fr 1fr}
  .grid{grid-template-columns:1fr}
  .levels{grid-template-columns:1fr 1fr}
}

/* overflow guards */
.why>*,.two>*,.page-hero>*,.hero>*,.intro>*,.stats>*,.prices>*,.feats>*{min-width:0}
.stat strong{overflow-wrap:anywhere}
.menu:not([open]) .drop{display:none}
@media (max-width:620px){.stat strong{font-size:20px}.amt{font-size:28px}}
