*,*::before,*::after{box-sizing:border-box}
:root{--roxo:#7700AD;--azul:#4039FF;--grafite:#1E1E1E;--g700:#3A3A3F;--a200:#8C87FF;--l200:#C77DFF;--n900:#14123D;--g500:#6B6B73;--g300:#C9C9CF;--g200:#E4E3EA;--g100:#F2F1F6;--ink2:#BDBDC5;--ok:#0B7A53;--at:#A15C00;--ri:#C2262E;--okd:#3DD68C;--atd:#FFB547;--rid:#FF6B6B;--grad:linear-gradient(120deg,#7700AD 0%,#4039FF 100%);--fd:"Quart","Space Grotesk",system-ui,sans-serif;--fb:"Manrope",system-ui,sans-serif;--fm:"JetBrains Mono",ui-monospace,monospace;--ease:cubic-bezier(.2,.7,.3,1);--r1:6px;--r2:12px;--r3:20px;--maxw:1280px;--gut:clamp(20px,4.5vw,64px);--sp:clamp(64px,9vw,112px);--accent:var(--azul)}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:88px}
body{margin:0;font-family:var(--fb);font-size:16px;line-height:26px;font-feature-settings:"ss01";letter-spacing:-.003em;color:var(--grafite);background:#fff;overflow-x:hidden}
body.lock{overflow:hidden}
::selection{background:var(--azul);color:#fff}
a{color:var(--azul);text-decoration:none;transition:color .2s}a:hover{color:var(--roxo)}
:focus-visible{outline:2px solid var(--a200);outline-offset:3px;border-radius:4px}
.lt :focus-visible,.form :focus-visible{outline-color:var(--azul)}
img,svg{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--fd);margin:0;letter-spacing:-.02em;text-wrap:balance;color:inherit;font-weight:700}
h1{font-size:clamp(36px,4.4vw,48px);line-height:1.084}
h2{font-size:clamp(28px,3.2vw,36px);line-height:1.167}
h3{font-size:clamp(22px,2.4vw,28px);line-height:1.214;font-weight:600}
h4{font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.01em}
p{margin:0 0 16px;text-wrap:pretty}
ul,ol{margin:0;padding:0;list-style:none}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.k{display:block;font-family:var(--fm);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--azul);margin-bottom:16px}
.mono{font-family:var(--fm)}
.lead{font-size:18px;line-height:28px;color:var(--g700);max-width:640px}
/* surfaces */
.dk{background:var(--grafite);color:#D9D9DE}.nt{background:var(--n900);color:#D9D9DE}
.dk h1,.dk h2,.dk h3,.dk h4,.nt h1,.nt h2,.nt h3,.nt h4{color:#fff}
.dk .k,.nt .k{color:var(--a200)}.dk .lead,.nt .lead{color:var(--ink2)}
.dk a:not(.btn),.nt a:not(.btn){color:var(--a200)}.dk a:not(.btn):hover,.nt a:not(.btn):hover{color:#fff}
.mist{background:var(--g100)}
.sec{padding:var(--sp) 0;position:relative}
.sec-h{max-width:720px;margin-bottom:40px}
.sec-h h2{margin-bottom:16px}
.sec-h.row{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 64px;align-items:end}
.sec-h.row .lead{margin:0}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--fd);font-weight:600;font-size:16px;line-height:24px;padding:14px 24px;border-radius:999px;border:0;cursor:pointer;transition:transform .45s var(--ease),background .2s,color .2s,box-shadow .2s;white-space:nowrap;text-decoration:none}
.btn svg{width:16px;height:16px}
.btn-p{background:var(--grad);color:#fff}.btn-p:hover{color:#fff;transform:translateY(-2px);box-shadow:0 12px 30px -12px rgba(64,57,255,.7)}
.btn-o{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35)}.btn-o:hover{color:#fff;box-shadow:inset 0 0 0 1.5px #fff}
.btn-l{background:var(--grafite);color:#fff}.btn-l:hover{color:#fff;background:#000}
.btn-s{padding:10px 18px;font-size:15px}
.tl{display:inline-flex;align-items:center;gap:8px;font-family:var(--fd);font-weight:600;font-size:15px;padding:10px 0;margin:-10px 0}
.tl svg{width:16px;height:16px;transition:transform .45s var(--ease)}.tl:hover svg{transform:translateX(4px)}
/* status */
.st{display:inline-flex;align-items:center;gap:8px;font-family:var(--fm);font-size:11px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;padding:4px 10px;border-radius:999px;white-space:nowrap}
.st::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.st.ok{background:#E2F2EA;color:var(--ok)}.st.at{background:#FAEEDC;color:var(--at)}.st.ri{background:#FAE4E5;color:var(--ri)}
.dk .st.ok,.nt .st.ok{background:rgba(61,214,140,.12);color:var(--okd)}.dk .st.at,.nt .st.at{background:rgba(255,181,71,.12);color:var(--atd)}.dk .st.ri,.nt .st.ri{background:rgba(255,107,107,.12);color:var(--rid)}
.tag{display:inline-block;font-family:var(--fm);font-size:11px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--g100);color:var(--g700)}
.tag.ex{background:var(--grafite);color:#fff}
/* header */
.hdr{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,box-shadow .3s}
.hdr .wrap{display:flex;align-items:center;gap:24px;height:80px;transition:height .3s}
.hdr.solid{background:rgba(30,30,30,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.hdr.solid .wrap{height:64px}
.logo{flex-shrink:0;padding:11px 0}.logo img{height:22px;width:auto}
.nav{display:flex;align-items:center;gap:20px;margin-left:auto}
.nav a{font-size:15px;line-height:24px;color:var(--ink2);white-space:nowrap;position:relative;padding:4px 0}
.nav a:hover,.nav a.on{color:#fff}
.nav a.on::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;border-radius:2px;background:var(--a200)}
.hcta{margin-left:8px}
.burger{display:none;margin-left:auto;width:44px;height:44px;border-radius:var(--r2);border:0;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;place-items:center}
.burger svg{width:22px;height:22px}
.mnav{position:fixed;inset:0;z-index:60;background:var(--grafite);padding:88px var(--gut) 120px;display:flex;flex-direction:column;overflow-y:auto;visibility:hidden;transform:translateX(100%);transition:transform .45s var(--ease),visibility .45s}
.mnav.open{transform:none;visibility:visible}
.mnav a{color:#fff;font-family:var(--fd);font-size:22px;line-height:28px;font-weight:600;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.mnav a.s{font-family:var(--fb);font-size:15px;font-weight:400;color:var(--ink2);border:0;padding:8px 0}
.mnav .x{position:absolute;top:18px;right:var(--gut);width:44px;height:44px;border-radius:var(--r2);border:0;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;display:grid;place-items:center}
.mcta{display:none;position:fixed;left:16px;right:16px;bottom:16px;z-index:40}
.mcta .btn{width:100%;box-shadow:0 12px 30px -10px rgba(0,0,0,.6)}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--grafite);color:#D9D9DE;padding:160px 0 96px}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.hero .wrap{position:relative;z-index:1}
.hero h1{color:#fff;max-width:640px;margin-bottom:24px}
.hero .k{color:var(--a200)}.hero .lead{color:var(--ink2);margin-bottom:40px}
.acts{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.pchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:64px}
.pchips a{display:inline-flex;align-items:center;gap:8px;padding:8px 16px 8px 8px;border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:14px;line-height:20px;transition:background .2s}
.pchips a:hover{background:rgba(255,255,255,.12);color:#fff}
.pchips i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--g700)}
.pchips svg{width:16px;height:16px;color:var(--a200)}
.pchips b{font-family:var(--fm);font-size:11px;font-weight:500;color:var(--a200);letter-spacing:.08em}
.crumb{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--fm);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#8a8a93;margin-bottom:24px}
.crumb a{color:var(--ink2);padding:10px 0;margin:-10px 0}.crumb a:hover{color:#fff}
.crumb [aria-current]{color:#fff}
.seal{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--accent);position:relative;margin-bottom:32px;flex-shrink:0}
.seal::before{content:"";position:absolute;inset:-8px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.seal::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--a200);top:-12px;left:calc(50% - 4px);box-shadow:0 0 10px var(--azul);transform-origin:4px 48px;animation:nc-spin 14s linear infinite}
.seal svg{width:32px;height:32px;color:#fff}
.seal.sm{width:56px;height:56px;margin-bottom:24px}.seal.sm::before{inset:-6px}.seal.sm::after{width:6px;height:6px;top:-9px;left:calc(50% - 3px);transform-origin:3px 37px}.seal.sm svg{width:24px;height:24px}
/* signals */
.sig{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sig>div{border-radius:var(--r3);background:var(--g100);padding:32px 28px;display:flex;flex-direction:column;gap:16px}
.mist .sig>div{background:#fff}
.sig h4{margin:0}
.sig p{margin:0;color:var(--g700);font-size:15px;line-height:24px}
/* pillars */
.pil{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pc{border-radius:var(--r3);background:var(--g700);padding:32px 24px 28px;display:flex;flex-direction:column;color:#D9D9DE}
.pc .n{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--a200);margin-bottom:8px}
.pc h4{color:#fff;margin-bottom:12px}
.pc .q{font-family:var(--fd);font-size:17px;line-height:24px;font-weight:500;color:var(--l200);margin-bottom:20px}
.pc ul{font-size:14px;line-height:22px;margin-bottom:20px}
.pc li{padding:6px 0 6px 16px;position:relative;border-top:1px solid rgba(255,255,255,.08)}
.pc li::before{content:"";position:absolute;left:0;top:14px;width:6px;height:6px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--a200)}
.pc .dl{font-size:14px;line-height:22px;color:var(--ink2);margin-bottom:24px}
.pc .dl b{display:block;font-family:var(--fm);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#9a9aa3;margin-bottom:4px}
.pc .tl{margin-top:auto}
/* compare */
.cmp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cc{border-radius:var(--r3);background:#fff;padding:32px 28px}
.cc.me{background:var(--grafite);color:#D9D9DE}
.cc .n{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g500);margin-bottom:8px;display:block}
.cc.me .n{color:var(--a200)}
.cc h4{margin-bottom:20px}.cc.me h4{color:#fff}
.cc dl{margin:0}
.cc dt{font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--g500);padding-top:14px;border-top:1px solid var(--g200)}
.cc.me dt{color:#9a9aa3;border-color:rgba(255,255,255,.1)}
.cc dd{margin:4px 0 14px;font-size:15px;line-height:24px}
.cc.me dd{color:#fff}
/* method */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative}
.steps::before{content:"";position:absolute;left:24px;right:24px;top:24px;height:1px;background:var(--g300)}
.step{position:relative}
.step .d{width:48px;height:48px;border-radius:50%;background:#fff;display:grid;place-items:center;font-family:var(--fm);font-size:13px;color:var(--azul);box-shadow:inset 0 0 0 1px var(--g300);margin-bottom:24px;position:relative}
.step:last-child .d{background:var(--grafite);color:#fff;box-shadow:none}
.step h4{margin-bottom:8px}
.step p{font-size:15px;line-height:24px;color:var(--g700);margin:0 0 16px}
.step .m{font-family:var(--fm);font-size:12px;line-height:20px;color:var(--g700);border-top:1px solid var(--g200);padding-top:12px}
.step .m b{display:block;font-weight:500;color:var(--azul);letter-spacing:.06em}
/* models */
.mod{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mc{border-radius:var(--r3);background:rgba(255,255,255,.06);padding:32px 24px;display:flex;flex-direction:column;gap:12px}
.mc .n{font-family:var(--fm);font-size:12px;color:var(--a200);letter-spacing:.06em}
.mc h4{color:#fff}
.mc p{font-size:15px;line-height:24px;color:var(--ink2);margin:0}
.mc ul{font-size:14px;line-height:22px;color:#D9D9DE;margin-top:4px}
.mc li{padding:6px 0;border-top:1px solid rgba(255,255,255,.08)}
.mc .for{margin-top:auto;font-family:var(--fm);font-size:11px;line-height:18px;letter-spacing:.06em;color:#9a9aa3;padding-top:12px}
/* cases */
.cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.case{border-radius:var(--r3);background:#fff;padding:28px;display:flex;flex-direction:column}
.case .tg{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.case .met{font-family:var(--fm);font-weight:500;font-size:40px;line-height:44px;letter-spacing:-.03em;color:var(--azul);margin-bottom:4px}
.case .ml{font-size:14px;line-height:22px;color:var(--g700);margin-bottom:20px}
.case dl{margin:0 0 20px}
.case dt{font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--g500);padding-top:12px;border-top:1px solid var(--g200)}
.case dd{margin:4px 0 12px;font-size:15px;line-height:24px}
.case .ill{margin-top:auto;font-family:var(--fm);font-size:11px;line-height:16px;letter-spacing:.06em;color:var(--g500)}
/* crew */
.crew{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.cm .fr{position:relative;aspect-ratio:1;display:grid;place-items:center;margin-bottom:20px}
.cm .fr::before{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 1px var(--g300)}
.cm .fr::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 0,var(--azul) 0 4px,transparent 5px);animation:nc-spin 18s linear infinite}
.cm:nth-child(even) .fr::after{animation-direction:reverse;animation-duration:14s}
.cm image-slot{position:absolute;top:11%;left:11%;width:78%;height:78%;border-radius:50%;overflow:hidden;background:var(--g100)}
.cm h4{font-size:18px;line-height:24px;margin-bottom:4px}
.cm p{font-size:14px;line-height:22px;color:var(--g700);margin:0}
.cm .sp{font-family:var(--fm);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--azul);margin-top:8px;display:block}
/* diary */
.prof{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:72px;align-items:start}
.pf-ph{position:sticky;top:112px}
.prof .fr{position:relative;aspect-ratio:1;max-width:420px}
.prof .fr::before{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 1px var(--g300)}
.prof .fr::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 0,var(--azul) 0 5px,transparent 6px);animation:nc-spin 18s linear infinite}
.prof image-slot{position:absolute;top:9%;left:9%;width:82%;height:82%;border-radius:50%;overflow:hidden;background:var(--g100)}
.prof .sp{font-family:var(--fm);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--azul)}
.prof h3{font-size:clamp(28px,3.2vw,36px);line-height:1.15}
.pf-ex{margin:24px 0}
.pf-ex li{padding:14px 0;border-top:1px solid var(--g200);font-size:15px;line-height:24px;color:var(--g700)}
.pf-ex li:last-child{border-bottom:1px solid var(--g200)}
.pf-ex b{display:block;font-family:var(--fm);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--grafite);margin-bottom:2px}
.pf-st{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}
.pf-st b{display:block;font-family:var(--fm);font-weight:500;font-size:28px;line-height:36px;color:var(--azul)}
.pf-st span{font-size:13px;line-height:20px;color:var(--g700)}
@media (max-width:1023px){.prof{grid-template-columns:1fr;gap:40px}.prof .fr{max-width:320px}.pf-ph{position:static}}
.pf-tm{margin-bottom:24px}
.pf-tm .lbl{display:block;font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--g500);margin-bottom:10px}
.pf-tm div{display:flex;flex-wrap:wrap;gap:8px}
.pf-tm div span{font-size:14px;line-height:20px;padding:8px 14px;border-radius:999px;background:var(--g100);color:var(--grafite)}
.mist .pf-tm div span{background:#fff}
/* diary */
.ameta{display:flex;flex-wrap:wrap;gap:8px 24px;font-family:var(--fm);font-size:12px;letter-spacing:.08em;color:var(--ink2);margin-top:8px}
.prose{max-width:720px;margin:0 auto}
.prose .lede{font-size:20px;line-height:32px;color:var(--grafite);font-weight:500;margin-bottom:32px}
.prose h2{font-size:28px;line-height:34px;margin:48px 0 16px}
.prose h3{font-size:20px;line-height:28px;margin:32px 0 10px}
.prose p,.prose li{font-size:17px;line-height:29px;color:var(--g700)}
.prose ul,.prose ol{margin:0 0 20px;padding-left:22px}
.prose ul{list-style:disc}.prose ol{list-style:decimal}
.prose li{margin-bottom:8px}.prose li::marker{color:var(--azul)}
.prose strong{color:var(--grafite)}
.prose blockquote{margin:40px 0;padding:24px 28px;border-radius:var(--r3);background:var(--g100);font-family:var(--fd);font-size:22px;line-height:32px;font-weight:600;letter-spacing:-.01em;color:var(--grafite)}
.prose .tw{margin:24px 0 28px}.prose table{min-width:520px}
.acta{margin-top:56px;padding:32px;border-radius:var(--r3);background:var(--grafite);color:#D9D9DE}
.acta .k{color:var(--a200)}.acta h3{color:#fff;margin:0 0 8px;font-size:24px}
.acta p{color:var(--ink2);font-size:16px}
.acta .tl{color:var(--a200)}.acta .tl:hover{color:#fff}
@media (max-width:1023px){.diary[style],.sig[style],.cmp[style]{grid-template-columns:1fr!important}}
@media (max-width:767px){.bar{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.bar .t{grid-column:1/-1;grid-row:2}.mock,.sheet{padding:16px}.pf-st b{font-size:22px;line-height:30px}.cta h2{font-size:32px}.prose .lede{font-size:18px;line-height:29px}.prose h2{font-size:24px;line-height:30px}}
.diary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.art{border-radius:var(--r3);background:var(--g700);padding:28px;display:flex;flex-direction:column;gap:12px;min-height:260px;transition:transform .45s var(--ease),background .2s}
.art:hover{transform:translateY(-4px);background:#45454B}
.art .n{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--a200)}
.art h4{color:#fff}
.art .mt{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-family:var(--fm);font-size:12px;color:#9a9aa3}
.art .mt span:last-child{color:var(--a200)}
/* faq */
.faq{max-width:880px}
.faq details{border-top:1px solid var(--g300)}
.faq details:last-child{border-bottom:1px solid var(--g300)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;font-family:var(--fd);font-weight:600;font-size:18px;line-height:26px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--fm);font-size:22px;font-weight:400;color:var(--azul);transition:transform .45s var(--ease);flex-shrink:0}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 24px;margin:0;color:var(--g700);max-width:720px}
/* cta + form */
.cta{position:relative;overflow:hidden;isolation:isolate}
.cta-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:64px;align-items:center}
.cta h2{font-size:clamp(32px,4vw,48px);line-height:1.1;margin-bottom:16px}
.cta .pts{margin-top:32px;display:flex;flex-direction:column;gap:12px}
.cta .pts li{display:grid;grid-template-columns:24px 1fr;gap:12px;font-size:15px;line-height:24px;color:#D9D9DE}
.cta .pts svg{width:20px;height:20px;color:var(--a200);margin-top:2px}
.cta.c{text-align:center}.cta.c .lead{margin:0 auto 40px}.cta.c .acts{justify-content:center}
.form{background:#fff;border-radius:var(--r3);padding:clamp(24px,3.5vw,40px);color:var(--grafite)}
.dk .form a:not(.btn),.hero .form a:not(.btn){color:var(--azul)}
.form h3{font-size:22px;line-height:28px;margin-bottom:4px}
.form .sub{font-size:14px;color:var(--g500);margin:0}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.fld{display:flex;flex-direction:column;gap:8px;min-width:0}
.fld.f{grid-column:1/-1}
.fld>label,.fld>.lbl{font-family:var(--fm);font-size:11px;line-height:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--g700);font-weight:500}
.fld input,.fld select,.fld textarea{font-family:var(--fb);font-size:16px;line-height:24px;padding:12px 16px;border-radius:var(--r2);border:0;background:var(--g100);color:var(--grafite);box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .2s,background .2s;width:100%}
.fld textarea{min-height:96px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;background:#fff;box-shadow:inset 0 0 0 2px var(--azul)}
.fld.err input,.fld.err select{box-shadow:inset 0 0 0 2px var(--ri);background:#fff}
.em{font-size:13px;line-height:18px;color:var(--ri);display:none}
.err>.em,.err .em{display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{font-size:14px;line-height:20px;color:var(--grafite);background:var(--g100);border-radius:999px;padding:8px 14px;cursor:pointer;transition:background .2s,color .2s;position:relative}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips label:has(input:checked){background:var(--grafite);color:#fff}
.chips label:has(input:focus-visible){box-shadow:0 0 0 2px var(--azul)}
.cons{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;font-size:13px;line-height:20px;color:var(--g700);margin-top:20px;cursor:pointer}
.cons input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--azul)}
.cons.err{color:var(--ri)}
.form .btn{margin-top:24px;width:100%}
.done{text-align:center;padding:24px 0 8px}
.done .seal{margin:8px auto 24px;background:var(--grafite)}
.done h3{margin-bottom:8px}
.urg{border-radius:var(--r3);background:rgba(255,107,107,.1);padding:20px 24px;margin-top:24px}
.urg b{display:flex;align-items:center;gap:8px;font-family:var(--fm);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--rid);margin-bottom:4px}
.urg b::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--rid)}
.urg p{margin:0;font-size:15px;line-height:24px}
.ol3{counter-reset:s;display:flex;flex-direction:column;gap:16px;margin-top:32px}
.ol3 li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;gap:16px;align-items:start}
.ol3 li::before{content:counter(s,decimal-leading-zero);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--fm);font-size:12px;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)}
.ol3 h4{font-size:18px;line-height:24px;margin-bottom:2px}
.ol3 p{font-size:15px;line-height:24px;color:var(--ink2);margin:0}
/* pillar page */
.offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.of{border-radius:var(--r3);background:var(--g700);padding:28px 32px;display:flex;flex-direction:column;gap:8px}
.of .pz{font-family:var(--fm);font-size:12px;color:var(--a200);letter-spacing:.06em}
.of h4{color:#fff}
.of p{font-size:15px;line-height:24px;color:var(--ink2);margin:0}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.split.top{align-items:start}
.dlist li{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--g300);font-size:16px;line-height:26px}
.dlist li:last-child{border:0}
.dlist svg{width:20px;height:20px;color:var(--azul);margin-top:3px}
.mock{border-radius:var(--r3);background:#fff;padding:24px}
.mist .mock{background:#fff}
.sheet{background:#fff;border-radius:var(--r2);padding:24px;box-shadow:0 1px 0 var(--g200),0 24px 50px -30px rgba(0,0,0,.35)}
.sheet .h{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}
.sheet .h img{height:13px;width:auto}
.sheet .h span{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g500)}
.sheet h4{font-size:19px;line-height:26px;margin-bottom:16px}
.sheet>.st{white-space:normal;max-width:100%}
.bar{display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:center;font-size:13px;line-height:18px;margin-bottom:12px}
.bar .t{height:6px;border-radius:4px;background:var(--g100);overflow:hidden}.bar .t i{display:block;height:100%;border-radius:4px}
.dec{margin-top:16px;background:var(--g100);border-radius:var(--r1);padding:12px 14px;font-size:13px;line-height:20px}
.dec span{display:block;font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--azul);margin-bottom:2px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kp{border-radius:var(--r3);background:var(--g100);padding:28px 24px;display:flex;flex-direction:column;gap:8px}
.kp .n{font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--g500)}
.kp h4{font-size:19px;line-height:26px}
.kp .v{font-family:var(--fm);font-size:15px;line-height:22px;margin-top:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kp .v s{text-decoration:none;color:var(--g500)}
.kp .v b{font-weight:500;color:var(--azul)}
.kp .f{font-family:var(--fm);font-size:11px;color:var(--g500);letter-spacing:.06em;margin-top:auto;padding-top:12px;border-top:1px solid var(--g200)}
.note{font-size:13px;line-height:20px;color:var(--g500);margin-top:16px}
.mani{font-family:var(--fd);font-weight:500;font-size:clamp(20px,2.4vw,28px);line-height:1.4;letter-spacing:-.015em;color:#fff;max-width:880px}
.mani em{font-style:normal;color:var(--l200)}.mani p{margin-bottom:20px}
.vals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.vals>div{border-radius:var(--r3);background:var(--g100);padding:24px}
.vals .n{font-family:var(--fm);font-size:11px;letter-spacing:.14em;color:var(--azul);display:block;margin-bottom:12px}
.vals h4{font-size:18px;line-height:24px;margin-bottom:8px}
.vals p{font-size:14px;line-height:22px;color:var(--g700);margin:0}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:15px;line-height:24px;min-width:640px}
th{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g500);font-weight:500;text-align:left;padding:0 16px 12px 0;border-bottom:1px solid var(--grafite)}
td{padding:16px 16px 16px 0;border-bottom:1px solid var(--g200);vertical-align:top}
td:first-child{font-weight:600;font-family:var(--fd)}
@media (max-width:1023px){.vals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.vals{grid-template-columns:1fr}}
/* whatsapp */
.wa{position:fixed;right:24px;bottom:24px;z-index:45;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff;box-shadow:0 12px 30px -10px rgba(64,57,255,.75),0 0 0 6px rgba(140,135,255,.12);transition:transform .45s var(--ease),box-shadow .3s}
.wa::before{content:"";position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle at 50% 0,var(--a200) 0 3px,transparent 4px);animation:nc-spin 14s linear infinite;pointer-events:none}
.wa:hover{color:#fff;transform:translateY(-3px);box-shadow:0 18px 38px -12px rgba(119,0,173,.8),0 0 0 8px rgba(140,135,255,.16)}
.wa svg{width:28px;height:28px}
.wa:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media (max-width:1180px){.wa{bottom:88px;right:16px;width:56px;height:56px}.wa svg{width:26px;height:26px}}
/* cookies */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ck{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;display:flex;justify-content:center;opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.ck.on{opacity:1;transform:none}
.ck-in{width:100%;max-width:1100px;background:#fff;color:var(--grafite);border-radius:var(--r3);padding:20px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 32px;align-items:center;box-shadow:0 24px 60px -20px rgba(0,0,0,.55),0 0 0 1px var(--g200)}
.ck-in b{font-family:var(--fd);font-size:17px;line-height:24px;display:block;margin-bottom:4px}
.ck-in p{margin:0;font-size:14px;line-height:22px;color:var(--g700)}
.ck-b{display:flex;flex-wrap:wrap;gap:8px}
.ck-g,.ck-g2{background:var(--g100);color:var(--grafite)}.ck-g:hover,.ck-g2:hover{background:var(--g200);color:var(--grafite)}
.ckm{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:16px}
.ckm[hidden],.ck[hidden]{display:none}
.ckm-bg{position:absolute;inset:0;background:rgba(10,10,14,.6);backdrop-filter:blur(4px)}
.ckm-p{position:relative;width:100%;max-width:620px;max-height:calc(100vh - 32px);overflow:auto;background:#fff;color:var(--grafite);border-radius:var(--r3);padding:28px}
.ckm-h{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px}
.ckm-h h2{font-size:24px;line-height:30px}
.ckm-x{width:40px;height:40px;border-radius:50%;border:0;background:var(--g100);font-size:22px;cursor:pointer;color:var(--grafite)}
.ckm-s{font-size:14px;line-height:22px;color:var(--g700)}
.ckm-c{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:16px 0;border-top:1px solid var(--g200)}
.ckm-c b{font-family:var(--fd);font-size:16px;line-height:22px}
.ckm-c p{margin:4px 0 0;font-size:13.5px;line-height:21px;color:var(--g700)}
.sw{position:relative;display:inline-block;width:46px;height:26px;cursor:pointer}
.sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.sw span{position:absolute;inset:0;border-radius:99px;background:var(--g300);transition:background .2s}
.sw span::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .25s var(--ease);box-shadow:0 1px 3px rgba(0,0,0,.2)}
.sw input:checked+span{background:var(--azul)}.sw input:checked+span::after{transform:translateX(20px)}
.sw input:disabled+span{background:var(--g500);cursor:not-allowed}
.sw input:focus-visible+span{outline:2px solid var(--azul);outline-offset:2px}
.ckm-f{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:12px;padding-top:16px;border-top:1px solid var(--g200)}
@media (max-width:767px){.ck-in{grid-template-columns:1fr}.ck-b .btn{flex:1 1 auto}.ckm-f .btn{flex:1 1 100%}}
/* footer */
.ftr{background:#161616;color:#9a9aa3;padding:64px 0 32px;font-size:15px;line-height:24px;position:relative;overflow:hidden;isolation:isolate}
.ftr .g{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}
.ftr .b img{height:22px;width:auto;margin-bottom:16px}
.ftr .b p{max-width:280px;font-size:14px}
.ftr h2{font-family:var(--fm);font-size:11px;line-height:16px;letter-spacing:.18em;text-transform:uppercase;color:#8a8a93;font-weight:500;margin:0 0 16px}
.ftr a{display:block;color:var(--ink2);padding:4px 0}.ftr a:hover{color:#fff}
.ftr .bt{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:24px;font-size:13px}
.ftr .bt .end{color:var(--g500);color:#8a8a93}
.ftr .bt nav{display:flex;flex-wrap:wrap;gap:24px}.ftr .bt a{display:inline;padding:0;color:#9a9aa3}
/* ambient motion on dark */
.dk,.nt{overflow:hidden;isolation:isolate}
.amb::before{content:"";position:absolute;width:880px;height:880px;border-radius:50%;background:radial-gradient(circle,rgba(64,57,255,.26),rgba(119,0,173,.15) 40%,transparent 68%);right:-320px;top:-320px;z-index:-1;pointer-events:none;animation:nc-drift 16s ease-in-out infinite alternate}
.amb::after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-180px;top:-180px;z-index:-1;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);background:radial-gradient(circle at 50% 0,rgba(140,135,255,.95) 0 3px,rgba(140,135,255,.22) 4px 9px,transparent 10px);animation:nc-spin 20s linear infinite}
.amb.l::before{right:auto;left:-320px;animation-direction:alternate-reverse;animation-duration:20s}
.amb.l::after{right:auto;left:-180px;animation-direction:reverse;animation-duration:18s}
.amb.b::before{top:auto;bottom:-420px}.amb.b::after{top:auto;bottom:-300px}
@keyframes nc-drift{0%{transform:translate(0,0) scale(.92);opacity:.6}100%{transform:translate(-120px,96px) scale(1.1);opacity:1}}
@keyframes nc-spin{to{transform:rotate(360deg)}}
/* reveal: only hides with JS + motion allowed */
@media (prefers-reduced-motion:no-preference){.js .rv{opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease),transform .45s var(--ease)}.js .rv.in{opacity:1;transform:none}.js .rv.d1{transition-delay:.06s}.js .rv.d2{transition-delay:.12s}.js .rv.d3{transition-delay:.18s}}
/* responsive: 1280 / 768 / 375 */
@media (max-width:1279px){.pil,.mod,.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.crew{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ftr .g{grid-template-columns:repeat(4,1fr)}.ftr .b{grid-column:1/-1}}
@media (max-width:1240px){.nav a{font-size:14px}.nav{gap:16px}.hdr .wrap{gap:20px}}
@media (max-width:1180px){.nav,.hcta{display:none}.burger{display:grid}.mcta{display:block}.ftr{padding-bottom:112px}}
@media (max-width:1023px){.sig,.cmp,.cases,.diary{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}.steps::before{display:none}.split,.cta-g,.sec-h.row{grid-template-columns:minmax(0,1fr);gap:40px}.crew{grid-template-columns:repeat(2,minmax(0,1fr))}.offers{grid-template-columns:1fr}}
@media (max-width:767px){.hero{padding:128px 0 72px}.pil,.mod,.kpis,.steps,.fg{grid-template-columns:1fr}.pchips{margin-top:40px}.ftr .g{grid-template-columns:1fr 1fr;gap:32px}.lead{font-size:17px;line-height:27px}.art{min-height:0}}
@media (max-width:420px){.crew{grid-template-columns:1fr 1fr;gap:12px}.acts .btn{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* placeholder da foto (trocar por <img> quando houver foto real) */
.mono-ph{width:100%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:linear-gradient(120deg,#7700AD,#4039FF);color:#fff;font-family:var(--fd);font-weight:700;font-size:clamp(48px,8vw,96px);letter-spacing:-.02em}
.pf-img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;display:block}
/* AA sobre Grafite 700 (#3A3A3F): Azul 200/Lilás 200 puros ficam em 3,8/4,2:1 */
.pc .n,.pc .tl{color:#A9A6FF}.pc .q{color:#D4A1FF}

[data-page=agendar] .mcta{display:none}
/* FAQ: resposta alinhada à largura da pergunta (descontando o ícone) */
.faq details p{max-width:none;padding-right:46px}
