
:root{--bg:#08070f;--bg2:#0e0c19;--glass:rgba(255,255,255,.045);--glass2:rgba(255,255,255,.08);--line:rgba(255,255,255,.1);--txt:#f4f1fb;--mut:#a7a2bb;--c1:#ff8a5b;--c2:#ff4d8d;--c3:#8b5cf6;--c4:#2dd4bf;--wa:#25d366;--grad:linear-gradient(110deg,#ff8a5b,#ff4d8d 45%,#8b5cf6);--hf:"Sora",sans-serif;--r:22px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--txt);font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
h1,h2,h3,h4{font-family:var(--hf);letter-spacing:-.03em;line-height:1.1;font-weight:700}
.g{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ffb39a;padding:6px 12px;border:1px solid rgba(255,138,91,.3);background:rgba(255,138,91,.08);border-radius:999px}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c1);box-shadow:0 0 10px var(--c1)}
section,#work{padding:84px 0;position:relative;scroll-margin-top:70px}
.sh{margin-bottom:40px}
.sh h2{font-size:clamp(32px,8vw,56px);margin:16px 0 14px}
.sh p{color:var(--mut);font-size:17px;max-width:620px}
.center{text-align:center}.center p{margin-left:auto;margin-right:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:16px;border:0;cursor:pointer;font-family:inherit;transition:transform .25s,box-shadow .25s,background .25s;-webkit-tap-highlight-color:transparent}
.btn:active{transform:scale(.97)}
.btn-p{background:var(--grad);color:#fff;box-shadow:0 12px 34px -10px rgba(255,77,141,.65)}
.btn-p:hover{box-shadow:0 18px 44px -10px rgba(255,77,141,.85);transform:translateY(-2px)}
.btn-g{background:var(--glass2);border:1px solid var(--line);color:var(--txt);backdrop-filter:blur(10px)}
.btn-g:hover{background:rgba(255,255,255,.12)}
.btn-wa{background:var(--wa);color:#05210f}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}
/* gradient border helper */
.gb{position:relative;background:linear-gradient(var(--bg2),var(--bg2)) padding-box,linear-gradient(140deg,rgba(255,138,91,.55),rgba(255,255,255,.06) 40%,rgba(139,92,246,.55)) border-box;border:1px solid transparent}

/* ambient background */
.aura{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.aura i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;animation:drift 22s ease-in-out infinite alternate}
.aura i:nth-child(1){width:520px;height:520px;background:#ff4d8d;top:-200px;left:-160px;opacity:.32}
.aura i:nth-child(2){width:560px;height:560px;background:#8b5cf6;top:20%;right:-260px;animation-duration:28s;opacity:.35}
.aura i:nth-child(3){width:420px;height:420px;background:#ff8a5b;bottom:-200px;left:20%;animation-duration:32s;opacity:.18}
@keyframes drift{to{transform:translate(60px,80px) scale(1.15)}}
.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* header */
header{position:fixed;top:0;left:0;right:0;z-index:80;padding:12px 12px 0}
.nav{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:58px;padding:0 10px 0 18px;border-radius:999px;background:rgba(14,12,25,.65);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--hf);font-weight:700;font-size:18px;letter-spacing:-.02em}
.logo i{width:30px;height:30px;border-radius:9px;background:var(--grad);display:grid;place-items:center;font-style:normal;font-size:15px;box-shadow:0 6px 18px -6px rgba(255,77,141,.8)}
.nav{position:relative}.nav nav{position:absolute;top:68px;left:0;right:0;display:flex;flex-direction:column;gap:2px;padding:12px 22px 18px;border-radius:26px;background:rgba(14,12,25,.97);border:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(0,0,0,.9);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .25s,transform .25s}
.nav nav.open{opacity:1;transform:none;pointer-events:auto}
.nav nav a{font-family:var(--hf);font-size:22px;font-weight:600;letter-spacing:-.02em;padding:12px 0;border-bottom:1px solid var(--line)}.nav nav a:last-child{border:0}
.nav .cta{display:none}
.burger{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--glass2);display:grid;place-items:center;cursor:pointer;color:var(--txt)}
.burger span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .3s}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .3s,top .3s}
.burger span::before{top:-6px}.burger span::after{top:6px}
.burger.x span{background:transparent}.burger.x span::before{top:0;transform:rotate(45deg)}.burger.x span::after{top:0;transform:rotate(-45deg)}

/* hero */
.hero{padding:118px 0 40px;text-align:center}
.pill{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:var(--glass);border:1px solid var(--line);font-size:13px;color:#d8d3e8}
.pill b{background:var(--grad);color:#fff;font-size:11px;padding:3px 9px;border-radius:999px;font-weight:600;white-space:nowrap}
.hero h1{font-size:clamp(42px,11.5vw,92px);margin:22px auto 18px;max-width:960px;font-weight:800;letter-spacing:-.045em}
.hero .lead{font-size:17px;color:#cdc8dc;max-width:620px;margin:0 auto}
.hero .ctas{display:grid;gap:12px;margin:30px auto 0;max-width:420px}
.hero .trust{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin-top:20px;font-size:13px;color:var(--mut)}
.hero .trust span::before{content:"✦ ";color:var(--c1)}

/* hero stage: phone + floating cards */
.stage{position:relative;width:100%;max-width:400px;height:560px;margin:52px auto 0}
.stage::before{content:"";position:absolute;inset:8% 6%;background:var(--grad);filter:blur(70px);opacity:.45;border-radius:50%}
.phone{position:absolute;left:50%;top:0;transform:translateX(-50%);width:262px;height:540px;border-radius:44px;padding:10px;background:linear-gradient(160deg,#2a2638,#121019);box-shadow:0 0 0 1px rgba(255,255,255,.12),0 50px 90px -30px rgba(0,0,0,.9),inset 0 0 0 1px rgba(255,255,255,.05)}
.screen{width:100%;height:100%;border-radius:35px;background:#0d0b16;overflow:hidden;display:flex;flex-direction:column;position:relative}
.notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:84px;height:24px;border-radius:20px;background:#000;z-index:2}
.chat-h{padding:42px 14px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.03);text-align:left}
.av{width:34px;height:34px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-size:15px;flex:none}
.chat-h b{display:block;font-size:13px;font-family:var(--hf)}
.chat-h small{font-size:11px;color:var(--c4)}
.msgs{flex:1;min-height:0;padding:14px 10px;display:flex;flex-direction:column;gap:8px;justify-content:flex-end;overflow:hidden}
.m{max-width:84%;padding:9px 12px;border-radius:16px;font-size:12.5px;line-height:1.45;text-align:left;animation:pop .45s cubic-bezier(.2,.9,.3,1.3) both}
.m.in{align-self:flex-start;background:#1f1c2c;border-bottom-left-radius:5px}
.m.out{align-self:flex-end;background:linear-gradient(135deg,#ff6a7a,#8b5cf6);color:#fff;border-bottom-right-radius:5px}
.m.sys{align-self:center;font-size:11px;color:var(--c4);background:rgba(45,212,191,.1);border:1px solid rgba(45,212,191,.25);border-radius:999px;padding:5px 11px}
.typing{align-self:flex-end;display:flex;gap:4px;padding:12px 14px;border-radius:16px;background:#2a2140}
.typing i{width:6px;height:6px;border-radius:50%;background:#d6c8ff;animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.94)}}
.inbar{margin:0 10px 14px;height:38px;border-radius:999px;background:#1a1726;border:1px solid var(--line);display:flex;align-items:center;padding:0 14px;font-size:12px;color:#6f6a84}
.fc{position:absolute;z-index:3;text-align:left;padding:12px 14px;border-radius:18px;background:rgba(22,19,36,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 50px -20px rgba(0,0,0,.8);font-size:12px;animation:float 6s ease-in-out infinite}
.fc small{display:block;color:var(--mut);font-size:11px}
.fc b{white-space:nowrap;font-family:var(--hf);font-size:18px;letter-spacing:-.02em}
.fc.a{left:-4px;top:118px}
.fc.b{right:-4px;top:270px;animation-delay:-2s}
.fc.c{left:4px;bottom:24px;animation-delay:-4s}
.fc .ok{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(45,212,191,.18);color:var(--c4);font-size:11px;margin-right:6px}
.fc svg.sp{display:block;width:110px;height:30px;margin-top:4px}
.up{color:var(--c4);font-weight:600;font-size:11px}
@keyframes float{50%{transform:translateY(-10px)}}

/* stack marquee */
.stack{padding:34px 0;border-block:1px solid var(--line);background:rgba(255,255,255,.015);overflow:hidden}
.stack p{text-align:center;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:18px}
.mq{display:flex;gap:12px;width:max-content;animation:mq 40s linear infinite}
.mq span{padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:var(--glass);font-size:14px;font-weight:500;color:#d8d3e8;white-space:nowrap}
.mask{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
@keyframes mq{to{transform:translateX(-50%)}}

/* bento services */
.bento{display:grid;gap:14px}
.tile{border-radius:var(--r);padding:26px;overflow:hidden;position:relative;transition:transform .35s}
.tile:hover{transform:translateY(-4px)}
.tile .k{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ffb39a}
.tile h3{font-size:24px;margin:10px 0 10px}
.tile p{color:var(--mut);font-size:15px}
.tile .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.tile .chips span{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--glass2);color:#d8d3e8}
.viz{height:150px;margin:-6px -6px 18px;border-radius:16px;background:radial-gradient(120% 120% at 50% 0%,rgba(139,92,246,.18),transparent 60%),rgba(255,255,255,.02);border:1px solid var(--line);position:relative;overflow:hidden}
/* viz 1: flow */
.flow{position:absolute;inset:0;width:100%;height:100%}
.flow .ln{fill:none;stroke:url(#lg);stroke-width:2;stroke-dasharray:6 8;animation:dash 1.4s linear infinite}
@keyframes dash{to{stroke-dashoffset:-28}}
.node{position:absolute;display:flex;align-items:center;gap:6px;padding:7px 11px;border-radius:12px;background:#17142a;border:1px solid rgba(255,255,255,.14);font-size:11.5px;font-weight:600;white-space:nowrap}
.node em{font-style:normal;width:8px;height:8px;border-radius:50%}
.node.ai{background:var(--grad);border:0;box-shadow:0 0 30px rgba(255,77,141,.55)}
/* viz 2: pipeline */
.pipe{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px}
.pipe span{flex:1;max-width:84px;text-align:center;padding:10px 4px;border-radius:12px;background:#17142a;border:1px solid var(--line);font-size:11px;font-weight:600;color:#cfc9e0;animation:hl 4s infinite}
.pipe span:nth-child(2){animation-delay:1s}.pipe span:nth-child(3){animation-delay:2s}.pipe span:nth-child(4){animation-delay:3s}
@keyframes hl{0%,20%{background:linear-gradient(135deg,#ff6a7a,#8b5cf6);color:#fff;border-color:transparent;transform:translateY(-4px)}30%,100%{}}
.viz>small{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut)}
/* viz 3: bars */
.bars{position:absolute;left:16px;right:16px;bottom:16px;top:44px;display:flex;align-items:flex-end;gap:6px}
.bars i{flex:1;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#ff8a5b,#8b5cf6);transform-origin:bottom;animation:grow 2.6s ease-in-out infinite alternate}
.bars i:nth-child(odd){animation-delay:-.8s}.bars i:nth-child(3n){animation-delay:-1.6s}
@keyframes grow{from{transform:scaleY(.55)}}
.vkpi{position:absolute;top:12px;left:16px;font-size:11px;color:var(--mut)}.vkpi b{font-family:var(--hf);color:var(--txt);font-size:16px;margin-right:6px}
.mini{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sm{border-radius:18px;padding:18px;background:var(--glass);border:1px solid var(--line);transition:background .3s,border-color .3s}
.sm:hover{background:var(--glass2);border-color:rgba(255,138,91,.35)}
.sm .ib{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(255,138,91,.2),rgba(139,92,246,.25));color:#ffd0bf;margin-bottom:12px}
.sm h4{font-size:15px;margin-bottom:4px;letter-spacing:-.01em}
.sm p{font-size:13px;color:var(--mut);line-height:1.5}

/* live dashboard */
.dash-sec .grid{display:grid;gap:36px;align-items:center}
.checks{list-style:none;display:grid;gap:14px;margin-top:24px}
.checks li{display:flex;gap:12px;color:#d0cbe0;font-size:15.5px}
.checks li::before{content:"✓";flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(45,212,191,.15);color:var(--c4);font-size:12px;font-weight:700;margin-top:1px}
.checks b{color:var(--txt)}
.dash{border-radius:26px;padding:16px;background:linear-gradient(rgba(16,14,28,.85),rgba(16,14,28,.85)) padding-box,linear-gradient(140deg,rgba(255,138,91,.6),rgba(255,255,255,.05) 45%,rgba(139,92,246,.6)) border-box;border:1px solid transparent;box-shadow:0 40px 100px -40px rgba(139,92,246,.6);position:relative}
.dtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;color:var(--mut)}
.dtop b{font-family:var(--hf);color:var(--txt);font-size:14px}
.live{display:inline-flex;align-items:center;gap:6px;color:var(--c4);font-weight:600}
.live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c4);box-shadow:0 0 0 0 rgba(45,212,191,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(45,212,191,0)}}
.kp{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.kp div{padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.kp small{display:block;font-size:10.5px;color:var(--mut)}
.kp b{display:block;white-space:nowrap;font-family:var(--hf);font-size:clamp(15px,4.4vw,22px);letter-spacing:-.02em}
.kp em{font-style:normal;font-size:11px;color:var(--c4);font-weight:600}
.kp .warn{color:#ffb547}
.chart{border-radius:14px;background:rgba(255,255,255,.03);border:1px solid var(--line);padding:12px 10px 6px}
.chart svg{width:100%;height:150px;display:block}
.chart .ln2{fill:none;stroke:url(#lg2);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900;transition:stroke-dashoffset 2.4s ease}
.chart .ar{opacity:0;transition:opacity 1.2s .9s}
.dash.in .ln2{stroke-dashoffset:0}.dash.in .ar{opacity:1}
.chart .fc2{fill:none;stroke:rgba(255,255,255,.35);stroke-width:2;stroke-dasharray:4 5}
.legend{display:flex;gap:14px;font-size:10.5px;color:var(--mut);padding:2px 4px 0}
.legend i{display:inline-block;width:14px;height:3px;border-radius:2px;background:var(--grad);vertical-align:middle;margin-right:5px}
.legend i.f{background:rgba(255,255,255,.4)}
.ask{margin-top:12px;display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line);font-size:13px;color:#d8d3e8;min-height:44px}
.ask .ic{width:18px;height:18px;color:#ffb39a}
.ask .cur{display:inline-block;width:2px;height:15px;background:var(--c1);margin-left:2px;vertical-align:middle;animation:cb 1s steps(1) infinite}
@keyframes cb{50%{opacity:0}}
.toast{position:absolute;right:10px;left:auto;max-width:calc(100% - 20px);top:-22px;padding:10px 14px;border-radius:16px;background:rgba(22,19,36,.92);border:1px solid rgba(255,181,71,.4);font-size:12px;box-shadow:0 20px 40px -18px rgba(0,0,0,.8);animation:float 6s ease-in-out infinite}
.toast b{color:#ffb547}

/* process */
.steps{display:grid;gap:14px;position:relative}
.st{padding:24px;border-radius:var(--r);background:var(--glass);border:1px solid var(--line);position:relative;overflow:hidden}
.st .n{font-family:var(--hf);font-size:52px;font-weight:800;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9}
.st h3{font-size:21px;margin:12px 0 8px}
.st p{color:var(--mut);font-size:15px}
.st em{position:absolute;top:22px;right:20px;font-style:normal;font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px;background:var(--glass2);border:1px solid var(--line)}
.st:first-child em{background:rgba(45,212,191,.15);color:var(--c4);border-color:rgba(45,212,191,.3)}

/* calculator */
.calc{border-radius:28px;padding:26px 20px}
.calc .grid{display:grid;gap:28px}
.rng{margin-bottom:22px}
.rng label{display:flex;justify-content:space-between;gap:10px;font-size:14.5px;color:#d0cbe0;margin-bottom:12px}
.rng output{font-family:var(--hf);font-weight:700;color:var(--txt)}
input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:9px;background:linear-gradient(90deg,#ff8a5b,#ff4d8d,#8b5cf6) 0/var(--p,30%) 100% no-repeat,rgba(255,255,255,.1);outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,77,141,.25),0 4px 12px rgba(0,0,0,.5);cursor:pointer}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,77,141,.25);cursor:pointer}
.out{border-radius:22px;padding:22px;background:linear-gradient(150deg,rgba(255,138,91,.14),rgba(139,92,246,.18));border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:16px}
.out small{display:block;color:#d0cbe0;font-size:13px}
.out .big{font-family:var(--hf);font-size:clamp(38px,11vw,56px);font-weight:800;letter-spacing:-.04em;line-height:1.05}
.out .row{display:flex;gap:24px}
.out .row b{font-family:var(--hf);font-size:22px}
.out .fine{font-size:12px;color:var(--mut)}

/* why */
.why{display:grid;gap:14px}
.wc{padding:24px;border-radius:var(--r);background:var(--glass);border:1px solid var(--line);display:flex;gap:16px}
.wc .ib{width:46px;height:46px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--grad);color:#fff;box-shadow:0 10px 24px -10px rgba(255,77,141,.7)}
.wc h3{font-size:18px;margin-bottom:6px;letter-spacing:-.02em}
.wc p{color:var(--mut);font-size:14.5px}
.ind{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;justify-content:center}
.ind span{font-size:13px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:#d0cbe0}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq-i{border-radius:18px;background:var(--glass);border:1px solid var(--line);margin-bottom:10px;overflow:hidden;transition:border-color .3s}
.faq-i.open{border-color:rgba(255,138,91,.4)}
.faq-q{width:100%;text-align:left;background:none;border:0;color:var(--txt);font:600 16.5px var(--hf);letter-spacing:-.01em;padding:20px 56px 20px 20px;cursor:pointer;position:relative;min-height:60px}
.faq-q::after{content:"";position:absolute;right:20px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--glass2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/13px no-repeat;transition:transform .3s}
.faq-i.open .faq-q::after{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s,padding .4s;color:var(--mut);font-size:15px;padding:0 20px}
.faq-i.open .faq-a{max-height:260px;padding:0 20px 20px}

/* contact */
.cbox{border-radius:30px;padding:30px 20px;overflow:hidden;background:linear-gradient(#100e1d,#100e1d) padding-box,var(--grad) border-box;border:1.5px solid transparent;position:relative}
.cbox::before{content:"";position:absolute;width:500px;height:500px;right:-200px;top:-250px;border-radius:50%;background:radial-gradient(circle,rgba(255,77,141,.35),transparent 65%)}
.cbox>*{position:relative}
.cbox .grid{display:grid;gap:30px}
.cbox h2{font-size:clamp(34px,8.5vw,58px);margin:16px 0 14px;font-weight:800}
.cbox p.l{color:#d0cbe0;font-size:17px}
.ways{display:grid;gap:10px;margin-top:24px}
.ways a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:var(--glass);border:1px solid var(--line);transition:border-color .25s,background .25s}
.ways a:hover{border-color:rgba(255,138,91,.45);background:var(--glass2)}
.ways .ib{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex:none}
.ways .wa{background:rgba(37,211,102,.15);color:var(--wa)}.ways .ph{background:rgba(255,138,91,.15);color:var(--c1)}
.ways b{display:block;font-size:15px}.ways small{color:var(--mut);font-size:13px}
form{display:grid;gap:12px;align-content:start;align-self:start;padding:20px;border-radius:22px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
form h3{font-size:20px}
input:not([type=range]),select,textarea{width:100%;font:inherit;font-size:16px;color:var(--txt);background:rgba(8,7,15,.6);border:1px solid var(--line);border-radius:14px;padding:14px 16px;outline:none;transition:border-color .2s,box-shadow .2s}
input:not([type=range]):focus,select:focus,textarea:focus{border-color:var(--c2);box-shadow:0 0 0 4px rgba(255,77,141,.15)}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a7a2bb' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px}
select option{background:#100e1d}
textarea{resize:vertical;min-height:110px}
.two{display:grid;gap:12px}
.wa-out{display:none;font-size:14px;padding:12px 14px;border-radius:14px;background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.3)}
.wa-out.on{display:block}.wa-out a{color:var(--wa);font-weight:600;text-decoration:underline}

footer{padding:40px 0 120px;border-top:1px solid var(--line);color:var(--mut);font-size:14px}
.foot{display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}

/* sticky mobile CTA + desktop fab */
.mbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:70;display:grid;grid-template-columns:auto 1fr;gap:8px;padding:8px;border-radius:999px;background:rgba(14,12,25,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:0 20px 40px -12px rgba(0,0,0,.8);transform:translateY(140%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.mbar.show{transform:none}
.mbar .btn{min-height:48px;font-size:15px}
.mbar .call{width:48px;padding:0;background:var(--glass2);color:var(--txt)}
.fab{display:none}

/* ---------- tablet ---------- */
@media (min-width:640px){
 .wrap{padding:0 28px}
 .hero .ctas{display:flex;justify-content:center;max-width:none}
 .two{grid-template-columns:1fr 1fr}
 .mini{grid-template-columns:repeat(3,1fr)}
 .steps,.why{grid-template-columns:1fr 1fr}
 .calc{padding:40px}
 .cbox{padding:48px 40px}
 .stage{max-width:560px;height:600px}
 .phone{width:280px;height:580px}
 .fc.a{left:10px;top:90px}.fc.b{right:10px}.fc.c{left:40px}
}
/* ---------- desktop ---------- */
@media (min-width:1024px){
 section{padding:120px 0}
 header{padding:16px 24px 0}
 .nav{height:64px;padding:0 10px 0 22px}
 .nav nav{position:static;flex-direction:row;padding:0;background:none;border:0;box-shadow:none;opacity:1;transform:none;pointer-events:auto;gap:30px}
 .nav nav a{font:500 15px Inter,sans-serif;letter-spacing:0;padding:0;border:0;color:#cfc9e0;transition:color .2s}
 .nav nav a:hover{color:#fff}
 .nav .cta{display:inline-flex;min-height:46px;font-size:15px}
 .burger{display:none}
 .hero{padding:150px 0 60px;text-align:left}
 .hero .hin{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
 .hero h1{margin-left:0}
 .hero .lead{margin:0}
 .hero .ctas{justify-content:flex-start;margin-left:0}
 .hero .trust{justify-content:flex-start}
 .stage{margin:0 auto}
 .bento{grid-template-columns:repeat(3,1fr)}
 .bento .mini{grid-column:1/-1;grid-template-columns:repeat(6,1fr)}
 .dash-sec .grid{grid-template-columns:.9fr 1.1fr;gap:70px}
 .steps{grid-template-columns:repeat(4,1fr)}
 .steps::before{content:"";position:absolute;left:8%;right:8%;top:-18px;height:2px;background:var(--grad);opacity:.5}
 .calc .grid{grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
 .why{grid-template-columns:repeat(3,1fr)}
 .cbox{padding:64px}
 .cbox .grid{grid-template-columns:1fr 1fr;gap:56px}
 .foot{flex-direction:row;justify-content:space-between;text-align:left}
 footer{padding-bottom:40px}
 .mbar{display:none}
 .fab{display:grid;place-items:center;position:fixed;right:24px;bottom:24px;z-index:70;width:60px;height:60px;border-radius:50%;background:var(--wa);color:#05210f;box-shadow:0 16px 34px -10px rgba(37,211,102,.7);transition:transform .25s}
 .fab:hover{transform:scale(1.08)}.fab .ic{width:28px;height:28px}
}

.soc{display:flex;gap:10px;align-items:center}
.soc a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--glass2);border:1px solid var(--line);color:var(--txt);transition:transform .25s,background .25s,border-color .25s}
.soc a:hover{transform:translateY(-2px);border-color:rgba(255,138,91,.5);background:rgba(255,255,255,.12)}
.soc a.fb:hover{color:#5b9dff}.soc a.ig:hover{color:#ff7aa8}.soc a.wa:hover{color:var(--wa)}
.soc .ic{width:20px;height:20px}
.nav .soc{display:none}
.nav nav .soc{display:flex;padding-top:16px;border:0}
.nav nav .soc a{font-size:0;padding:0;border:1px solid var(--line)}
.foot .soc a{width:40px;height:40px}
.follow{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.follow p{color:#d0cbe0;font-size:15px}.follow b{color:var(--txt)}
@media (min-width:1024px){.nav .soc.top{display:flex;margin-right:12px}.nav nav .soc{display:none}.nav .cta{margin-left:0}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.pf,.pf-view{color:var(--p-txt);font-family:var(--p-bf);line-height:1.6}
.pf a,.pf-view a{color:inherit;text-decoration:none}
.pf-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.pf-view{display:none;padding-top:var(--p-top);background:var(--p-bg)}.pf-view.pf-on{display:block;animation:pf-fade .45s}
@keyframes pf-fade{from{opacity:0;transform:translateY(10px)}}
.pf-view section{padding:80px 0}
#work{background:var(--p-bg)}
.pf-proj .pf-info{color:var(--p-txt)}
@media(max-width:640px){.pf .pf-caps th,.pf .pf-caps td{padding:10px 8px;font-size:13px}.pf .pf-caps td:first-child,.pf .pf-caps th:first-child{width:56%}}
.pf .pf-browser{--p-txt:#e8eaf6;--p-mut:#9aa0c3;--p-line:rgba(255,255,255,.09);--p-bw:1px;--p-ok:#2bff9b;color:#e8eaf6}

.pf h1,.pf h2,.pf h3,.pf h4,.pf .pf-num,.pf-view h1,.pf-view h2,.pf-view h3,.pf-view h4,.pf-view .pf-num{font-family:var(--p-hf);letter-spacing:-.02em;line-height:1.12}
.pf-g{background:var(--p-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.pf-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:600;font-size:14.5px;border:var(--p-bw) solid var(--p-line);background:var(--p-card);transition:.2s;cursor:pointer;color:var(--p-txt);font-family:inherit}
.pf-btn:hover{border-color:var(--p-a2)}
.pf-btn.pf-p{background:var(--p-grad);border:0;color:#fff}
.pf-view{display:none}.pf-view.pf-on{display:block;animation:fade .45s}
@keyframes fade{from{opacity:0;transform:translateY(10px)}}
.pf-eyebrow{font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--p-a2);font-weight:600;margin-bottom:12px}
h2.pf-sec{font-size:clamp(28px,3.6vw,42px);margin-bottom:14px}
.pf-lead{color:var(--p-mut);font-size:17.5px;max-width:720px}
.pf-chips{display:flex;flex-wrap:wrap;gap:8px}
.pf-chip{font-size:12.5px;padding:5px 11px;border-radius:999px;border:var(--p-bw) solid var(--p-line);color:var(--p-mut);background:var(--p-card)}
.pf-chip.pf-live{color:var(--p-ok);border-color:rgba(43,255,155,.35)}
.pf-chip.pf-live::before{content:"● "}
/* ---------- portfolio index ---------- */
.pf-phero{padding:90px 0 40px;position:relative;overflow:hidden}
.pf-phero::before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:var(--p-a1);filter:blur(120px);opacity:.28;top:-260px;left:-160px}
.pf-phero h1{font-size:clamp(40px,5.4vw,66px);margin-bottom:18px;position:relative}
.pf-agg{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:44px;position:relative}
.pf-agg div{padding:22px;border-radius:18px;background:var(--p-card);border:var(--p-bw) solid var(--p-line)}
.pf-num{font-size:34px;font-weight:700;display:block}
.pf-agg small,.pf-stats small{color:var(--p-mut);font-size:13px}
.pf-proj{display:grid;grid-template-columns:1.05fr .95fr;gap:0;border-radius:26px;overflow:hidden;border:var(--p-bw) solid var(--p-line);background:var(--p-bg2);margin-bottom:26px;transition:.3s;cursor:pointer}
.pf-proj:hover{border-color:rgba(124,92,255,.55);transform:translateY(-4px);box-shadow:0 40px 90px -40px rgba(124,92,255,.55)}
.pf-proj .pf-info{padding:44px;display:flex;flex-direction:column;gap:16px}
.pf-proj h3{font-size:34px}
.pf-proj p{color:var(--p-mut)}
.pf-proj .pf-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pf-proj .pf-mini div{padding:12px;border-radius:12px;border:var(--p-bw) solid var(--p-line)}
.pf-proj .pf-mini b{font-family:var(--p-hf);font-size:20px;display:block}
.pf-proj .pf-mini small{color:var(--p-mut);font-size:12px}
.pf-proj .pf-vis{position:relative;min-height:380px;display:grid;place-items:center;padding:34px;overflow:hidden}
.pf-v-mds{background:radial-gradient(500px 300px at 70% 20%,rgba(0,212,255,.35),transparent),radial-gradient(400px 300px at 10% 90%,rgba(124,92,255,.4),transparent),var(--p-stage)}
.pf-v-qka{background:radial-gradient(500px 300px at 30% 20%,rgba(255,79,216,.3),transparent),radial-gradient(400px 300px at 90% 90%,rgba(43,255,155,.22),transparent),var(--p-stage)}
/* mock browser */
.pf-browser{width:100%;max-width:520px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#0d1022;box-shadow:0 30px 60px -20px #000}
.pf-bbar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:#141831;font-size:11.5px;color:var(--p-mut)}
.pf-bbar i{width:9px;height:9px;border-radius:50%;background:#ff5f57}.pf-bbar i:nth-child(2){background:#febc2e}.pf-bbar i:nth-child(3){background:#28c840}
.pf-bbar span{margin-left:10px;padding:3px 10px;border-radius:6px;background:rgba(255,255,255,.06);flex:1}
.pf-bbody{padding:16px;display:grid;gap:10px}
.pf-mrow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pf-mk{padding:10px;border-radius:9px;background:rgba(255,255,255,.05);font-size:11px;color:var(--p-mut)}
.pf-mk b{display:block;color:var(--p-txt);font-size:15px;font-family:var(--p-hf)}
.pf-mk em{font-style:normal;color:var(--p-ok)}
.pf-candles{display:flex;align-items:center;gap:5px;height:110px;padding:8px;border-radius:9px;background:rgba(255,255,255,.04)}
.pf-candles i{flex:1;border-radius:2px;position:relative}
.pf-candles i::after{content:"";position:absolute;left:50%;width:1px;top:-12px;bottom:-12px;background:inherit;opacity:.6}
.pf-up{background:#2bd98a}.pf-dn{background:#ff5f7a}
.pf-tbl{font-size:11px;color:var(--p-mut);border-radius:9px;overflow:hidden;border:var(--p-bw) solid var(--p-line)}
.pf-tbl div{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;padding:6px 10px;border-bottom:var(--p-bw) solid var(--p-line)}
.pf-tbl div:first-child{background:rgba(255,255,255,.05);color:var(--p-txt);font-weight:600}
.pf-tbl em{font-style:normal;color:var(--p-ok)}
.pf-shot-tag{position:absolute;bottom:14px;right:14px;font-size:11px;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.55);border:1px dashed rgba(255,255,255,.3);color:var(--p-mut)}
.pf-caps{margin-top:30px;border-radius:22px;border:var(--p-bw) solid var(--p-line);overflow:hidden}
.pf-caps table{width:100%;border-collapse:collapse;font-size:14.5px}
.pf-caps th,.pf-caps td{padding:14px 18px;border-bottom:var(--p-bw) solid var(--p-line);text-align:left}
.pf-caps th{background:var(--p-bg2);font-family:var(--p-hf);font-weight:600}
.pf-caps td:not(:first-child){text-align:center;color:var(--p-ok);font-weight:700}
.pf-caps td:first-child{color:var(--p-mut)}
.pf-caps tr:last-child td{border-bottom:0}
/* ---------- case study ---------- */
.pf-crumb{font-size:13.5px;color:var(--p-mut);margin-bottom:22px}
.pf-crumb a{color:var(--p-a2)}
.pf-chero{padding:60px 0 50px;border-bottom:var(--p-bw) solid var(--p-line);position:relative;overflow:hidden}
.pf-chero h1{font-size:clamp(40px,5.6vw,70px);margin:10px 0 16px}
.pf-chero .pf-lead{font-size:19px}
.pf-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--p-line);border:var(--p-bw) solid var(--p-line);border-radius:18px;overflow:hidden;margin-top:36px}
.pf-meta div{background:var(--p-bg);padding:18px 20px}
.pf-meta small{display:block;color:var(--p-mut);font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.pf-meta b{font-size:15px}
.pf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pf-stats div{padding:24px;border-radius:18px;border:var(--p-bw) solid var(--p-line);background:linear-gradient(180deg,var(--p-card),transparent)}
.pf-stats .pf-num{font-size:38px}
.pf-cs{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pf-cs .pf-box{padding:32px;border-radius:22px;border:var(--p-bw) solid var(--p-line);background:var(--p-card)}
.pf-cs .pf-box h3{font-size:22px;margin-bottom:12px}
.pf-cs .pf-box p,.pf-cs .pf-box li{color:var(--p-mut);font-size:15.5px}
.pf-cs ul{padding-left:18px;display:grid;gap:6px;margin-top:8px}
.pf-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 22px}
.pf-tab{padding:10px 18px;border-radius:999px;border:var(--p-bw) solid var(--p-line);background:var(--p-card);color:var(--p-mut);font:600 14px var(--p-bf);cursor:pointer;transition:.2s}
.pf-tab.pf-on{background:var(--p-grad);color:#fff;border-color:transparent}
.pf-pane{display:none;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}
.pf-pane.pf-on{display:grid;animation:fade .35s}
.pf-pane h3{font-size:26px;margin-bottom:10px}
.pf-pane>div>p{color:var(--p-mut);margin-bottom:16px}
.pf-feats{display:grid;gap:10px}
.pf-feat{padding:16px 18px;border-radius:14px;border:var(--p-bw) solid var(--p-line);background:var(--p-card)}
.pf-feat b{display:block;font-size:15px;margin-bottom:2px}
.pf-feat span{color:var(--p-mut);font-size:14px}
.pf-ph{border-radius:18px;border:1px dashed rgba(255,255,255,.22);min-height:260px;display:grid;place-items:center;text-align:center;color:var(--p-mut);font-size:13.5px;padding:24px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.02) 0 12px,transparent 12px 24px)}
.pf-ph b{display:block;color:var(--p-txt);font-size:15px;margin-bottom:4px}
.pf-shot{margin:0;border-radius:16px;overflow:hidden;border:var(--p-bw) solid var(--p-line);background:var(--p-bg2);box-shadow:0 30px 60px -30px rgba(0,0,0,.45);cursor:zoom-in;transition:.25s}
.pf-shot:hover{transform:translateY(-3px)}
.pf-shot img{display:block;width:100%;height:auto}
.pf-shot figcaption{font-size:12.5px;color:var(--p-mut);padding:10px 14px;border-top:var(--p-bw) solid var(--p-line)}
.pf-bimg{display:block;width:100%;height:auto}
.pf-phones{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:860px}
.pf-phones .pf-shot{border-radius:26px}
.pf-phones.pf-p4{grid-template-columns:repeat(4,1fr);max-width:1100px}
@media(max-width:760px){.pf-phones,.pf-phones.pf-p4{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -20px;padding:0 20px 8px;-webkit-overflow-scrolling:touch}.pf-phones .pf-shot{flex:0 0 68%;scroll-snap-align:center}}
.pf-lb{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.86);display:none;place-items:center;padding:24px;cursor:zoom-out}
.pf-lb.pf-on{display:grid}
.pf-lb img{max-width:96vw;max-height:88vh;border-radius:12px;box-shadow:0 30px 80px #000}
.pf-lb p{color:#ddd;font-size:14px;text-align:center;margin-top:10px}
/* architecture */
.pf-arch{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:stretch;position:relative}
.pf-col{display:flex;flex-direction:column;gap:10px}
.pf-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--p-a2);font-family:var(--p-bf);font-weight:600}
.pf-nd{padding:12px 14px;border-radius:12px;border:var(--p-bw) solid var(--p-line);background:var(--p-bg2);font-size:13.5px;position:relative}
.pf-nd small{display:block;color:var(--p-mut);font-size:11.5px}
.pf-nd.pf-hl{border-color:rgba(124,92,255,.6);background:linear-gradient(135deg,rgba(124,92,255,.22),rgba(0,212,255,.08))}
.pf-col:not(:last-child) .pf-nd::after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);color:var(--p-a1);font-size:13px}
.pf-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pf-stack div{padding:22px;border-radius:18px;border:var(--p-bw) solid var(--p-line);background:var(--p-card)}
.pf-stack h4{font-size:16px;margin-bottom:12px}
.pf-qual{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pf-qual div{padding:24px;border-radius:18px;border:var(--p-bw) solid var(--p-line)}
.pf-qual h4{font-size:17px;margin-bottom:6px;display:flex;gap:10px;align-items:center}
.pf-qual h4::before{content:"✓";width:22px;height:22px;flex:none;border-radius:7px;background:var(--p-grad);display:grid;place-items:center;font-size:12px;color:#fff}
.pf-qual p{color:var(--p-mut);font-size:14.5px}
.pf-biz{border-radius:26px;padding:44px;border:var(--p-bw) solid var(--p-line);background:linear-gradient(135deg,rgba(124,92,255,.2),rgba(0,212,255,.06))}
.pf-biz .pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.pf-biz .pf-grid div{padding:20px;border-radius:16px;background:var(--p-bg);border:var(--p-bw) solid var(--p-line)}
.pf-biz b{display:block;margin-bottom:4px}
.pf-biz span{color:var(--p-mut);font-size:14px}
.pf-next{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px;border-radius:22px;border:var(--p-bw) solid var(--p-line);background:var(--p-bg2);cursor:pointer;margin-top:30px}
.pf-next:hover{border-color:var(--p-a2)}
.pf-next h3{font-size:26px}
@media(max-width:960px){
 .pf-proj,.pf-cs,.pf-pane.pf-on{grid-template-columns:1fr}.pf-agg,.pf-stats,.pf-meta{grid-template-columns:1fr 1fr}
 .pf-arch{grid-template-columns:1fr}.pf-col:not(:last-child) .pf-nd::after{display:none}
 .pf-stack,.pf-qual,.pf-biz .pf-grid{grid-template-columns:1fr}
}
.pf,.pf-view{--p-bg:transparent;--p-bg2:rgba(255,255,255,.02);--p-card:rgba(255,255,255,.045);--p-line:rgba(255,255,255,.1);--p-txt:#f4f1fb;--p-mut:#a7a2bb;--p-a1:#ff4d8d;--p-a2:#ff8a5b;--p-a3:#8b5cf6;--p-ok:#2dd4bf;--p-grad:linear-gradient(110deg,#ff8a5b,#ff4d8d 45%,#8b5cf6);--p-hf:"Sora",sans-serif;--p-bf:Inter,system-ui,sans-serif;--p-bw:1px;--p-stage:#100e1d;--p-top:84px}
.pf-view{background:transparent}
.pf h1,.pf-view h1,.pf h2,.pf-view h2{letter-spacing:-.04em;font-weight:800}
.pf .pf-eyebrow,.pf-view .pf-eyebrow{color:#ffb39a}
.pf .pf-btn.pf-p,.pf-view .pf-btn.pf-p{background:linear-gradient(110deg,#ff8a5b,#ff4d8d 45%,#8b5cf6);color:#fff;border-radius:999px;box-shadow:0 12px 34px -10px rgba(255,77,141,.65)}
.pf .pf-proj{border-radius:26px;background:linear-gradient(#0e0c19,#0e0c19) padding-box,linear-gradient(140deg,rgba(255,138,91,.5),rgba(255,255,255,.06) 40%,rgba(139,92,246,.5)) border-box;border:1px solid transparent}
.pf .pf-v-mds{background:radial-gradient(500px 300px at 70% 20%,rgba(255,77,141,.35),transparent),radial-gradient(400px 300px at 10% 90%,rgba(139,92,246,.4),transparent),#100e1d}
.pf .pf-v-qka{background:radial-gradient(500px 300px at 30% 20%,rgba(255,138,91,.35),transparent),radial-gradient(400px 300px at 90% 90%,rgba(45,212,191,.25),transparent),#100e1d}
.pf-view .pf-tab.pf-on{background:linear-gradient(110deg,#ff8a5b,#ff4d8d 45%,#8b5cf6);color:#fff;border-color:transparent}
.pf .pf-caps th{background:rgba(255,255,255,.06)}
.pf .pf-caps td:not(:first-child){color:#2dd4bf}

.phero{padding:130px 0 24px}
.phero h1{font-size:clamp(36px,9vw,68px);margin:16px 0 18px;max-width:940px;font-weight:800;letter-spacing:-.04em}
.phero .lead{font-size:18px;color:#cdc8dc;max-width:760px}
.phero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.crumbs{font-size:14px;color:var(--mut);margin-bottom:16px}.crumbs a{color:#ffb39a}.crumbs i{font-style:normal;margin:0 8px;opacity:.6}
section.tight{padding:56px 0}
.sh2{font-size:clamp(28px,6vw,44px);margin:12px 0 22px}
.g2,.g3{display:grid;gap:14px}
@media(min-width:760px){.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.g3{grid-template-columns:repeat(3,1fr)}}
.card{display:block;padding:24px;border-radius:var(--r);background:var(--glass);border:1px solid var(--line)}
.card h3{font-size:20px;margin-bottom:8px;letter-spacing:-.02em}.card p{color:var(--mut);font-size:15px}
a.card{transition:border-color .25s,transform .25s}a.card:hover{border-color:rgba(255,138,91,.45);transform:translateY(-3px)}
a.card .more{display:inline-block;margin-top:14px;color:#ffb39a;font-weight:600;font-size:14px}
.steps-list{list-style:none;counter-reset:s;display:grid;gap:12px}
.steps-list li{counter-increment:s;display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border-radius:18px;background:var(--glass);border:1px solid var(--line);color:#d6d1e4}
.steps-list li::before{content:counter(s);flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff;font-weight:700;font-family:var(--hf)}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{font-size:14px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:#d0cbe0;background:var(--glass)}
.prose{max-width:760px}.prose h2{font-size:clamp(24px,5vw,32px);margin:40px 0 14px}
.prose p,.prose li{color:#d6d1e4;font-size:17.5px;line-height:1.8;margin-bottom:14px}.prose ul,.prose ol{padding-left:22px;margin-bottom:14px}
.prose a{color:#ffb39a;text-decoration:underline;text-underline-offset:3px}.prose b{color:#fff}
.meta-line{color:var(--mut);font-size:14px}
.band{border-radius:30px;padding:40px 24px;text-align:center;background:linear-gradient(#100e1d,#100e1d) padding-box,var(--grad) border-box;border:1.5px solid transparent}
.band h2{font-size:clamp(28px,7vw,46px);margin-bottom:12px}.band p{color:#d0cbe0;margin:0 auto 24px;max-width:600px}
.band .ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.fgrid{display:grid;gap:30px}
.fgrid h4{font-family:var(--hf);font-size:15px;color:var(--txt);margin-bottom:12px}
.flinks a,.flinks span{display:block;color:var(--mut);font-size:14.5px;padding:4px 0}.flinks a:hover{color:#fff}
.fbrand p{color:var(--mut);font-size:14.5px;margin:12px 0 16px;max-width:320px}
.fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:30px;padding-top:20px;border-top:1px solid var(--line);font-size:13.5px;color:var(--mut)}
@media(min-width:760px){.fgrid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.pf-view.pf-on{display:block}
.pf .pf-phero .pf-h1{font-size:clamp(40px,5.4vw,66px);margin-bottom:18px;position:relative}
