:root{--bg:#fff;--ink:#0f1020;--mut:#6b6f85;--card:#f6f6fb;--line:#0f102014;--ghost:color-mix(in srgb,var(--ink) 9%,var(--bg));--acc:#7c3aed;--f:'Plus Jakarta Sans',system-ui,sans-serif}
[data-theme=dark]{--bg:#0b0a14;--ink:#f1eefc;--mut:#a9a6c2;--card:#14122a;--line:#ffffff1a}
[data-theme=dark] .lg img,[data-theme=dark] .hlogo{filter:invert(1) hue-rotate(180deg)}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:100px}
body{background:var(--bg);color:var(--ink);font:400 17px/1.7 var(--f);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:60;opacity:.06;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
h1,h2,h3{font-weight:800;line-height:1;letter-spacing:-.04em}a{color:inherit;text-decoration:none}p+p{margin-top:1em}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.w{width:min(1160px,92%);margin:auto}
.pr{position:fixed;top:0;left:0;height:3px;width:0;z-index:99;background:linear-gradient(90deg,var(--acc),#38bdf8)}
nav{position:fixed;top:18px;left:50%;translate:-50% 0;width:min(1200px,94%);z-index:90;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 22px;border-radius:99px;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(1.4);border:1px solid var(--line);box-shadow:0 14px 44px -16px #4c1d9550}
.lg{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.5rem;letter-spacing:-.05em;margin-right:auto}.lg img{width:auto;display:block}
.mn{display:flex;gap:2px;list-style:none;padding:0}.mn>li{position:relative;display:flex;align-items:center}
.mn a[data-n]{padding:9px 16px;border-radius:99px;font-weight:500;font-size:.95rem;transition:.25s}.mn a[data-n]:hover{background:var(--card)}.mn a.on{background:var(--ink);color:var(--bg)}
.cv{background:none;border:0;color:inherit;cursor:pointer;margin-left:-10px;padding:8px 6px;font-size:.7rem;opacity:.6}
.sm{position:absolute;top:100%;left:0;min-width:240px;max-height:72vh;overflow:auto;margin-top:14px;padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -20px #4c1d9560;opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}
.sm::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.dd:hover .sm,.dd:focus-within .sm,.dd.open .sm{opacity:1;visibility:visible;transform:none}
.sv .sm{width:min(560px,90vw);display:grid;grid-template-columns:1fr 1fr}.sv .sm a:first-child{grid-column:1/-1;font-weight:700}
.sm a{display:block;padding:10px 14px;border-radius:12px;font-weight:500;font-size:.95rem}.sm a:hover{background:var(--card);color:var(--acc)}
.mb{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;align-items:center}.mb i{width:22px;height:2px;background:var(--ink);transition:.3s}
.btn{display:inline-block;padding:13px 26px;border:0;border-radius:99px;background:var(--ink);color:var(--bg);font:700 1rem var(--f);cursor:pointer;transition:.3s}.btn:hover{background:var(--acc);color:#fff;transform:translateY(-2px)}
.hero{--fs:clamp(3rem,9.2vw,8.6rem);min-height:100vh;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;padding:130px 0 90px}
.o{position:absolute;border-radius:50%;filter:blur(90px);opacity:.45;translate:var(--px,0) var(--py,0);transition:translate 1.2s ease-out;animation:dr 16s ease-in-out infinite alternate}
.o1{width:46vw;height:46vw;left:-10vw;top:-6vw;background:var(--acc)}.o2{width:40vw;height:40vw;right:-8vw;bottom:-8vw;background:#60a5fa;animation-delay:-8s}.o3{width:28vw;height:28vw;left:40vw;top:35vh;background:#22d3ee;opacity:.22;animation-delay:-4s}
@keyframes dr{to{transform:translate(6vw,4vw) scale(1.15)}}
.hero .w{position:relative}.hl{display:flex;align-items:center;justify-content:center;gap:clamp(18px,3.4vw,56px);animation:up 1.1s cubic-bezier(.2,.7,.2,1) both}
.hlogo{height:calc(var(--fs)*1.85*var(--ls,1));width:auto;max-width:46vw;object-fit:contain;transform:perspective(900px) rotateX(calc(var(--ty,0)*1deg)) rotateY(calc(var(--tx,0)*1deg));transition:transform .4s ease-out;animation:fl 6s ease-in-out infinite alternate;filter:drop-shadow(0 24px 44px color-mix(in srgb,var(--acc) 45%,transparent))}
@keyframes fl{to{translate:0 -16px}}
h1{font-size:var(--fs);line-height:.88;letter-spacing:-.06em;text-align:left}h1 .l1,h1 .l2{display:block;font-weight:800}
h1 .l2{background:linear-gradient(90deg,var(--ink),var(--acc),#38bdf8,var(--ink));background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sh 7s linear infinite}h1 .dot{color:var(--acc)}
@keyframes sh{to{background-position:-250% 0}}
.hero p{max-width:34em;margin:38px auto 0;color:var(--mut);font-size:1.2rem;animation:up 1.1s .35s cubic-bezier(.2,.7,.2,1) both}
@keyframes up{from{opacity:0;transform:translateY(60px)}}
.rv{opacity:0}.rv.in{opacity:1;animation:up 1s var(--d,0s) cubic-bezier(.2,.7,.2,1) backwards}
.sl{background:#050509;color:#fff;padding:70px 0 90px;position:relative;overflow:hidden}
.tr{display:flex;gap:28px;position:relative;transition:transform 1s cubic-bezier(.65,0,.2,1);cursor:grab}
.sd{flex:0 0 min(78vw,1100px);height:clamp(360px,64vh,620px);position:relative;overflow:hidden;border-radius:28px;display:block;background:#14122a;opacity:.35;transform:scale(.92);transition:opacity .9s,transform .9s}.sd.on{opacity:1;transform:none}
.sd img,.ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 6s ease-out}.sd.on img{transform:scale(1.07)}.ph{background:radial-gradient(circle at 25% 20%,#5b21b6,#14122a 70%)}
.sd::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000 3%,#0000 62%)}
.tx{position:absolute;left:clamp(20px,4vw,56px);right:20px;bottom:clamp(20px,4vw,48px);z-index:1}.tx small{color:#a78bfa;font-weight:700;letter-spacing:.2em}
.tx h3{font-size:clamp(2rem,5vw,4.6rem);margin:6px 0 8px}.tx p{color:#d6d3ee;font-size:1.1rem}
.ctl{display:flex;justify-content:flex-end;align-items:center;gap:14px;width:min(1160px,92%);margin:26px auto 0}.ct{margin-right:auto;font-weight:700;color:#a9a6c2}
.ctl button{width:54px;height:54px;border-radius:50%;border:1px solid #ffffff44;background:#ffffff12;color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;transition:.3s}.ctl button:hover{background:var(--acc);border-color:var(--acc)}
.tk{overflow:hidden;padding:44px 0;border-bottom:1px solid var(--line)}
.tk div{display:flex;gap:64px;width:max-content;animation:tk var(--tk,160s) linear infinite reverse}.tk span{font-family:var(--tf,inherit);font-weight:var(--tw,800);font-size:var(--ts,clamp(1.8rem,4vw,3rem));letter-spacing:-.04em;text-transform:var(--tu,uppercase);color:var(--tc,var(--ghost));white-space:nowrap;line-height:1}
@keyframes tk{to{transform:translateX(-50%)}}
section{padding:110px 0}h2{font-size:clamp(2.4rem,6vw,4.6rem);margin-bottom:20px}#cards h2{margin-bottom:50px}
.gr{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.k{position:relative;overflow:hidden;display:block;min-height:270px;padding:32px;background:var(--kb,var(--card));color:var(--kt,inherit);border:1px solid transparent;border-radius:32px;transition:.4s}
.k::after{content:"";position:absolute;inset:0;opacity:0;transition:.3s;pointer-events:none;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--acc) 22%,transparent),#0000)}.k:hover::after{opacity:1}
.k i{display:grid;place-items:center;width:64px;height:64px;margin-bottom:34px;border-radius:18px;background:var(--kn,var(--ink));color:var(--bg);font:700 1.1rem var(--f);font-style:normal;transition:.4s}
.k h3{font-size:var(--kts,1.8rem);margin-bottom:10px}.k p{color:var(--kt,var(--mut));line-height:1.5}
.k:hover{transform:translateY(-8px);background:var(--kb,var(--bg));border-color:var(--acc);box-shadow:0 30px 60px -30px color-mix(in srgb,var(--acc) 60%,transparent)}.k:hover i{background:var(--acc);color:#fff;transform:rotate(-8deg)}
.two{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:start}.two p{color:var(--mut)}.two a:not(.btn){color:var(--acc);font-weight:500}
#about,#careers{background:var(--card)}.roles{list-style:none;padding:0}.roles li{display:flex;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.roles b{font-size:1.2rem}.roles span{color:var(--mut)}
form{display:grid;gap:18px}label{display:grid;gap:6px;font-weight:500;font-size:.95rem}
input,select,textarea{width:100%;padding:15px 18px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:16px;font:inherit}
.hp{position:absolute;left:-9999px}.msg{padding:14px 18px;border:1px solid var(--acc);border-radius:16px;color:var(--ink)!important}
.sh{padding-top:160px}.sh h1{font-size:clamp(2.6rem,7vw,5.6rem);margin:22px 0 16px}.ln{border-bottom:1px solid var(--mut);padding-bottom:2px;color:var(--mut)}
.lead{color:var(--mut);font-size:1.2rem;margin-bottom:30px}.sb{width:100%;max-height:540px;object-fit:cover;border-radius:32px;margin-top:40px}
.pg{padding:70px 0 110px}h3{font-size:1.2rem;margin-bottom:10px}
.ol{list-style:none;padding:0}.ol li{border-bottom:1px solid var(--line)}.ol a{display:block;padding:12px 0;transition:.25s}.ol a:hover{color:var(--acc);padding-left:8px}
footer{border-top:1px solid var(--line);padding:36px 0;color:var(--mut);font-size:.95rem}footer .w{display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:space-between;align-items:center}footer .lg{font-size:1.3rem;color:var(--ink);margin:0}
@media(max-width:980px){.mb{display:flex;margin-left:auto}.lg{margin-right:0}.btn.hd{display:none}
.mn{position:fixed;top:84px;left:3%;right:3%;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border:1px solid var(--line);border-radius:24px;padding:12px;box-shadow:0 30px 60px -20px #4c1d9560;display:none;max-height:75vh;overflow:auto}.mn.open{display:flex}
.mn>li{flex-wrap:wrap}.mn>li>a{flex:1}.cv{margin:0;font-size:1rem;padding:10px 14px}.sm,.sv .sm{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;width:100%;margin:0;padding:0 0 8px 12px;grid-template-columns:1fr}.dd.open .sm{display:block}.sm::before{display:none}}
@media(max-width:760px){.hero{--fs:clamp(3.4rem,17vw,6rem)}.hl{flex-direction:column}.hlogo{height:calc(var(--fs)*1.3*var(--ls,1));max-width:80vw}h1{text-align:center}.two{grid-template-columns:1fr;gap:30px}section{padding:70px 0}.lg span{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.one{grid-template-columns:1fr}.cimg{width:100%;border-radius:32px;display:block}
.two.va-top{align-items:start}.two.va-center{align-items:center}.two.va-bottom{align-items:end}
.ha-left{text-align:left}.ha-center{text-align:center}.ha-right{text-align:right}
.hs-small{font-size:clamp(1.6rem,3.4vw,2.6rem)}.hs-medium{font-size:clamp(2rem,4.8vw,3.4rem)}.hs-extralarge{font-size:clamp(3rem,9vw,7.5rem)}
.fb{font-weight:800}.fl{font-weight:300}.fi{font-style:italic}.fa{color:var(--acc)}.fg{background:linear-gradient(90deg,var(--acc),#38bdf8);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p+p{margin-top:1em}
h1 p,h1 div,h2 p,h2 div{margin:0}
.dr span{color:var(--ink);font-weight:700}
