/* Knowit website. One stylesheet for the landing page and the support, privacy and terms pages.
   Layout: a left-aligned hero with the real app on screen, then rows that alternate screenshot and text.
   Dark-first, because the app is. Every colour is a token below. */
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/bricolage-700.woff") format("woff")}
:root{
  --bg:#0D1013;--bg2:#11161A;--surface:#161B20;--surface2:#1C2228;--border:#262D35;--text:#E8ECEF;--mute:#A3ABB5;
  --accent:#4ADE94;--on-accent:#08140D;--link:#6FE7AE;--accent-soft:#12301F;--pos:#3FC17E;--pos-soft:#14261D;--neg:#E0766A;--neg-soft:#2B1A18;--be:#8A929D;--be-soft:#1D2228;
  --frame:#1F252C;--shadow:0 24px 60px -24px rgba(0,0,0,.7);
  --display:"Bricolage Grotesque","DM Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color-scheme:dark;
}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){
  --bg:#F6F8F7;--bg2:#EEF2F0;--surface:#FFFFFF;--surface2:#F1F4F2;--border:#D9DFDC;--text:#14181C;--mute:#4A545D;
  --accent:#177A4B;--on-accent:#FFFFFF;--link:#0F6B40;--accent-soft:#DDF3E7;--pos:#146A41;--pos-soft:#E1F5EA;--neg:#BA4338;--neg-soft:#FBE9E6;--be:#5B636D;--be-soft:#ECEFED;
  --frame:#E3E8E5;--shadow:0 24px 50px -26px rgba(20,40,30,.45);color-scheme:light}}
:root[data-theme="light"]{
  --bg:#F6F8F7;--bg2:#EEF2F0;--surface:#FFFFFF;--surface2:#F1F4F2;--border:#D9DFDC;--text:#14181C;--mute:#4A545D;
  --accent:#177A4B;--on-accent:#FFFFFF;--link:#0F6B40;--accent-soft:#DDF3E7;--pos:#146A41;--pos-soft:#E1F5EA;--neg:#BA4338;--neg-soft:#FBE9E6;--be:#5B636D;--be-soft:#ECEFED;
  --frame:#E3E8E5;--shadow:0 24px 50px -26px rgba(20,40,30,.45);color-scheme:light}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--body)}
img{max-width:100%;height:auto}
a{color:var(--link);text-underline-offset:3px}
a:focus-visible,.btn:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:var(--on-accent);padding:8px 12px;border-radius:6px;z-index:30}
.skip:focus{left:8px}
h1,h2,h3{font-family:var(--display);text-wrap:balance}
p{margin:0 0 14px}
code{background:var(--surface);border:1px solid var(--border);padding:1px 6px;border-radius:4px;font-size:14px;overflow-wrap:anywhere}


/* ---------- hero demo ---------- */
.demo{border:1px solid transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,conic-gradient(from var(--ang),var(--border) 0 58%,var(--accent) 80%,var(--border) 100%) border-box;animation:ang 7s linear infinite;border-radius:22px;padding:clamp(16px,2.4vw,26px);box-shadow:var(--shadow);display:grid;gap:16px;min-width:0}
.demo-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline}
.demo-head b{font:700 clamp(18px,2vw,22px)/1.2 var(--display)}
.demo-head span{color:var(--mute);font-size:13.5px}
.demo-btns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.demo-btns button{font:700 16px/1.2 var(--body);min-height:54px;border-radius:12px;border:1px solid var(--border);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:transform .12s,filter .12s;color:var(--text);background:var(--surface2)}
.demo-btns button small{font:600 13px/1 var(--body);opacity:.85}
.demo-btns button:active{transform:scale(.96)}
.demo-btns button:hover{filter:brightness(1.12)}
.demo-btns .d-win{background:var(--pos-soft);color:var(--pos);border-color:var(--pos)}
.demo-btns .d-loss{background:var(--neg-soft);color:var(--neg);border-color:var(--neg)}
.demo-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.demo-stats div{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:10px 12px}
.demo-stats small{display:block;color:var(--mute);font-size:13px}
.demo-stats b{font:700 clamp(22px,3vw,30px)/1.15 var(--display);font-variant-numeric:tabular-nums}
.demo-chart{width:100%;height:clamp(110px,16vw,150px);display:block;background:var(--bg2);border:1px solid var(--border);border-radius:12px}
.demo-chart line{stroke:var(--border);stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.demo-chart #d-area{fill:var(--accent-soft);stroke:none}
.demo-chart #d-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.demo-chart{animation:reveal 1.3s ease-out .3s both}
@keyframes reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.demo-list{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14.5px;font-variant-numeric:tabular-nums}
.demo-list li{display:flex;justify-content:space-between;gap:12px;border-left:3px solid var(--be);padding:3px 0 3px 10px}
.demo-list li.w{border-color:var(--pos)}.demo-list li.w b{color:var(--pos)}
.demo-list li.l{border-color:var(--neg)}.demo-list li.l b{color:var(--neg)}
.demo-list li span{color:var(--mute)}
.demo-reset{justify-self:start;background:none;border:0;color:var(--mute);font:600 14px/1 var(--body);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:8px 0;min-height:36px}

/* ---------- feature tabs ---------- */
.tablist{position:relative;display:flex;gap:6px 28px;margin:34px 0 0;overflow-x:auto;border-bottom:1px solid var(--border);scrollbar-width:none}
.tablist button{background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;padding:10px 0 12px;cursor:pointer;color:var(--mute);font:700 clamp(24px,3.6vw,40px)/1.1 var(--display);letter-spacing:-.02em;white-space:nowrap}
.tablist button:hover{color:var(--text)}
.tablist button[aria-selected="true"]{color:var(--text)}
.tabpanel{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,5vw,60px);align-items:center;margin-top:clamp(28px,4vw,48px)}
.tabpanel[hidden]{display:none}
.tp-copy h3{font-size:clamp(26px,3.2vw,36px);line-height:1.1;letter-spacing:-.02em;margin:0 0 12px}
.tp-copy>p{color:var(--mute);font-size:17px;max-width:46ch}
.items{margin:22px 0 0;display:grid;gap:16px}
.items div{border-left:3px solid var(--accent);padding-left:14px}
.items dt{font:700 17px/1.3 var(--display)}
.items dd{margin:2px 0 0;color:var(--mute);font-size:15.5px}

/* ---------- assistant + closing ---------- */
.asst{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,5vw,72px);align-items:center}
.ticks.big{gap:16px}
.ticks.big li{font-size:18px;border-bottom:1px solid var(--border);padding-bottom:16px}
.closing{background:var(--accent-soft);border-top:1px solid var(--border);padding-block:clamp(56px,9vw,104px)}
.closing h2{font-size:clamp(34px,6vw,72px);line-height:1;letter-spacing:-.03em;margin:0 0 16px;max-width:14ch}
.closing p{font-size:19px;color:var(--mute);max-width:48ch;margin-bottom:26px}

/* language: both versions are in the page, one is shown */
.l-so{display:none}
html[lang="so"] .l-en{display:none}
html[lang="so"] .l-so{display:revert}

/* ---------- header (all pages) ---------- */
.bar{border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.bar-in{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font:700 20px/1 var(--display);min-height:44px}
.brand img{border-radius:8px}
nav{display:flex;gap:2px;flex-wrap:wrap;align-items:center}
nav a{color:var(--text);text-decoration:none;padding:8px 12px;border-radius:8px;min-height:40px;display:inline-flex;align-items:center;font-size:15px}
nav a:hover,nav a[aria-current=page]{background:var(--surface);color:var(--link)}
.bar-tools{display:flex;align-items:center;gap:10px}
.lang{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:3px;background:var(--surface)}
.lang button{border:0;background:transparent;color:var(--mute);font:600 13px/1 var(--body);padding:8px 12px;border-radius:999px;cursor:pointer;min-height:32px}
.lang button[aria-pressed="true"]{background:var(--accent);color:var(--on-accent)}

/* ---------- plain pages (support, privacy, terms) ---------- */
.wrap{max-width:960px;margin:0 auto;padding-inline:20px}
main.wrap h1{font-size:clamp(30px,5vw,46px);line-height:1.1;margin:44px 0 12px}
main.wrap h2{font-size:24px;margin:40px 0 8px}
main.wrap h3{font-size:18px;margin:22px 0 4px}
main.wrap p{max-width:70ch}
.lead{font-size:19px;color:var(--mute)}
.meta{color:var(--mute);font-size:14px}
.grid{list-style:none;padding:0;margin:16px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.grid li{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:4px 18px 10px}
.grid p{color:var(--mute);margin:0}
.foot{border-top:1px solid var(--border);margin-top:56px;padding-block:22px 40px;color:var(--mute);font-size:14px}
.foot p{margin:0 0 6px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border-radius:10px;background:var(--accent);color:var(--on-accent);font:700 16px/1 var(--body);text-decoration:none;border:1px solid var(--accent)}
.btn:hover{filter:brightness(1.07)}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}
.btn.ghost:hover{background:var(--surface)}
.btn.off{background:var(--surface);color:var(--mute);border:1px solid var(--border);cursor:default}

/* ---------- landing ---------- */
.w{width:min(1160px,100%);margin-inline:auto;padding-inline:20px}
.sec{padding-block:clamp(56px,9vw,104px)}
.sec-alt{background:var(--bg2);border-block:1px solid var(--border)}
.sec h2{font-size:clamp(28px,4.4vw,46px);line-height:1.08;letter-spacing:-.02em;font-weight:700;margin:0 0 14px;max-width:20ch}
.sec .sub{color:var(--mute);font-size:clamp(18px,2vw,22px);max-width:40ch;margin-bottom:0}

.cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px}
.facts{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--mute);font-size:15px}
.facts li{display:inline-flex;align-items:center;gap:8px}
.facts svg{color:var(--accent);flex:none}

.phone{position:absolute;right:-1%;bottom:0;width:30%;min-width:112px;border:5px solid var(--frame);border-radius:26px;background:var(--bg);box-shadow:var(--shadow);overflow:hidden;outline:1px solid var(--border)}
.phone img{display:block;width:100%}

.tape{border-block:1px solid var(--border);background:var(--surface)}
.tape-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-block:14px}
.tape-label{font-size:14px;font-weight:700;margin-right:8px;color:var(--mute)}
.chip{display:inline-flex;align-items:baseline;gap:6px;border-radius:8px;padding:5px 10px;font-size:14px;font-variant-numeric:tabular-nums;font-weight:700;background:var(--be-soft);color:var(--be)}
.chip small{font-weight:500;opacity:.85;font-size:12px}
.chip.win{background:var(--pos-soft);color:var(--pos)}
.chip.loss{background:var(--neg-soft);color:var(--neg)}

.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,48px);margin-top:44px;list-style:none;padding:0}
.steps li{border-top:2px solid var(--accent);padding-top:18px}
.steps b{display:block;font:700 clamp(34px,5vw,52px)/1 var(--display);color:var(--accent);margin-bottom:12px}
.steps h3{font-size:22px;margin:0 0 8px;letter-spacing:-.01em}
.steps p{color:var(--mute);margin:0}

.feat{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center;margin-top:clamp(48px,7vw,88px)}
.feat.solo{grid-template-columns:minmax(0,1fr)}
.feat.rev{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
.feat.rev .shot,.feat.rev .panel{order:2}
.feat h3{font-size:clamp(26px,3.4vw,38px);line-height:1.1;letter-spacing:-.02em;font-weight:700;margin:0 0 12px}
.feat p{color:var(--mute);font-size:17px;max-width:46ch}
.ticks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.ticks li{display:flex;gap:10px;align-items:flex-start;font-size:16px}
.ticks svg{color:var(--accent);flex:none;margin-top:4px}
.tag{display:inline-block;font:700 12px/1 var(--body);background:var(--accent-soft);color:var(--accent);border-radius:6px;padding:4px 7px;margin-left:6px;vertical-align:middle}
.shot{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}
.shot img{display:block;width:100%}
.fig{margin:0}
.panel{display:flex;justify-content:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:18px;padding:clamp(20px,4vw,40px)}
.panel .phone{position:static;width:min(100%,300px)}

.more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:clamp(48px,7vw,80px);border-top:1px solid var(--border)}
.more div{padding:22px 24px 22px 0;border-bottom:1px solid var(--border)}
.more h3{font-size:19px;margin:0 0 6px}
.more p{color:var(--mute);margin:0;font-size:15.5px}

.priv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(24px,5vw,72px);align-items:start}
.priv-list{display:grid;gap:22px}
.priv-list div{border-left:3px solid var(--accent);padding-left:18px}
.priv-list h3{font-size:20px;margin:0 0 4px}
.priv-list p{color:var(--mute);margin:0}

.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px;align-items:stretch}
.plan{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px 24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.plan.feature{border:2px solid var(--accent);background:var(--surface2)}
.plan h3{font-size:24px;margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:32px}
.plan .pill{font:700 12px/1 var(--body);background:var(--accent);color:var(--on-accent);border-radius:999px;padding:5px 9px}
.price{font:700 clamp(38px,5vw,52px)/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.price small{font:500 15px/1 var(--body);color:var(--mute);letter-spacing:0;margin-left:6px}
.was{color:var(--mute);text-decoration:line-through;font-size:16px;margin-left:8px;font-weight:500}
.yearly{font-size:15px;color:var(--mute);border-top:1px solid var(--border);padding-top:12px;font-variant-numeric:tabular-nums}
.yearly b{color:var(--text)}
.save{display:inline-block;background:var(--pos-soft);color:var(--pos);font-weight:700;border-radius:6px;padding:2px 7px;font-size:13px;margin-left:6px}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:15.5px}
.plan li{display:flex;gap:9px;align-items:flex-start}
.plan li svg{color:var(--accent);flex:none;margin-top:5px}
.plan .desc{color:var(--mute);margin:0;font-size:15.5px}
@media (min-width:901px){.plan .desc{min-height:3.3em}}
.paywith{margin-top:34px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.paywith span.k{font-weight:700;margin-right:6px}
.method{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:7px 14px;font-size:14.5px}
.fine{color:var(--mute);font-size:14.5px;margin-top:14px;max-width:70ch}

.get{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}
.os{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:0}
.os h3{font-size:22px;margin:0}
.os p{color:var(--mute);margin:0;font-size:15.5px}
.os .btn{margin-top:auto}

.faq{margin-top:34px;max-width:820px}
.faq details{border-top:1px solid var(--border);padding-block:4px}
.faq details:last-child{border-bottom:1px solid var(--border)}
.faq summary{cursor:pointer;list-style:none;font:700 18px/1.4 var(--display);padding:16px 36px 16px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font:400 26px/1 var(--body);color:var(--accent)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{color:var(--mute);margin:0 0 16px;max-width:64ch}

.landing-foot{border-top:1px solid var(--border);padding-block:34px 48px;color:var(--mute);font-size:14.5px}
.landing-foot .row{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;align-items:flex-start}
.landing-foot p{margin:0 0 8px;max-width:60ch}
.landing-foot nav{gap:4px 16px}
.landing-foot nav a{padding:4px 0;min-height:32px}

.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;color:var(--text)}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:0;top:52px;min-width:210px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:8px;display:grid}
.menu nav a{padding:12px 14px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:600}
.menu nav a:hover{background:var(--surface2)}
.ns{background:var(--surface);border-bottom:1px solid var(--border);margin:0;padding:10px 20px;color:var(--mute);font-size:14px}
@media (max-width:900px){
  .menu{display:block}
  .feat,.feat.rev,.priv,.tabpanel,.asst{grid-template-columns:minmax(0,1fr)}
  .feat.rev .shot,.feat.rev .panel{order:0}
  .steps,.plans,.get{grid-template-columns:minmax(0,1fr)}
  .more{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .bar nav.links{display:none}
}
@media (max-width:560px){
  .more{grid-template-columns:minmax(0,1fr)}
  .more div{padding-right:0}
  .cta .btn{flex:1 1 100%}
  .demo-btns button{font-size:14px;padding-inline:4px}
  .phone{border-width:4px;border-radius:20px}
  .bar-in{gap:8px}
}
@media (prefers-reduced-motion:reduce){:root:not(.opt-in) *,:root:not(.opt-in) *::before,:root:not(.opt-in) *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* ---------- motion ---------- */
.prog{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;pointer-events:none}
.bar{transition:box-shadow .25s,background .25s}
.bar.scrolled{box-shadow:0 8px 28px -18px rgba(0,0,0,.6)}
/* scroll reveal */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
/* tabs */
.tabpanel:not([hidden]){animation:rise .45s cubic-bezier(.2,.7,.2,1) both}
.tablist button{transition:color .2s,border-color .2s}
.shot{transition:translate .35s,box-shadow .35s}
.shot:hover{translate:0 -4px}
/* buttons and cards */
.btn{transition:transform .15s,box-shadow .2s,filter .15s,background .2s}
.btn:not(.off):hover{transform:translateY(-2px);box-shadow:0 10px 24px -10px var(--accent)}
.btn:not(.off):active{transform:translateY(0)}
.os,.plan,.items>div,.priv-list>div{transition:transform .25s,border-color .25s}
.os:hover,.plan:hover{transform:translateY(-4px);border-color:var(--accent)}
.items>div:hover,.priv-list>div:hover{transform:translateX(4px)}
.ticks.big li{transition:transform .2s,color .2s}
.ticks.big li:hover{transform:translateX(6px)}
/* closing band: slow colour sweep */
.closing{background:linear-gradient(120deg,var(--accent-soft),var(--bg2),var(--accent-soft));background-size:220% 100%;animation:sweep 14s ease-in-out infinite alternate}
@keyframes sweep{from{background-position:0 0}to{background-position:100% 0}}
/* the newest trade slides in */
.demo-list li:first-child{animation:rise .35s ease-out both}

/* ---------- cinematic hero carousel (always dark, like a film title) ---------- */
.cine{--c1:#4ADE94;--c2:#3B82F6;--glow:rgba(74,222,148,.42);--mx:0;--my:0;--sy:0;position:relative;overflow:hidden;background-color:#07090C;color:#EEF2F5;isolation:isolate;transition:--c1 .6s}
.cine [data-theme="green"],.slide[data-theme="green"]{--c1:#4ADE94;--c2:#3B82F6;--glow:rgba(74,222,148,.42)}
.slide[data-theme="gold"]{--c1:#F5B84B;--c2:#E2582B;--glow:rgba(245,184,75,.42)}
.slide[data-theme="sky"]{--c1:#4FC3F7;--c2:#8B5CF6;--glow:rgba(79,195,247,.42)}
.slide[data-theme="coral"]{--c1:#FF8A66;--c2:#F5B84B;--glow:rgba(255,138,102,.42)}
.slides{display:grid;position:relative}
.slide{grid-area:1/1;position:relative;visibility:hidden;pointer-events:none;min-height:clamp(560px,86vh,780px);display:flex;align-items:center;padding-block:clamp(48px,7vw,88px);transition:visibility 0s .95s}
.slide.is-active{visibility:visible;pointer-events:auto;transition-delay:0s}
.slide.no-t,.slide.no-t *{transition:none!important}
/* background light: two glowing arcs and a soft wash, tinted per slide */
.bgfx{position:absolute;inset:0;z-index:0;opacity:0;transition:opacity .9s ease;background:radial-gradient(60% 80% at 78% 55%,var(--glow),transparent 65%),radial-gradient(40% 60% at 6% 30%,color-mix(in srgb,var(--c2) 35%,transparent),transparent 70%)}
.bgfx::before,.bgfx::after{content:"";position:absolute;border-radius:50%;border:2px solid var(--c1);opacity:.75;filter:blur(1px)}
.bgfx::before{width:78%;aspect-ratio:1;right:-18%;top:6%;box-shadow:0 0 70px var(--glow),inset 0 0 90px var(--glow);transform:rotate(-24deg) scaleY(.46);animation:spin 40s linear infinite}
.bgfx::after{width:62%;aspect-ratio:1;right:-6%;top:32%;border-color:var(--c2);box-shadow:0 0 60px color-mix(in srgb,var(--c2) 40%,transparent);transform:rotate(18deg) scaleY(.34);animation:spin 55s linear infinite reverse}
@keyframes spin{to{filter:blur(1px) hue-rotate(0deg);rotate:360deg}}
.slide.is-active .bgfx{opacity:1}
.slide-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:center}
.copy{min-width:0;padding-right:4px}
.copy>*{opacity:0;transform:translateX(34px);transition:opacity .55s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.slide.is-prev .copy>*{transform:translateX(-46px)}
.slide.is-active .copy>*{opacity:1;transform:none}
.slide.is-active .copy>:nth-child(1){transition-delay:.25s}.slide.is-active .copy>:nth-child(2){transition-delay:.35s}.slide.is-active .copy>:nth-child(3){transition-delay:.48s}.slide.is-active .copy>:nth-child(4){transition-delay:.6s}
.eyebrow{display:inline-block;justify-self:start;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);border-radius:999px;padding:6px 14px;font:600 14px/1 var(--body);margin-bottom:18px;color:#E6EBEF}
.slide h1,.slide h2{font-size:clamp(32px,3.7vw,54px);line-height:1.06;letter-spacing:-.02em;font-weight:700;margin:0 0 18px;color:#fff;overflow-wrap:break-word;padding-right:.1em}
.slide .lead{font-size:clamp(17px,1.8vw,21px);max-width:30ch;color:#C5CCD4;margin-bottom:26px}
.slide .btn{background:var(--c1);color:#08110C;box-shadow:0 12px 34px -12px var(--glow)}
.slide .btn:hover{box-shadow:0 14px 40px -8px var(--c1)}
/* devices: parallax layers carry the pointer/scroll motion, .dev carries the slide transition */
.art{position:relative;min-height:clamp(260px,36vw,460px)}
.layer{position:absolute;transition:transform .25s ease-out}
.l-main{inset:0;transform:translate3d(calc(var(--mx) * -22px),calc(var(--my) * -14px + var(--sy) * -.05px),0)}
.l-back{width:48%;right:-3%;top:-4%;transform:translate3d(calc(var(--mx) * 30px),calc(var(--my) * 20px + var(--sy) * -.12px),0);z-index:0}
.l-main{z-index:1}
.dev{transition:transform 1s cubic-bezier(.2,.7,.2,1),opacity .7s ease;transform:translateX(16%) rotate(7deg) scale(.88);opacity:0}
.slide.is-prev .dev{transform:translateX(-18%) rotate(-7deg) scale(.88)}
.slide.is-active .dev{transform:none;opacity:1}
.slide.is-active .dev.back{transition-delay:.18s}.slide.is-active .dev.main{transition-delay:.08s}
.dev.back{opacity:0}.slide.is-active .dev.back{opacity:.9}
.frame{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:#0D1115;box-shadow:0 30px 80px -20px #000,0 0 90px -10px var(--glow);animation:float 7s ease-in-out infinite}
.back .frame{animation-duration:9s;animation-delay:-3s;filter:saturate(.9) brightness(.85);border-radius:12px}
.frame img{display:block;width:100%;height:auto}
@keyframes float{0%,100%{translate:0 0}50%{translate:0 -10px}}
/* bottom row: label, thumbnails with progress, arrows */
.cnav{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:end;padding-bottom:22px;z-index:3;padding-top:40px;left:50%;transform:translateX(-50%);width:min(1160px,100%)}
.more-label{font:700 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:#C5CCD4;padding-bottom:10px}
.thumbs{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding:6px 2px}
.thumb{position:relative;flex:0 0 auto;display:grid;gap:6px;justify-items:start;background:none;border:0;cursor:pointer;color:#AEB6BF;font:600 13px/1 var(--body);padding:0;opacity:.7;transition:opacity .25s,transform .25s}
.thumb:hover{opacity:1;transform:translateY(-3px)}
.thumb.on{opacity:1;color:#fff}
.tpic{width:88px;height:50px;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.2);display:block;background:#11161A}
.thumb.on .tpic{border-color:var(--c1);box-shadow:0 0 22px -4px var(--c1)}
.tpic img{width:100%;height:100%;object-fit:cover;display:block}
.tbar{display:block;height:3px;width:88px;border-radius:2px;background:rgba(255,255,255,.18);overflow:hidden;position:relative}
.tbar::after{content:"";position:absolute;inset:0;background:var(--c1);transform:scaleX(0);transform-origin:left}
.thumb.on .tbar::after{transform:scaleX(1)}
.thumb.run .tbar::after{animation:fillbar 6s linear both}
@keyframes fillbar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.cine.paused .thumb.run .tbar::after{animation-play-state:paused}
.arrows{display:flex;gap:10px;padding-bottom:6px}
.arrow{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .2s,transform .2s,border-color .2s}
.arrow:hover{background:var(--c1);color:#08110C;border-color:var(--c1);transform:scale(1.06)}
.cine :focus-visible{outline:3px solid #fff;outline-offset:3px}
.cine[data-theme="gold"]{--c1:#F5B84B;--c2:#E2582B;--glow:rgba(245,184,75,.42)}
.cine[data-theme="sky"]{--c1:#4FC3F7;--c2:#8B5CF6;--glow:rgba(79,195,247,.42)}
.cine[data-theme="coral"]{--c1:#FF8A66;--c2:#F5B84B;--glow:rgba(255,138,102,.42)}
.trysec .try-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,5vw,72px);align-items:center}
.trysec .facts{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px;color:var(--mute);font-size:16px}
.trysec .facts li{display:flex;align-items:center;gap:10px}.trysec .facts svg{color:var(--accent);flex:none}
@media (max-width:900px){
  .slide-grid,.trysec .try-grid{grid-template-columns:minmax(0,1fr)}
  .slide{align-items:flex-start;min-height:0}
  .art{min-height:0;aspect-ratio:1400/780;margin-top:6px}
  .more-label{display:none}
  .cnav{grid-template-columns:minmax(0,1fr) auto}
  .slide h1,.slide h2{max-width:none}
}
@media (max-width:560px){.tpic,.tbar{width:70px}.tpic{height:40px}.arrow{width:42px;height:42px}}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}


/* ---------- motion upgrade (React Bits style, plain CSS and JS) ---------- */
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes ang{to{--ang:360deg}}
[id]{scroll-margin-top:84px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
.no-motion .bgfx::before,.no-motion .bgfx::after,.no-motion .frame,.no-motion .closing,.no-motion .demo,.no-motion .slide .btn::after{animation-play-state:paused!important}
.no-motion .rv{transition:none}
/* particle canvas sits between the glow and the text */
.fx{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.slides{z-index:1}
.slide .bgfx{z-index:0}
/* shine across the main button */
.slide .btn{position:relative;overflow:hidden}
.slide .btn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:shine 4.6s ease-in-out infinite;pointer-events:none}
@keyframes shine{0%,62%{left:-60%}100%{left:130%}}
/* sliding underline for the feature tabs */
.tabind{position:absolute;left:0;bottom:-1px;height:3px;width:0;background:var(--accent);border-radius:2px;transition:transform .45s cubic-bezier(.2,.8,.2,1),width .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
/* click spark layer */
.sparks{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:60}
.demo-foot{display:flex;gap:18px;align-items:center}
.demo-foot .demo-reset{padding-inline:2px}

/* feature panels: big picture, one line, three short chips */
.tabpanel{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.tabpanel .shot img{aspect-ratio:16/9;object-fit:cover;object-position:top left;width:100%}
.tp-copy h3{font-size:clamp(28px,3.6vw,44px)}
.tp-copy>p{font-size:clamp(18px,2vw,22px);margin-bottom:18px}
.chips{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.chips li{display:flex;gap:10px;align-items:flex-start;font-size:16px;color:var(--text)}
.chips svg{color:var(--accent);flex:none;margin-top:4px}
.tabpanel:not([hidden]) .shot{animation:zoomin .7s cubic-bezier(.2,.7,.2,1) both}
.tabpanel:not([hidden]) .chips li{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}
.tabpanel:not([hidden]) .chips li:nth-child(1){animation-delay:.15s}.tabpanel:not([hidden]) .chips li:nth-child(2){animation-delay:.25s}.tabpanel:not([hidden]) .chips li:nth-child(3){animation-delay:.35s}
@keyframes zoomin{from{opacity:0;transform:scale(.96) translateY(14px)}to{opacity:1;transform:none}}
.privacy-list,.priv-list p{max-width:44ch}
.priv-list>div{padding-block:2px}

.cnav{grid-template-columns:minmax(0,1fr);justify-items:end;padding-top:0}
.slide{padding-bottom:clamp(88px,9vw,112px)}
@media (max-width:900px){.slide{padding-bottom:88px}.cnav{justify-items:center}}

/* ---------- ambient light behind every section except the hero ---------- */
:root{--amb1:rgba(74,222,148,.16);--amb2:rgba(79,160,247,.13);--amb3:rgba(245,184,75,.07)}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--amb1:rgba(23,122,75,.13);--amb2:rgba(59,130,246,.10);--amb3:rgba(245,184,75,.10)}}
:root[data-theme="light"]{--amb1:rgba(23,122,75,.13);--amb2:rgba(59,130,246,.10);--amb3:rgba(245,184,75,.10)}
main>section:not(.cine),.landing-foot{position:relative;isolation:isolate;overflow:hidden}
main>section:not(.cine)::before,main>section:not(.cine)::after,.landing-foot::before{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(60px);will-change:transform}
main>section:not(.cine)::before{width:min(62vw,720px);aspect-ratio:1;left:-14%;top:-30%;background:radial-gradient(circle,var(--amb1),transparent 68%);animation:amb-a 24s ease-in-out infinite alternate}
main>section:not(.cine)::after{width:min(54vw,620px);aspect-ratio:1;right:-12%;bottom:-34%;background:radial-gradient(circle,var(--amb2),transparent 68%);animation:amb-b 30s ease-in-out infinite alternate}
main>section:not(.cine):nth-of-type(even)::before{left:auto;right:-14%;top:-24%}
main>section:not(.cine):nth-of-type(even)::after{right:auto;left:-10%;bottom:-30%;background:radial-gradient(circle,var(--amb3),transparent 68%)}
.landing-foot::before{width:min(60vw,640px);aspect-ratio:1;left:30%;top:-60%;background:radial-gradient(circle,var(--amb1),transparent 68%);animation:amb-a 26s ease-in-out infinite alternate}
@keyframes amb-a{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(14vw,8%,0) scale(1.18)}}
@keyframes amb-b{from{transform:translate3d(0,0,0) scale(1.1)}to{transform:translate3d(-12vw,-10%,0) scale(.92)}}
.no-motion main>section:not(.cine)::before,.no-motion main>section:not(.cine)::after,.no-motion .landing-foot::before{animation-play-state:paused}
@media (max-width:700px){main>section:not(.cine)::before,main>section:not(.cine)::after{filter:blur(40px)}}

/* Prelaunch notice */
.launch-notice{background:#14251d;border-bottom:1px solid #3ed99855;color:#eaf8ef;padding:16px 0}.launch-notice .w{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.launch-notice strong{color:#70eda9}.launch-notice p{margin:0;font-size:14px;line-height:1.6}.launch-notice a{color:#8bf2ba;overflow-wrap:anywhere}.launch-notice .launch-status{display:inline-block;border:1px solid #70eda955;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.launch-status-note{font-size:14px;line-height:1.7;color:#aab8b0;margin:12px 0 24px}@media(max-width:600px){.launch-notice{padding:14px 0}.launch-notice .w{display:block}.launch-notice .launch-status{margin-bottom:8px}.launch-notice p{font-size:13px}}
