:root{--bg:#0F0D17;--bg2:#1E1B2E;--ink:#F2EFFA;--soft:#A9A3BF;--v:#7C3AED;--v2:#B79BFF;--amb:#F5B94A;--rule:#2E2A44}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 Manrope,system-ui,sans-serif;overflow-x:hidden}
a{color:inherit}h1,h2,h3{font-family:"Bricolage Grotesque",system-ui,sans-serif;margin:0;line-height:1.08}
.top{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:14px 4vw;background:linear-gradient(#0F0D17cc,#0F0D1700);backdrop-filter:blur(6px)}
.logo{font:700 1.4rem "Bricolage Grotesque",serif;text-decoration:none}.logo span{color:var(--amb)}
.top nav{display:flex;gap:22px;font-size:.88rem;align-items:center}.top nav a{text-decoration:none;color:var(--soft)}.top nav a:hover{color:var(--ink)}
.top .cta{background:var(--v);color:#fff;padding:8px 16px;border-radius:99px}
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--v),var(--amb));z-index:60}
.eyebrow{font:600 .78rem Manrope;letter-spacing:.16em;text-transform:uppercase;color:var(--amb);margin:0 0 14px}
.btn{display:inline-block;background:var(--v);color:#fff;padding:14px 26px;border-radius:99px;text-decoration:none;font-weight:600;margin:6px 8px 6px 0;transition:.25s}.btn:hover{transform:translateY(-2px);background:#9059ff}
.btn.ghost{background:transparent;border:1px solid var(--v2)}
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:hue-rotate(40deg) saturate(.8) brightness(.55)}
.veil{position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,#7C3AED55,transparent 55%),linear-gradient(#0F0D17aa,#0F0D17)}
.hero-in{position:relative;padding:120px 6vw 60px;max-width:1100px}
.hero h1{font-size:clamp(2.2rem,6.8vw,5.45rem);font-weight:800;letter-spacing:-.02em}.hero h1 em{color:var(--amb);font-style:italic}.w{display:inline-block}
.lead{font-size:clamp(1.05rem,2vw,1.35rem);color:var(--soft);max-width:60ch;margin:22px 0 30px}
.stats{display:flex;gap:34px;flex-wrap:wrap;margin:0 0 34px}.stats div{font:700 2.6rem "Bricolage Grotesque";color:var(--ink)}.stats small{display:block;font:500 .78rem Manrope;color:var(--soft);letter-spacing:.04em}
.statement{min-height:140vh;position:relative}.pin{position:sticky;top:0;min-height:100vh;display:flex;align-items:center;padding:0 7vw}
.big{font:700 clamp(1.8rem,5vw,4rem)/1.15 "Bricolage Grotesque";max-width:20em;margin:0}.big .ch{opacity:.15;transition:opacity .2s}.big .ch.on{opacity:1}
.head{padding:0 6vw;margin-bottom:40px}.head h2{font-size:clamp(2rem,5vw,3.6rem)}
.careers{padding:100px 0;background:var(--bg2)}.track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:22px;padding:0 6vw}
.career{background:var(--bg);border:1px solid var(--rule);border-radius:22px;padding:30px;position:relative;transition:.3s}
.career:hover{border-color:var(--v);transform:translateY(-6px)}.career .n{font:800 3.4rem "Bricolage Grotesque";color:var(--v);opacity:.5}.career h3{font-size:1.7rem;margin:4px 0}.sub{color:var(--amb);font-weight:600;margin:0 0 14px}
.career ul{padding-left:18px;margin:0;color:var(--soft)}.career li{margin:8px 0}
.timeline{padding:110px 0}.rail{position:relative;margin:0 6vw;padding-left:40px;max-width:900px}.line{position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--rule)}
.line::after{content:"";position:absolute;inset:0;background:linear-gradient(var(--v),var(--amb));transform-origin:top;transform:scaleY(var(--p,0))}
.step{position:relative;margin-bottom:56px}.dot{position:absolute;left:-40px;top:8px;width:18px;height:18px;border-radius:50%;background:var(--bg);border:3px solid var(--v)}
.step time{font:600 .85rem Manrope;color:var(--amb);letter-spacing:.1em}.step h3{font-size:1.9rem;margin:4px 0 6px}.step p{margin:0;color:var(--soft);max-width:60ch}
.clients{padding:90px 0;background:var(--bg2);overflow:hidden}.marq{overflow:hidden;white-space:nowrap}.marq-in{display:inline-flex;gap:14px;animation:m 55s linear infinite}
.marq span{border:1px solid var(--rule);padding:12px 22px;border-radius:99px;color:var(--soft)}@keyframes m{to{transform:translateX(-50%)}}
.ai{padding:110px 0}.ailist{list-style:none;counter-reset:a;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;padding:0 6vw;margin:0}
.ailist li{counter-increment:a;background:var(--bg2);border:1px solid var(--rule);border-radius:18px;padding:24px 24px 24px 70px;position:relative;color:var(--ink)}
.ailist li::before{content:counter(a,decimal-leading-zero);position:absolute;left:22px;top:20px;font:800 1.6rem "Bricolage Grotesque";color:var(--v)}
.port{padding:100px 0;background:var(--bg2)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding:0 6vw}
figure{margin:0;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:#000}figure img{width:100%;height:100%;object-fit:cover;transition:.5s}figure:hover img{transform:scale(1.07)}
figcaption{position:absolute;inset:auto 0 0 0;padding:40px 16px 14px;background:linear-gradient(#0000,#000d);display:flex;flex-direction:column;font-size:.85rem}figcaption span{color:var(--soft)}.more{text-align:center;margin-top:34px}
.docs{padding:100px 0}.docgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;padding:0 6vw}
.docgrid a{border:1px solid var(--rule);border-radius:18px;padding:26px;text-decoration:none;background:var(--bg2);transition:.25s}.docgrid a:hover{border-color:var(--amb);transform:translateY(-4px)}.docgrid b{display:block;font:700 1.25rem "Bricolage Grotesque"}.docgrid span{color:var(--soft);font-size:.9rem}
.contact{padding:120px 6vw;text-align:center;background:radial-gradient(circle at 50% 0,#7C3AED44,transparent 60%)}.contact h2{font-size:clamp(2.4rem,7vw,5rem)}.mail a{font:700 clamp(1.3rem,4vw,2.4rem) "Bricolage Grotesque";color:var(--amb)}
footer{text-align:center;padding:30px;color:var(--soft);font-size:.85rem;border-top:1px solid var(--rule)}
@media(max-width:760px){.top nav a:not(.cta){display:none}.stats{gap:20px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto}.big .ch{opacity:1}}

.chips{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px;max-width:70ch}.chips li{border:1px solid var(--rule);background:var(--bg2);border-radius:12px;padding:6px 12px;font-size:.85rem;color:var(--soft)}.chips li:first-child{border-color:var(--amb);color:var(--ink)}
.btn.wa{background:#1FA855;font-size:1.05rem}.btn.wa:hover{background:#25c063}
.wafab{position:fixed;right:18px;bottom:18px;z-index:55;background:#1FA855;color:#fff;text-decoration:none;font-weight:700;padding:12px 18px;border-radius:99px;box-shadow:0 8px 22px -6px #000a}
#pf{padding:0 6vw}.pf-intro{max-width:70ch;color:var(--soft);margin:0 0 22px}#pf .filters{margin:18px 0 26px}
