  :root{
    --purple-950:#190014;
    --purple-900:#2C0124;
    --purple-800:#38012E;
    --purple-700:#4F0141;
    --purple-600:#770262;
    --accent-purple:#8B2FC9;
    --pink:#D946A6;
    --green:#AEF26B;
    --green-dark:#8FDC44;
    --bg-light:#FBFAFC;
    --bg-card:#F1EFF5;
    --text-dark:#150726;
    --text-muted:#655D72;
    --text-inverse-muted:#C9BEDD;
    --white:#FFFFFF;
    --radius-xl:32px;
    --radius-lg:24px;
    --radius-md:16px;
    --radius-sm:10px;
    --shadow-soft:0 20px 60px rgba(21,7,38,.08);
    --shadow-card:0 12px 30px rgba(21,7,38,.06);
    --font-head:'Poppins','Inter',sans-serif;
    --font-body:'Inter','Poppins',sans-serif;
    --container:1220px;
  }
  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  body{
    margin:0;
    font-family:var(--font-body);
    color:var(--text-dark);
    background:var(--bg-light);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4,h5,h6{ font-family:var(--font-head); margin:0; line-height:1.15; letter-spacing:-.01em; text-wrap:balance; }
  p{ margin:0; text-wrap:pretty; }
  a{ text-decoration:none; color:inherit; }
  ul{ list-style:none; margin:0; padding:0; }
  img,svg{ display:block; max-width:100%; }
  button{ font-family:var(--font-body); cursor:pointer; border:none; background:none; }
  .whatsapp-word{ white-space:nowrap; }
  .whatsapp-word-icon{
    display:inline-block;
    width:1em; height:1em;
    margin-left:.3em;
    vertical-align:-.13em;
    background-color:currentColor;
    -webkit-mask:url('images/whatsapp-line.svg') center / contain no-repeat;
    mask:url('images/whatsapp-line.svg') center / contain no-repeat;
  }
  :focus-visible{ outline:3px solid var(--green); outline-offset:3px; }
  .skip-link{
    position:fixed; top:12px; left:12px; z-index:999;
    padding:10px 16px; border-radius:999px; background:#fff; color:var(--purple-950);
    font-size:14px; font-weight:700; box-shadow:var(--shadow-card);
    transform:translateY(-160%); transition:transform .2s ease;
  }
  .skip-link:focus{ transform:translateY(0); }
  .container{ max-width:var(--container); margin:0 auto; padding:0 24px; }
  .reveal{ opacity:0; transform:translateY(24px); transition:opacity .6s ease, transform .6s ease; }
  .reveal.is-visible{ opacity:1; transform:translateY(0); }
  @media (prefers-reduced-motion:reduce){ .reveal{ opacity:1; transform:none; transition:none; } }

  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
    color:var(--accent-purple);
  }
  .eyebrow::before{ content:''; width:18px; height:2px; background:var(--accent-purple); border-radius:2px; }

  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    font-weight:700; font-size:15px; padding:14px 26px; border-radius:999px;
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
    white-space:nowrap;
  }
  .btn svg{ width:17px; height:17px; flex-shrink:0; }
  .btn:hover{ transform:translateY(-2px); }
  .btn-primary{ background:var(--green); color:var(--purple-950); box-shadow:0 10px 30px rgba(174,242,107,.35); }
  .btn-primary:hover{ filter:brightness(1.03); box-shadow:0 14px 36px rgba(174,242,107,.45); }
  .btn-ghost{ background:transparent; color:var(--white); border:1.5px solid rgba(255,255,255,.35); }
  .btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
  .btn-outline{ background:transparent; color:var(--purple-800); border:1.5px solid rgba(21,7,38,.15); }
  .btn-outline:hover{ border-color:var(--purple-800); }
  .btn-sm{ padding:10px 18px; font-size:13px; }

  /* ============ TOPBAR + SUBBAR ============ */
  .topbar{
    position:relative; z-index:101;
    background:linear-gradient(90deg, rgba(174,242,107,.3), rgba(139,47,201,.16));
    padding:10px 48px; display:flex; align-items:center; justify-content:center;
  }
  .topbar[hidden]{ display:none; }
  .topbar-inner{ font-size:13px; font-weight:600; color:var(--purple-950); text-align:center; }
  .topbar-inner strong{ font-weight:800; }
  .topbar-inner span[aria-hidden="true"]{ margin:0 7px; opacity:.45; }
  .topbar-inner a{ text-decoration:underline; text-underline-offset:2px; color:var(--purple-900); font-weight:700; }
  .topbar-close{ position:absolute; right:16px; top:50%; transform:translateY(-50%); color:var(--purple-900); opacity:.55; padding:4px; }
  .topbar-close:hover{ opacity:1; }
  .topbar-close svg{ width:15px; height:15px; }

  .subbar{ background:var(--purple-950); position:relative; z-index:101; }
  .subbar-inner{ display:flex; align-items:center; justify-content:space-between; padding:8px 24px; }
  .subbar-links{ display:flex; align-items:center; gap:20px; }
  .subbar-links a{ font-size:12.5px; font-weight:500; color:var(--text-inverse-muted); }
  .subbar-links a:hover{ color:#fff; }
  .subbar-search{ width:14px; height:14px; color:var(--text-inverse-muted); }

  /* ============ HEADER ============ */
  header.site{
    position:sticky; top:0; z-index:100; margin-top:-1px;
    background:rgba(251,250,252,.9);
    backdrop-filter:blur(10px);
    border-bottom:1px solid rgba(21,7,38,.06);
    transition:background .3s ease, backdrop-filter .3s ease, border-color .3s ease;
  }
  .nav{ display:flex; align-items:center; justify-content:space-between; padding:16px 24px; }
  .logo{ display:flex; align-items:center; gap:8px; font-family:var(--font-head); font-weight:800; font-size:20px; color:var(--purple-900); transition:color .3s ease; }
  .logo-icon{ height:22px; width:auto; }
  .nav-links{ display:flex; align-items:center; gap:32px; }
  .nav-links a{ font-size:14.5px; font-weight:600; color:var(--text-dark); opacity:.8; transition:opacity .2s, color .3s ease; }
  .nav-ema-link{ display:inline-flex; align-items:center; gap:6px; }
  .nav-ema-ico{ width:15px; height:15px; flex-shrink:0; }
  .nav-links a:hover{ opacity:1; }
  .nav-actions{ display:flex; align-items:center; gap:18px; }
  .nav-actions .enter-link{ font-size:14.5px; font-weight:600; color:var(--text-dark); transition:color .3s ease; }
  .nav-actions .btn-primary{ padding:11px 22px; font-size:14px; }
  .nav-toggle{ display:none; flex-direction:column; gap:5px; padding:6px; }
  .nav-toggle span{ width:24px; height:2px; background:var(--purple-900); border-radius:2px; transition:background .3s ease; }

  /* -------- header transparente sobre o hero (só na home) -------- */
  header.site--transparent{
    background:rgb(251 250 252 / 0%); backdrop-filter:none; border-bottom-color:rgb(21 7 38 / 0%);
    margin-bottom:calc(-1 * var(--header-h, 72px));
  }
  .site--transparent .logo,
  .site--transparent .nav-links > li > a,
  .site--transparent .nav-actions .enter-link{ color:#fff; }
  .site--transparent .nav-links > li > a{ opacity:.9; }
  .site--transparent .nav-toggle span{ background:#fff; }
  .site--transparent.is-scrolled{
    background:rgba(251,250,252,.92); backdrop-filter:blur(10px); border-bottom-color:rgba(21,7,38,.06);
  }
  .site--transparent.is-scrolled .logo,
  .site--transparent.is-scrolled .nav-links > li > a,
  .site--transparent.is-scrolled .nav-actions .enter-link{ color:var(--text-dark); }
  .site--transparent.is-scrolled .logo{ color:var(--purple-900); }
  .site--transparent.is-scrolled .nav-toggle span{ background:var(--purple-900); }

  /* -------- mega menu (Soluções) -------- */
  .has-mega{ position:relative; }
  .mega-menu{
    position:absolute; top:100%; left:50%;
    transform:translateX(-50%) translateY(6px);
    width:680px;
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
    z-index:50; padding-top:14px;
  }
  .has-mega:hover .mega-menu,
  .has-mega:focus-within .mega-menu{ opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); }
  .mega-menu-inner{
    background:#fff; border-radius:18px;
    box-shadow:var(--shadow-soft); border:1px solid rgba(21,7,38,.06);
    overflow:hidden;
    display:grid; grid-template-columns:1fr 240px;
  }
  .mega-menu-list{ padding:14px; display:flex; flex-direction:column; }
  .mega-menu-item{ display:flex; align-items:flex-start; gap:12px; padding:12px; border-radius:12px; transition:background .2s ease; opacity:1; }
  .mega-menu-item:hover,
  .mega-menu-item.is-active{ background:var(--bg-card); }
  .mega-menu-ico{ width:36px; height:36px; border-radius:10px; background:rgba(174,242,107,.35); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .mega-menu-ico svg{ width:17px; height:17px; color:var(--purple-900); }
  .mega-menu-title{ display:block; font-size:14px; font-weight:700; color:var(--text-dark); opacity:1; }
  .mega-menu-desc{ display:block; font-size:12px; color:var(--text-muted); margin-top:2px; line-height:1.4; }
  .mega-menu-side{ background:var(--bg-card); padding:20px 18px; }
  /* um painel por item da esquerda; o script.js troca o .is-active no hover */
  .mega-menu-panel{ display:none; flex-direction:column; gap:10px; }
  .mega-menu-panel.is-active{ display:flex; }
  .mega-menu-side-label{ font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--text-muted); margin-bottom:4px; }
  .mega-menu-side a{ font-size:13px; font-weight:600; color:var(--text-dark); opacity:1; }
  .mega-menu-side a:hover{ color:var(--accent-purple); }
  .mega-menu-side-all{ display:inline-flex; align-items:center; gap:5px; margin-top:8px; color:var(--purple-800) !important; }
  .mega-menu-side-all svg{ width:13px; height:13px; }

  @media (max-width:900px){
    .topbar{ padding:10px 44px 10px 16px; }
    .subbar{ display:none; }
    .nav-links{
      position:absolute; top:100%; left:0; right:0;
      background:#fff; flex-direction:column; align-items:flex-start; gap:0;
      max-height:0; overflow:hidden; transition:max-height .3s ease;
      border-bottom:1px solid rgba(21,7,38,.06);
    }
    .site--transparent .nav-links > li > a{ color:var(--text-dark); }
    .nav-links.open{ max-height:600px; overflow-y:auto; }
    .nav-links a{ width:100%; padding:16px 24px; border-top:1px solid rgba(21,7,38,.05); }
    .nav-actions .enter-link{ display:none; }
    .nav-toggle{ display:flex; }
    .mega-menu{ display:none; }
    .nav-mobile-sub{ display:flex; flex-direction:column; width:100%; }
    .nav-mobile-sub a{ padding:12px 24px 12px 40px !important; font-size:13.5px !important; background:var(--bg-card); border-top:1px solid rgba(21,7,38,.04) !important; }
  }
  .nav-mobile-sub{ display:none; }

  /* ============ HERO ============ */
  .hero{
    position:relative;
    min-height:740px;
    display:flex; align-items:center;
    padding:calc(96px + var(--header-h, 72px)) 24px 76px;
    overflow:hidden;
  }
  .hero-bg{
    position:absolute; inset:0; z-index:0;
    width:100%; height:100%;
    object-fit:cover; object-position:center 25%;
  }
  .hero-scrim{
    position:absolute; inset:0; z-index:1;
    background:
      linear-gradient(100deg, rgba(15,4,26,.95) 0%, rgba(15,4,26,.82) 34%, rgba(15,4,26,.4) 60%, rgba(15,4,26,.1) 80%),
      linear-gradient(0deg, rgba(15,4,26,.5), transparent 42%);
  }
  /* -------- blobs de gradiente "respirando" atrás do texto -------- */
  .hero-glow{ position:absolute; z-index:1; border-radius:50%; filter:blur(90px); pointer-events:none; animation:heroBreathe ease-in-out infinite; }
  .hero-glow--1{ width:360px; height:360px; left:-100px; top:8%; background:var(--accent-purple); opacity:.3; animation-duration:8s; }
  .hero-glow--2{ width:280px; height:280px; left:8%; bottom:-70px; background:var(--green); opacity:.18; animation-duration:6.5s; animation-delay:1s; }
  @keyframes heroBreathe{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.18); } }
  @media (prefers-reduced-motion:reduce){ .hero-glow{ animation:none; } }

  .hero-inner{
    position:relative; z-index:2;
    max-width:var(--container); margin:0 auto; width:100%;
  }
  .hero-copy{ max-width:650px; }

  .hero-badge{
    display:inline-flex; align-items:center; gap:10px;
    background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22);
    backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
    padding:7px 15px 7px 8px; border-radius:999px;
    font-size:13px; font-weight:600; margin-bottom:24px; color:#fff;
  }
  .hero-badge-icon{ width:28px; height:28px; border-radius:50%; background:var(--green); color:var(--purple-950); display:flex; align-items:center; justify-content:center; }
  .hero-badge-icon svg{ width:16px; height:16px; }
  .hero h1{ font-size:clamp(44px,5.2vw,68px); max-width:650px; line-height:1.05; letter-spacing:-.04em; font-weight:800; color:#fff; }
  .hero h1 em{ font-style:normal; background:linear-gradient(90deg,var(--green),#fff); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .hero p.lead{ margin-top:22px; font-size:18px; line-height:1.6; color:rgba(255,255,255,.86); max-width:610px; }
  .hero-ctas{ display:flex; align-items:center; gap:16px; margin-top:32px; flex-wrap:wrap; }
  .hero .btn-outline{ color:#fff; border-color:rgba(255,255,255,.4); }
  .hero .btn-outline:hover{ border-color:#fff; background:rgba(255,255,255,.1); }
  .hero-benefits{ margin-top:22px; display:flex; align-items:center; flex-wrap:wrap; gap:10px 22px; color:rgba(255,255,255,.78); }
  .hero-benefits span{ display:flex; align-items:center; gap:7px; font-size:13px; font-weight:600; }
  .hero-benefits svg{ width:15px; height:15px; fill:none; stroke:var(--green); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }

  /* -------- cards flutuantes sobre a foto (lado direito, "vivo") -------- */
  .hero-float{
    position:absolute; z-index:2;
    display:flex; align-items:center; gap:10px;
    background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.25);
    backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
    padding:10px 16px 10px 10px; border-radius:999px;
    font-size:13px; font-weight:600; color:#fff;
    box-shadow:0 12px 30px rgba(15,4,26,.25);
    animation:heroFloat 5s ease-in-out infinite;
  }
  .hero-float-ico{ width:26px; height:26px; border-radius:50%; background:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .hero-float-ico svg{ width:13px; height:13px; color:var(--purple-950); }
  .hero-float--1{ top:16%; right:9%; animation-duration:5s; animation-delay:0s; }
  .hero-float--2{ top:48%; right:3%; animation-duration:6s; animation-delay:.6s; }
  .hero-float--3{ bottom:16%; right:14%; animation-duration:5.5s; animation-delay:1.2s; }
  @keyframes heroFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-10px); } }
  @media (prefers-reduced-motion:reduce){ .hero-float{ animation:none; } }

  @media (max-width:980px){
    .hero{ min-height:650px; padding:110px 20px 64px; text-align:center; }
    .hero-copy{ margin:0 auto; }
    .hero p.lead{ margin-left:auto; margin-right:auto; }
    .hero-ctas{ justify-content:center; }
    .hero-benefits{ justify-content:center; }
    .hero-float{ display:none; }
    .hero-scrim{ background:linear-gradient(0deg, rgba(15,4,26,.95), rgba(15,4,26,.6) 55%, rgba(15,4,26,.35)); }
  }
  @media (max-width:640px){
    .container{ padding-left:18px; padding-right:18px; }
    .nav{ padding:13px 18px; }
    .nav-actions .btn-primary{ display:none; }
    .hero{ min-height:690px; padding:104px 18px 54px; }
    .hero-bg{ object-position:62% center; }
    .hero h1{ font-size:clamp(38px,11.5vw,50px); }
    .hero p.lead{ font-size:16px; line-height:1.55; }
    .hero-badge{ font-size:11.5px; margin-bottom:20px; }
    .hero-ctas{ width:100%; gap:10px; margin-top:27px; }
    .hero-ctas .btn{ width:100%; min-height:50px; }
    .hero-benefits{ align-items:flex-start; justify-content:flex-start; max-width:285px; margin:20px auto 0; gap:9px; }
    .hero-benefits span{ width:100%; }
    .logos-section{ border-radius:22px 22px 0 0; padding:30px 0 46px; }
    .logos-title{ padding:0 24px; line-height:1.45; }
  }

  /* ============ INTEGRAÇÕES (mini) ============ */
  .integracoes-mini{ text-align:center; padding:70px 0 10px; }
  .integracoes-mini-title{ font-size:clamp(22px,3vw,30px); font-weight:800; color:var(--text-dark); max-width:640px; margin:0 auto; }
  .integracoes-mini-row{ display:flex; justify-content:center; align-items:center; gap:72px; margin-top:42px; flex-wrap:wrap; }
  .integracoes-mini-logo{ height:46px; width:auto; object-fit:contain; }
  .integracoes-mini-logo--asaas{ height:40px; }
  @media (max-width:640px){
    .integracoes-mini-row{ gap:40px; }
    .integracoes-mini-logo{ height:34px; }
    .integracoes-mini-logo--asaas{ height:30px; }
  }

  /* ============ INTEGRAÇÕES (órbita) ============ */
  .integracoes-orbit{ display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:60px; padding:60px 0 100px; }
  .orbit-visual{ width:100%; max-width:420px; margin:0 auto; }
  .orbit-diagram-img{ width:100%; height:auto; }

  .orbit-text h2{ font-size:clamp(24px,3vw,32px); font-weight:800; color:var(--text-dark); }
  .orbit-text h3{ margin-top:18px; font-size:16px; font-weight:700; color:var(--text-dark); }
  .orbit-text p{ margin-top:10px; font-size:14.5px; color:var(--text-muted); line-height:1.6; max-width:440px; }
  .orbit-text .btn{ margin-top:24px; }

  @media (max-width:900px){
    .integracoes-orbit{ grid-template-columns:1fr; text-align:center; }
    .orbit-text p{ margin-left:auto; margin-right:auto; }
    .integracoes-mini-row{ gap:32px; }
  }

  /* ============ LOGOS MARQUEE ============ */
  .logos-section{ position:relative; z-index:1; background:#fff; border-radius:var(--radius-xl) var(--radius-xl) 0 0; padding:36px 0 60px; }
  .logos-title{ text-align:center; font-size:13px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--text-muted); margin-bottom:24px; }
  .marquee{ overflow:hidden; position:relative; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
  .marquee-track{ display:flex; gap:56px; width:max-content; animation:scroll 26s linear infinite; }
  .marquee:hover .marquee-track{ animation-play-state:paused; }
  @keyframes scroll{ from{ transform:translateX(0) } to{ transform:translateX(-50%) } }
  .logo-pill{ font-family:var(--font-head); font-weight:700; font-size:19px; color:var(--text-muted); opacity:.55; white-space:nowrap; }
  @media (prefers-reduced-motion:reduce){ .marquee-track{ animation:none; } }

  /* ============ EMA IA ============ */
  .ema-intro{ display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:60px; padding:70px 0; }
  .ema-intro-visual{ position:relative; display:flex; align-items:center; justify-content:center; }
  .ema-intro-glow{
    position:absolute; width:70%; aspect-ratio:1; border-radius:50%;
    background:radial-gradient(circle, rgba(174,242,107,.28), transparent 70%);
    filter:blur(20px);
  }
  .ema-intro-img{ position:relative; width:62%; max-width:260px; height:auto; filter:drop-shadow(0 20px 30px rgba(21,7,38,.18)); }
  .ema-intro-text .eyebrow{ display:block; margin-bottom:14px; }
  .ema-intro-text h2{ font-size:clamp(24px,3vw,32px); font-weight:800; color:var(--text-dark); }
  .ema-intro-text > p{ margin-top:14px; font-size:15px; color:var(--text-muted); line-height:1.6; max-width:460px; }
  .ema-caps{ margin-top:26px; display:flex; flex-direction:column; gap:14px; }
  .ema-caps li{ display:flex; align-items:flex-start; gap:12px; font-size:15px; color:var(--text-dark); font-weight:500; }
  .ema-caps-ico{ width:22px; height:22px; border-radius:50%; background:rgba(174,242,107,.4); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:1px; }
  .ema-caps-ico svg{ width:12px; height:12px; color:#2C6E00; }

  @media (max-width:900px){
    .ema-intro{ grid-template-columns:1fr; text-align:center; padding:50px 0; }
    .ema-intro-visual{ margin-bottom:8px; }
    .ema-intro-text .eyebrow{ margin-left:auto; margin-right:auto; }
    .ema-intro-text > p{ margin-left:auto; margin-right:auto; }
    .ema-caps li{ text-align:left; }
  }

  /* ============ SECTION HEADER (shared) ============ */
  .section-head{ text-align:center; max-width:640px; margin:0 auto 52px; }
  .section-head h2{ font-size:clamp(28px,4vw,40px); font-weight:800; color:var(--purple-950); margin-top:14px; }
  .section-head p{ margin-top:14px; font-size:16px; color:var(--text-muted); line-height:1.6; }
  .section-head.on-dark .eyebrow{ color:var(--green); }
  .section-head.on-dark .eyebrow::before{ background:var(--green); }
  .section-head.on-dark h2{ color:#fff; }
  .section-head.on-dark p{ color:var(--text-inverse-muted); }

  /* ============ SOLUÇÕES (painel interativo) ============ */
  .solucoes{ padding:90px 0; position:relative; }

  .solv2-panel{
    display:grid; grid-template-columns:380px 1fr;
    background:var(--bg-card); border-radius:var(--radius-xl);
    overflow:hidden; position:relative; min-height:640px;
  }

  /* -------- lista à esquerda -------- */
  .solv2-list{ display:flex; flex-direction:column; position:relative; z-index:1; }
  .solv2-item{
    display:block; width:100%; text-align:left;
    padding:26px 56px 26px 32px; border:none; background:transparent;
    border-bottom:1px solid rgba(21,7,38,.08);
    font-family:var(--font-body); cursor:pointer;
    outline:none;
  }
  .solv2-item:focus-visible{ outline:2px solid var(--accent-purple); outline-offset:-2px; }
  .solv2-item:nth-child(even){ background:rgba(21,7,38,.035); }
  .solv2-item.is-active{ background:var(--bg-card); padding-top:30px; padding-bottom:34px; }
  .solv2-item-top{ display:flex; align-items:center; gap:14px; }
  .solv2-icon{
    width:36px; height:36px; border-radius:50%; background:var(--green);
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
  }
  .solv2-icon svg{ width:18px; height:18px; color:var(--purple-900); }
  .solv2-label{ font-size:16px; font-weight:700; color:var(--text-dark); }
  .solv2-desc{
    display:block; max-height:0; opacity:0; overflow:hidden;
    font-size:14px; line-height:1.6; color:var(--text-muted);
    margin-left:50px; margin-top:0;
    transition:max-height .35s ease, opacity .3s ease, margin-top .35s ease;
  }
  .solv2-item.is-active .solv2-desc{ max-height:140px; opacity:1; margin-top:10px; }

  /* -------- card flutuante à direita -------- */
  .solv2-stage{ position:relative; }
  .solv2-card{
    position:absolute; z-index:2; top:56px; bottom:-48px; left:-28px; right:32px;
    background:#fff; border-radius:28px 28px 0 0;
    box-shadow:-24px 0 60px rgba(21,7,38,.06), 0 30px 60px rgba(21,7,38,.10);
    padding:44px 48px; overflow-y:auto;
  }
  .solv2-card h3{ font-size:26px; font-weight:800; color:var(--text-dark); }
  .solv2-card > p{ margin-top:10px; font-size:14.5px; color:var(--text-muted); }

  .solv2-choose{ margin-top:34px; }
  .solv2-choose h4{ font-size:19px; font-weight:800; color:var(--text-dark); margin-bottom:18px; }
  .solv2-filter-label{ display:block; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-muted); margin-bottom:14px; }

  .sol-panel[hidden]{ display:none; }
  .sol-panel{ animation:panelIn .35s ease; }
  @keyframes panelIn{ from{ opacity:0; transform:translateY(6px); } to{ opacity:1; transform:translateY(0); } }
  .panel-note{ font-size:13px; color:var(--text-muted); line-height:1.55; margin-top:8px; }
  .panel-note--tag{ display:flex; align-items:center; gap:6px; margin-top:14px; font-weight:600; color:var(--accent-purple); }
  .panel-note--tag svg{ width:14px; height:14px; flex-shrink:0; }

  /* -------- painel Canais -------- */
  .chan-list{ display:flex; flex-direction:column; gap:10px; }
  .chan-row{ display:flex; align-items:flex-start; gap:13px; background:var(--bg-card); border-radius:14px; padding:15px 16px; }
  .chan-ico{ width:38px; height:38px; border-radius:11px; background:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .chan-ico svg{ width:18px; height:18px; color:var(--purple-900); }
  .chan-text{ display:flex; flex-direction:column; gap:4px; min-width:0; }
  .chan-name{ font-family:var(--font-head); font-size:14.5px; font-weight:700; color:var(--text-dark); }
  .chan-use{ font-size:12.5px; color:var(--text-muted); line-height:1.55; }

  /* -------- seletor de canais (Campanhas / Cashback) -------- */
  .channel-picker{ display:flex; gap:10px; flex-wrap:wrap; margin-top:12px; }
  .channel-chip{
    display:inline-flex; align-items:center; gap:6px;
    font-family:var(--font-body); font-size:13px; font-weight:700;
    color:var(--text-muted); background:var(--bg-card); border:1.5px solid transparent;
    padding:9px 16px; border-radius:999px; cursor:pointer; transition:all .2s ease;
  }
  .channel-chip svg{ width:13px; height:13px; }
  .channel-chip.is-active{ background:rgba(174,242,107,.3); color:var(--purple-900); border-color:rgba(174,242,107,.6); }
  .channel-chip.is-ai.is-active{ background:rgba(139,47,201,.12); color:var(--accent-purple); border-color:rgba(139,47,201,.35); }

  /* -------- Campanhas: lista de campanhas + recomendação de produtos -------- */
  .camp-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:26px; }
  .channel-tabs{ display:flex; gap:8px; flex-wrap:wrap; }
  .channel-tab{
    display:inline-flex; align-items:center; gap:6px;
    font-family:var(--font-body); font-size:12px; font-weight:700;
    color:var(--text-muted); background:var(--bg-card); border:none;
    padding:8px 13px; border-radius:999px; cursor:pointer; transition:all .2s ease;
  }
  .channel-tab svg{ width:13px; height:13px; }
  .channel-tab.is-active{ background:var(--purple-900); color:#fff; }
  .channel-tab-count{ font-weight:800; opacity:.85; }
  .camp-new-btn{
    display:inline-flex; align-items:center; gap:6px;
    background:var(--purple-900); color:#fff; font-size:12px; font-weight:700;
    padding:9px 15px; border-radius:999px; white-space:nowrap;
  }
  .camp-new-btn svg{ width:12px; height:12px; }

  .camp-list{ display:flex; flex-direction:column; margin-top:20px; padding-bottom:22px; border-bottom:1px solid rgba(21,7,38,.07); }
  .camp-row{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 0; border-bottom:1px solid rgba(21,7,38,.07); }
  .camp-row:last-child{ border-bottom:none; padding-bottom:0; }
  .camp-row-main{ display:flex; flex-direction:column; gap:3px; min-width:0; }
  .camp-row-name{ font-size:13.5px; font-weight:700; color:var(--text-dark); }
  .camp-row-meta{ display:flex; align-items:center; gap:6px; font-size:11.5px; color:var(--text-muted); }
  .status-dot{ width:6px; height:6px; border-radius:50%; flex-shrink:0; }
  .status-dot--sent{ background:var(--green-dark); }
  .status-dot--scheduled{ background:var(--accent-purple); }
  .status-dot--draft{ background:#B9B2C4; }
  .camp-row-stats{ display:flex; gap:16px; flex-shrink:0; }
  .camp-row-stats span{ display:flex; flex-direction:column; align-items:flex-end; font-size:9.5px; color:var(--text-muted); }
  .camp-row-stats strong{ font-size:13px; font-weight:800; color:var(--text-dark); }
  .camp-row-stats-empty{ font-size:11px; color:#C7C0D1; flex-shrink:0; }

  .reco-list{ display:flex; flex-direction:column; gap:10px; margin-top:16px; }
  .reco-card{ display:flex; align-items:center; gap:14px; background:var(--bg-card); border-radius:14px; padding:12px 14px; }
  .reco-thumb{ width:44px; height:44px; border-radius:10px; flex-shrink:0; object-fit:cover; background:var(--bg-card); }
  .reco-name{ display:block; font-size:14px; font-weight:700; color:var(--text-dark); }
  .reco-tag{ display:block; font-size:12px; color:var(--accent-purple); font-weight:600; margin-top:2px; }

  /* -------- Newsletter: destaque, setup e prévia -------- */
  .auto-feature-ico{ width:50px; height:50px; border-radius:13px; background:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .auto-feature-ico svg{ width:23px; height:23px; color:var(--purple-900); }

  .news-head{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:26px; padding-bottom:22px; border-bottom:1px solid rgba(21,7,38,.07); }
  .news-head-left{ display:flex; align-items:center; gap:14px; }
  .news-head-title{ display:block; font-size:15.5px; font-weight:800; color:var(--text-dark); margin-bottom:2px; }
  .news-head-sub{ display:block; font-size:12.5px; color:var(--text-muted); }

  .news-setup{ display:flex; flex-wrap:wrap; gap:28px; padding:22px 0; border-bottom:1px solid rgba(21,7,38,.07); }
  .news-setup-field{ min-width:200px; }

  .news-preview{ border:1px solid rgba(21,7,38,.08); border-radius:16px; padding:18px; margin-top:16px; }
  .news-preview-top{ display:flex; align-items:center; gap:6px; margin-bottom:14px; }
  .news-dot{ width:8px; height:8px; border-radius:50%; background:rgba(21,7,38,.15); display:block; }
  .news-preview-tag{ margin-left:auto; font-size:10.5px; font-weight:700; color:var(--accent-purple); background:rgba(139,47,201,.1); padding:3px 9px; border-radius:999px; }
  .news-subject{ font-size:13px; color:var(--text-muted); padding-bottom:14px; border-bottom:1px dashed rgba(21,7,38,.12); margin-bottom:14px; }
  .news-subject strong{ color:var(--text-dark); }
  .news-preview-footnote{ display:block; margin-top:14px; font-size:11.5px; color:var(--text-muted); font-style:italic; }

  /* -------- mockup do e-mail em si -------- */
  .news-email{ border-radius:12px; overflow:hidden; border:1px solid rgba(21,7,38,.08); }

  .news-email-nav{ display:flex; align-items:center; justify-content:space-between; background:var(--purple-900); padding:12px 16px; }
  .news-email-logo{ display:flex; align-items:center; gap:6px; color:#fff; font-weight:700; font-size:12.5px; }
  .news-email-logo svg{ width:13px; height:13px; color:var(--green); }
  .news-email-links{ color:var(--text-inverse-muted); font-size:10px; }

  .news-email-hero{ display:flex; align-items:flex-start; gap:18px; padding:24px 16px 20px; }
  .news-email-hero-text{ flex:1; min-width:0; padding-top:6px; }
  .news-email-badge{ display:inline-block; font-size:10px; font-weight:700; color:var(--accent-purple); background:rgba(139,47,201,.1); padding:4px 10px; border-radius:20px; margin-bottom:10px; }
  .news-email-hero-text h5{ font-size:33px; font-weight:900; color:var(--text-dark); line-height:27px; margin:0 0 15px; }
  .news-email-hero-text h5 em{ font-style:normal; color:var(--accent-purple); }
  .news-email-hero-text p{ font-size:11.5px; color:var(--text-muted); margin:0 0 12px; }
  .news-email-cta{ display:inline-flex; align-items:center; gap:6px; background:var(--purple-900); color:#fff; font-size:11px; font-weight:700; padding:8px 14px; border-radius:8px; }
  .news-email-cta svg{ width:12px; height:12px; }
  .news-email-hero-img{ width:44%; height:190px; border-radius:12px; flex-shrink:0; object-fit:contain; background:var(--bg-card); }

  .news-email-products{ padding:2px 16px 18px; }
  .news-email-products h6{ font-size:10.5px; font-weight:700; color:var(--text-dark); text-transform:uppercase; letter-spacing:.03em; margin:0 0 12px; }
  .news-email-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
  .news-email-product-img{ width:100%; height:120px; border-radius:8px; margin-bottom:8px; object-fit:contain; background:var(--bg-card); }
  .news-email-product-name{ display:block; font-size:11px; font-weight:700; color:var(--text-dark); }
  .news-email-product-price{ display:block; font-size:10.5px; color:var(--text-muted); margin:2px 0 4px; }
  .news-email-product-link{ display:block; font-size:10px; font-weight:700; color:var(--accent-purple); }

  .news-email-shipping{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    background:var(--purple-950); border-radius:12px; padding:12px 14px; margin:0 16px 18px;
  }
  .news-email-shipping-left{ display:flex; align-items:center; gap:10px; min-width:0; }
  .news-email-shipping-ico{ width:30px; height:30px; border-radius:8px; background:rgba(255,255,255,.12); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .news-email-shipping-ico svg{ width:15px; height:15px; color:var(--green); }
  .news-email-shipping-title{ display:block; font-size:11.5px; font-weight:700; color:#fff; }
  .news-email-shipping-sub{ display:block; font-size:10px; color:var(--text-inverse-muted); margin-top:1px; }
  .news-email-shipping-btn{
    display:inline-flex; align-items:center; gap:5px; flex-shrink:0;
    background:#fff; color:var(--purple-950); font-size:10.5px; font-weight:700;
    padding:7px 12px; border-radius:8px; white-space:nowrap;
  }
  .news-email-shipping-btn svg{ width:11px; height:11px; }

  .news-email-footer{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:16px; border-top:1px solid rgba(21,7,38,.07); }
  .news-email-social{ display:flex; gap:8px; }
  .news-email-social span{ width:26px; height:26px; border-radius:50%; border:1px solid rgba(21,7,38,.12); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .news-email-social svg{ width:12px; height:12px; color:var(--text-dark); }
  .news-email-help{ font-size:10px; color:var(--text-muted); text-align:right; line-height:1.6; }
  .news-email-help a{ font-size:10px; font-weight:700; color:var(--accent-purple); }
  .news-email-legal{ padding:14px 16px 18px; text-align:center; }
  .news-email-legal p{ margin:0 0 6px; font-size:9.5px; color:var(--text-muted); line-height:1.6; }
  .news-email-legal a{ font-size:9.5px; color:var(--text-muted); text-decoration:underline; }

  /* -------- Automações: switch Automáticas / Manuais -------- */
  .auto-view-row{ display:flex; justify-content:flex-end; margin-bottom:22px; }
  .auto-view-switch{ display:inline-flex; gap:2px; background:var(--bg-card); border-radius:999px; padding:3px; }
  .auto-view-btn{
    font-family:var(--font-body); font-size:12px; font-weight:700;
    color:var(--text-muted); background:transparent; border:none;
    padding:7px 14px; border-radius:999px; cursor:pointer; transition:all .2s ease;
  }
  .auto-view-btn.is-active{ background:#fff; color:var(--purple-900); box-shadow:0 1px 5px rgba(21,7,38,.14); }
  .auto-subview[hidden]{ display:none; }

  /* -------- Automações: mockup do construtor de fluxo (Manuais) -------- */
  .mockup{ background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:var(--radius-md); padding:20px; margin-top:20px; }
  .mockup__toolbar{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
  .mockup__logo{ display:flex; align-items:center; gap:6px; font-weight:700; font-size:13px; color:var(--purple-800); }
  .mockup__logo svg{ width:14px; height:14px; color:var(--green); }
  .mockup__dots{ display:flex; gap:5px; }
  .mockup__dots i{ width:6px; height:6px; border-radius:50%; background:rgba(21,7,38,.15); display:block; }

  .flow-tag{ display:inline-block; font-size:11px; font-weight:700; letter-spacing:.03em; color:var(--purple-800); background:rgba(174,242,107,.35); padding:4px 10px; border-radius:20px; margin-bottom:14px; }
  .flow-node{ display:flex; align-items:center; gap:10px; background:var(--bg-card); border-radius:10px; padding:12px 14px; font-size:13px; font-weight:600; color:var(--text-dark); }
  .flow-node svg{ width:16px; height:16px; flex-shrink:0; color:var(--purple-800); }
  .flow-node--decision{ background:#EAE2F5; }
  .flow-node--action{ background:#fff; border:1px solid rgba(21,7,38,.1); font-size:12.5px; }
  .flow-line{ width:2px; height:18px; background:rgba(21,7,38,.15); margin:0 auto; }
  .flow-branches{ display:flex; gap:16px; position:relative; padding-top:18px; margin-top:2px; }
  .flow-branches::before{ content:''; position:absolute; top:0; left:calc(25% - 8px); right:calc(25% - 8px); height:2px; background:rgba(21,7,38,.15); }
  .flow-branch{ position:relative; flex:1; display:flex; flex-direction:column; align-items:center; gap:8px; }
  .flow-branch::before{ content:''; position:absolute; top:-18px; height:18px; width:2px; background:rgba(21,7,38,.15); left:50%; transform:translateX(-50%); }
  .flow-branch__label{ font-size:11px; font-weight:700; padding:2px 8px; border-radius:20px; }
  .flow-branch__label--yes{ background:rgba(174,242,107,.4); color:#2C6E00; }
  .flow-branch__label--no{ background:rgba(230,86,86,.15); color:#B23A3A; }

  /* -------- Automações: filtro de categorias + lista com liga/desliga -------- */
  .cat-filter{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px; }
  .cat-chip{
    font-family:var(--font-body); font-size:12.5px; font-weight:700;
    color:var(--text-muted); background:var(--bg-card); border:1.5px solid transparent;
    padding:7px 14px; border-radius:999px; cursor:pointer; transition:all .2s ease;
  }
  .cat-chip.is-active{ background:var(--purple-900); color:#fff; }
  .auto-list{ display:flex; flex-direction:column; gap:4px; max-height:330px; overflow-y:auto; }
  .auto-row{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 4px; border-bottom:1px solid rgba(21,7,38,.07); }
  .auto-row:last-child{ border-bottom:none; }
  .auto-row[hidden]{ display:none; }
  .auto-row-left{ display:flex; align-items:center; gap:14px; }
  .auto-ico{ width:38px; height:38px; border-radius:10px; background:var(--bg-card); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .auto-ico svg{ width:18px; height:18px; color:var(--purple-800); }
  .auto-name{ display:block; font-size:14.5px; font-weight:700; color:var(--text-dark); }
  .auto-desc{ display:block; font-size:12.5px; color:var(--text-muted); margin-top:2px; }
  .toggle{ width:42px; height:24px; border-radius:20px; background:#E3DEEA; position:relative; flex-shrink:0; border:none; cursor:pointer; transition:background .2s ease; }
  .toggle .toggle-dot{ position:absolute; top:2px; left:2px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(21,7,38,.25); transition:transform .2s ease; }
  .toggle.is-on{ background:var(--green); }
  .toggle.is-on .toggle-dot{ transform:translateX(18px); }

  /* -------- Cashback: regra + canais + cupom -------- */
  .cash-rule{ display:flex; flex-direction:column; gap:12px; }
  .cash-rule-row{ display:flex; align-items:center; gap:10px; font-size:14px; color:var(--text-dark); flex-wrap:wrap; }
  .cash-chip{ font-weight:800; font-size:13px; background:var(--bg-card); color:var(--purple-800); padding:5px 12px; border-radius:8px; }
  .cash-chip--green{ background:rgba(174,242,107,.4); color:#2C6E00; }
  .cash-channels{ margin-top:24px; padding-top:22px; border-top:1px solid rgba(21,7,38,.07); }
  .cash-voucher{
    margin-top:20px; display:flex; align-items:center; gap:16px;
    background:linear-gradient(90deg,var(--purple-900),var(--purple-800));
    border-radius:16px; padding:18px 20px; position:relative; overflow:hidden;
  }
  .cash-voucher::before,.cash-voucher::after{ content:''; position:absolute; width:22px; height:22px; background:var(--bg-light); border-radius:50%; top:50%; transform:translateY(-50%); }
  .cash-voucher::before{ left:-11px; }
  .cash-voucher::after{ right:-11px; }
  .cash-voucher-pct{ font-family:var(--font-head); font-size:24px; font-weight:800; color:var(--green); background:rgba(255,255,255,.08); border-radius:12px; padding:10px 14px; flex-shrink:0; }
  .cash-voucher-title{ display:block; font-size:14.5px; font-weight:700; color:#fff; }
  .cash-voucher-code{ display:block; font-size:12px; color:var(--text-inverse-muted); margin-top:3px; font-family:monospace; letter-spacing:.02em; }

  @media (max-width:980px){
    .solv2-panel{ grid-template-columns:1fr; min-height:0; }
    .solv2-stage{ min-height:560px; }
    .solv2-card{ position:static; margin:0 20px 28px; border-radius:24px; box-shadow:var(--shadow-soft); }
  }
  @media (max-width:560px){
    .solv2-item{ padding:20px 22px; }
    .solv2-card{ padding:28px 24px; margin:0 16px 24px; }
  }

  /* ============ COMO FUNCIONA ============ */
  .como-funciona{ padding:90px 0; background:var(--bg-card); }
  .steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; position:relative; }
  .steps::before{ content:''; position:absolute; top:34px; left:12%; right:12%; height:2px; background:repeating-linear-gradient(90deg,rgba(21,7,38,.18) 0 8px,transparent 8px 16px); }
  .step{ position:relative; background:#fff; border-radius:var(--radius-lg); padding:32px 26px; box-shadow:var(--shadow-card); display:flex; flex-direction:column; }
  .step-num{ width:42px; height:42px; border-radius:50%; background:var(--purple-900); color:var(--green); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:16px; margin-bottom:20px; position:relative; z-index:2; }
  .step h3{ font-size:18px; font-weight:700; margin-bottom:10px; }
  .step p{ font-size:14.5px; color:var(--text-muted); line-height:1.6; }
  @media (max-width:900px){ .steps{ grid-template-columns:1fr; } .steps::before{ display:none; } }

  /* -------- mini-ilustrações de cada passo -------- */
  .step-visual{ margin-top:24px; padding-top:18px; border-top:1px solid rgba(21,7,38,.07); }

  .connect-row{ display:flex; align-items:center; gap:8px; }
  .connect-chip{ font-size:11px; font-weight:700; color:var(--text-muted); background:var(--bg-card); padding:6px 10px; border-radius:8px; white-space:nowrap; }
  .connect-line{ flex:1; height:2px; background:repeating-linear-gradient(90deg, rgba(21,7,38,.2) 0 6px, transparent 6px 12px); }
  .connect-node{ width:28px; height:28px; border-radius:50%; background:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .connect-node svg{ width:14px; height:14px; color:var(--purple-950); }

  .learn-tags{ display:flex; flex-wrap:wrap; gap:8px; }
  .learn-tag{ display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:600; color:var(--text-dark); background:var(--bg-card); padding:6px 10px; border-radius:20px; }
  .learn-tag svg{ width:13px; height:13px; color:var(--accent-purple); flex-shrink:0; }

  .send-bubble{ display:flex; align-items:center; gap:8px; background:var(--purple-950); color:#fff; font-size:12.5px; font-weight:600; padding:10px 14px; border-radius:12px 12px 12px 4px; }
  .send-bubble svg{ width:14px; height:14px; color:var(--green); flex-shrink:0; }
  .send-status{ display:flex; align-items:center; gap:7px; margin-top:12px; font-size:11.5px; color:var(--text-muted); font-weight:600; }
  .pulse-dot{ width:8px; height:8px; border-radius:50%; background:var(--green-dark); position:relative; flex-shrink:0; }
  .pulse-dot::after{ content:''; position:absolute; inset:0; border-radius:50%; background:var(--green-dark); animation:pulse 1.6s ease-out infinite; }
  @keyframes pulse{ 0%{ transform:scale(1); opacity:.6; } 100%{ transform:scale(2.6); opacity:0; } }

  .step-visual--ema{ display:flex; align-items:center; gap:14px; }
  .step-ema-img{ width:60px; height:auto; flex-shrink:0; }
  .step-ema-msg{ display:flex; flex-direction:column; min-width:0; }
  .step-ema-msg .send-status{ margin-top:8px; }

  /* ============ STATS ============ */
  .stats-section{ padding:80px 0; background:linear-gradient(160deg,var(--purple-900),var(--purple-950)); position:relative; overflow:hidden; }
  .stats-section::before{ content:''; position:absolute; width:420px; height:420px; background:var(--green); opacity:.14; border-radius:50%; filter:blur(90px); top:-120px; right:-80px; }
  .stats-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; position:relative; z-index:1; max-width:760px; margin:0 auto; }
  .stat-card{ text-align:center; padding:28px 16px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.09); border-radius:20px; transition:transform .25s ease, background .25s ease; }
  .stat-card:hover{ transform:translateY(-4px); background:rgba(255,255,255,.08); }
  .stat-ico{ width:42px; height:42px; border-radius:12px; background:rgba(174,242,107,.12); display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
  .stat-ico svg{ width:19px; height:19px; color:var(--green); }
  .stat-card .num{ font-family:var(--font-head); font-size:clamp(30px,4vw,44px); font-weight:800; color:var(--green); }
  .stat-card .lbl{ margin-top:8px; font-size:13.5px; color:var(--text-inverse-muted); font-weight:500; }
  @media (max-width:820px){ .stats-grid{ grid-template-columns:repeat(2,1fr); } }

  /* ============ CALCULADORA ============ */
  .calculadora{ padding:90px 0; }
  .calc-card{
    display:grid; grid-template-columns:1fr 1fr; gap:0;
    background:var(--bg-card); border-radius:var(--radius-xl); overflow:hidden;
    box-shadow:var(--shadow-soft);
  }
  .calc-input-side{ padding:48px 44px; display:flex; flex-direction:column; justify-content:center; }
  .calc-label{ display:block; font-size:13px; font-weight:700; color:var(--text-muted); margin-bottom:14px; }
  .calc-input-row{
    display:flex; align-items:center; gap:8px; background:#fff;
    border:1.5px solid rgba(21,7,38,.12); border-radius:14px; padding:14px 18px; margin-bottom:20px;
  }
  .calc-prefix{ font-size:22px; font-weight:800; color:var(--text-muted); }
  .calc-input{
    border:none; outline:none; background:transparent; width:100%;
    font-family:var(--font-head); font-size:26px; font-weight:800; color:var(--text-dark);
  }
  .calc-slider{
    -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:6px;
    background:linear-gradient(90deg,var(--accent-purple),var(--green)); outline:none; cursor:pointer;
  }
  .calc-slider::-webkit-slider-thumb{
    -webkit-appearance:none; appearance:none; width:20px; height:20px; border-radius:50%;
    background:#fff; border:3px solid var(--purple-900); cursor:pointer; box-shadow:0 2px 6px rgba(21,7,38,.25);
  }
  .calc-slider::-moz-range-thumb{
    width:20px; height:20px; border-radius:50%; background:#fff; border:3px solid var(--purple-900);
    cursor:pointer; box-shadow:0 2px 6px rgba(21,7,38,.25);
  }
  .calc-slider-labels{ display:flex; justify-content:space-between; margin-top:8px; font-size:11.5px; color:var(--text-muted); }
  .calc-label--ticket{ margin-top:26px; }
  .calc-input-row--small{ margin-bottom:0; max-width:200px; padding:11px 16px; }
  .calc-input-row--small .calc-prefix{ font-size:16px; }
  .calc-input-row--small .calc-input{ font-size:18px; }

  .calc-result-side{
    padding:48px 44px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
    background:linear-gradient(160deg,var(--purple-800),var(--purple-950)); color:#fff;
  }
  .calc-result-label{ font-size:13px; font-weight:700; color:var(--text-inverse-muted); text-transform:uppercase; letter-spacing:.03em; margin-bottom:10px; }
  .calc-breakdown{ font-size:13px; color:var(--text-inverse-muted); margin-bottom:14px; }
  .calc-breakdown-arrow{ color:var(--green); font-weight:700; margin:0 2px; }
  .calc-result-value{ font-family:var(--font-head); font-size:clamp(34px,4.5vw,48px); font-weight:800; color:var(--green); line-height:1.1; }
  .calc-result-note{ margin-top:12px; font-size:14px; color:var(--text-inverse-muted); line-height:1.5; }
  .calc-result-note strong{ color:#fff; }
  .calc-cta{ margin-top:26px; }

  @media (max-width:820px){
    .calc-card{ grid-template-columns:1fr; }
    .calc-input-side, .calc-result-side{ padding:36px 28px; }
  }

  /* ============ DEPOIMENTOS ============ */
  .depoimentos{ padding:90px 0; }
  .testi-carousel{ overflow:hidden; }
  .testi-track{ display:flex; transition:transform .6s ease; }
  .testi-slide{ flex:0 0 100%; display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
  .testi-card{ background:#fff; border:1px solid rgba(21,7,38,.07); border-radius:var(--radius-lg); padding:28px; box-shadow:var(--shadow-card); display:flex; flex-direction:column; gap:16px; }
  .testi-stars{ display:flex; gap:3px; color:var(--green-dark); }
  .testi-stars svg{ width:15px; height:15px; }
  .testi-card p.quote{ font-size:14.5px; line-height:1.65; color:var(--text-dark); font-style:italic; }
  .testi-who{ display:flex; align-items:center; gap:12px; margin-top:auto; }
  .testi-who .name{ font-size:13.5px; font-weight:700; }
  .testi-who .role{ font-size:12px; color:var(--text-muted); }
  .testi-dots{ display:flex; justify-content:center; gap:8px; margin-top:32px; }
  .testi-dot{ width:8px; height:8px; border-radius:50%; background:rgba(21,7,38,.15); border:none; cursor:pointer; padding:0; transition:all .25s ease; }
  .testi-dot.is-active{ width:24px; border-radius:4px; background:var(--purple-800); }
  @media (max-width:900px){ .testi-slide{ grid-template-columns:1fr; } }

  /* ============ CONHEÇA MAIS ============ */
  .conheca-mais{ padding:60px 0 90px; display:grid; grid-template-columns:220px 1fr; gap:40px; align-items:center; }
  .conheca-mais-head h2{ font-size:clamp(22px,3vw,28px); font-weight:800; color:var(--text-dark); margin-top:14px; }
  .conheca-mais-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
  .conheca-card{
    position:relative; display:flex; flex-direction:column; justify-content:flex-end;
    aspect-ratio:3/4; border-radius:var(--radius-lg); padding:20px;
    overflow:hidden; box-shadow:var(--shadow-card); transition:transform .25s ease;
  }
  .conheca-card:hover{ transform:translateY(-4px); }
  .conheca-card::before{
    content:''; position:absolute; inset:0;
    background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px);
    background-size:4px 4px; mix-blend-mode:overlay;
  }
  .conheca-card::after{
    content:''; position:absolute; inset:0;
    background:linear-gradient(0deg, rgba(0,0,0,.55), transparent 60%);
  }
  .conheca-card--blog{ background:url('images/card-blog.jpg') center/cover, linear-gradient(155deg,#0F0A1F,#3D1B4E 45%,#1B3A4E 80%); }
  .conheca-card--parceiros{ background:url('images/card-parceiros.jpg') center/cover, linear-gradient(155deg,#161320,#2A2733 60%); }
  .conheca-card--agencias{ background:url('images/card-agencias.jpg') center/cover, linear-gradient(155deg,#1A0A1F,#4A1350 55%,#2A0A2E); }
  .conheca-card--ema{ background:linear-gradient(155deg,#081812,#0E2B1C 55%,#0A1A12); }
  .conheca-card-label, .conheca-card-desc{ position:relative; z-index:1; display:block; }
  .conheca-card-label{ font-family:var(--font-head); font-size:19px; font-weight:800; }
  .conheca-card--blog .conheca-card-label{ color:#5EE6E6; }
  .conheca-card--parceiros .conheca-card-label{ color:var(--green); }
  .conheca-card--agencias .conheca-card-label{ color:#EC6FC2; }
  .conheca-card--ema .conheca-card-label{ color:var(--green); }
  .conheca-card-desc{ margin-top:8px; font-size:12.5px; color:rgba(255,255,255,.75); line-height:1.5; }

  @media (max-width:900px){
    .conheca-mais{ grid-template-columns:1fr; text-align:center; }
    .conheca-mais-grid{ grid-template-columns:repeat(2,1fr); }
  }
  @media (max-width:520px){ .conheca-mais-grid{ grid-template-columns:1fr; } }

  /* ============ CTA FINAL ============ */
  .cta-final{ margin-bottom:90px; border-radius:var(--radius-xl); padding:64px 40px; text-align:center; position:relative; overflow:hidden; background:linear-gradient(135deg,var(--purple-800),var(--purple-950)); }
  .cta-final::before{ content:''; position:absolute; width:300px; height:300px; background:var(--green); opacity:.18; filter:blur(80px); border-radius:50%; bottom:-100px; left:-60px; }
  .cta-final h2{ position:relative; font-size:clamp(26px,4vw,38px); font-weight:800; color:#fff; max-width:640px; margin:0 auto; }
  .cta-final p{ position:relative; margin-top:14px; color:var(--text-inverse-muted); font-size:16px; }
  .cta-final .hero-ctas{ position:relative; justify-content:center; margin-top:30px; }
  .cta-final--spaced{ margin-top:90px; }
  @media (max-width:640px){ .cta-final--spaced{ margin-top:60px; } }

  /* ============ FOOTER ============ */
  footer.site{ background:var(--purple-950); color:var(--text-inverse-muted); padding:64px 0 28px; }
  .footer-top{ display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:32px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.08); }
  .footer-brand .logo{ color:#fff; margin-bottom:14px; }
  .footer-brand p{ font-size:13.5px; line-height:1.6; max-width:260px; }
  .footer-social{ display:flex; gap:10px; margin-top:20px; }
  .footer-social a{ width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; transition:background .2s; }
  .footer-social a:hover{ background:var(--green); color:var(--purple-950); }
  .footer-social svg{ width:15px; height:15px; }
  .footer-col h4{ font-size:13px; font-weight:700; color:#fff; text-transform:uppercase; letter-spacing:.03em; margin-bottom:16px; }
  .footer-col ul li{ margin-bottom:10px; }
  .footer-col a{ font-size:14px; transition:color .2s; }
  .footer-col a:hover{ color:#fff; }
  .footer-bottom{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding-top:24px; font-size:13px; }
  .footer-bottom .legal-links{ display:flex; gap:20px; }
  @media (max-width:900px){ .footer-top{ grid-template-columns:repeat(2,1fr); } }

  /* ============ PÁGINAS DE SOLUÇÃO (Newsletter/Campanhas/Automações/Cashback) ============ */
  .solution-hero{ padding:70px 0 40px; text-align:center; }
  .solution-hero .section-head{ margin-bottom:0; max-width:720px; }
  .solution-hero .section-head h1{ font-size:clamp(32px,4.6vw,48px); font-weight:800; color:var(--purple-950); margin-top:14px; }
  .solution-hero .hero-ctas{ justify-content:center; margin-top:30px; }

  .hero-tags{ display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin:16px 0 4px; }
  .hero-tag{ font-size:12px; font-weight:700; padding:5px 14px; border-radius:999px; background:var(--bg-card); color:var(--text-dark); }
  .hero-tag--soon{ background:transparent; border:1px dashed rgba(21,7,38,.2); color:var(--text-muted); }

  .control-grid{ display:grid; grid-template-columns:1fr 1fr; gap:44px; }
  .control-grid h3{ font-size:20px; font-weight:800; color:var(--text-dark); margin-bottom:10px; }
  .control-grid p{ font-size:14.5px; color:var(--text-muted); line-height:1.6; }
  @media (max-width:820px){ .control-grid{ grid-template-columns:1fr; gap:30px; } }

  .solution-showcase{ padding:30px 0 70px; }
  .solution-showcase-card{
    max-width:640px; margin:0 auto;
    background:#fff; border-radius:var(--radius-xl);
    box-shadow:var(--shadow-soft); border:1px solid rgba(21,7,38,.06);
    padding:44px 48px;
  }
  .solv2-card--standalone{ position:static; max-width:none; margin:0; padding:0; box-shadow:none; border-radius:0; overflow:visible; }

  /* ============ EMA IA (hero escuro) ============ */
  .ema-hero{ position:relative; background:var(--purple-950); padding:100px 24px 0; text-align:center; }
  .ema-hero-glow{
    position:absolute; z-index:0; left:50%; top:32%; transform:translate(-50%,-50%);
    width:640px; height:640px; max-width:100vw; border-radius:50%;
    background:var(--green); opacity:.16; filter:blur(120px); pointer-events:none;
    animation:heroBreathe 7s ease-in-out infinite;
  }
  .ema-hero-inner{ position:relative; z-index:2; }
  .ema-hero-crumb{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--text-inverse-muted); margin-bottom:28px; }
  .ema-hero-crumb a{ color:inherit; }
  .ema-hero-crumb a:hover{ color:#fff; }
  .ema-hero-crumb svg{ width:14px; height:14px; opacity:.6; }
  .ema-hero-crumb span{ color:#fff; }
  .ema-hero h1{ font-size:clamp(32px,5vw,52px); font-weight:800; color:#fff; max-width:720px; margin:0 auto; line-height:1.15; }
  .ema-hero-inner p{ margin-top:20px; font-size:17px; color:var(--text-inverse-muted); max-width:640px; margin-left:auto; margin-right:auto; line-height:1.6; }
  .ema-hero-ctas{ justify-content:center; margin-top:32px; }
  .ema-hero-note{ display:block; margin-top:18px; font-size:13px; color:var(--text-inverse-muted); opacity:.8; }
  .ema-hero-mascot{
    position:relative; z-index:3; width:130px; margin:36px auto -70px;
    filter:drop-shadow(0 20px 40px rgba(0,0,0,.35));
  }
  .ema-hero-mascot img{ width:100%; height:auto; display:block; }
  @media (prefers-reduced-motion:reduce){ .ema-hero-glow{ animation:none; } }
  @media (max-width:640px){
    .ema-hero{ padding:90px 20px 0; }
    .ema-hero-glow{ width:420px; height:420px; }
    .ema-hero-mascot{ width:100px; margin:24px auto -40px; }
  }

  .ema-capacidades{ position:relative; z-index:1; background:#fff; border-radius:var(--radius-xl) var(--radius-xl) 0 0; padding-top:60px; }
  @media (max-width:640px){ .ema-capacidades{ padding-top:40px; } }

  /* ============ PÁGINAS INSTITUCIONAIS (Parceiros/Agências/Ema IA) ============ */
  .page-photo{ padding:10px 0 70px; }
  .page-photo-inner{
    max-width:460px; margin:0 auto; aspect-ratio:4/5;
    border-radius:var(--radius-xl); overflow:hidden; box-shadow:var(--shadow-soft);
    background:var(--bg-card);
  }
  .page-photo-inner img{ width:100%; height:100%; object-fit:cover; display:block; }
  .page-photo-inner--contain{ position:relative; }
  .page-photo-inner--contain::before{
    content:''; position:absolute; inset:0;
    background:radial-gradient(circle, rgba(174,242,107,.25), transparent 70%);
  }
  .page-photo-inner--contain img{ object-fit:contain; padding:14%; position:relative; }

  /* ============ EMA IA (capacidades) ============ */
  .ema-features{ display:flex; flex-direction:column; gap:70px; margin-top:50px; }
  .ema-feature{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
  .ema-feature--reverse .ema-feature-visual{ order:-1; }
  .ema-feature-num{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:var(--purple-950); color:var(--green); font-family:var(--font-head); font-weight:800; font-size:14px; margin-bottom:16px; }
  .ema-feature-text h3{ font-size:22px; font-weight:800; color:var(--text-dark); margin-bottom:12px; }
  .ema-feature-text p{ font-size:15px; color:var(--text-muted); line-height:1.65; }
  .ema-feature-text p.ema-feature-quote{ margin-top:16px; padding:14px 16px; background:var(--bg-card); border-left:3px solid var(--accent-purple); border-radius:8px; font-size:13.5px; font-style:italic; color:var(--text-dark); line-height:1.5; }

  .ema-feature-link{ display:inline-flex; align-items:center; gap:6px; margin-top:14px; font-size:14px; font-weight:700; color:var(--accent-purple); }
  .ema-feature-link:hover{ text-decoration:underline; }
  .ema-feature-visual{ display:flex; justify-content:center; }
  .ema-card{ width:100%; max-width:380px; background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:18px; box-shadow:var(--shadow-card); padding:24px; }
  .ema-card-label{ display:block; font-size:12px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--text-muted); margin-bottom:16px; }

  .ema-product-row{ display:flex; flex-direction:column; gap:10px; }
  .ema-product-chip{ display:flex; align-items:center; gap:10px; background:var(--bg-card); border-radius:12px; padding:8px 12px; }
  .ema-product-chip img{ width:36px; height:36px; border-radius:8px; object-fit:cover; flex-shrink:0; }
  .ema-product-name{ flex:1; font-size:13px; font-weight:600; color:var(--text-dark); }
  .ema-product-match{ font-size:11px; font-weight:700; color:#2C6E00; background:rgba(174,242,107,.35); padding:3px 8px; border-radius:20px; }

  .ema-ab-row{ display:flex; flex-direction:column; gap:12px; }
  .ema-ab-chip{ background:var(--bg-card); border-radius:12px; padding:14px 16px; border:1px solid transparent; }
  .ema-ab-chip--winner{ background:rgba(174,242,107,.18); border-color:rgba(44,110,0,.25); }
  .ema-ab-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:6px; }
  .ema-ab-tag{ width:22px; height:22px; border-radius:6px; background:var(--purple-900); color:#fff; font-size:12px; font-weight:800; display:flex; align-items:center; justify-content:center; }
  .ema-ab-rate{ font-size:11.5px; font-weight:700; color:var(--text-muted); }
  .ema-ab-chip p{ font-size:13.5px; color:var(--text-dark); font-weight:600; }
  .ema-ab-winner{ display:flex; align-items:center; gap:5px; margin-top:8px; font-size:11px; font-weight:700; color:#2C6E00; }
  .ema-ab-winner svg{ width:13px; height:13px; }

  .ema-chat-bubble{ background:var(--purple-950); color:#fff; font-size:13.5px; font-weight:600; padding:14px 16px; border-radius:14px 14px 4px 14px; }
  .ema-chat-arrow{ display:flex; justify-content:center; margin:14px 0; color:var(--text-muted); }
  .ema-chat-arrow svg{ width:18px; height:18px; }
  .ema-chat-result{ background:rgba(174,242,107,.25); border-radius:12px; padding:14px 16px; display:flex; flex-direction:column; gap:2px; }
  .ema-chat-result-count{ font-size:17px; font-weight:800; color:var(--purple-900); font-family:var(--font-head); }
  .ema-chat-result-name{ font-size:12px; color:#2C6E00; font-weight:600; }

  .ema-card--wide{ max-width:440px; }
  .ema-rfm-grid{
    display:grid; height:190px; gap:3px;
    grid-template-columns:repeat(5,1fr);
    grid-template-rows:.85fr 1.3fr 1fr;
    grid-template-areas:
      "naopode naopode leais leais campeoes"
      "risco risco risco potenciais potenciais"
      "perdido perdido quase promissor recentes";
  }
  .ema-rfm-cell{ display:flex; align-items:flex-end; padding:8px 9px; font-size:10.5px; font-weight:700; color:#fff; line-height:1.25; }
  .ema-rfm-c--naopode{ grid-area:naopode; background:#D92B2B; }
  .ema-rfm-c--leais{ grid-area:leais; background:#7A1D6E; }
  .ema-rfm-c--campeoes{ grid-area:campeoes; background:#3D0A47; }
  .ema-rfm-c--risco{ grid-area:risco; background:#E0640A; }
  .ema-rfm-c--potenciais{ grid-area:potenciais; background:#0E9E6E; }
  .ema-rfm-c--perdido{ grid-area:perdido; background:#9C9CA6; color:var(--text-dark); }
  .ema-rfm-c--quase{ grid-area:quase; background:#F0900A; }
  .ema-rfm-c--promissor{ grid-area:promissor; background:#3B7DE8; }
  .ema-rfm-c--recentes{ grid-area:recentes; background:#AEDD4A; color:var(--purple-950); }
  @media (max-width:400px){ .ema-rfm-cell{ font-size:9px; padding:6px 7px; } }

  .ema-feed-list{ display:flex; flex-direction:column; gap:10px; }
  .ema-feed-row{ display:flex; align-items:center; gap:10px; background:var(--bg-card); border-radius:10px; padding:10px 12px; }
  .ema-feed-dot{ width:8px; height:8px; border-radius:50%; background:var(--green-dark); flex-shrink:0; box-shadow:0 0 0 3px rgba(174,242,107,.3); }
  .ema-feed-text{ flex:1; font-size:13px; color:var(--text-dark); }
  .ema-feed-time{ font-size:11px; color:var(--text-muted); flex-shrink:0; }

  @media (max-width:820px){
    .ema-feature{ grid-template-columns:1fr; gap:28px; }
    .ema-feature--reverse .ema-feature-visual{ order:0; }
  }

  .solution-benefits{ padding:20px 0 90px; }
  .benefits-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:20px; max-width:760px; margin:0 auto; }
  .benefit-item{ display:flex; align-items:flex-start; gap:14px; background:var(--bg-card); border-radius:16px; padding:22px; }
  .benefit-ico{ width:38px; height:38px; border-radius:10px; background:rgba(174,242,107,.4); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .benefit-ico svg{ width:18px; height:18px; color:#2C6E00; }
  .benefit-text h4{ font-size:15px; font-weight:700; color:var(--text-dark); margin-bottom:4px; }
  .benefit-text p{ font-size:13px; color:var(--text-muted); line-height:1.5; }

  @media (max-width:820px){
    .solution-showcase-card{ padding:28px 24px; margin:0 20px; }
    .benefits-grid{ grid-template-columns:1fr; padding:0 20px; }
  }
  @media (max-width:560px){ .footer-top{ grid-template-columns:1fr; } }

  /* ============ PÁGINA DE FEATURE COMPLETA (Newsletter etc) ============ */
  .benefits-grid--3{ grid-template-columns:repeat(3,1fr); max-width:960px; }
  .benefits-grid--3 .benefit-item{ flex-direction:column; }
  .benefits-grid--3 .benefit-ico{ margin-bottom:6px; }
  @media (max-width:820px){ .benefits-grid--3{ grid-template-columns:1fr; } }

  .feature-section{ padding:60px 0; }
  .feature-section--alt{ background:var(--bg-card); }

  .mini-stats{ display:flex; justify-content:center; gap:20px; margin-top:44px; flex-wrap:wrap; }
  .mini-stat{ background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:18px; padding:26px 34px; text-align:center; min-width:160px; box-shadow:var(--shadow-card); }
  .mini-stat .num{ font-family:var(--font-head); font-size:32px; font-weight:800; color:var(--purple-800); }
  .mini-stat .lbl{ margin-top:6px; font-size:13px; color:var(--text-muted); font-weight:600; }

  .criteria-list{ max-width:640px; margin:36px auto 0; display:flex; flex-direction:column; gap:14px; }
  .criteria-item{ display:flex; align-items:center; gap:14px; background:#fff; border:1px solid rgba(21,7,38,.07); border-radius:14px; padding:16px 20px; font-size:14.5px; color:var(--text-dark); font-weight:600; }
  .criteria-item .num{ width:30px; height:30px; border-radius:50%; background:var(--purple-950); color:var(--green); font-family:var(--font-head); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

  .final-cta{ margin:0 24px 90px; border-radius:var(--radius-xl); padding:64px 40px; text-align:center; position:relative; overflow:hidden; background:linear-gradient(135deg,var(--purple-800),var(--purple-950)); }
  .final-cta h2{ position:relative; font-size:clamp(26px,4vw,38px); font-weight:800; color:#fff; max-width:640px; margin:0 auto; }
  .final-cta p{ position:relative; margin-top:14px; color:var(--text-inverse-muted); font-size:16px; }
  .final-cta .hero-ctas{ position:relative; justify-content:center; margin-top:30px; }
  .final-cta .cta-note{ position:relative; margin-top:18px; font-size:13px; color:var(--text-inverse-muted); opacity:.8; }

  .automations-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:44px; }
  .automation-card{ background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:16px; padding:24px; display:flex; flex-direction:column; transition:transform .2s ease, box-shadow .2s ease; }
  .automation-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-card); }
  .automation-card-ico{ width:42px; height:42px; border-radius:12px; background:var(--bg-card); display:flex; align-items:center; justify-content:center; margin-bottom:16px; flex-shrink:0; }
  .automation-card-ico svg{ width:20px; height:20px; color:var(--purple-800); }
  .automation-card-ico img{ width:22px; height:22px; object-fit:contain; }
  .automation-card h3{ font-size:15.5px; font-weight:700; color:var(--text-dark); margin-bottom:8px; }
  .automation-card p{ font-size:13px; color:var(--text-muted); line-height:1.55; flex:1; }
  .automation-card-badge{ display:inline-block; margin-top:14px; font-size:11px; font-weight:700; color:#2C6E00; background:rgba(174,242,107,.35); padding:4px 10px; border-radius:20px; width:fit-content; }
  .automation-card-link{ margin-top:14px; font-size:13px; font-weight:700; color:var(--accent-purple); display:inline-flex; align-items:center; gap:4px; }
  .automation-card-link svg{ width:13px; height:13px; }
  .automations-grid--three{ grid-template-columns:repeat(3,1fr); }
  @media (max-width:980px){ .automations-grid, .automations-grid--three{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .automations-grid, .automations-grid--three{ grid-template-columns:1fr; } }

  /* ============ INTEGRAÇÕES (página) ============ */
  .plat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:44px; }
  .plat-item{ background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:14px; padding:18px 20px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
  .plat-item-check{ width:28px; height:28px; border-radius:50%; background:rgba(174,242,107,.35); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .plat-item-check svg{ width:15px; height:15px; color:#2C6E00; }
  .plat-item-name{ font-family:var(--font-head); font-size:15px; font-weight:700; color:var(--text-dark); }
  .plat-item--soon{ border-style:dashed; background:transparent; }
  .plat-item--soon .plat-item-check{ background:var(--bg-card); }
  .plat-item--soon .plat-item-check svg{ color:var(--text-muted); }
  .plat-item-link{ font-size:12.5px; font-weight:700; color:var(--accent-purple); width:100%; }
  @media (max-width:980px){ .plat-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .plat-grid{ grid-template-columns:1fr; } }

  /* ============ PLANOS E PREÇOS ============ */
  .pricing-hero{ padding:70px 0 20px; text-align:center; }
  .pricing-hero .section-head h1{ font-size:clamp(28px,4vw,44px); font-weight:800; color:var(--text-dark); margin-top:14px; }
  .pricing-note{
    display:inline-flex; align-items:center; gap:8px; margin-top:22px;
    background:var(--bg-card); border-radius:999px; padding:9px 18px;
    font-size:13px; font-weight:600; color:var(--text-muted);
  }
  .pricing-note strong{ color:var(--text-dark); }

  .pricing-plans{ padding:40px 0 30px; }
  .pricing-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; align-items:stretch; }
  .plan-card{
    background:#fff; border:1.5px solid rgba(21,7,38,.08); border-radius:var(--radius-lg);
    padding:25px 20px; display:flex; flex-direction:column; position:relative;
  }
  .plan-card--highlight{
    background:linear-gradient(160deg,var(--purple-800),var(--purple-950));
    border-color:transparent; color:#fff; box-shadow:var(--shadow-soft);
  }
  .plan-badge{
    position:absolute; top:-13px; left:50%; transform:translateX(-50%);
    background:var(--green); color:var(--purple-950); font-size:11px; font-weight:800;
    letter-spacing:.04em; text-transform:uppercase; padding:5px 14px; border-radius:999px; white-space:nowrap;
  }
  .plan-name{ font-size:13px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--accent-purple); }
  .plan-card--highlight .plan-name{ color:var(--green); }
  .plan-price{ display:flex; align-items:baseline; gap:4px; margin-top:14px; }
  .plan-price .amount{ font-family:var(--font-head); font-size:34px; font-weight:800; color:var(--text-dark); }
  .plan-card--highlight .plan-price .amount{ color:#fff; }
  .plan-price .period{ font-size:13px; color:var(--text-muted); }
  .plan-card--highlight .plan-price .period{ color:var(--text-inverse-muted); }
  .plan-cycle-detail{ min-height:17px; margin-top:3px; font-size:10.5px; color:var(--text-muted); }
  .plan-card--highlight .plan-cycle-detail{ color:var(--text-inverse-muted); }
  .plan-desc{ margin-top:10px; font-size:13px; color:var(--text-muted); line-height:1.5; min-height:52px; }
  .plan-card--highlight .plan-desc{ color:var(--text-inverse-muted); }
  .plan-features{ margin-top:24px; display:flex; flex-direction:column; gap:11px; padding-top:20px; border-top:1px solid rgba(21,7,38,.08); }
  .plan-card--highlight .plan-features{ border-top-color:rgba(255,255,255,.15); }
  .plan-features li{ display:flex; align-items:flex-start; gap:8px; font-size:13px; color:var(--text-dark); }
  .plan-card--highlight .plan-features li{ color:#fff; }
  .plan-features li svg{ width:14px; height:14px; color:#2C6E00; flex-shrink:0; margin-top:2px; }
  .plan-card--highlight .plan-features li svg{ color:var(--green); }
  .plan-ribbons{ position:absolute; top:-12px; left:18px; display:flex; align-items:center; gap:5px; }
  .plan-ribbons span{ padding:4px 9px; border-radius:999px; background:var(--green); color:var(--purple-950); font-size:9.5px; font-weight:800; text-transform:uppercase; }
  .plan-ribbons span:last-child{ background:var(--purple-600); color:#fff; }
  .plan-composition{ min-height:34px; margin-top:9px; font-size:11.5px; line-height:1.45; color:var(--text-muted); }
  .plan-card--highlight .plan-composition{ color:var(--green); }
  .plan-features strong{ font-weight:700; }

  /* -------- calculadora de planos -------- */
  .pricing-shell{ display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:24px; align-items:start; }
  .pricing-left{ display:flex; flex-direction:column; gap:22px; }

  .base-selector{ background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:var(--radius-lg); padding:28px; box-shadow:var(--shadow-card); }
  .base-selector label{ display:block; font-family:var(--font-head); font-size:16px; font-weight:800; color:var(--text-dark); margin-bottom:12px; }
  .pricing-step-title{ display:flex; gap:13px; align-items:flex-start; margin-bottom:15px; }
  .pricing-step-title > span,
  .pricing-step-heading > span{
    width:28px; height:28px; flex:0 0 28px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:rgba(217,70,166,.18); color:var(--purple-700); font-size:12px; font-weight:800;
  }
  .pricing-step-title label{ margin:2px 0 3px; }
  .pricing-step-title p,
  .pricing-step-heading p{ font-size:12.5px; color:var(--text-muted); line-height:1.45; }
  .pricing-step-heading{ display:flex; gap:13px; align-items:flex-start; margin:10px 0 -4px; }
  .pricing-step-heading h2{ margin:1px 0 4px; font-size:18px; color:var(--text-dark); }
  .pricing-step-heading--cycle{ margin-top:12px; }
  .tier-select{
    width:100%; appearance:none;
    background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23655D72' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;
    background-size:16px;
    border:1px solid rgba(21,7,38,.12); border-radius:var(--radius-sm);
    padding:14px 40px 14px 14px; font-size:14.5px; font-weight:700; color:var(--text-dark); font-family:var(--font-body);
  }
  .tier-select:focus{ outline:none; border-color:var(--accent-purple); box-shadow:0 0 0 3px rgba(139,47,201,.12); }
  .base-hint{ margin-top:10px; font-size:13px; color:var(--text-muted); line-height:1.5; }
  .wa-addon{
    display:grid; grid-template-columns:auto 1fr auto auto; gap:12px; align-items:center;
    margin-top:18px; padding:14px; border:1px solid rgba(21,7,38,.1); border-radius:14px; background:var(--bg-light);
  }
  .wa-addon-brand{
    width:36px; height:36px; flex:0 0 36px; border-radius:10px;
    background-color:#10C86F;
    -webkit-mask:url('images/whatsapp-line.svg') center / 24px 24px no-repeat;
    mask:url('images/whatsapp-line.svg') center / 24px 24px no-repeat;
  }
  .wa-addon-copy{ display:flex; flex-direction:column; gap:2px; }
  .wa-addon-copy strong{ font-size:12.5px; color:var(--text-dark); }
  .wa-addon-copy > span{ font-size:11.5px; color:var(--text-muted); line-height:1.4; }
  .wa-calc-link{ color:var(--purple-700); text-decoration:underline; text-underline-offset:3px; font-size:12px; font-weight:700; white-space:nowrap; }
  .switch-control{ position:relative; width:38px; height:22px; border-radius:999px; background:#C9C3CC; transition:background .2s ease; }
  .switch-control span{ position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:#fff; transition:transform .2s ease; box-shadow:0 1px 4px rgba(0,0,0,.22); }
  .switch-control.is-on{ background:var(--purple-700); }
  .switch-control.is-on span{ transform:translateX(16px); }

  .billing-toggle{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; background:var(--bg-card); border-radius:999px; padding:6px; }
  .billing-toggle button{ border:none; background:transparent; color:var(--text-muted); border-radius:999px; padding:12px 10px; font-size:13.5px; font-weight:700; cursor:pointer; font-family:var(--font-body); transition:.2s ease; }
  .billing-toggle button:hover{ color:var(--text-dark); }
  .billing-toggle button.is-active{ background:var(--purple-950); color:#fff; box-shadow:var(--shadow-card); }
  .billing-discount-badge{ display:inline-flex; margin-left:5px; font-size:10.5px; font-weight:800; padding:2px 7px; border-radius:999px; background:rgba(174,242,107,.35); color:#2C6E00; }
  .billing-toggle button.is-active .billing-discount-badge{ background:var(--green); color:var(--purple-950); }

  .plan-cards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; align-items:stretch; }
  .plan-cards .plan-card{ cursor:pointer; transition:transform .2s ease, box-shadow .2s ease; }
  .plan-cards .plan-card.is-active{ border-color:var(--green); box-shadow:0 0 0 2px var(--green),var(--shadow-card); }
  .plan-cards .plan-card:focus-visible{ outline:3px solid var(--accent-purple); outline-offset:3px; }
  .plan-badge--default{ position:static; transform:none; display:inline-block; align-self:flex-start; background:var(--bg-card); color:var(--accent-purple); margin-bottom:14px; }
  .plan-price-placeholder{ font-size:14px; font-weight:700; color:var(--text-muted); }
  .plan-card--highlight .plan-price-placeholder{ color:var(--text-inverse-muted); }

  .sms-note{ display:flex; gap:16px; background:var(--purple-950); color:#fff; border-radius:var(--radius-lg); padding:22px; }
  .pricing-meta-note{ background:#fff; color:var(--text-dark); border:1px solid rgba(21,7,38,.08); }
  .pricing-meta-note h4{ color:var(--text-dark); }
  .pricing-meta-note p{ color:var(--text-muted); }
  .pricing-meta-note .wa-addon-brand{ background-color:var(--purple-700); }
  .sms-note-icon{ width:42px; height:42px; min-width:42px; border-radius:12px; background:var(--green); color:var(--purple-950); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .sms-note-icon svg{ width:20px; height:20px; }
  .sms-note h4{ font-family:var(--font-head); font-size:15px; font-weight:800; margin-bottom:6px; color:#fff; }
  .sms-note p{ color:var(--text-inverse-muted); line-height:1.6; font-size:13px; }

  .summary-card{ position:sticky; top:24px; background:#fff; border:1px solid rgba(21,7,38,.08); border-radius:var(--radius-lg); padding:26px; box-shadow:var(--shadow-soft); }
  .summary-title{ font-family:var(--font-head); font-size:19px; font-weight:800; color:var(--text-dark); margin-bottom:18px; }
  .summary-pending{ background:var(--bg-card); color:var(--text-muted); border-radius:14px; padding:16px; font-weight:600; font-size:13.5px; line-height:1.5; }
  .summary-row{ display:flex; justify-content:space-between; gap:14px; border-bottom:1px solid rgba(21,7,38,.07); padding:13px 0; font-size:13.5px; }
  .summary-row span{ color:var(--text-muted); }
  .summary-row strong{ text-align:right; color:var(--text-dark); }
  .summary-discount{ color:var(--accent-purple); }
  .summary-total-row{ background:var(--bg-card); border-radius:16px; padding:18px; margin-top:16px; }
  .summary-total-label{ color:var(--text-muted); font-weight:700; font-size:13px; margin-bottom:6px; }
  .summary-total-value{ font-family:var(--font-head); font-size:30px; font-weight:800; color:var(--purple-900); }
  .summary-equivalent{ color:var(--text-muted); font-size:12.5px; line-height:1.5; margin-top:8px; }
  .summary-cta{ display:flex; align-items:center; justify-content:center; width:100%; margin-top:20px; }
  .summary-cta.is-disabled{ opacity:.45; pointer-events:none; }
  .summary-cta-note{ text-align:center; color:var(--text-muted); font-size:12.5px; margin-top:12px; }

  @media (max-width:980px){
    .pricing-shell{ grid-template-columns:1fr; }
    .summary-card{ position:relative; top:auto; }
  }
  @media (max-width:820px){
    .plan-cards{ grid-template-columns:1fr; gap:16px; }
  }
  @media (max-width:560px){
    .billing-toggle{ grid-template-columns:1fr; border-radius:20px; }
    .base-selector{ padding:20px 16px; }
    .wa-addon{ grid-template-columns:auto 1fr auto; }
    .wa-calc-link{ grid-column:2/4; justify-self:start; padding:3px 0; }
  }

  .pricing-compare{ padding:60px 0; }
  .compare-table-wrap{ overflow-x:auto; border-radius:var(--radius-lg); border:1px solid rgba(21,7,38,.08); }
  .compare-table{ width:100%; border-collapse:collapse; min-width:720px; background:#fff; }
  .compare-table caption{ display:none; }
  .compare-table th, .compare-table td{ padding:13px 16px; text-align:center; font-size:13px; border-bottom:1px solid rgba(21,7,38,.06); }
  .compare-table th:first-child, .compare-table td:first-child{ text-align:left; font-weight:600; color:var(--text-dark); }
  .compare-table thead th{ background:var(--bg-card); font-weight:800; color:var(--text-dark); }
  .compare-table .cat-row td{ background:var(--purple-950); color:#fff; font-weight:700; text-align:left; letter-spacing:.03em; text-transform:uppercase; font-size:11.5px; }
  .compare-table svg{ width:16px; height:16px; color:#2C6E00; }
  .compare-table .cross{ color:#C7C0D1; }
  .compare-table .check{ color:#2C6E00; font-size:17px; font-weight:800; }
  .compare-table .compare-galaxy{ background:var(--purple-950); color:#fff; }
  .compare-footnotes{ margin-top:16px; font-size:11.5px; line-height:1.65; color:var(--text-muted); }

  /* -------- modal da calculadora do WhatsApp -------- */
  body.modal-open{ overflow:hidden; }
  .wa-modal{ position:fixed; inset:0; z-index:500; display:flex; align-items:center; justify-content:center; padding:18px; }
  .wa-modal[hidden]{ display:none; }
  .wa-modal-backdrop{ position:absolute; inset:0; background:rgba(12,9,14,.6); backdrop-filter:blur(5px); }
  .wa-modal-dialog{
    position:relative; z-index:1; width:min(100%,450px); max-height:calc(100vh - 36px); overflow:auto;
    padding:30px 24px 24px; border-radius:22px; background:#fff; box-shadow:0 24px 80px rgba(15,4,26,.3);
  }
  .wa-modal-dialog h2{ padding-right:34px; font-size:23px; color:var(--text-dark); }
  .wa-modal-close{ position:absolute; top:17px; right:18px; width:34px; height:34px; border-radius:50%; color:var(--text-muted); font-size:24px; line-height:1; }
  .wa-modal-close:hover{ background:var(--bg-card); color:var(--text-dark); }
  .wa-modal-intro{ margin:20px 0; font-size:13.5px; line-height:1.55; color:var(--text-muted); }
  .wa-modal-dialog label{ display:block; margin-bottom:7px; font-size:13px; color:var(--text-dark); }
  .wa-modal-dialog input{
    width:100%; padding:12px 13px; border:1.5px solid rgba(21,7,38,.18); border-radius:9px;
    font:600 15px var(--font-body); color:var(--text-dark);
  }
  .wa-modal-dialog input:focus{ outline:none; border-color:var(--purple-700); box-shadow:0 0 0 3px rgba(119,2,98,.13); }
  .wa-rate-row{ display:flex; justify-content:space-between; gap:14px; margin-top:14px; padding:12px; border-radius:9px; background:var(--bg-light); border:1px solid rgba(21,7,38,.08); font-size:11.5px; color:var(--text-muted); }
  .wa-rate-row strong{ color:var(--text-dark); white-space:nowrap; }
  .wa-receipt{ margin-top:14px; border:1px solid rgba(21,7,38,.09); border-radius:10px; overflow:hidden; }
  .wa-receipt-row{ display:grid; grid-template-columns:auto 1fr auto; gap:9px; align-items:center; padding:13px 12px; border-bottom:1px solid rgba(21,7,38,.08); }
  .wa-receipt-row:last-child{ border-bottom:none; }
  .wa-receipt-row > span{ display:flex; flex-direction:column; }
  .wa-receipt-row b{ font-size:12px; color:var(--text-dark); }
  .wa-receipt-row small{ margin-top:2px; font-size:10.5px; color:var(--text-muted); }
  .wa-receipt-row > strong{ font-size:12.5px; color:var(--text-dark); white-space:nowrap; }
  .wa-dot{ width:8px; height:8px; border-radius:50%; background:var(--purple-700); }
  .wa-dot--meta{ background:#1877F2; }
  .wa-receipt-total{ grid-template-columns:1fr auto; background:var(--bg-light); padding-top:16px; padding-bottom:16px; }
  .wa-receipt-total > strong{ font-size:18px; }
  .wa-galaxy-callout{ display:flex; gap:10px; align-items:flex-start; margin-top:15px; padding:13px; border-radius:10px; background:var(--bg-light); }
  .wa-galaxy-callout > span{ width:18px; height:18px; flex:0 0 18px; border-radius:50%; display:flex; align-items:center; justify-content:center; border:1px solid var(--purple-700); color:var(--purple-700); font-size:10px; font-weight:800; }
  .wa-galaxy-callout p{ font-size:11.5px; line-height:1.5; color:var(--text-muted); }

  .pricing-faq{ padding:20px 0 90px; }
  .faq-list{ max-width:720px; margin:0 auto; display:flex; flex-direction:column; gap:10px; }
  .faq-item{ background:var(--bg-card); border-radius:14px; overflow:hidden; }
  .faq-question{
    display:flex; align-items:center; justify-content:space-between; gap:16px;
    width:100%; padding:18px 20px; font-size:14.5px; font-weight:700; color:var(--text-dark);
    background:none; border:none; cursor:pointer; text-align:left; font-family:var(--font-body);
  }
  .faq-question svg{ width:18px; height:18px; flex-shrink:0; transition:transform .25s ease; color:var(--text-muted); }
  .faq-item.is-open .faq-question svg{ transform:rotate(180deg); }
  .faq-answer{ max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .faq-item.is-open .faq-answer{ max-height:220px; }
  .faq-answer p{ padding:0 20px 18px; font-size:13.5px; color:var(--text-muted); line-height:1.6; }

  @media (max-width:980px){
    .pricing-grid{ grid-template-columns:repeat(2,1fr); }
  }
  @media (max-width:560px){
    .pricing-grid{ grid-template-columns:1fr; }
  }

  /* ============ CADASTRO (lead capture) ============ */
  .signup-header{ border-bottom:1px solid rgba(21,7,38,.06); }
  .signup-header-inner{ display:flex; align-items:center; justify-content:space-between; padding:18px 24px; }
  .signup-header-note{ font-size:13.5px; color:var(--text-muted); }
  .signup-header-note a{ color:var(--accent-purple); font-weight:700; }
  .signup-header-note a:hover{ text-decoration:underline; }

  .signup-shell{ display:grid; grid-template-columns:1fr 1fr; min-height:calc(100vh - 65px); }

  .signup-aside{ position:relative; background:var(--purple-950); overflow:hidden; padding:64px 56px; display:flex; align-items:center; }
  .signup-aside-glow{
    position:absolute; z-index:0; left:-10%; top:-10%;
    width:520px; height:520px; max-width:80%; border-radius:50%;
    background:var(--green); opacity:.16; filter:blur(120px); pointer-events:none;
    animation:heroBreathe 7s ease-in-out infinite;
  }
  .signup-aside-inner{ position:relative; z-index:2; max-width:460px; margin:0 auto; }
  .signup-aside h1{ font-size:clamp(26px,3vw,34px); font-weight:800; color:#fff; line-height:1.2; }
  .signup-aside > .signup-aside-inner > p{ margin-top:16px; font-size:15px; color:var(--text-inverse-muted); line-height:1.6; }

  .signup-benefits{ margin-top:32px; display:flex; flex-direction:column; gap:14px; }
  .signup-benefits li{ display:flex; align-items:flex-start; gap:10px; font-size:14px; color:#fff; line-height:1.5; }
  .signup-benefit-ico{ width:22px; height:22px; border-radius:50%; background:rgba(174,242,107,.18); color:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:1px; }
  .signup-benefit-ico svg{ width:12px; height:12px; }

  .signup-mascot{ margin-top:36px; width:110px; }
  .signup-mascot img{ width:100%; height:auto; filter:drop-shadow(0 16px 30px rgba(0,0,0,.35)); }

  .signup-proof{ margin-top:28px; display:flex; align-items:center; gap:10px; font-size:13px; color:var(--text-inverse-muted); }
  .signup-proof-badge .stars{ display:flex; align-items:center; gap:2px; background:var(--green); color:var(--purple-950); padding:5px 10px; border-radius:999px; font-size:12px; font-weight:700; }

  .signup-form-panel{ display:flex; align-items:center; justify-content:center; padding:56px 24px; }
  .signup-form-wrap{ width:100%; max-width:420px; }

  .signup-progress{ display:flex; gap:6px; }
  .signup-progress-bar{ flex:1; height:4px; border-radius:999px; background:var(--bg-card); }
  .signup-progress-bar.is-active{ background:var(--accent-purple); }
  .signup-step{ display:block; margin-top:10px; font-size:12px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--text-muted); }

  .signup-form-wrap h2{ margin-top:18px; font-size:26px; font-weight:800; color:var(--text-dark); }
  .signup-form-sub{ margin-top:8px; font-size:14px; color:var(--text-muted); }

  .signup-form{ margin-top:28px; display:flex; flex-direction:column; gap:18px; }
  .form-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .form-group{ display:flex; flex-direction:column; gap:7px; }
  .form-group label{ font-size:13px; font-weight:700; color:var(--text-dark); }
  .form-group input{
    width:100%; border:1px solid rgba(21,7,38,.14); border-radius:var(--radius-sm);
    padding:13px 14px; font-size:14.5px; font-family:var(--font-body); color:var(--text-dark);
    background:#fff; transition:border-color .2s ease, box-shadow .2s ease;
  }
  .form-group input::placeholder{ color:#B4ACC0; }
  .form-group input:focus{ outline:none; border-color:var(--accent-purple); box-shadow:0 0 0 3px rgba(139,47,201,.12); }
  .form-hint{ font-size:12px; color:var(--text-muted); line-height:1.4; }

  .form-label-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
  .form-forgot{ font-size:12.5px; font-weight:600; color:var(--accent-purple); }
  .form-forgot:hover{ text-decoration:underline; }

  .form-remember{ display:flex; align-items:center; gap:8px; font-size:13.5px; color:var(--text-dark); cursor:pointer; }
  .form-remember input{ width:16px; height:16px; accent-color:var(--accent-purple); cursor:pointer; }

  .signup-switch{ margin-top:22px; text-align:center; font-size:13.5px; color:var(--text-muted); }
  .signup-switch a{ color:var(--accent-purple); font-weight:700; }
  .signup-switch a:hover{ text-decoration:underline; }

  .password-field{ position:relative; }
  .password-field input{ padding-right:44px; }
  .password-toggle{ position:absolute; right:6px; top:50%; transform:translateY(-50%); padding:8px; color:var(--text-muted); border-radius:8px; }
  .password-toggle:hover{ color:var(--text-dark); }
  .password-toggle svg{ width:18px; height:18px; }

  .signup-submit{ width:100%; justify-content:center; margin-top:6px; }
  .signup-legal{ margin-top:14px; font-size:12px; color:var(--text-muted); line-height:1.5; text-align:center; }
  .signup-legal a{ color:var(--accent-purple); font-weight:600; }
  .signup-legal a:hover{ text-decoration:underline; }

  .signup-reassurance{ display:flex; gap:8px; justify-content:center; margin-top:24px; flex-wrap:wrap; }

  .signup-footer{ border-top:1px solid rgba(21,7,38,.06); }
  .signup-footer-inner{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; padding:20px 24px; font-size:12.5px; color:var(--text-muted); }
  .signup-footer-inner .legal-links{ display:flex; gap:18px; }
  .signup-footer-inner .legal-links a{ color:var(--text-muted); }
  .signup-footer-inner .legal-links a:hover{ color:var(--text-dark); }

  @media (max-width:980px){
    .signup-shell{ grid-template-columns:1fr; min-height:auto; }
    .signup-aside{ padding:48px 24px; }
    .signup-benefits{ display:none; }
    .signup-mascot{ display:none; }
    .signup-form-panel{ padding:40px 24px; }
  }
  @media (max-width:480px){
    .form-row{ grid-template-columns:1fr; }
  }

  /* ==========================================================================
     AGÊNCIAS — direção "mesa de controle"
     Denso, tabular, escuro. Acento rosa (herdado do card da home).
     Verde aqui NÃO é acento: só significa "ativo".
     ========================================================================== */
  .agc{
    --agc-pink:#EC6FC2;
    --agc-pink-deep:#D946A6;
    --agc-ink:#12000F;
    --agc-ink-2:#1F0119;
    --agc-rule:rgba(255,255,255,.11);
    --agc-dim:#9E8FA8;
    --agc-paper:#F6F3F7;
    --agc-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  }

  /* -- etiqueta de dados: o tique da página -- */
  .agc-tag{
    font-family:var(--agc-mono); font-size:10.5px; font-weight:500;
    letter-spacing:.14em; text-transform:uppercase; color:var(--agc-dim);
  }

  /* -------- HERO: assimétrico, alinhado à esquerda -------- */
  .agc-hero{ background:var(--agc-ink); padding:96px 0 0; overflow:hidden; }
  .agc-hero-grid{
    display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:64px; align-items:center; padding-bottom:72px;
  }
  .agc-hero-lead .agc-tag{ display:block; margin-bottom:22px; color:var(--agc-pink); }
  .agc-hero-lead h1{
    font-size:clamp(36px,5.6vw,68px); font-weight:800; line-height:1.03;
    letter-spacing:-.03em; color:#fff; max-width:12ch;
  }
  .agc-hero-lead h1 em{ font-style:normal; color:var(--agc-pink); }
  .agc-hero-lead > p{
    margin-top:26px; max-width:46ch; font-size:16.5px; line-height:1.7; color:var(--agc-dim);
  }
  .agc-hero-lead .hero-ctas{ margin-top:34px; }

  /* board de lojas sangrando pela direita */
  .agc-board{ display:flex; flex-direction:column; gap:10px; margin-right:-90px; }
  .agc-slab{
    background:var(--agc-ink-2); border:1px solid var(--agc-rule); border-radius:14px;
    padding:15px 18px; display:grid; grid-template-columns:1fr auto; gap:4px 16px;
    align-items:center;
  }
  .agc-slab-name{ font-family:var(--font-head); font-size:14.5px; font-weight:700; color:#fff; }
  .agc-slab-meta{ grid-column:1; font-family:var(--agc-mono); font-size:11px; color:var(--agc-dim); font-variant-numeric:tabular-nums; }
  .agc-slab-state{
    grid-row:1/3; font-family:var(--agc-mono); font-size:10px; letter-spacing:.1em; text-transform:uppercase;
    padding:5px 10px; border-radius:5px; white-space:nowrap;
    background:rgba(174,242,107,.13); color:var(--green);
  }
  .agc-slab-state--wait{ background:rgba(255,255,255,.06); color:var(--agc-dim); }
  .agc-slab--muted{ opacity:.5; }

  /* régua de números fechando o hero */
  .agc-rule{ border-top:1px solid var(--agc-rule); }
  .agc-rule-inner{ display:grid; grid-template-columns:repeat(4,1fr); }
  .agc-rule-cell{ padding:26px 0; border-right:1px solid var(--agc-rule); }
  .agc-rule-cell:last-child{ border-right:none; }
  .agc-rule-cell b{
    display:block; font-family:var(--agc-mono); font-size:26px; font-weight:600;
    color:#fff; font-variant-numeric:tabular-nums; letter-spacing:-.02em;
  }
  .agc-rule-cell span{ display:block; margin-top:7px; font-size:12.5px; color:var(--agc-dim); line-height:1.4; }

  @media (max-width:960px){
    .agc-hero{ padding-top:76px; }
    .agc-hero-grid{ grid-template-columns:1fr; gap:44px; padding-bottom:52px; }
    .agc-hero-lead h1{ max-width:none; }
    .agc-board{ margin-right:0; }
    .agc-rule-inner{ grid-template-columns:repeat(2,1fr); }
    .agc-rule-cell:nth-child(2){ border-right:none; }
    .agc-rule-cell:nth-child(-n+2){ border-bottom:1px solid var(--agc-rule); }
  }

  /* -------- A TESE: tipografia grande com tarefas riscadas -------- */
  .agc-thesis{ background:var(--agc-paper); padding:110px 0; }
  .agc-thesis .agc-tag{ display:block; margin-bottom:34px; color:var(--agc-pink-deep); }
  .agc-thesis-body{
    font-family:var(--font-head); font-size:clamp(27px,4.4vw,54px); font-weight:800;
    line-height:1.16; letter-spacing:-.025em; color:var(--purple-950); max-width:17ch;
  }
  .agc-strike{ position:relative; color:var(--text-muted); white-space:nowrap; }
  .agc-strike::after{
    content:''; position:absolute; left:-.06em; right:-.06em; top:.56em; height:.075em;
    background:var(--agc-pink-deep); border-radius:2px;
    transform:scaleX(0); transform-origin:left center;
    transition:transform .5s cubic-bezier(.2,.7,.3,1);
  }
  .is-visible .agc-strike::after{ transform:scaleX(1); }
  .is-visible .agc-strike:nth-of-type(2)::after{ transition-delay:.13s; }
  .is-visible .agc-strike:nth-of-type(3)::after{ transition-delay:.26s; }
  .is-visible .agc-strike:nth-of-type(4)::after{ transition-delay:.39s; }
  .agc-thesis-turn{ color:var(--purple-950); }
  .agc-thesis-foot{
    margin-top:46px; padding-top:26px; border-top:1px solid rgba(21,7,38,.12);
    display:grid; grid-template-columns:repeat(3,1fr); gap:34px; max-width:840px;
  }
  .agc-thesis-foot p{ font-size:14.5px; line-height:1.65; color:var(--text-muted); }
  .agc-thesis-foot b{ display:block; margin-bottom:6px; color:var(--purple-950); font-size:14.5px; }
  @media (prefers-reduced-motion:reduce){ .agc-strike::after{ transform:scaleX(1); transition:none; } }
  @media (max-width:820px){
    .agc-thesis{ padding:70px 0; }
    .agc-thesis-body{ max-width:none; }
    .agc-thesis-foot{ grid-template-columns:1fr; gap:22px; }
  }

  /* -------- O BOARD: mosaico assimétrico de lojas -------- */
  .agc-mosaic{ background:var(--agc-ink); padding:100px 0; }
  .agc-mosaic-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:38px; flex-wrap:wrap; }
  .agc-mosaic-head .agc-tag{ display:block; margin-bottom:12px; color:var(--agc-pink); }
  .agc-mosaic-head h2{ font-size:clamp(26px,3.4vw,40px); font-weight:800; color:#fff; letter-spacing:-.02em; max-width:19ch; }
  .agc-mosaic-head p{ font-size:14.5px; color:var(--agc-dim); line-height:1.65; max-width:34ch; }
  .agc-grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:12px; }
  .agc-newsletter{
    grid-column:1/-1; position:relative; overflow:hidden;
    display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:54px; align-items:center;
    padding:38px; margin-bottom:6px; border-radius:22px;
    background:linear-gradient(125deg,rgba(236,111,194,.18),rgba(174,242,107,.06) 70%),var(--agc-ink-2);
    border:1px solid rgba(236,111,194,.42);
  }
  .agc-newsletter::after{
    content:''; position:absolute; width:260px; height:260px; right:-90px; top:-120px;
    border-radius:50%; background:rgba(236,111,194,.16); filter:blur(55px); pointer-events:none;
  }
  .agc-newsletter-copy{ position:relative; z-index:1; }
  .agc-newsletter-icon{
    width:46px; height:46px; margin-bottom:22px; border-radius:13px;
    display:flex; align-items:center; justify-content:center;
    background:var(--agc-pink); color:var(--agc-ink);
  }
  .agc-newsletter-icon svg{ width:22px; height:22px; }
  .agc-newsletter-copy .agc-tag{ display:block; margin-bottom:10px; color:var(--agc-pink); }
  .agc-newsletter-copy h3{ max-width:20ch; font-size:clamp(24px,3vw,38px); line-height:1.13; letter-spacing:-.025em; color:#fff; }
  .agc-newsletter-copy p{ max-width:55ch; margin-top:14px; font-size:14.5px; line-height:1.7; color:var(--agc-dim); }
  .agc-newsletter-copy a{ display:inline-flex; align-items:center; gap:8px; margin-top:22px; font-size:13.5px; font-weight:700; color:var(--agc-pink); }
  .agc-newsletter-copy a:hover{ color:#fff; }
  .agc-newsletter-copy a svg{ width:16px; height:16px; }
  .agc-newsletter-status{ position:relative; z-index:1; display:flex; flex-direction:column; gap:9px; }
  .agc-newsletter-status div{
    position:relative; display:grid; grid-template-columns:1fr auto; align-items:center; gap:5px 16px;
    padding:15px 17px; border-radius:12px; background:rgba(0,0,0,.16); border:1px solid var(--agc-rule);
  }
  .agc-newsletter-status span{ font-size:13.5px; font-weight:700; color:#fff; }
  .agc-newsletter-status b{ font-family:var(--agc-mono); font-size:10px; font-weight:500; color:var(--agc-dim); }
  .agc-newsletter-status i{ grid-column:2; grid-row:1/3; width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(174,242,107,.1); }
  .agc-cell{
    background:var(--agc-ink-2); border:1px solid var(--agc-rule); border-radius:16px; padding:22px;
    display:flex; flex-direction:column; gap:14px; grid-column:span 3;
    transition:border-color .25s ease, background .25s ease;
  }
  .agc-cell:hover{ border-color:rgba(236,111,194,.4); background:#26011F; }
  .agc-cell--w3{ grid-column:span 3; }
  .agc-cell--w4{ grid-column:span 4; }
  .agc-cell--w5{ grid-column:span 5; }
  .agc-cell-top{ display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .agc-cell h3{ font-size:16px; font-weight:700; color:#fff; }
  .agc-cell-note{ font-size:13.5px; color:var(--agc-dim); line-height:1.6; }
  .agc-bars{ display:flex; align-items:flex-end; gap:5px; height:44px; }
  .agc-bars i{ flex:1; background:rgba(236,111,194,.28); border-radius:3px 3px 0 0; }
  .agc-bars i:last-child{ background:var(--agc-pink); }
  .agc-kv{ display:flex; flex-direction:column; gap:9px; }
  .agc-kv-row{ display:flex; justify-content:space-between; align-items:baseline; gap:14px; border-bottom:1px dashed var(--agc-rule); padding-bottom:8px; }
  .agc-kv-row:last-child{ border-bottom:none; padding-bottom:0; }
  .agc-kv-row span{ font-size:13px; color:var(--agc-dim); }
  .agc-kv-row b{ font-family:var(--agc-mono); font-size:13.5px; font-weight:600; color:#fff; font-variant-numeric:tabular-nums; }
  .agc-big{ font-family:var(--agc-mono); font-size:clamp(30px,4vw,46px); font-weight:600; color:var(--agc-pink); letter-spacing:-.03em; font-variant-numeric:tabular-nums; }
  @media (max-width:980px){
    .agc-mosaic{ padding:70px 0; }
    .agc-grid{ grid-template-columns:repeat(6,1fr); }
    .agc-cell, .agc-cell--w3, .agc-cell--w4, .agc-cell--w5{ grid-column:span 3; }
  }
  @media (max-width:760px){
    .agc-newsletter{ grid-template-columns:1fr; gap:28px; padding:28px 22px; }
  }
  @media (max-width:600px){
    .agc-cell, .agc-cell--w3, .agc-cell--w4, .agc-cell--w5{ grid-column:span 6; }
  }

  /* -------- CATÁLOGO: tabela, não cards -------- */
  .agc-catalog{ background:var(--agc-paper); padding:100px 0; }
  .agc-catalog-head{ max-width:560px; margin-bottom:40px; }
  .agc-catalog-head .agc-tag{ display:block; margin-bottom:16px; color:var(--agc-pink-deep); }
  .agc-catalog-head h2{ font-size:clamp(26px,3.4vw,40px); font-weight:800; color:var(--purple-950); letter-spacing:-.02em; }
  .agc-catalog-head p{ margin-top:16px; font-size:15.5px; line-height:1.7; color:var(--text-muted); }
  .agc-table{ border-top:1px solid rgba(21,7,38,.14); }
  .agc-tr{
    display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,2fr) auto;
    gap:20px; align-items:center; padding:17px 6px;
    border-bottom:1px solid rgba(21,7,38,.09); transition:background .2s ease;
  }
  .agc-tr:hover{ background:rgba(217,70,166,.05); }
  .agc-tr--featured{
    margin:8px 0; padding:19px 14px; border:1px solid rgba(217,70,166,.28); border-radius:12px;
    background:rgba(217,70,166,.07);
  }
  .agc-tr--featured:hover{ background:rgba(217,70,166,.11); }
  .agc-tr-name{ font-family:var(--font-head); font-size:15px; font-weight:700; color:var(--purple-950); }
  .agc-tr-name small{
    display:inline-block; margin-left:7px; padding:3px 7px; border-radius:999px;
    background:var(--agc-pink-deep); color:#fff; font-family:var(--agc-mono);
    font-size:8.5px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; vertical-align:2px;
  }
  .agc-tr-cat{ font-family:var(--agc-mono); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--agc-pink-deep); }
  .agc-tr-desc{ font-size:13.5px; color:var(--text-muted); line-height:1.55; }
  .agc-tr-on{
    font-family:var(--agc-mono); font-size:10px; letter-spacing:.1em; text-transform:uppercase;
    color:#2C6E00; background:rgba(174,242,107,.35); padding:5px 10px; border-radius:5px; white-space:nowrap;
  }
  .agc-table-foot{ margin-top:22px; font-size:13.5px; color:var(--text-muted); }
  .agc-table-foot a{ color:var(--agc-pink-deep); font-weight:700; }
  .agc-table-foot a:hover{ text-decoration:underline; }
  @media (max-width:860px){
    .agc-catalog{ padding:70px 0; }
    .agc-tr{ grid-template-columns:1fr auto; gap:6px 14px; }
    .agc-tr-cat{ grid-row:2; }
    .agc-tr-desc{ grid-column:1/-1; grid-row:3; margin-top:4px; }
    .agc-tr-on{ grid-row:1; }
  }

  /* -------- EMA: um momento só, em rosa -------- */
  .agc-ema{ background:var(--agc-paper); padding:0 0 100px; }
  .agc-ema-card{
    display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center;
    background:linear-gradient(150deg,#2C0124,#12000F 70%); border-radius:var(--radius-xl);
    padding:56px; position:relative; overflow:hidden;
  }
  .agc-ema-card::before{
    content:''; position:absolute; width:420px; height:420px; border-radius:50%;
    background:var(--agc-pink-deep); opacity:.22; filter:blur(110px); top:-160px; right:-100px;
  }
  .agc-ema-text{ position:relative; z-index:1; }
  .agc-ema-text .agc-tag{ display:block; margin-bottom:18px; color:var(--agc-pink); }
  .agc-ema-text h2{ font-size:clamp(24px,3vw,34px); font-weight:800; color:#fff; letter-spacing:-.02em; max-width:18ch; }
  .agc-ema-text p{ margin-top:18px; font-size:15.5px; line-height:1.7; color:var(--agc-dim); max-width:44ch; }
  .agc-ema-link{ display:inline-block; margin-top:24px; font-size:14.5px; font-weight:700; color:var(--agc-pink); }
  .agc-ema-link:hover{ text-decoration:underline; }
  .agc-ema-visual{ position:relative; z-index:1; display:flex; flex-direction:column; gap:9px; }
  .agc-rec{
    display:flex; align-items:center; gap:12px; background:rgba(255,255,255,.06);
    border:1px solid var(--agc-rule); border-radius:12px; padding:10px 13px;
  }
  .agc-rec img{ width:38px; height:38px; border-radius:9px; object-fit:cover; flex-shrink:0; }
  .agc-rec-name{ flex:1; font-size:13.5px; font-weight:600; color:#fff; }
  .agc-rec-pct{ font-family:var(--agc-mono); font-size:12px; font-weight:600; color:var(--agc-pink); font-variant-numeric:tabular-nums; }
  @media (max-width:900px){
    .agc-ema{ padding-bottom:70px; }
    .agc-ema-card{ grid-template-columns:1fr; gap:36px; padding:36px 28px; }
    .agc-ema-text h2, .agc-ema-text p{ max-width:none; }
  }

  /* -------- MODELO: fecho escuro -------- */
  .agc-deal{ background:var(--agc-ink); padding:100px 0; }
  .agc-deal-head{ max-width:620px; margin-bottom:46px; }
  .agc-deal-head .agc-tag{ display:block; margin-bottom:16px; color:var(--agc-pink); }
  .agc-deal-head h2{ font-size:clamp(26px,3.6vw,42px); font-weight:800; color:#fff; letter-spacing:-.025em; }
  .agc-deal-head p{ margin-top:18px; font-size:16px; line-height:1.7; color:var(--agc-dim); }
  .agc-deal-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--agc-rule); }
  .agc-deal-item{ padding:30px 26px 30px 0; border-right:1px solid var(--agc-rule); }
  .agc-deal-item:last-child{ border-right:none; }
  .agc-deal-item:not(:first-child){ padding-left:26px; }
  .agc-deal-item .agc-tag{ display:block; margin-bottom:14px; color:var(--agc-pink); }
  .agc-deal-item h4{ font-size:15.5px; font-weight:700; color:#fff; margin-bottom:9px; }
  .agc-deal-item p{ font-size:13.5px; line-height:1.6; color:var(--agc-dim); }
  .agc-deal-ctas{ margin-top:48px; display:flex; gap:14px; flex-wrap:wrap; }
  @media (max-width:900px){
    .agc-deal{ padding:70px 0; }
    .agc-deal-grid{ grid-template-columns:1fr 1fr; }
    .agc-deal-item:nth-child(2n){ border-right:none; }
    .agc-deal-item:nth-child(-n+2){ border-bottom:1px solid var(--agc-rule); }
  }
  @media (max-width:560px){
    .agc-deal-grid{ grid-template-columns:1fr; }
    .agc-deal-item{ border-right:none; border-bottom:1px solid var(--agc-rule); padding:26px 0; }
    .agc-deal-item:not(:first-child){ padding-left:0; }
  }

  /* ==========================================================================
     PARCEIROS — direção "a trilha"
     Claro, arejado, um fio contínuo. Acento verde (herdado do card da home).
     Registro tipográfico oposto ao de Agências: peso menor, entrelinha maior.
     ========================================================================== */
  .prc{
    --prc-paper:#F6F8F3;
    --prc-card:#EBF1E2;
    --prc-ink:#150726;
    --prc-soft:#5A6154;
    --prc-line:rgba(21,7,38,.11);
    --prc-green:#AEF26B;
    --prc-green-mid:#8FDC44;
    --prc-green-ink:#2C6E00;
    background:var(--prc-paper);
  }
  .prc-label{
    font-size:11.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
    color:var(--prc-green-ink);
  }

  /* -------- ABERTURA -------- */
  .prc-open{ padding:74px 0 96px; }
  .prc-open-grid{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:70px; align-items:center; }
  .prc-open .prc-label{ display:block; margin-bottom:26px; }
  .prc-open h1{
    font-size:clamp(33px,4.5vw,55px); font-weight:700; line-height:1.13;
    letter-spacing:-.018em; color:var(--prc-ink); max-width:16ch;
  }
  .prc-open h1 mark{ background:none; color:var(--prc-green-ink); }
  .prc-open-lead > p{
    margin-top:26px; max-width:52ch; font-size:17px; line-height:1.75; color:var(--prc-soft);
  }
  .prc-open .hero-ctas{ margin-top:36px; }
  .prc-open-note{ display:block; margin-top:22px; font-size:13.5px; color:var(--prc-soft); }
  .prc-portrait{
    aspect-ratio:4/5; border-radius:180px 180px 26px 26px; overflow:hidden;
    box-shadow:0 26px 60px rgba(21,7,38,.13);
  }
  .prc-portrait img{ width:100%; height:100%; object-fit:cover; }
  @media (max-width:900px){
    .prc-open{ padding:52px 0 64px; }
    .prc-open-grid{ grid-template-columns:1fr; gap:44px; }
    .prc-open h1{ max-width:none; }
    .prc-portrait{ max-width:340px; border-radius:150px 150px 22px 22px; }
  }

  /* -------- A TRILHA -------- */
  .prc-trail{ padding:20px 0 100px; }
  .prc-trail-head{ max-width:560px; margin-bottom:56px; }
  .prc-trail-head .prc-label{ display:block; margin-bottom:16px; }
  .prc-trail-head h2{ font-size:clamp(26px,3.3vw,38px); font-weight:700; color:var(--prc-ink); letter-spacing:-.018em; line-height:1.2; }
  .prc-trail-head p{ margin-top:16px; font-size:16.5px; line-height:1.75; color:var(--prc-soft); }

  .prc-thread{ position:relative; padding-left:72px; max-width:760px; }
  .prc-thread::before{
    content:''; position:absolute; left:16px; top:14px; bottom:22px; width:2px;
    background:var(--prc-line); border-radius:2px;
  }
  .prc-thread::after{
    content:''; position:absolute; left:16px; top:14px; width:2px; border-radius:2px;
    height:calc(var(--prc-progress,0) * (100% - 36px));
    background:linear-gradient(180deg,var(--prc-green-mid),var(--prc-green));
  }
  .prc-node{ position:relative; padding-bottom:58px; }
  .prc-node:last-child{ padding-bottom:0; }
  .prc-node-dot{
    position:absolute; left:-72px; top:2px; width:34px; height:34px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:var(--prc-paper); border:2px solid var(--prc-line);
    font-family:var(--font-head); font-size:13px; font-weight:700; color:var(--prc-soft);
    transition:background .4s ease, border-color .4s ease, color .4s ease;
  }
  .prc-node.is-lit .prc-node-dot{ background:var(--prc-green); border-color:var(--prc-green-mid); color:var(--prc-green-ink); }
  .prc-node h3{ font-size:20px; font-weight:700; color:var(--prc-ink); letter-spacing:-.01em; }
  .prc-node > p{ margin-top:12px; font-size:16px; line-height:1.75; color:var(--prc-soft); max-width:56ch; }
  .prc-aside{
    margin-top:20px; padding:20px 22px; background:#fff; border:1px solid var(--prc-line);
    border-radius:18px; display:flex; flex-wrap:wrap; gap:10px;
  }
  .prc-chip{
    display:inline-flex; align-items:center; gap:7px; padding:8px 14px; border-radius:999px;
    background:var(--prc-card); font-size:13px; font-weight:600; color:var(--prc-ink);
  }
  .prc-chip svg{ width:14px; height:14px; color:var(--prc-green-ink); flex-shrink:0; }
  .prc-node--payoff h3{ color:var(--prc-green-ink); }
  .prc-payoff{
    margin-top:18px; padding:26px 28px; border-radius:20px;
    background:linear-gradient(150deg,var(--purple-800),var(--purple-950));
    display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  }
  .prc-payoff-text{ font-size:15px; line-height:1.6; color:var(--text-inverse-muted); max-width:36ch; }
  .prc-payoff-text b{ display:block; font-family:var(--font-head); font-size:17px; color:#fff; margin-bottom:6px; }
  @media (prefers-reduced-motion:reduce){
    .prc-thread::after{ height:calc(100% - 36px); }
    .prc-node-dot{ transition:none; }
  }
  @media (max-width:620px){
    .prc-trail{ padding-bottom:70px; }
    .prc-thread{ padding-left:48px; }
    .prc-thread::before, .prc-thread::after{ left:12px; }
    .prc-node-dot{ left:-48px; width:26px; height:26px; font-size:11.5px; }
    .prc-payoff{ padding:22px; }
  }

  /* -------- PRA QUEM É: colunas com filete, sem caixa -------- */
  .prc-who{ padding:88px 0; border-top:1px solid var(--prc-line); }
  .prc-who-head{ max-width:620px; margin-bottom:48px; }
  .prc-who-head .prc-label{ display:block; margin-bottom:16px; }
  .prc-who-head h2{ font-size:clamp(26px,3.3vw,38px); font-weight:700; color:var(--prc-ink); letter-spacing:-.018em; line-height:1.2; }
  .prc-who-head p{ margin-top:16px; font-size:16.5px; line-height:1.75; color:var(--prc-soft); }
  .prc-who-cols{ display:grid; grid-template-columns:repeat(4,1fr); gap:34px; }
  .prc-who-col{ padding-top:20px; border-top:2px solid var(--prc-green-mid); }
  .prc-who-col h3{ font-size:16px; font-weight:700; color:var(--prc-ink); margin-bottom:10px; line-height:1.35; }
  .prc-who-col p{ font-size:14.5px; line-height:1.7; color:var(--prc-soft); }
  @media (max-width:900px){ .prc-who{ padding:64px 0; } .prc-who-cols{ grid-template-columns:1fr 1fr; gap:28px; } }
  @media (max-width:540px){ .prc-who-cols{ grid-template-columns:1fr; } }

  /* -------- O QUE NÃO PRECISA -------- */
  .prc-free{ padding:0 0 96px; }
  .prc-free-inner{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:56px; align-items:start; }
  .prc-free h2{ font-size:clamp(24px,3vw,34px); font-weight:700; color:var(--prc-ink); letter-spacing:-.018em; line-height:1.22; }
  .prc-free-list{ display:flex; flex-direction:column; }
  .prc-free-list li{
    display:flex; align-items:center; gap:16px; padding:19px 0;
    border-bottom:1px solid var(--prc-line);
    font-family:var(--font-head); font-size:clamp(17px,2.1vw,23px); font-weight:600; color:var(--prc-ink);
  }
  .prc-free-list li:first-child{ border-top:1px solid var(--prc-line); }
  .prc-free-x{
    width:30px; height:30px; border-radius:50%; background:var(--prc-card);
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
  }
  .prc-free-x svg{ width:15px; height:15px; color:var(--prc-green-ink); }
  @media (max-width:820px){ .prc-free{ padding-bottom:64px; } .prc-free-inner{ grid-template-columns:1fr; gap:28px; } }

  /* -------- O ACORDO + FECHO -------- */
  .prc-deal{ padding:0 0 100px; }
  .prc-deal-card{
    background:var(--prc-card); border-radius:var(--radius-xl); padding:56px;
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center;
  }
  .prc-deal-card .prc-label{ display:block; margin-bottom:16px; }
  .prc-deal-card h2{ font-size:clamp(25px,3.1vw,36px); font-weight:700; color:var(--prc-ink); letter-spacing:-.018em; line-height:1.2; }
  .prc-deal-lead > p{ margin-top:16px; font-size:16px; line-height:1.75; color:var(--prc-soft); }
  .prc-deal-card .hero-ctas{ margin-top:30px; }
  .prc-terms{ display:flex; flex-direction:column; gap:2px; }
  .prc-term{ padding:18px 0; border-bottom:1px solid rgba(21,7,38,.1); }
  .prc-term:last-child{ border-bottom:none; }
  .prc-term h4{ font-size:15.5px; font-weight:700; color:var(--prc-ink); margin-bottom:6px; }
  .prc-term p{ font-size:14px; line-height:1.65; color:var(--prc-soft); }
  @media (max-width:900px){
    .prc-deal{ padding-bottom:70px; }
    .prc-deal-card{ grid-template-columns:1fr; gap:36px; padding:34px 26px; }
  }

  .prc-end{ padding:0 0 100px; text-align:center; }
  .prc-end h2{ font-size:clamp(26px,3.6vw,42px); font-weight:700; color:var(--prc-ink); letter-spacing:-.02em; max-width:18ch; margin:0 auto; line-height:1.18; }
  .prc-end p{ margin-top:16px; font-size:16.5px; color:var(--prc-soft); }
  .prc-end .hero-ctas{ justify-content:center; margin-top:32px; }
  @media (max-width:640px){ .prc-end{ padding-bottom:70px; } }
