/* ==========================================================
   U-AI • Inteligência Artificial — uai.pro
   Design system: grafite profundo + vermelho U-AI + dourado
   ========================================================== */
:root{
  --bg:#0b0d10;
  --bg2:#12151a;
  --panel:#171b21;
  --panel2:#1d222a;
  --line:rgba(255,255,255,.08);
  --txt:#e8eaee;
  --muted:#9aa3ae;
  --red:#e0312e;
  --red2:#ff5a45;
  --gold:#e8b34b;
  --glow:rgba(224,49,46,.35);
  --radius:18px;
  font-size:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--txt);
  font-family:'Sora','Segoe UI',system-ui,sans-serif;
  overflow-x:hidden;
  line-height:1.6;
}
::selection{background:var(--red);color:#fff}

/* ---------- canvas bg ---------- */
#net{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.9}
.vignette{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 20%,transparent 30%,rgba(6,7,9,.75) 100%)}

/* ---------- layout ---------- */
.wrap{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 24px}
section{padding:110px 0}
h1,h2,h3{font-weight:800;letter-spacing:-.02em;line-height:1.15}
h2{font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:14px}
.sub{color:var(--muted);max-width:640px;font-size:1.05rem}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;color:var(--red2);margin-bottom:16px}
.kicker::before{content:"";width:26px;height:2px;background:linear-gradient(90deg,var(--red),var(--gold))}

/* ---------- nav ---------- */
nav{position:fixed;top:0;left:0;right:0;z-index:50;
  backdrop-filter:blur(14px);background:rgba(11,13,16,.72);
  border-bottom:1px solid var(--line)}
.nav-in{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--txt);font-weight:800}
.brand img{height:34px;width:auto;border-radius:8px;box-shadow:0 0 18px var(--glow)}
.brand span em{font-style:normal;color:var(--red2)}
.nav-links{display:flex;gap:22px;margin-left:auto;align-items:center}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.92rem;font-weight:600;transition:color .2s}
.nav-links a:hover{color:#fff}
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 26px;border-radius:999px;
  font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;border:0;
  transition:transform .2s,box-shadow .2s;white-space:nowrap}
.btn-red{background:linear-gradient(135deg,var(--red),#a11311);color:#fff;
  box-shadow:0 8px 30px var(--glow)}
.btn-red:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--glow)}
.btn-ghost{background:transparent;color:var(--txt);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--red2);color:var(--red2)}
@media(max-width:820px){.nav-links a:not(.btn){display:none}}

/* ---------- hero ---------- */
.hero{min-height:100vh;display:flex;align-items:center;padding-top:120px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr}}
.hero h1{font-size:clamp(2.4rem,6vw,4.2rem);margin:18px 0 22px}
.grad{background:linear-gradient(92deg,#fff 10%,var(--red2) 55%,var(--gold) 95%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.badge{padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);
  font-size:.82rem;color:var(--muted);backdrop-filter:blur(6px)}
.badge b{color:var(--gold)}

/* logo 3D stage */
.stage{perspective:1100px;display:grid;place-items:center}
.logo3d{transform-style:preserve-3d;transition:transform .18s ease-out;will-change:transform;
  border-radius:26px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 40px 90px rgba(0,0,0,.65),0 0 70px var(--glow)}
.logo3d img{display:block;width:min(460px,80vw);height:auto}
.logo3d .shine{position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.14) 48%,transparent 62%);
  transform:translateX(-120%);animation:shine 5.5s infinite}
@keyframes shine{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;z-index:-1;animation:float 9s ease-in-out infinite}
.orb.r{width:340px;height:340px;background:var(--red);top:-60px;right:-40px}
.orb.g{width:260px;height:260px;background:var(--gold);bottom:-40px;left:-30px;animation-delay:-4s;opacity:.25}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-28px)}}

/* ---------- cards 3D ---------- */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:48px}
@media(max-width:960px){.grid3{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.grid3,.grid2{grid-template-columns:1fr}}
.card{position:relative;background:linear-gradient(160deg,var(--panel),var(--panel2));
  border:1px solid var(--line);border-radius:var(--radius);padding:30px;
  transform-style:preserve-3d;transition:transform .18s ease-out,border-color .3s,box-shadow .3s;
  will-change:transform}
.card:hover{border-color:rgba(224,49,46,.5);box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 40px rgba(224,49,46,.12)}
.card .ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;
  background:linear-gradient(135deg,rgba(224,49,46,.18),rgba(232,179,75,.12));
  border:1px solid rgba(224,49,46,.3);margin-bottom:18px;transform:translateZ(30px)}
.card h3{font-size:1.15rem;margin-bottom:10px;transform:translateZ(24px)}
.card p{color:var(--muted);font-size:.93rem;transform:translateZ(16px)}
.card .tag{position:absolute;top:20px;right:20px;font-size:.68rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold);border:1px solid rgba(232,179,75,.35);
  padding:4px 10px;border-radius:999px}

/* ---------- pricing ---------- */
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:52px;align-items:stretch}
@media(max-width:1100px){.plans{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.plans{grid-template-columns:1fr}}
.plan{display:flex;flex-direction:column;background:linear-gradient(170deg,var(--panel),var(--bg2));
  border:1px solid var(--line);border-radius:22px;padding:34px 28px;position:relative;
  transition:transform .25s,border-color .25s,box-shadow .25s}
.plan:hover{transform:translateY(-8px)}
.plan.fav{border-color:var(--red);box-shadow:0 0 50px rgba(224,49,46,.22);
  background:linear-gradient(170deg,#1d1416,var(--bg2))}
.plan .flag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:linear-gradient(90deg,var(--red),var(--red2));color:#fff;font-size:.72rem;
  font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 16px;border-radius:999px}
.plan h3{font-size:1.05rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.price{margin:16px 0 4px;font-size:2.1rem;font-weight:800}
.price small{font-size:.85rem;color:var(--muted);font-weight:600}
.price .from{display:block;font-size:.72rem;color:var(--muted);font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.plan ul{list-style:none;margin:22px 0 28px;display:grid;gap:11px;flex:1}
.plan li{font-size:.88rem;color:#c6ccd4;padding-left:26px;position:relative}
.plan li::before{content:"✔";position:absolute;left:0;color:var(--red2);font-size:.8rem}
.plan li.gold::before{content:"★";color:var(--gold)}
.plan .btn{justify-content:center}

/* ---------- founder ---------- */
.founder{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;
  background:linear-gradient(160deg,var(--panel),var(--bg2));border:1px solid var(--line);
  border-radius:26px;padding:44px;margin-top:48px}
@media(max-width:760px){.founder{grid-template-columns:1fr}}
.avatar{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;font-size:3rem;
  font-weight:800;color:#fff;background:conic-gradient(from 200deg,var(--red),#7a100e,var(--gold),var(--red));
  box-shadow:0 0 50px var(--glow);animation:spin 14s linear infinite}
.avatar span{width:136px;height:136px;border-radius:50%;background:var(--panel);display:grid;place-items:center;animation:spinrev 14s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes spinrev{to{transform:rotate(-360deg)}}
.founder h3{font-size:1.5rem;margin-bottom:6px}
.founder .role{color:var(--red2);font-weight:700;font-size:.9rem;margin-bottom:14px}
.founder p{color:var(--muted);font-size:.95rem}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chip{font-size:.75rem;font-weight:600;padding:6px 13px;border-radius:999px;
  background:rgba(224,49,46,.1);border:1px solid rgba(224,49,46,.28);color:#f0b9b3}

/* ---------- stats / timeline ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}}
.stat{text-align:center;padding:28px 12px;border:1px solid var(--line);border-radius:var(--radius);
  background:rgba(255,255,255,.02)}
.stat b{display:block;font-size:2rem;background:linear-gradient(90deg,var(--red2),var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}

.steps{display:grid;gap:0;margin-top:48px;position:relative}
.step{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:26px 0;border-bottom:1px dashed var(--line)}
.step:last-child{border-bottom:0}
.step .n{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:800;
  background:linear-gradient(135deg,var(--red),#7a100e);color:#fff;box-shadow:0 0 24px var(--glow)}
.step h3{margin-bottom:6px}
.step p{color:var(--muted);font-size:.93rem}

/* ---------- cta / footer ---------- */
.cta{background:linear-gradient(135deg,rgba(224,49,46,.14),rgba(232,179,75,.07));
  border:1px solid rgba(224,49,46,.35);border-radius:28px;padding:64px 40px;text-align:center;
  position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;inset:-2px;
  background:radial-gradient(600px 200px at 50% 0,rgba(224,49,46,.25),transparent);pointer-events:none}
.cta h2{font-size:clamp(1.8rem,4vw,2.6rem)}
.cta .btn{margin-top:28px}
footer{border-top:1px solid var(--line);padding:56px 0 40px;position:relative;z-index:2;
  background:rgba(9,10,13,.85)}
.foot{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
@media(max-width:820px){.foot{grid-template-columns:1fr 1fr}}
footer h4{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:#cfd5db;margin-bottom:14px}
footer a{display:block;color:var(--muted);text-decoration:none;font-size:.88rem;margin-bottom:9px;transition:color .2s}
footer a:hover{color:var(--red2)}
footer .fine{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;color:#6b7480;font-size:.8rem}

/* ---------- legal pages ---------- */
.legal{max-width:860px;margin:0 auto;padding:150px 24px 90px;position:relative;z-index:2}
.legal h1{font-size:2.2rem;margin-bottom:8px}
.legal .upd{color:var(--muted);font-size:.85rem;margin-bottom:36px}
.legal h2{font-size:1.25rem;margin:36px 0 12px;color:var(--red2)}
.legal p,.legal li{color:#c2c8cf;font-size:.95rem;margin-bottom:12px}
.legal ul{padding-left:22px}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(34px);transition:opacity .7s,transform .7s}
.rv.on{opacity:1;transform:none}

/* ---------- loja / produtos ---------- */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.fbtn{padding:9px 20px;border-radius:999px;border:1px solid var(--line);background:transparent;
  color:var(--muted);font-weight:700;font-size:.83rem;cursor:pointer;transition:.2s;font-family:inherit}
.fbtn:hover{color:#fff;border-color:rgba(255,255,255,.3)}
.fbtn.on{background:linear-gradient(135deg,var(--red),#a11311);color:#fff;border-color:transparent;
  box-shadow:0 6px 22px var(--glow)}
.prods{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}
@media(max-width:960px){.prods{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.prods{grid-template-columns:1fr}}
.prod{display:flex;flex-direction:column;background:linear-gradient(165deg,var(--panel),var(--bg2));
  border:1px solid var(--line);border-radius:20px;overflow:hidden;text-decoration:none;color:var(--txt);
  transform-style:preserve-3d;transition:transform .18s ease-out,border-color .3s,box-shadow .3s;will-change:transform}
.prod:hover{border-color:rgba(224,49,46,.55);box-shadow:0 26px 60px rgba(0,0,0,.55),0 0 40px rgba(224,49,46,.12)}
.prod .art{height:150px;display:grid;place-items:center;font-size:3.2rem;position:relative;overflow:hidden}
.prod .art::before{content:"";position:absolute;inset:0;opacity:.9}
.prod .art>span{position:relative;z-index:1;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5));transform:translateZ(34px)}
.art-curso::before{background:linear-gradient(135deg,#3b1113,#1b0c0d),radial-gradient(circle at 70% 20%,rgba(224,49,46,.5),transparent 60%)}
.art-prompt::before{background:linear-gradient(135deg,#2b2110,#141009),radial-gradient(circle at 30% 80%,rgba(232,179,75,.4),transparent 60%)}
.art-repo::before{background:linear-gradient(135deg,#101d2b,#0b1016),radial-gradient(circle at 70% 80%,rgba(70,140,220,.35),transparent 60%)}
.art-lib::before{background:linear-gradient(135deg,#122417,#0b120d),radial-gradient(circle at 25% 25%,rgba(80,200,120,.3),transparent 60%)}
.prod .bd{padding:22px;display:flex;flex-direction:column;flex:1}
.prod .cat{font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.prod h3{font-size:1.08rem;margin:8px 0 8px}
.prod p{color:var(--muted);font-size:.87rem;flex:1}
.prod .row{display:flex;align-items:center;justify-content:space-between;margin-top:18px}
.prod .val{font-size:1.25rem;font-weight:800}
.prod .val small{font-size:.72rem;color:var(--muted);font-weight:600;display:block}
.prod .go{font-size:.8rem;font-weight:800;color:var(--red2)}
.pill-new{position:absolute;top:14px;left:14px;z-index:2;background:linear-gradient(90deg,var(--red),var(--red2));
  color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  padding:5px 12px;border-radius:999px}
/* produto detalhe */
.pd{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start;padding-top:150px}
@media(max-width:900px){.pd{grid-template-columns:1fr;padding-top:130px}}
.pd .art{height:320px;border-radius:24px;display:grid;place-items:center;font-size:6rem;
  position:relative;overflow:hidden;border:1px solid var(--line)}
.buybox{position:sticky;top:100px;background:linear-gradient(165deg,var(--panel),var(--bg2));
  border:1px solid var(--line);border-radius:24px;padding:34px}
.buybox .val{font-size:2.4rem;font-weight:800;margin:10px 0 4px}
.buybox .val small{font-size:.9rem;color:var(--muted);font-weight:600}
.buybox ul{list-style:none;margin:20px 0 26px;display:grid;gap:10px}
.buybox li{font-size:.88rem;color:#c6ccd4;padding-left:26px;position:relative}
.buybox li::before{content:"✔";position:absolute;left:0;color:var(--red2);font-size:.8rem}
.stripe-note{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:14px;
  color:var(--muted);font-size:.78rem}
.stripe-note b{color:#8fa6ff}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none!important}
.longdesc h2{font-size:1.3rem;margin:34px 0 10px;color:var(--red2)}
.longdesc p,.longdesc li{color:#c2c8cf;font-size:.95rem;margin-bottom:10px}
.longdesc ul{padding-left:22px}

/* toast */
.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(120px);
  background:#1d222a;border:1px solid rgba(224,49,46,.5);color:#fff;padding:14px 26px;border-radius:14px;
  z-index:99;transition:transform .35s;box-shadow:0 18px 50px rgba(0,0,0,.6);font-size:.9rem}
.toast.on{transform:translateX(-50%) translateY(0)}

/* marquee */
.marquee{overflow:hidden;border-block:1px solid var(--line);padding:18px 0;background:rgba(255,255,255,.02)}
.marquee .track{display:flex;gap:56px;white-space:nowrap;animation:mq 26s linear infinite;
  font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:.8rem;color:#7d8794}
.marquee b{color:var(--red2)}
@keyframes mq{to{transform:translateX(-50%)}}

/* ==========================================================
   V2 — mega-menu, hero logo grande, vault 3D, implementações,
   FAQ, demos ao vivo
   ========================================================== */

/* arts extras de produto */
.art-site::before{background:linear-gradient(135deg,#101d2b,#0b1016),radial-gradient(circle at 30% 20%,rgba(90,160,255,.35),transparent 60%)}
.art-ecom::before{background:linear-gradient(135deg,#241026,#120b14),radial-gradient(circle at 70% 30%,rgba(220,90,200,.3),transparent 60%)}
.art-impl::before{background:linear-gradient(135deg,#2b1a10,#140d09),radial-gradient(circle at 50% 80%,rgba(255,140,60,.32),transparent 60%)}

/* ---------- mega-menu ---------- */
.menu-item{position:relative}
.menu-item>a{display:inline-flex;align-items:center;gap:6px}
.mega{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(10px) rotateX(-8deg);
  transform-origin:top center;width:560px;background:linear-gradient(165deg,#191d24,#111419);
  border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:6px;
  opacity:0;visibility:hidden;transition:.28s;perspective:800px;
  box-shadow:0 40px 90px rgba(0,0,0,.65),0 0 50px rgba(224,49,46,.1)}
.mega::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.menu-item:hover .mega,.menu-item:focus-within .mega{opacity:1;visibility:visible;
  transform:translateX(-50%) translateY(0) rotateX(0)}
.mega a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;color:var(--txt)!important;
  font-size:.88rem!important;transition:.18s;border:1px solid transparent;margin:0!important}
.mega a:hover{background:rgba(224,49,46,.1);border-color:rgba(224,49,46,.3);transform:translateX(4px)}
.mega .mi{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:1.1rem;flex:none;
  background:linear-gradient(135deg,rgba(224,49,46,.16),rgba(232,179,75,.1));border:1px solid rgba(224,49,46,.25)}
.mega small{display:block;color:var(--muted);font-size:.72rem;font-weight:400}
.caret{transition:transform .25s;font-size:.6rem;color:var(--muted)}
.menu-item:hover .caret{transform:rotate(180deg);color:var(--red2)}

/* ---------- hero com logo gigante ---------- */
.hero-big{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;padding:140px 20px 60px;position:relative;z-index:2}
.hero-logo-wrap{perspective:1200px;margin-bottom:8px}
.hero-logo{width:min(760px,92vw);height:auto;display:block;transform-style:preserve-3d;
  transition:transform .15s ease-out;will-change:transform;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.8)) drop-shadow(0 0 46px rgba(224,49,46,.35))}
.hero-big h1{font-size:clamp(1.6rem,3.6vw,2.7rem);margin:26px 0 14px;font-weight:800}
.hero-big .sub{margin:0 auto;font-size:1.08rem}
.scrolldown{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);color:var(--muted);
  font-size:1.4rem;animation:bounce 2s infinite}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}

/* ---------- seção VAULT 3D ---------- */
.vault-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center;margin-top:50px}
@media(max-width:960px){.vault-grid{grid-template-columns:1fr}}
.vault-stage{perspective:1000px;display:grid;place-items:center;min-height:380px}
.vault{position:relative;width:min(330px,80vw);aspect-ratio:1;transform-style:preserve-3d;
  transition:transform .2s ease-out}
.vault .door{position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle at 38% 32%,#2b323c,#14181e 68%);
  border:10px solid #1c2129;
  box-shadow:0 40px 80px rgba(0,0,0,.7),inset 0 0 0 8px rgba(255,255,255,.03),
    inset 0 -18px 40px rgba(0,0,0,.55),0 0 70px rgba(224,49,46,.18)}
.vault .ring{position:absolute;inset:11%;border-radius:50%;border:2px dashed rgba(232,179,75,.28);
  animation:spin 30s linear infinite}
.vault .handle{position:absolute;inset:26%;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.vault:hover .handle{transform:rotate(140deg)}
.vault .handle::before,.vault .handle::after{content:"";position:absolute;left:50%;top:50%;
  width:12%;height:100%;transform:translate(-50%,-50%);border-radius:12px;
  background:linear-gradient(180deg,#3a424e,#20252d);box-shadow:0 4px 14px rgba(0,0,0,.5)}
.vault .handle::after{transform:translate(-50%,-50%) rotate(90deg)}
.vault .hub{position:absolute;inset:41%;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#e0312e,#7a100e 70%);
  box-shadow:0 0 34px rgba(224,49,46,.6),inset 0 -4px 10px rgba(0,0,0,.4);z-index:2}
.vault .bolt{position:absolute;width:5.5%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#4a525e,#242a32);box-shadow:0 2px 6px rgba(0,0,0,.6)}
.vault .glow{position:absolute;inset:6%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,transparent 55%,rgba(224,49,46,.12) 75%,transparent 90%);
  animation:pulse 3.4s ease-in-out infinite}
@keyframes pulse{50%{opacity:.4}}
.pipeline{display:grid;gap:12px;margin-top:30px}
.pipe{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.03);
  border:1px solid var(--line);border-radius:14px;padding:14px 18px;transition:.25s}
.pipe:hover{border-color:rgba(232,179,75,.4);transform:translateX(6px)}
.pipe .pi{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:1.1rem;flex:none;
  background:linear-gradient(135deg,rgba(224,49,46,.16),rgba(232,179,75,.1));border:1px solid rgba(224,49,46,.25)}
.pipe b{font-size:.92rem}
.pipe span{color:var(--muted);font-size:.8rem;display:block}
.pipe .arrow{margin-left:auto;color:var(--gold);font-size:1.1rem;animation:pulse 2s infinite}

/* ---------- implementações showcase ---------- */
.impls{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
@media(max-width:960px){.impls{grid-template-columns:1fr}}
.impl{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line);
  background:linear-gradient(165deg,var(--panel),var(--bg2));padding:30px;
  transform-style:preserve-3d;transition:transform .18s ease-out,border-color .3s,box-shadow .3s}
.impl:hover{border-color:rgba(232,179,75,.45);box-shadow:0 26px 60px rgba(0,0,0,.55)}
.impl .setor{font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.impl h3{margin:10px 0 12px;font-size:1.12rem;transform:translateZ(22px)}
.impl p{color:var(--muted);font-size:.88rem;transform:translateZ(14px)}
.metrics{display:flex;gap:18px;margin-top:22px;flex-wrap:wrap}
.metric b{display:block;font-size:1.5rem;background:linear-gradient(90deg,var(--red2),var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.metric span{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}

/* ---------- demos ao vivo ---------- */
.demos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
@media(max-width:960px){.demos{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.demos{grid-template-columns:1fr}}
.demo{display:flex;flex-direction:column;gap:10px;background:linear-gradient(165deg,var(--panel),var(--bg2));
  border:1px solid var(--line);border-radius:18px;padding:24px;text-decoration:none;color:var(--txt);
  transition:transform .2s,border-color .3s}
.demo:hover{transform:translateY(-6px);border-color:rgba(224,49,46,.5)}
.demo .dtipo{font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.demo h3{font-size:1rem}
.demo p{color:var(--muted);font-size:.83rem;flex:1}
.demo .stack{display:flex;flex-wrap:wrap;gap:6px}
.demo .stack i{font-style:normal;font-size:.68rem;padding:3px 10px;border-radius:999px;
  background:rgba(224,49,46,.1);border:1px solid rgba(224,49,46,.25);color:#f0b9b3}
.demo .live{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;color:#5dd88a}
.demo .live::before{content:"";width:8px;height:8px;border-radius:50%;background:#5dd88a;
  box-shadow:0 0 10px #5dd88a;animation:pulse 1.8s infinite}
.demos-empty{border:1px dashed var(--line);border-radius:20px;padding:46px 24px;text-align:center;
  color:var(--muted);margin-top:40px}
.demos-empty .robo{font-size:2.4rem;display:inline-block;animation:float 4s ease-in-out infinite}

/* ---------- FAQ ---------- */
.faq{max-width:820px;margin:44px auto 0}
.qa{border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden;
  background:rgba(255,255,255,.02);transition:border-color .3s}
.qa[open]{border-color:rgba(224,49,46,.4)}
.qa summary{list-style:none;cursor:pointer;padding:20px 24px;font-weight:700;font-size:.98rem;
  display:flex;align-items:center;gap:14px}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"+";width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;
  background:rgba(224,49,46,.14);color:var(--red2);font-weight:800;transition:transform .3s}
.qa[open] summary::before{content:"−";transform:rotate(180deg)}
.qa .ans{padding:0 24px 20px 66px;color:var(--muted);font-size:.9rem}

/* ---------- pilares / banners de negócio ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}
@media(max-width:1000px){.pillars{grid-template-columns:1fr}}
.pillar{position:relative;display:flex;flex-direction:column;min-height:420px;border-radius:26px;
  overflow:hidden;border:1px solid var(--line);padding:34px 30px;
  background:linear-gradient(165deg,var(--panel),var(--bg2));
  transform-style:preserve-3d;transition:transform .18s ease-out,border-color .3s,box-shadow .3s;
  will-change:transform}
.pillar:hover{box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 50px rgba(224,49,46,.14)}
.pillar::before{content:"";position:absolute;inset:0;opacity:.85;pointer-events:none}
.pillar.academy::before{background:radial-gradient(520px 260px at 85% -10%,rgba(232,179,75,.22),transparent 70%)}
.pillar.implementa::before{background:radial-gradient(520px 260px at 85% -10%,rgba(224,49,46,.24),transparent 70%)}
.pillar.programas::before{background:radial-gradient(520px 260px at 85% -10%,rgba(90,160,255,.2),transparent 70%)}
.pillar.academy:hover{border-color:rgba(232,179,75,.55)}
.pillar.implementa:hover{border-color:rgba(224,49,46,.55)}
.pillar.programas:hover{border-color:rgba(90,160,255,.5)}
.pillar .pico{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:1.9rem;
  border:1px solid var(--line);margin-bottom:20px;transform:translateZ(36px);
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.01));
  box-shadow:0 14px 30px rgba(0,0,0,.4)}
.pillar .pkicker{font-size:.68rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  margin-bottom:8px;transform:translateZ(28px)}
.pillar.academy .pkicker{color:var(--gold)}
.pillar.implementa .pkicker{color:var(--red2)}
.pillar.programas .pkicker{color:#5aa0ff}
.pillar h3{font-size:1.45rem;line-height:1.2;margin-bottom:12px;transform:translateZ(26px)}
.pillar>p{color:var(--muted);font-size:.92rem;transform:translateZ(18px)}
.pillar .pfeats{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px;transform:translateZ(14px)}
.pillar .pfeats span{font-size:.72rem;font-weight:600;padding:6px 12px;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid var(--line);color:#c6ccd4}
.pillar .btn{margin-top:auto;justify-content:center;transform:translateZ(30px)}
.pillar .pnum{position:absolute;top:22px;right:26px;font-size:3.4rem;font-weight:800;line-height:1;
  color:rgba(255,255,255,.05);transform:translateZ(6px)}

/* nav logo maior (wordmark transparente) */
.brand img{height:40px;border-radius:0;box-shadow:none;
  filter:drop-shadow(0 4px 14px rgba(224,49,46,.35))}
