html{scroll-behavior:smooth}
body{margin:0;background:#000}
a{color:#fff}a:hover{color:#fff}
.pg *{box-sizing:border-box}
.pg{position:relative;overflow-x:clip;background:#000;color:#F4F4F5;font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.dt{font-family:'Inter Tight','Inter',sans-serif}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.mut{color:#8A8F98}
.wrap{width:100%;max-width:1360px;margin:0 auto;padding:0 40px}
@media (max-width:720px){.wrap{padding:0 20px}}
@media (pointer:fine){.pg,.pg *{cursor:none}}

.pre{position:fixed;inset:0;z-index:100;background:#000;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:36px 40px;transition:transform 1.1s cubic-bezier(.76,0,.24,1)}
.pre.up{transform:translateY(-101%)}
.pre-n{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(96px,16vw,220px);line-height:.8;letter-spacing:-.06em}
.pre-bar{position:absolute;left:0;bottom:0;height:2px;background:#fff;transition:width .12s linear}

.cur,.ring{position:fixed;left:0;top:0;z-index:95;pointer-events:none;border-radius:50%;will-change:transform}
.cur{width:8px;height:8px;margin:-4px 0 0 -4px;background:#fff;mix-blend-mode:difference}
.ring{width:44px;height:44px;margin:-22px 0 0 -22px;border:1px solid rgba(255,255,255,.55);transition:border-color .3s,background .3s}
.ring.hv{border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.1)}
@media (pointer:coarse){.cur,.ring,.pv{display:none}}

.grain{position:fixed;inset:0;width:100%;height:100%;z-index:58;pointer-events:none;opacity:.07;mix-blend-mode:overlay}

.nav{position:fixed;left:0;right:0;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:16px 28px;padding:22px 40px;flex-wrap:wrap}
.nl{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#C7CAD1;text-decoration:none;padding:10px 0;position:relative;display:inline-block;transition:color .25s}
.nl::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:#fff;transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.nl:hover{color:#fff}.nl:hover::after{transform:scaleX(1);transform-origin:left}

.hero{position:sticky;top:0;height:900px;overflow:hidden;background:#000;z-index:1}
.gl{position:absolute;inset:0;width:100%;height:100%;display:block}
.glf{position:absolute;left:50%;top:50%;width:640px;height:640px;margin:-320px 0 0 -320px;border-radius:50%;background:radial-gradient(circle at 40% 35%,rgba(150,190,255,.9),rgba(46,107,255,.55) 30%,rgba(10,30,90,.3) 60%,transparent 72%);filter:blur(16px)}
.vig{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 28%,rgba(0,0,0,0) 52%,rgba(0,0,0,.88) 100%);pointer-events:none}
.hui{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:118px 40px 44px}
@media (max-width:720px){.hui{padding:110px 20px 36px}}
.h1{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(60px,12.5vw,196px);line-height:.86;letter-spacing:-.065em;margin:0}
.mask{display:block;overflow:hidden;padding:.06em 0 .12em;margin:-.06em 0 -.12em}
.wd{display:inline-block;white-space:nowrap;margin-right:.22em}
.ch{display:inline-block;transform:translateY(115%) rotate(4deg);opacity:0}
.ready .ch{animation:chUp 1.2s cubic-bezier(.2,.85,.2,1) both}
.fd{opacity:0;transform:translateY(14px)}
.ready .fd{animation:fdUp 1s cubic-bezier(.2,.7,.2,1) both;animation-delay:.95s}
.sline{width:1px;height:56px;background:rgba(255,255,255,.22);position:relative;overflow:hidden;display:inline-block}
.sline::after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:#fff;animation:sline 2.2s cubic-bezier(.76,0,.24,1) infinite}

.sec{position:relative;z-index:2;background:#000}
.stmt{padding:230px 0 170px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,#000 40%)}
.lab{display:flex;align-items:center;gap:14px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8A8F98}
.lab::before{content:"";width:28px;height:1px;background:#3B7BFF;flex:none}
.h2{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(40px,6vw,96px);line-height:.95;letter-spacing:-.05em;margin:22px 0 0}
.w{color:#F4F4F5}
@supports (animation-timeline: view()){
.w{color:#2B2E35;animation:wlit linear both;animation-timeline:view();animation-range:cover 15% cover 40%}
.w.hl{animation-name:wlitB}
.rl{animation:rl linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
}

.mqw{overflow:hidden;padding:26px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.mq{display:flex;width:max-content;animation:mq 36s linear infinite;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(56px,9vw,150px);line-height:1;letter-spacing:-.05em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}
.mq span{padding-right:.45em;display:inline-flex;align-items:center}
.mq em{font-style:normal;color:#fff;-webkit-text-stroke:0}
.mq b{display:inline-block;width:.32em;height:.32em;border-radius:50%;background:#3B7BFF;margin-right:.45em;flex:none}

.row{appearance:none;background:none;border:0;border-top:1px solid rgba(255,255,255,.12);width:100%;text-align:left;color:inherit;font:inherit;padding:34px 0;display:flex;align-items:center;gap:20px 32px;flex-wrap:wrap;transition:padding .45s cubic-bezier(.2,.7,.2,1)}
.row:hover{padding-left:18px}
.row:focus-visible{outline:1px solid #fff;outline-offset:-1px}
.ix{width:44px;flex:none;font-family:'JetBrains Mono',monospace;font-size:12px;color:#8A8F98}
.nm{flex:1 1 300px;min-width:0;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(34px,5vw,80px);line-height:.95;letter-spacing:-.05em;color:#6F7480;transition:color .35s}
.row:hover .nm,.row[aria-expanded="true"] .nm{color:#fff}
.meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;font-size:13.5px;color:#8A8F98}
.st{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:#7EE2A8}
.st b{width:6px;height:6px;border-radius:50%;background:#34D399}
.st.dev{color:#FBBF77}.st.dev b{background:#F59E0B}
.arr{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.18);display:inline-flex;align-items:center;justify-content:center;transition:transform .45s cubic-bezier(.2,.7,.2,1),background .3s,color .3s;flex:none;color:#fff}
.row:hover .arr{background:#fff;color:#000;transform:rotate(45deg)}
.row[aria-expanded="true"] .arr{transform:rotate(90deg)}
.acc{display:grid;grid-template-rows:0fr;transition:grid-template-rows .65s cubic-bezier(.2,.7,.2,1)}
.acc.on{grid-template-rows:1fr}
.acc > div{overflow:hidden;min-height:0}
.acc-in{padding:0 0 40px 76px;display:flex;flex-wrap:wrap;gap:24px 48px;align-items:flex-start}
@media (max-width:720px){.acc-in{padding-left:0}}
.tag{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);font-size:12.5px;color:#C7CAD1}

.pv{position:fixed;left:0;top:0;width:360px;height:240px;z-index:80;pointer-events:none;opacity:0;transition:opacity .4s;will-change:transform}
.pv.on{opacity:1}
.pv-in{width:100%;height:100%;border-radius:16px;overflow:hidden;background:#0B0C10;border:1px solid rgba(255,255,255,.14);box-shadow:0 40px 90px -30px rgba(0,0,0,.95);display:flex;flex-direction:column}
.pv-top{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.08);font-family:'JetBrains Mono',monospace;font-size:11px;color:#8A8F98;flex:none}
.pv-top i{width:8px;height:8px;border-radius:50%;background:#2A2E37}
.pv-body{flex:1;position:relative;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.pv-blob{position:absolute;right:-70px;top:-70px;width:240px;height:240px;border-radius:50%;filter:blur(44px);opacity:.85}
.pv-word{position:relative;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:40px;letter-spacing:-.05em;line-height:1}
.pv-cat{position:relative;font-family:'JetBrains Mono',monospace;font-size:11px;color:#8A8F98;margin-top:8px}

.svc{display:flex;align-items:flex-start;gap:28px;padding:34px 0;border-top:1px solid rgba(255,255,255,.12);flex-wrap:wrap;transition:padding .45s cubic-bezier(.2,.7,.2,1)}
.svc:hover{padding-left:18px}
.svc .ix{padding-top:16px}
.svc .t{flex:1 1 320px;min-width:0;font-family:'Inter Tight',sans-serif;font-weight:500;font-size:clamp(28px,4vw,60px);line-height:1;letter-spacing:-.045em;color:#A0A4AD;transition:color .35s;margin:0}
.svc:hover .t{color:#fff}
.svc .d{flex:0 1 380px;font-size:15px;line-height:1.55;color:#8A8F98;opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s;margin:0;padding-top:10px}
.svc:hover .d{opacity:1;transform:none}
@media (hover:none){.svc .d{opacity:1;transform:none}}

.pr{padding:30px 0;border-top:1px solid rgba(255,255,255,.12)}
.pr h3{margin:0;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:22px;letter-spacing:-.03em}
.pr p{margin:10px 0 0;font-size:15px;line-height:1.55;color:#8A8F98}

.giant{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(64px,13vw,210px);line-height:.86;letter-spacing:-.065em;margin:0}
.mag{appearance:none;border:0;background:#fff;color:#000;border-radius:999px;min-height:64px;padding:0 34px;font:600 16px 'Inter',sans-serif;display:inline-flex;align-items:center;gap:14px;transition:transform .35s cubic-bezier(.2,.7,.2,1),background .3s}
.mag:hover{background:#DDE6FF}
.mag:focus-visible{outline:2px solid #fff;outline-offset:4px}
.cl{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid rgba(255,255,255,.12);font-size:15px;flex-wrap:wrap}

.wm{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:clamp(90px,21vw,330px);letter-spacing:-.07em;line-height:.78;text-align:center;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.18);user-select:none}

@keyframes chUp{to{transform:none;opacity:1}}
@keyframes fdUp{to{opacity:1;transform:none}}
@keyframes sline{0%{transform:translateY(-100%)}50%{transform:translateY(0)}100%{transform:translateY(100%)}}
@keyframes wlit{to{color:#F4F4F5}}
@keyframes wlitB{to{color:#7FAEFF}}
@keyframes rl{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}
@keyframes mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.pg *{animation:none!important;transition:none!important}.ch,.fd{opacity:1;transform:none}.w{color:#F4F4F5}}

/* --- Adições da versão estática (não fazem parte do <style> original) --- */
/* sc-if noGL: o fallback fica no DOM e o gl.js liga html.nogl quando não há WebGL */
.glf{display:none}
html.nogl .glf{display:block}
/* sc-if showPre: com reduced-motion o original nunca mostra o preloader */
@media (prefers-reduced-motion:reduce){.pre{display:none}}
/* CTA principal fica oculto enquanto não houver contato real; .mag define display e vence o [hidden] do navegador */
.mag[hidden]{display:none}
/* o CTA é <a>: neutraliza sublinhado e o a:hover{color:#fff} para ficar igual ao botão */
a.mag{text-decoration:none}
a.mag:hover{color:#000}
