/* ================= TOKENS (Figma LP - Hub) ================= */
  :root{
    --bg:#04081F;
    --bg-2:#050923;
    --card:#0A0F26;
    --card-2:#0D1330;
    --line:rgba(255,255,255,.08);
    --line-2:rgba(255,255,255,.05);

    --blue:#3972FD;
    --teal:#5BC0BE;
    --slate:#3A506B;
    --purple:#A364FF;
    --purple-soft:#C8ADFF;
    --green:#34D399;
    --orange:#FA9800;
    --orange-soft:#FFBC7C;
    --pink:#F472B6;

    --white:#F9F9F9;
    --muted:#7E84A6;
    --muted-2:#868C94;

    --chat-bg:#1F2128;
    --chat-line:#31363F;

    --hub-gradient:linear-gradient(92deg,var(--blue),var(--purple),var(--orange),var(--green),var(--teal));
    --maxw:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:'Maven Pro',sans-serif;
    background:var(--bg);
    color:var(--white);
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
    position:relative;
  }
  /* luzes globais de fundo — página fluida, sem quebras de seção */
  .bg-lights{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
  .bg-lights span{
    position:absolute;width:1100px;height:860px;
    background:radial-gradient(closest-side, var(--c, rgba(57,114,253,.06)), transparent 72%);
    animation:bgFloat 24s ease-in-out infinite alternate;
  }
  .bg-lights span:nth-child(2n){animation-duration:30s;animation-delay:-8s}
  .bg-lights span:nth-child(3n){animation-duration:36s;animation-delay:-16s}
  @keyframes bgFloat{to{transform:translate3d(70px,50px,0)}}
  section, nav, footer{position:relative;z-index:1}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  h1,h2,h3,h4{font-family:'Maven Pro',sans-serif;font-weight:600;line-height:1.08;letter-spacing:-.03em;color:var(--white)}
  a{color:inherit;text-decoration:none}

  /* ===== Badge eyebrow (glow azul/roxo suave) ===== */
  .badge-pill{
    display:inline-flex;align-items:center;gap:9px;
    padding:9px 27px;border-radius:64px;
    background:linear-gradient(180deg,rgba(57,114,253,.07),rgba(163,100,255,.05));
    border:1px solid rgba(163,100,255,.18);
    box-shadow:0 0 22px rgba(57,114,253,.1), 0 0 30px rgba(163,100,255,.07), inset 0 1px 0 rgba(255,255,255,.04);
    font-size:13.5px;font-weight:400;color:var(--white);letter-spacing:-.03em;
  }
  .badge-pill svg{width:18px;height:10px;flex:none}

  /* ===== Botões ===== */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    font-family:'Inter',sans-serif;font-weight:500;
    font-size:18px;padding:20px 31px;border-radius:70px;cursor:pointer;
    color:#fff;position:relative;isolation:isolate;
    transition:transform .25s ease, box-shadow .25s ease;
    border:none;background:transparent;
  }
  /* primário: traçado gradiente animado (todas as cores do Hub) */
  .btn-grad{
    background:
      linear-gradient(var(--bg),var(--bg)) padding-box,
      linear-gradient(92deg,#3972FD,#A364FF,#FA9800,#34D399,#5BC0BE,#3972FD) border-box;
    border:1.7px solid transparent;
    background-size:100% 100%, 300% 100%;
    animation:gradSlide 5s linear infinite;
    box-shadow:0 0 26px -10px rgba(123,92,255,.35);
  }
  @keyframes gradSlide{
    0%{background-position:0 0, 0% 50%}
    100%{background-position:0 0, 300% 50%}
  }
  .btn-grad::before{
    content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;
    background:linear-gradient(92deg,#3972FD,#A364FF,#FA9800,#34D399,#5BC0BE,#3972FD);
    background-size:300% 100%;
    animation:gradSlide 5s linear infinite;
    opacity:0;transition:opacity .25s ease;
  }
  .btn-grad:hover{transform:translateY(-2px);box-shadow:0 14px 40px -12px rgba(123,92,255,.5)}
  .btn-grad:hover::before{opacity:1}
  /* secundário: slate → hover branco */
  .btn-slate{border:1.5px solid var(--slate);opacity:.92;background:transparent}
  .btn-slate:hover{
    border-color:rgba(255,255,255,.5);
    background:rgba(255,255,255,.18);
    opacity:1;transform:translateY(-2px);
  }
  .btn-sm{font-size:15px;padding:12px 24px}
  .btn-arrow{transition:transform .2s ease}
  .btn:hover .btn-arrow{transform:translateX(4px)}

  /* ================= NAV ================= */
  nav{
    position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);
    background:rgba(4,8,31,.8);border-bottom:1px solid var(--line-2);
  }
  .nav-in{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;max-width:1480px;margin:0 auto}
  .logo{display:flex;align-items:center;gap:9px}
  .logo .wordmark{font-family:'Maven Pro';font-size:21px;font-weight:700;letter-spacing:-.02em;color:#fff}
  .logo .hub{font-weight:400;color:var(--muted)}
  .nav-links{display:flex;gap:38px;font-size:15px;font-weight:500}
  .nav-links a{opacity:.75;transition:opacity .15s}
  .nav-links a:hover{opacity:1}
  @media(max-width:900px){.nav-links{display:none}}

  /* ================= HERO ================= */
  .hero{position:relative;padding:64px 0 0;overflow:hidden;text-align:center}
  .hero::before{
    content:"";position:absolute;inset:0;z-index:0;
    background:
      radial-gradient(900px 420px at 42% -8%, rgba(57,114,253,.14), transparent 60%),
      radial-gradient(800px 420px at 62% 0%, rgba(163,100,255,.1), transparent 60%);
  }
  .hero-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 24px}
  .hero h1{
    font-size:clamp(36px,4.3vw,60px);font-weight:600;margin:40px auto 0;
    letter-spacing:-.032em;line-height:1.14;color:var(--white);max-width:1020px;
  }
  .hero h1 .chip{
    display:inline-grid;place-items:center;
    width:1.3em;height:1.3em;border-radius:.24em;vertical-align:-.28em;
    border:1.7px solid var(--blue);
    background:linear-gradient(-45deg, rgba(11,15,38,.5) 35%, rgba(57,114,253,.5) 122%);
    transform:rotate(8.6deg);margin:0 .14em;
    box-shadow:0 10px 30px -6px rgba(57,114,253,.55);
  }
  .hero h1 .chip img{width:68%;height:auto}
  .hero .sub{
    font-size:clamp(18px,2vw,28px);color:var(--white);margin:38px auto 0;max-width:940px;
    line-height:1.4;letter-spacing:-.03em;font-weight:400;
  }
  .hero .sub b{font-weight:600}
  .hero-cta{display:flex;gap:18px;margin-top:52px;justify-content:center;flex-wrap:wrap}
  .trust{display:flex;align-items:center;gap:14px;margin-top:56px;font-size:17px;color:var(--muted);justify-content:center;flex-wrap:wrap;letter-spacing:-.03em}
  .trust .av{display:flex}
  .trust .av img{width:40px;height:40px;border-radius:50%;border:2px solid var(--bg);margin-left:-13px;object-fit:cover}
  .trust .av img:first-child{margin-left:0}

  /* Composição: chat sobrepondo o print (como no Figma) */
  .hero-stage{position:relative;margin-top:56px}
  /* luz azul contornando o chat e a tela */
  .hero-light{
    position:absolute;left:50%;top:-70px;transform:translateX(-50%);
    width:min(1240px,108vw);height:calc(100% + 90px);
    pointer-events:none;z-index:0;
  }
  .hero-light .haze{
    position:absolute;inset:0;
    background:radial-gradient(56% 62% at 50% 44%, rgba(57,114,253,.22), transparent 72%);
    filter:blur(14px);
    animation:hazeBreathe 9s ease-in-out infinite;
  }
  @keyframes hazeBreathe{0%,100%{opacity:.8}50%{opacity:1}}
  .hero-chat{
    position:relative;z-index:5;max-width:959px;margin:0 auto -96px;
    background:var(--chat-bg);border:1.5px solid var(--chat-line);
    border-radius:22px;padding:26px 28px 20px;text-align:left;
    box-shadow:0 40px 90px -20px rgba(0,0,0,.85), 0 0 90px -14px rgba(57,114,253,.5);
  }
  .hero-chat .q{font-family:'Inter',sans-serif;font-size:21px;color:var(--muted-2);min-height:28px;letter-spacing:-.01em}
  .hero-chat .q .cursor{display:inline-block;width:2px;height:1.1em;background:var(--muted-2);vertical-align:text-bottom;animation:cursorBlink 1s steps(1) infinite}
  @keyframes cursorBlink{50%{opacity:0}}
  .hero-chat .row{display:flex;align-items:center;justify-content:space-between;margin-top:22px}
  .hero-chat .icons{display:flex;gap:16px}
  .hero-chat .right{display:flex;align-items:center;gap:14px}
  .hero-chat .hint{font-family:'Inter',sans-serif;font-size:14px;color:var(--muted-2)}
  .hero-chat .send{
    width:36px;height:36px;border-radius:7px;background:#fff;border:none;cursor:pointer;
    display:grid;place-items:center;color:#04081F;transition:.15s;
  }
  .hero-chat .send:hover{transform:scale(1.06)}
  .hero-chat .send svg{width:18px;height:18px}

  .hero-mock{
    position:relative;z-index:1;max-width:1060px;margin:0 auto;
    border-radius:10px 10px 0 0;overflow:hidden;
    border:.6px solid #5C5D5E;border-bottom:none;
    max-height:420px;
    box-shadow:0 0 110px -16px rgba(57,114,253,.4);
  }
  .hero-mock::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,rgba(4,8,31,0) 18%,var(--bg) 78%);
  }
  .mock-toolbar{
    display:flex;align-items:center;gap:14px;height:44px;padding:0 18px;
    background:rgba(35,37,38,.85);backdrop-filter:blur(12px);
    box-shadow:0 .5px 0 0 #585858;position:relative;z-index:2;
  }
  .mock-dots{display:flex;gap:8px}
  .mock-dots span{width:12px;height:12px;border-radius:50%}
  .mock-dots span:nth-child(1){background:#FF5F57}
  .mock-dots span:nth-child(2){background:#FEBC2E}
  .mock-dots span:nth-child(3){background:#28C840}
  .mock-tab{
    flex:1;max-width:460px;height:28px;border-radius:6px;background:rgba(255,255,255,.14);
    display:flex;align-items:center;gap:7px;padding:0 10px;
    font-family:'Inter';font-size:12.5px;color:#fff;margin-left:14px;
  }
  .mock-tab svg{width:13px;height:13px;flex:none}
  .hero-mock .screen{display:block;width:100%;height:auto}

  /* ================= GLOW CARDS (borda que segue o mouse) ================= */
  .glow-card{position:relative}
  .glow-card::after{
    content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;
    border:1.6px solid transparent;
    background:linear-gradient(calc(var(--start,0) * 1deg),
      #3972FD, #A364FF, #FA9800, #34D399, #5BC0BE) border-box;
    -webkit-mask:
      linear-gradient(#0000,#0000),
      conic-gradient(from calc((var(--start,0) - 60) * 1deg),
        #0000 0deg, #fff 60deg, #fff 100deg, #0000 160deg);
    -webkit-mask-clip:padding-box, border-box;
    -webkit-mask-composite:source-in;
    mask:
      linear-gradient(#0000,#0000) padding-box,
      conic-gradient(from calc((var(--start,0) - 60) * 1deg),
        #0000 0deg, #fff 60deg, #fff 100deg, #0000 160deg) border-box;
    mask-composite:intersect;
    opacity:var(--active,0);
    transition:opacity .45s ease;
  }

  /* ================= SEÇÕES ================= */
  section{position:relative}
  .pad{padding:88px 0}
  .center{text-align:center}
  .h2{font-size:clamp(30px,3.4vw,46px);margin-top:26px;font-weight:600;letter-spacing:-.03em;line-height:1.18;color:#E8ECF8}
  .lede{font-size:clamp(16px,1.6vw,21px);max-width:880px;margin:20px auto 0;color:var(--muted);line-height:1.55;letter-spacing:-.02em}


  /* stats — azul e roxo */
  .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px}
  .stat{text-align:center}
  .stat .n{
    font-family:'Maven Pro';font-size:clamp(56px,6.4vw,84px);font-weight:500;line-height:1;
    letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:#fff;
    text-shadow:0 0 56px rgba(123,92,255,.3);
  }
  .stat .l{font-size:14.5px;color:var(--muted);margin-top:14px;font-weight:500;max-width:220px;margin-left:auto;margin-right:auto;line-height:1.45}

  /* pain cards */
  .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px}
  .pain{
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:18px;
    padding:26px 22px;text-align:left;transition:transform .25s;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  }
  .pain:hover{transform:translateY(-4px)}
  .pain .ic{
    width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:18px;
    background:rgba(57,114,253,.06);border:1px solid var(--line-2);
    margin-bottom:34px;color:#5E72A8;
    transition:color .3s ease, background .3s ease;
  }
  .pain:hover .ic{color:var(--pain-c,var(--blue));background:rgba(57,114,253,.1)}
  .pain h3{font-size:17px;font-weight:600;margin-bottom:10px;letter-spacing:-.02em}
  .pain p{font-size:13.5px;color:var(--muted);line-height:1.55}

  /* ================= A VIRADA ================= */
  .virada-stage{
    position:relative;margin:56px auto 0;max-width:820px;height:500px;
    display:grid;place-items:center;
  }
  .virada-stage::before{
    content:"";position:absolute;inset:50% auto auto 50%;
    width:660px;height:660px;transform:translate(-50%,-50%);
    background:radial-gradient(circle, rgba(57,114,253,.13) 0%, rgba(163,100,255,.07) 40%, transparent 70%);
    pointer-events:none;
  }
  .v-core{
    position:relative;width:176px;height:176px;border-radius:50%;
    background:radial-gradient(circle at 32% 28%, rgba(255,255,255,.14), rgba(57,114,253,.14) 35%, var(--bg) 76%);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 0 90px rgba(57,114,253,.4), 0 0 60px rgba(163,100,255,.2), inset 0 0 50px rgba(57,114,253,.2);
    display:grid;place-items:center;z-index:5;
    animation:coreBreathe 5s ease-in-out infinite;
  }
  @keyframes coreBreathe{
    0%,100%{box-shadow:0 0 90px rgba(57,114,253,.4), 0 0 60px rgba(163,100,255,.2), inset 0 0 50px rgba(57,114,253,.2)}
    50%{box-shadow:0 0 130px rgba(57,114,253,.6), 0 0 90px rgba(163,100,255,.35), inset 0 0 70px rgba(57,114,253,.35)}
  }
  .v-core-inner{width:96px;height:96px;display:grid;place-items:center}
  .v-core-inner img{width:92px;height:auto;filter:drop-shadow(0 6px 24px rgba(0,0,0,.5))}
  .v-ring{position:absolute;border-radius:50%;pointer-events:none}
  .v-ring.r1{width:360px;height:360px;border:1px dashed rgba(255,255,255,.15);animation:vRot 28s linear infinite}
  .v-ring.r2{width:520px;height:520px;border:1px solid rgba(57,114,253,.1)}
  .v-ring.r3{width:680px;height:680px;border:1px solid rgba(163,100,255,.08)}
  @keyframes vRot{to{transform:rotate(360deg)}}
  .v-orbit{position:absolute;width:360px;height:360px;animation:vRot 28s linear infinite;z-index:4}
  .v-tool{
    position:absolute;width:88px;height:88px;border-radius:24px;
    background:linear-gradient(135deg,#101736,#080D24);
    border:1px solid rgba(255,255,255,.13);
    display:grid;place-items:center;
    box-shadow:0 14px 36px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.07);
    animation:vToolCounter 28s linear infinite;cursor:pointer;transition:border-color .25s;
  }
  .v-tool:hover{border-color:rgba(163,100,255,.6)}
  @keyframes vToolCounter{to{transform:rotate(-360deg)}}
  .v-tool img{width:44px;height:44px;object-fit:contain}
  .v-tool.t1{top:0;left:50%;margin-left:-44px;margin-top:-44px}
  .v-tool.t2{bottom:0;left:0;margin-left:-44px;margin-bottom:-44px}
  .v-tool.t3{bottom:0;right:0;margin-right:-44px;margin-bottom:-44px}
  /* satélites externos — apps menores ao redor do ecossistema */
  .v-orbit2{position:absolute;width:520px;height:520px;animation:vRotR 52s linear infinite;z-index:2}
  @keyframes vRotR{to{transform:rotate(-360deg)}}
  .v-sat{
    position:absolute;width:54px;height:54px;border-radius:16px;
    background:linear-gradient(135deg,#0F1633,#070C20);
    border:1px solid rgba(255,255,255,.1);
    display:grid;place-items:center;
    box-shadow:0 10px 26px rgba(0,0,0,.45);
    animation:vSatC 52s linear infinite;
  }
  @keyframes vSatC{to{transform:rotate(360deg)}}
  .v-sat img,.v-sat svg{width:26px;height:26px;object-fit:contain}
  .v-sat.s1{left:417px;top:49px}
  .v-sat.s2{left:417px;top:417px}
  .v-sat.s3{left:49px;top:417px}
  .v-sat.s4{left:49px;top:49px}
  .virada-tag{
    margin-top:64px;font-family:'Maven Pro';font-size:clamp(24px,3vw,38px);
    color:var(--white);font-weight:400;letter-spacing:-.03em;
  }
  .virada-tag b{font-weight:700}
  .virada-tag .sep{color:var(--muted);margin:0 10px}

  /* ================= TRÊS CAMADAS ================= */
  .layers{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px}
  .layer-card{
    border-radius:22px;padding:0 0 30px;position:relative;overflow:hidden;
    background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));
    border:1px solid var(--line-2);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 30px 60px -40px rgba(0,0,0,.7);
    transition:transform .3s ease;text-align:left;
    display:flex;flex-direction:column;
  }
  .layer-card:hover{transform:translateY(-6px)}
  .layer-card .accent{position:absolute;top:0;left:0;right:0;height:3px;z-index:2}
  .layer-card.l-mdc .accent,.layer-card.l-brain .accent{background:linear-gradient(90deg,transparent,rgba(163,100,255,.55),transparent)}
  .layer-card.l-marvin .accent{background:var(--hub-gradient);opacity:.8}
  .layer-card .stage{
    margin:18px 18px 24px;height:250px;border-radius:14px;
    background:#070B1E;border:1px solid var(--line-2);
    position:relative;overflow:hidden;
  }
  .layer-card .body{padding:0 28px;display:flex;flex-direction:column;flex:1}
  .layer-card h3{font-size:25px;font-weight:600;letter-spacing:-.025em;margin-bottom:14px;line-height:1.25}
  .layer-card p{font-size:15px;color:var(--muted);line-height:1.6;flex:1}
  .layer-pill{
    display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
    margin-top:22px;padding:7px 16px;border-radius:99px;
    font-family:'Inter';font-size:12.5px;font-weight:600;
    background:rgba(163,100,255,.1);border:1px solid rgba(163,100,255,.35);color:var(--purple-soft);
  }
  .layer-pill img{width:15px;height:15px;object-fit:contain}
  .layer-pill.marvin{
    color:#fff;border:1px solid transparent;
    background:
      linear-gradient(var(--card),var(--card)) padding-box,
      var(--hub-gradient) border-box;
  }

  /* MDC — print de tela (janela com chrome) */
  .mdc-window{position:absolute;inset:14px;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;border:1px solid rgba(163,100,255,.2);background:#0A0E22;box-shadow:0 18px 40px rgba(0,0,0,.5)}
  .mdc-wbar{display:flex;align-items:center;gap:7px;height:30px;padding:0 11px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--line-2);flex:none}
  .mdc-wbar .d{width:8px;height:8px;border-radius:50%}
  .mdc-wbar .d:nth-child(1){background:#FF5F57}.mdc-wbar .d:nth-child(2){background:#FEBC2E}.mdc-wbar .d:nth-child(3){background:#28C840}
  .mdc-wbar .t{font-family:'Inter';font-size:10px;color:var(--muted-2);margin-left:6px}
  .mdc-wbody{flex:1;padding:11px;display:flex;flex-direction:column;gap:7px;overflow:hidden}
  .mdc-conn{
    display:flex;align-items:center;gap:9px;padding:7px 10px;
    background:rgba(255,255,255,.03);border:1px solid var(--line-2);border-radius:8px;
    opacity:0;transform:translateY(8px);
    transition:opacity .4s ease-out, transform .4s ease-out, border-color .4s;
  }
  .mdc-conn.show{opacity:1;transform:none}
  .mdc-conn.done{border-color:rgba(52,211,153,.25)}
  .mdc-conn .lg{
    width:24px;height:24px;border-radius:6px;display:grid;place-items:center;flex:none;
    font-family:'Inter';font-size:9px;font-weight:700;color:#fff;
  }
  .mdc-conn .nm{font-family:'Inter';font-size:11px;font-weight:600;color:#fff}
  .mdc-conn .tp{font-size:9.5px;color:var(--muted);margin-top:1px}
  .mdc-conn .st{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-family:'Inter';font-size:9px;font-weight:600;color:var(--muted-2);transition:color .3s}
  .mdc-conn .st svg{width:11px;height:11px;flex:none}
  .mdc-conn .ic-spin{animation:mdcSpin 1s linear infinite;color:var(--purple-soft)}
  .mdc-conn .ic-ok{display:none;color:var(--green)}
  .mdc-conn.done .st{color:var(--green)}
  .mdc-conn.done .ic-spin{display:none}
  .mdc-conn.done .ic-ok{display:block;animation:okPop .35s cubic-bezier(.34,1.56,.64,1)}
  @keyframes mdcSpin{to{transform:rotate(360deg)}}
  @keyframes okPop{from{transform:scale(0)}to{transform:scale(1)}}
  @keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.35}}
  .mdc-sync{display:flex;align-items:center;gap:7px;margin-top:auto;padding:2px 4px;font-family:'Inter';font-size:9.5px;color:var(--purple-soft);font-weight:600}
  .mdc-sync .bar{flex:1;height:3px;border-radius:3px;background:rgba(163,100,255,.15);overflow:hidden}
  .mdc-sync .bar i{display:block;height:100%;width:40%;border-radius:3px;background:var(--purple);animation:syncMove 2.4s ease-in-out infinite}
  @keyframes syncMove{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}

  /* Brain — rede que se forma progressivamente */
  .brain-net{
    width:100%;height:100%;display:block;
    transform-origin:50% 52%;
    animation:bZoom 13s ease-in-out infinite;
  }
  @keyframes bZoom{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
  .l-brain .stage{transition:transform .5s ease;cursor:pointer}
  .l-brain .stage:hover{transform:scale(1.02)}
  .b-wob{
    transform-box:fill-box;transform-origin:50% 55%;
    animation:bWob 7s ease-in-out infinite;
  }
  @keyframes bWob{
    0%,100%{transform:scale(1,1) rotate(0deg)}
    30%{transform:scale(1.014,.986) rotate(.45deg)}
    65%{transform:scale(.988,1.012) rotate(-.45deg)}
  }
  .brain-node{
    fill:#8E94B8;transform-box:fill-box;transform-origin:center;
    animation:bNodeIn .5s var(--d,0s) cubic-bezier(.34,1.56,.64,1) both,
              bDrift 5.5s calc(var(--d,0s) + .9s) ease-in-out infinite alternate,
              bGlow 3.2s calc(var(--d,0s) + 1.2s) ease-in-out infinite;
  }
  .brain-node.acc{
    animation:bNodeIn .5s var(--d,0s) cubic-bezier(.34,1.56,.64,1) both,
              bDrift 5.5s calc(var(--d,0s) + .9s) ease-in-out infinite alternate,
              bGlow 2.6s calc(var(--d,0s) + 1s) ease-in-out infinite;
  }
  @keyframes bNodeIn{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
  @keyframes bDrift{
    from{transform:translate(0,0) scale(1)}
    to{transform:translate(var(--dx,2px),var(--dy,-2.5px)) scale(1.14)}
  }
  @keyframes bGlow{50%{opacity:.55}}
  .brain-link{
    stroke:rgba(255,255,255,.12);stroke-width:.6;fill:none;
    stroke-dasharray:var(--len,60);stroke-dashoffset:var(--len,60);
    animation:bLink .8s var(--d,0s) ease-out both;
  }
  .brain-cap{
    position:absolute;left:14px;bottom:10px;
    font-family:'Inter',monospace;font-size:9px;letter-spacing:.08em;
    color:var(--muted);opacity:.8;
  }
  @keyframes bLink{to{stroke-dashoffset:0}}
  .brain-lbl{
    font-family:'Inter',sans-serif;font-size:9px;font-weight:500;
    fill:#A9AFCE;opacity:0;letter-spacing:.02em;
    animation:bLbl .7s var(--d,0s) ease both;
  }
  @keyframes bLbl{to{opacity:.95}}

  /* Marvin mini chat */
  .marvin-chat{padding:14px;display:flex;flex-direction:column;gap:9px;height:100%;overflow:hidden}
  .mc-row{display:flex;gap:8px;align-items:flex-end;max-width:92%;opacity:0;animation:mcIn .5s forwards}
  .mc-row.user{align-self:flex-end;animation-delay:.3s}
  .mc-row.bot{align-self:flex-start;animation-delay:1.2s}
  .mc-row.user2{align-self:flex-end;animation-delay:3.2s}
  .mc-ava{width:24px;height:24px;flex:none;display:grid;place-items:center}
  .mc-ava img{width:22px;height:auto}
  .mc-msg{font-family:'Inter';font-size:11.5px;line-height:1.45;padding:8px 12px;border-radius:13px}
  .mc-row.user .mc-msg,.mc-row.user2 .mc-msg{background:#2A2D36;color:#fff;border-bottom-right-radius:4px;font-weight:500}
  .mc-row.bot .mc-msg{background:rgba(255,255,255,.05);border:1px solid var(--line-2);border-bottom-left-radius:4px;color:rgba(255,255,255,.85)}
  .mc-row.bot .mc-msg b{color:var(--purple-soft)}
  .mc-typing{align-self:flex-start;display:flex;gap:8px;align-items:flex-end;opacity:0;animation:mcType 1s forwards;animation-delay:4s}
  .mc-typing .bub{display:flex;gap:3px;padding:9px 12px;background:rgba(255,255,255,.05);border:1px solid var(--line-2);border-radius:13px;border-bottom-left-radius:4px}
  .mc-typing .bub span{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.6);animation:blink 1.2s infinite}
  .mc-typing .bub span:nth-child(2){animation-delay:.2s}.mc-typing .bub span:nth-child(3){animation-delay:.4s}
  @keyframes mcIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  @keyframes mcType{from{opacity:0}to{opacity:1}}
  @keyframes blink{0%,60%,100%{opacity:.25}30%{opacity:1}}

  /* ================= MARVIN EM AÇÃO — telas gravadas ================= */
  .demo{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:60px}
  .demo-card{
    background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:22px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
    padding:28px;display:flex;flex-direction:column;gap:16px;text-align:left;
  }
  .demo-head h3{font-size:20px;font-weight:600;letter-spacing:-.02em;margin-bottom:6px}
  .demo-head p{font-size:14px;color:var(--muted);line-height:1.5}
  .demo-tagline{
    display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
    font-family:'Inter';font-size:10.5px;color:var(--orange);font-weight:700;
    letter-spacing:.14em;text-transform:uppercase;
    padding:4px 11px;border-radius:99px;background:rgba(250,152,0,.08);border:1px solid rgba(250,152,0,.3);
  }
  /* janela "tela gravada" */
  .demo-screen{
    border-radius:12px;overflow:hidden;border:1px solid var(--line);
    background:#0A0E22;
    box-shadow:0 20px 50px rgba(0,0,0,.5), 0 0 70px -24px rgba(57,114,253,.3);
  }
  .demo-card:nth-child(2) .demo-screen{box-shadow:0 20px 50px rgba(0,0,0,.5), 0 0 70px -24px rgba(163,100,255,.3)}
  .demo-screen .wbar{display:flex;align-items:center;gap:7px;height:32px;padding:0 12px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--line-2)}
  .demo-screen .wbar .d{width:8px;height:8px;border-radius:50%}
  .demo-screen .wbar .d:nth-child(1){background:#FF5F57}.demo-screen .wbar .d:nth-child(2){background:#FEBC2E}.demo-screen .wbar .d:nth-child(3){background:#28C840}
  .demo-screen .wbar .t{font-family:'Inter';font-size:10.5px;color:var(--muted-2);margin-left:6px}
  .demo-screen .rec{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-family:'Inter';font-size:9.5px;font-weight:700;color:#FF5F57;letter-spacing:.1em}
  .demo-screen .rec::before{content:"";width:7px;height:7px;border-radius:50%;background:#FF5F57;animation:pulseDot 1.2s ease-in-out infinite}
  .demo-screen .sbody{
    padding:20px;display:flex;flex-direction:column;gap:13px;min-height:230px;
    justify-content:center;
    transform:scale(1);transform-origin:60% 40%;
  }
  .demo-card.in .demo-screen .sbody{animation:slowZoom 9s ease-in-out forwards}
  @keyframes slowZoom{0%{transform:scale(1)}35%{transform:scale(1.06)}75%{transform:scale(1.06)}100%{transform:scale(1)}}
  .ds-q{
    align-self:flex-end;background:var(--blue);color:#fff;
    padding:11px 16px;border-radius:14px;border-bottom-right-radius:5px;
    font-family:'Inter';font-size:13.5px;font-weight:500;max-width:85%;
    opacity:0;min-height:20px;
  }
  .demo-card.in .ds-q{opacity:1}
  .ds-q .tcursor{display:inline-block;width:1.5px;height:1em;background:rgba(255,255,255,.8);vertical-align:text-bottom;animation:cursorBlink .8s steps(1) infinite}
  .ds-a{display:flex;gap:10px;align-self:flex-start;max-width:94%;opacity:0;transform:translateY(8px)}
  .demo-card.in .ds-a{animation:dmIn .6s forwards;animation-delay:var(--ad,3s)}
  .ds-a .mava{flex:none;width:32px;height:32px;display:grid;place-items:center}
  .ds-a .mava img{width:30px;height:auto}
  .ds-a .txt{
    background:rgba(255,255,255,.04);border:1px solid var(--line);
    padding:13px 16px;border-radius:14px;border-bottom-left-radius:5px;
    font-family:'Inter';font-size:13px;color:rgba(255,255,255,.85);line-height:1.6;
  }
  .ds-a .txt b{color:#fff;font-weight:600}
  .ds-typing{display:flex;gap:10px;align-self:flex-start;align-items:flex-end;opacity:0;margin-left:0}
  .demo-card.in .ds-typing{animation:typingShow 0s forwards, typingHide 0s forwards;animation-delay:var(--ts,2.2s), var(--th,3s)}
  .ds-typing .mava{flex:none;width:32px;height:32px;display:grid;place-items:center}
  .ds-typing .mava img{width:30px;height:auto}
  .ds-typing .bub{display:flex;gap:5px;padding:13px 16px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;border-bottom-left-radius:5px}
  .ds-typing .bub span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.4);animation:blink 1.2s infinite}
  .ds-typing .bub span:nth-child(2){animation-delay:.2s}.ds-typing .bub span:nth-child(3){animation-delay:.4s}
  @keyframes dmIn{to{opacity:1;transform:none}}
  @keyframes typingShow{to{opacity:1}}
  @keyframes typingHide{to{opacity:0;visibility:hidden}}

  /* ================= APPS ================= */
  /* carrossel horizontal genérico (peek do próximo card) */
  .hscroll{
    overflow-x:auto;scroll-snap-type:x mandatory;
    padding:8px 0 14px;margin-top:56px;
    cursor:grab;scrollbar-width:none;user-select:none;-webkit-overflow-scrolling:touch;
  }
  .hscroll::-webkit-scrollbar{display:none}
  .hscroll.drag{cursor:grabbing}
  .htrack{display:flex;gap:16px;width:max-content;padding:4px}
  .htrack > *{scroll-snap-align:start}
  .htrack .app{flex:0 0 272px}
  .htrack .why-card{flex:0 0 332px}
  /* vitrine de apps na home: grid (sem scroll lateral) */
  .apps-grid-home{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:6px}
  @media(max-width:980px){.apps-grid-home{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:560px){.apps-grid-home{grid-template-columns:1fr}}
  .app{
    position:relative;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:18px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
    padding:24px 22px;transition:transform .25s;display:flex;flex-direction:column;gap:11px;text-align:left;overflow:hidden;
  }
  .app:hover{transform:translateY(-5px)}
  .app .ic{
    width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:19px;
    background:rgba(57,114,253,.06);
    border:1px solid var(--line);color:#5E72A8;
    transition:color .3s ease, background .3s ease;
  }
  .app:hover .ic{
    color:var(--app-c);
    background:linear-gradient(135deg,var(--app-bg1,rgba(57,114,253,.18)),rgba(255,255,255,.03));
  }
  .app .ic img{width:25px;height:25px;object-fit:contain}
  .app h3{font-size:16.5px;font-weight:600;letter-spacing:-.02em}
  .app p{font-size:13px;color:var(--muted);line-height:1.55;flex:1}
  .app .cta{
    display:inline-flex;align-items:center;gap:5px;margin-top:6px;
    font-family:'Inter';font-weight:600;font-size:12.5px;color:#5E72A8;
    transition:color .3s ease;
  }
  .app:hover .cta{color:var(--app-c,var(--blue))}
  .app .cta .arr{transition:transform .2s ease}
  .app:hover .cta .arr{transform:translateX(4px)}
  .app-fin{--app-c:var(--teal);--app-bg1:rgba(91,192,190,.16)}
  .app-crm{--app-c:var(--blue);--app-bg1:rgba(57,114,253,.18)}
  .app-cs{--app-c:var(--purple);--app-bg1:rgba(163,100,255,.18)}
  .app-tar{--app-c:var(--orange);--app-bg1:rgba(250,152,0,.15)}
  .app-gen{--app-c:var(--green);--app-bg1:rgba(52,211,153,.15)}
  .app-reu{--app-c:#C084FC;--app-bg1:rgba(192,132,252,.15)}
  .app-wpp{--app-c:#4ADE80;--app-bg1:rgba(74,222,128,.15)}
  .app-ref{--app-c:var(--pink);--app-bg1:rgba(244,114,182,.15)}
  .apps-note{text-align:center;margin-top:44px;font-size:15px;color:var(--muted)}
  .apps-note b{color:rgba(255,255,255,.9)}

  /* ================= CASOS DE USO — carrossel de cards ================= */
  .cases-bar{display:flex;justify-content:space-between;align-items:center;margin-top:44px}
  .drag-hint{font-size:13px;color:var(--muted)}
  .cases-nav{display:flex;gap:10px}
  .cnav{
    width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(255,255,255,.18);
    background:transparent;color:#fff;font-size:17px;cursor:pointer;
    transition:border-color .2s, background .2s;display:grid;place-items:center;
  }
  .cnav:hover{border-color:rgba(163,100,255,.6);background:rgba(163,100,255,.12)}
  .cases-scroll{
    overflow-x:auto;scroll-snap-type:x mandatory;padding:18px 0 8px;
    cursor:grab;scrollbar-width:none;user-select:none;-webkit-overflow-scrolling:touch;
  }
  .cases-scroll::-webkit-scrollbar{display:none}
  .cases-scroll.drag{cursor:grabbing}
  .case-track{display:flex;gap:18px;width:max-content;padding:4px}
  .case-card{
    scroll-snap-align:start;flex:0 0 300px;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:20px;padding:24px;
    display:flex;flex-direction:column;gap:12px;min-height:248px;text-align:left;
    transition:transform .25s;
  }
  .case-card:hover{transform:translateY(-4px)}
  .cc-top{display:flex;align-items:center;justify-content:space-between}
  .cc-ic{width:40px;height:40px;border-radius:11px;background:rgba(57,114,253,.06);border:1px solid var(--line-2);display:grid;place-items:center;color:#5E72A8;transition:color .3s ease}
  .case-card:hover .cc-ic{color:var(--blue)}
  .cc-ic svg{width:20px;height:20px}
  .cc-cat{font-family:'Inter';font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
  .case-card h3{font-size:18.5px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
  .case-card p{font-size:13.5px;color:var(--muted);line-height:1.55;flex:1}
  .cc-impact .t{display:flex;justify-content:space-between;font-family:'Inter';font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
  .cc-impact .t b{color:#fff}
  .cc-impact .bar{height:4px;border-radius:4px;background:rgba(255,255,255,.07);overflow:hidden}
  .cc-impact .bar i{
    display:block;height:100%;width:0;border-radius:4px;
    background:linear-gradient(90deg,var(--blue),var(--purple));
    transition:width 1.1s cubic-bezier(.22,1,.36,1);
    position:relative;overflow:hidden;
  }
  .cc-impact .bar i::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
    transform:translateX(-100%);
    animation:barSheen 2.6s ease-in-out infinite;
  }
  @keyframes barSheen{40%,100%{transform:translateX(100%)}}
  .cases-foot{text-align:center;margin-top:26px;font-size:13px;color:var(--muted)}

  /* ================= LEAD AO LUCRO — jornada conectada ================= */
  .journey{
    display:flex;justify-content:center;align-items:flex-start;
    gap:0;margin-top:64px;position:relative;flex-wrap:nowrap;overflow-x:auto;
    padding:10px 4px 4px;scrollbar-width:none;
  }
  .journey::-webkit-scrollbar{display:none}
  .j-step{--jc:var(--blue);display:flex;flex-direction:column;align-items:center;gap:13px;flex:0 0 auto;width:138px;position:relative}
  .j-step .box{
    width:92px;height:92px;border-radius:22px;
    background:linear-gradient(160deg,rgba(255,255,255,.04),rgba(255,255,255,.01));
    border:1px solid var(--line);display:grid;place-items:center;
    transition:border-color .5s, opacity .5s;
    opacity:.4;
  }
  .j-step .box svg{width:40px;height:40px;color:var(--jc);transition:filter .6s;filter:grayscale(1) brightness(.5)}
  .j-step h4{font-size:16px;font-weight:600;opacity:.4;transition:opacity .5s}
  .j-step small{font-size:13px;color:var(--muted);text-align:center;line-height:1.4;margin-top:-6px;opacity:.4;transition:opacity .5s}
  .j-step.lit .box{
    opacity:1;
    border-color:rgba(255,255,255,.18);
    animation:jPop .55s ease;
  }
  @keyframes jPop{0%{transform:scale(.94)}55%{transform:scale(1.06)}100%{transform:scale(1)}}
  .j-step.lit .box svg{filter:none}
  .j-step.lit h4,.j-step.lit small{opacity:1}
  /* conector */
  .j-link{
    flex:0 0 52px;height:2px;margin-top:45px;position:relative;
    background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden;
  }
  .j-link i{
    position:absolute;inset:0;border-radius:3px;
    background:linear-gradient(90deg, color-mix(in srgb, var(--jc1,var(--blue)) 55%, transparent), color-mix(in srgb, var(--jc2,var(--purple)) 55%, transparent));
    transform:scaleX(0);transform-origin:left;
    transition:transform .55s ease;
  }
  .j-link.lit i{transform:scaleX(1)}
  .j-link::after{
    content:"";position:absolute;top:50%;left:0;width:8px;height:8px;border-radius:50%;
    background:#fff;box-shadow:0 0 14px var(--jc2,var(--purple));
    transform:translate(-10px,-50%);opacity:0;
  }
  .j-link.pulse::after{animation:linkPulse 0.55s ease forwards}
  @keyframes linkPulse{0%{opacity:.9;transform:translate(0,-50%)}100%{opacity:0;transform:translate(52px,-50%)}}

  .qgrid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
    max-width:1100px;margin:64px auto 0;text-align:left;
  }
  .q-item{
    display:flex;flex-direction:column;gap:14px;align-items:flex-start;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:18px;padding:22px 20px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    transition:transform .25s ease;
  }
  .q-item:hover{transform:translateY(-4px)}
  .q-item .qic{flex:none;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(57,114,253,.06);border:1px solid var(--line-2);color:#5E72A8;transition:color .3s ease}
  .q-item:hover .qic{color:var(--blue)}
  .q-item .qic svg{width:20px;height:20px}
  .q-item p{font-size:14.5px;color:var(--muted);line-height:1.55;letter-spacing:-.01em}
  .q-item p b{color:rgba(255,255,255,.85);font-weight:600}
  .journey-note{margin-top:70px;font-size:clamp(15px,1.6vw,19px);color:var(--muted);max-width:780px;margin-left:auto;margin-right:auto;line-height:1.55}

  /* ================= POR QUE MARVEE ================= */
  .why-head{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;text-align:left}
  .why-head .h2{margin-top:24px}
  .why-head .lede{margin:0;text-align:left}
  .why-card{
    --wc:var(--teal);
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
    border:1px solid var(--line-2);border-radius:18px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
    padding:28px 24px;text-align:left;transition:transform .25s;
  }
  .why-card:hover{transform:translateY(-4px)}
  .why-card .ic{
    width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
    background:rgba(57,114,253,.06);
    border:1px solid var(--line-2);
    color:#5E72A8;margin-bottom:32px;
    transition:color .3s ease, background .3s ease, border-color .3s ease;
  }
  .why-card:hover .ic{
    color:var(--wc);
    background:color-mix(in srgb, var(--wc) 12%, transparent);
    border-color:color-mix(in srgb, var(--wc) 25%, transparent);
  }
  .why-card .ic svg{width:20px;height:20px}
  .why-card h3{font-size:17px;font-weight:600;margin-bottom:10px;letter-spacing:-.02em}
  .why-card p{font-size:13.5px;color:var(--muted);line-height:1.55}

  /* ================= PRICING ================= */
  .price-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:880px;margin:56px auto 0;align-items:stretch}
  .price-card{
    position:relative;border-radius:18px;padding:26px 26px 24px;text-align:left;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
    border:1px solid var(--line);
    box-shadow:0 40px 90px -40px rgba(0,0,0,.6);
    display:flex;flex-direction:column;transition:transform .25s;
  }
  .price-card:hover{transform:translateY(-4px)}
  .price-card.featured{
    border-color:rgba(163,100,255,.45);
    background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.02)) !important;
    box-shadow:0 0 0 1px rgba(163,100,255,.18), 0 40px 90px -40px rgba(163,100,255,.25) !important;
  }
  .price-card:not(.featured){opacity:.8}
  .price-card:not(.featured):hover{opacity:1}
  .pc-tag{
    align-self:flex-start;
    font-family:'Inter';font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
    padding:5px 12px;border-radius:99px;background:linear-gradient(92deg,var(--blue),var(--purple));color:#fff;white-space:nowrap;
    margin-bottom:16px;
  }
  .pc-tag.ghost{background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--muted-2)}
  .pc-price{display:flex;align-items:baseline;justify-content:flex-start;gap:5px;flex-wrap:wrap}
  .pc-cur{font-family:'Maven Pro';font-size:16px;font-weight:600;color:rgba(255,255,255,.8)}
  .pc-val{font-family:'Maven Pro';font-size:38px;font-weight:700;line-height:1;color:#fff;letter-spacing:-.03em}
  .pc-old{font-family:'Maven Pro';font-size:15px;color:var(--muted);text-decoration:line-through;font-weight:500;margin-right:6px}
  .pc-per{font-family:'Maven Pro';font-size:13.5px;color:var(--muted);font-weight:500}
  .pc-name{font-family:'Maven Pro';font-size:22px;font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:6px}
  .pc-desc{font-size:13.5px;color:var(--muted);line-height:1.5;margin-bottom:18px}
  .ph-flag{font-size:9.5px !important;
    display:inline-block;font-family:'Inter';font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
    color:var(--orange);border:1px solid rgba(250,152,0,.4);background:rgba(250,152,0,.07);
    padding:3px 9px;border-radius:6px;margin-top:14px;
  }
  .pc-list{margin:20px 0 0;display:grid;gap:10px;flex:1;text-align:left}
  .pc-list li{display:flex;gap:11px;align-items:flex-start;list-style:none;font-size:13.5px;color:var(--muted);line-height:1.45}
  .pc-list .ck{
    flex:none;width:19px;height:19px;border-radius:50%;
    border:1.5px solid rgba(255,255,255,.16);
    display:grid;place-items:center;font-size:10px;font-weight:800;margin-top:1px;
    color:#5E72A8;transition:color .3s ease, border-color .3s ease;
  }
  .price-card:hover .ck{color:var(--purple);border-color:rgba(163,100,255,.4)}
  .price-card .btn{margin-top:24px;width:100%;font-size:15px;padding:13px}
  .pc-foot{font-size:11.5px;color:var(--muted);margin-top:12px;text-align:left}

  /* ================= FAQ ================= */
  .faq{max-width:960px;margin:56px auto 0;border-top:1px solid var(--line)}
  .faq-item{border-bottom:1px solid var(--line)}
  .faq-q{
    width:100%;text-align:left;background:none;border:none;
    padding:34px 4px;font-family:'Maven Pro';font-weight:400;font-size:clamp(18px,2vw,23px);
    color:var(--white);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;
    letter-spacing:-.02em;
  }
  .faq-q .pm{
    flex:none;font-size:26px;font-weight:300;line-height:1;color:#5E72A8;
    transition:transform .25s, color .3s ease;
  }
  .faq-item:hover .pm,.faq-item.open .pm{color:var(--purple)}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted);font-size:16px}
  .faq-a p{padding:0 4px 30px;line-height:1.6;max-width:820px}
  .faq-item.open .faq-a{max-height:280px}
  .faq-item.open .pm{transform:rotate(45deg)}

  /* ================= FINAL ================= */
  .final{text-align:center;padding:120px 0 0;position:relative;overflow:hidden}
  .final::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(700px 420px at 44% 60%,rgba(57,114,253,.12),transparent 60%),
               radial-gradient(600px 380px at 60% 50%,rgba(163,100,255,.1),transparent 60%);
  }
  .final h2{font-size:clamp(34px,4.4vw,56px);max-width:840px;margin:0 auto;font-weight:600;letter-spacing:-.03em;line-height:1.15;position:relative}
  .final .btn{margin-top:44px;position:relative}

  /* carrossel de ferramentas em chips glass */
  .final-content{position:relative;z-index:2}
  .tools-marquee{
    position:relative;max-width:920px;margin:84px auto 0;overflow:hidden;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);
            mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);
  }
  .tm-track{display:flex;width:max-content;animation:tmMove 30s linear infinite}
  @keyframes tmMove{to{transform:translateX(-50%)}}
  .tm-group{display:flex;align-items:center;gap:56px;padding-right:56px}
  .tm-item{display:grid;place-items:center}
  .tm-item .chipi{
    width:72px;height:72px;border-radius:20px;display:grid;place-items:center;
    background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));
    border:1px solid rgba(255,255,255,.12);
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 14px 34px rgba(0,0,0,.45);
    transition:transform .25s ease, border-color .25s ease;
  }
  .tm-item .chipi:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.25)}
  .tm-item img,.tm-item svg{width:36px;height:36px;object-fit:contain}
  .f-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;opacity:.3;animation:starTw 3s ease-in-out infinite;pointer-events:none}
  @keyframes starTw{0%,100%{opacity:.1}50%{opacity:.75}}
  /* arco/horizonte com brilho (modelo sparkles) */
  .final-arc{
    position:relative;height:300px;margin-top:-10px;pointer-events:none;
    -webkit-mask-image:radial-gradient(58% 60% at 50% 40%, #000 35%, transparent 80%);
            mask-image:radial-gradient(58% 60% at 50% 40%, #000 35%, transparent 80%);
  }
  .final-arc .aglow{
    position:absolute;inset:0;
    background:radial-gradient(circle at 50% 105%, rgba(131,80,232,.55), transparent 68%);
    opacity:.5;
  }
  .final-arc .planet{
    position:absolute;left:-50%;top:52%;width:200%;aspect-ratio:1/0.7;
    border-radius:100%;
    border-top:1px solid rgba(255,255,255,.25);
    background:var(--bg);
    box-shadow:0 -30px 80px -20px rgba(131,80,232,.25);
  }

  footer{border-top:1px solid var(--line-2);padding:38px 0;color:var(--muted);font-size:14px}
  .foot-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}

  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}

  /* animações pausadas fora da viewport */
  section:not(.in-view) *{animation-play-state:paused !important}

  /* palavra destacada com cor ciclando (cores do Hub) */
  .hl-anim{animation:hlFade 18s ease-in-out infinite}
  @keyframes hlFade{
    0%,100%{color:inherit}
    8%{color:#3972FD}
    18%{color:inherit}
    28%{color:#A364FF}
    38%{color:inherit}
    48%{color:#FA9800}
    58%{color:inherit}
    68%{color:#34D399}
    78%{color:inherit}
    88%{color:#5BC0BE}
  }

  /* glass (fusionai) */
  .pain,.app,.why-card,.layer-card,.demo-card,.price-card,.case-card{
    backdrop-filter:blur(20px) saturate(150%);
    -webkit-backdrop-filter:blur(20px) saturate(150%);
    border-color:rgba(255,255,255,.1);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 24px 60px -36px rgba(0,0,0,.7);
  }
  .pain:hover,.app:hover,.why-card:hover,.layer-card:hover,.demo-card:hover,.price-card:hover,.case-card:hover{
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 24px 60px -36px rgba(0,0,0,.7),
               0 0 38px -12px rgba(123,92,255,.3);
  }

  /* acessibilidade */
  a:focus-visible, button:focus-visible, [tabindex]:focus-visible{
    outline:2px solid rgba(255,255,255,.85);outline-offset:3px;border-radius:10px;
  }
  ::selection{background:rgba(163,100,255,.4);color:#fff}
  @media (prefers-reduced-motion: reduce){
    *, *::before, *::after{
      animation-duration:.01ms !important;
      animation-iteration-count:1 !important;
      transition-duration:.01ms !important;
      scroll-behavior:auto !important;
    }
  }

  /* ================= RESPONSIVE ================= */
  @media(max-width:1000px){
    .layers{grid-template-columns:1fr;gap:18px}
    .price-grid{grid-template-columns:1fr;gap:36px}
    .why-head{grid-template-columns:1fr}
    .qgrid{grid-template-columns:repeat(2,1fr);gap:12px}
  }
  @media(max-width:880px){
    .grid4{grid-template-columns:repeat(2,1fr)}
    .demo{grid-template-columns:1fr}
    .stats{grid-template-columns:1fr;gap:38px}
    .pad{padding:80px 0}
    .case-card{flex-basis:272px}
    .virada-stage{height:430px}
    .v-ring.r3{width:500px;height:500px}
    .v-ring.r2{width:400px;height:400px}
    .v-ring.r1,.v-orbit{width:290px;height:290px}
    .v-tool{width:72px;height:72px;border-radius:18px}
    .v-tool img{width:36px;height:36px}
    .v-tool.t1{margin-left:-36px;margin-top:-36px}
    .v-tool.t2{margin-left:-36px;margin-bottom:-36px}
    .v-tool.t3{margin-right:-36px;margin-bottom:-36px}
    .v-orbit2{width:400px;height:400px}
    .v-sat{width:46px;height:46px;border-radius:13px}
    .v-sat img,.v-sat svg{width:22px;height:22px}
    .v-sat.s1{left:318px;top:36px}
    .v-sat.s2{left:318px;top:318px}
    .v-sat.s3{left:36px;top:318px}
    .v-sat.s4{left:36px;top:36px}
    .hero-chat{margin-bottom:-60px}
    .journey{justify-content:flex-start}
    .tools-marquee{margin-top:60px}
    .tm-group{gap:36px;padding-right:36px}
    .tm-item .chipi{width:60px;height:60px;border-radius:16px}
    .tm-item img,.tm-item svg{width:30px;height:30px}
  }

  /* ================= MOBILE ================= */
  @media(max-width:640px){
    .pad{padding:60px 0}
    .wrap{padding:0 18px}
    .hero{padding-top:36px}
    .hero h1{font-size:clamp(30px,8vw,38px);margin-top:30px}
    .hero .sub{font-size:16px;margin-top:24px}
    .hero-cta{margin-top:34px}
    .hero-cta .btn{width:100%;justify-content:center}
    .trust{font-size:13px;margin-top:32px}
    /* sem print no mobile: só chat + luz */
    .hero-mock{display:none}
    .hero-chat{margin-bottom:0;padding:20px 18px 16px}
    .hero-stage{margin-top:40px;padding-bottom:16px}
    .hero-light{top:-40px;height:calc(100% + 70px)}
    .badge-pill{font-size:11.5px;padding:8px 16px;text-align:center}
    .h2{font-size:26px}
    .lede{font-size:15px}
    .stats{gap:26px;margin-top:40px}
    .stat .n{font-size:48px}
    .grid4{grid-template-columns:1fr;gap:12px}
    .pain .ic{margin-bottom:20px}
    .virada-stage{height:340px;margin-top:40px}
    .virada-stage::before{width:340px;height:340px}
    .v-ring.r3{display:none}
    .v-ring.r2,.v-orbit2{width:300px;height:300px}
    .v-ring.r1,.v-orbit{width:210px;height:210px}
    .v-core{width:120px;height:120px}
    .v-core-inner img{width:62px}
    .v-tool{width:58px;height:58px;border-radius:15px}
    .v-tool img{width:28px;height:28px}
    .v-tool.t1{margin-left:-29px;margin-top:-29px}
    .v-tool.t2{margin-left:-29px;margin-bottom:-29px}
    .v-tool.t3{margin-right:-29px;margin-bottom:-29px}
    .v-sat{width:38px;height:38px;border-radius:11px}
    .v-sat img,.v-sat svg{width:18px;height:18px}
    .v-sat.s1{left:243px;top:23px}
    .v-sat.s2{left:243px;top:243px}
    .v-sat.s3{left:23px;top:243px}
    .v-sat.s4{left:23px;top:23px}
    .virada-tag{font-size:19px;margin-top:40px}
    .layer-card .stage{height:210px}
    .layer-card h3{font-size:21px}
    .demo-screen .sbody{min-height:190px;padding:14px}
    .htrack .app{flex:0 0 74vw}
    .htrack .why-card{flex:0 0 80vw}
    .case-card{flex:0 0 80vw}
    .qgrid{grid-template-columns:1fr;gap:10px}
    .j-step{width:112px}
    .j-step .box{width:76px;height:76px;border-radius:18px}
    .j-step .box svg{width:32px;height:32px}
    .j-link{flex:0 0 34px;margin-top:38px}
    .journey{justify-content:flex-start}
    .price-grid{grid-template-columns:1fr;gap:18px}
    .price-card:not(.featured){opacity:1}
    .faq-q{font-size:16.5px;padding:24px 4px}
    .final-arc{height:220px}
    .tm-item .chipi{width:52px;height:52px;border-radius:14px}
    .tm-item img,.tm-item svg{width:26px;height:26px}
    .cases-bar{flex-direction:column;gap:14px;align-items:flex-start}
  }

/* ===================== PÁGINAS DE APP (landing por produto) ===================== */
.app-hero{position:relative;padding:74px 0 36px;text-align:center;overflow:hidden}
.app-hero::before{content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(820px 380px at 50% -12%, color-mix(in srgb, var(--app,#3972FD) 20%, transparent), transparent 62%);}
.app-hero .wrap{position:relative;z-index:1}
.app-ic{width:104px;height:104px;border-radius:28px;display:grid;place-items:center;margin:0 auto 28px;
  background:linear-gradient(160deg, color-mix(in srgb, var(--app,#3972FD) 16%, #0A0F26), #0A0F26);
  border:1px solid color-mix(in srgb, var(--app,#3972FD) 38%, var(--line));
  box-shadow:0 24px 64px -18px color-mix(in srgb, var(--app,#3972FD) 60%, transparent), inset 0 1px 0 rgba(255,255,255,.06);}
.app-ic img{width:64px;height:64px;object-fit:contain}
.app-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 17px;border-radius:64px;font-size:13px;font-weight:500;color:#fff;
  background:color-mix(in srgb, var(--app,#3972FD) 12%, transparent);border:1px solid color-mix(in srgb, var(--app,#3972FD) 38%, transparent)}
.app-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--app,#3972FD)}
.app-hero h1{font-size:clamp(38px,5vw,64px);font-weight:600;letter-spacing:-.035em;margin:26px auto 0;max-width:16ch;line-height:1.05;color:#fff}
.app-hero .app-sub{font-size:clamp(17px,1.9vw,22px);color:var(--muted);max-width:760px;margin:22px auto 0;line-height:1.5;letter-spacing:-.02em}
.app-hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:42px}

.app-pain:hover .ic{color:var(--app,#3972FD);background:color-mix(in srgb, var(--app,#3972FD) 12%, transparent)}

.cases-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:52px;text-align:left}
@media(max-width:820px){.cases-grid{grid-template-columns:1fr}}
.usecase{position:relative;border-radius:20px;padding:30px 28px;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));
  border:1px solid var(--line-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.usecase .num{font-family:'Maven Pro';font-size:13px;font-weight:700;color:var(--app,#3972FD);letter-spacing:.06em;text-transform:uppercase}
.usecase h3{font-size:21px;font-weight:600;letter-spacing:-.025em;margin:10px 0 12px;line-height:1.22;color:#fff}
.usecase p{font-size:14.5px;color:var(--muted);line-height:1.62}
.usecase .marvin-says{margin-top:18px;display:flex;gap:11px;align-items:flex-start;padding:14px 16px;border-radius:14px;
  background:color-mix(in srgb, var(--app,#3972FD) 8%, rgba(255,255,255,.02));border:1px solid color-mix(in srgb, var(--app,#3972FD) 22%, var(--line-2))}
.usecase .marvin-says img{width:22px;height:22px;flex:none;margin-top:1px}
.usecase .marvin-says span{font-size:13.5px;color:#D7DCEC;line-height:1.5}
.usecase .marvin-says b{color:#fff;font-weight:600}

.app-switch{display:flex;align-items:center;gap:6px}
.appsw{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid transparent;transition:.18s;opacity:.66}
.appsw img{width:23px;height:23px;object-fit:contain}
.appsw:hover{opacity:1;background:rgba(255,255,255,.05);border-color:var(--line)}
.appsw.is-active{opacity:1;border-color:color-mix(in srgb, var(--app,#3972FD) 55%, transparent);background:color-mix(in srgb, var(--app,#3972FD) 14%, transparent)}
@media(max-width:980px){.app-switch{display:none}}

.apps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:46px}
@media(max-width:820px){.apps-grid{grid-template-columns:1fr}}
.appcard{display:flex;gap:14px;align-items:center;border-radius:16px;padding:18px;text-align:left;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));border:1px solid var(--line-2);transition:transform .25s}
.appcard:hover{transform:translateY(-3px)}
.appcard img{width:40px;height:40px;object-fit:contain;flex:none}
.appcard-name{font-size:15.5px;font-weight:600;color:#fff;letter-spacing:-.02em}
.appcard-tag{font-size:12.5px;color:var(--muted);line-height:1.42;margin-top:3px}
