/* ═══════════════════════════════════════════════
   DESIGN SYSTEM
   Baseado em grid de 8px, escala tipográfica
   modular e hierarquia de cor intencional.
   ═══════════════════════════════════════════════ */

/* ── TOKENS ── */
:root {
  /* Brand */
  --coral:       #E45433;
  --coral-dark:  #C94420;
  --coral-05:    rgba(228,84,51,.05);
  --coral-10:    rgba(228,84,51,.10);
  --coral-15:    rgba(228,84,51,.15);
  --coral-25:    rgba(228,84,51,.25);
  --green:       #00C608;

  /* Dark surface
     Texto sobre --dark (#192740) calibrado para WCAG AA:
     corpo ≥4.5:1, rótulos/decorativo ≥3:1. */
  --dark:        #192740;
  --dark-2:      #1D3055;
  --d-text:      rgba(210,228,255,.88); /* ~9.3:1 */
  --d-muted:     rgba(190,212,255,.74); /* ~6.2:1 — corpo em seções escuras */
  --d-label:     rgba(190,212,255,.46); /* ~3.3:1 — eyebrows/rótulos uppercase */
  --d-rule:      rgba(255,255,255,.09);

  /* Light surface */
  --bg:          #F3F6FB;
  --surface:     #FFFFFF;
  --surface-alt: #EBF0F9;
  --text:        #0E1B2C;
  --muted:       #566A85;
  --rule:        rgba(14,27,44,.07);
  --rule-2:      rgba(14,27,44,.12);

  /* Shadows — elevação progressiva */
  --sh-1: 0 1px 2px rgba(14,27,44,.04), 0 4px 12px rgba(14,27,44,.05);
  --sh-2: 0 1px 3px rgba(14,27,44,.03), 0 10px 28px rgba(14,27,44,.09);
  --sh-3: 0 2px 6px rgba(14,27,44,.04), 0 20px 56px rgba(14,27,44,.14);

  /* Radius */
  --r-sm:  .375rem;
  --r:     .875rem;
  --r-lg:  1.25rem;
  --r-xl:  1.75rem;
  --r-2xl: 2.25rem;
  --r-pill: 9999px;

  --ease:  cubic-bezier(.16,1,.3,1);
  /* Tipografia: slab serif sturdy nas headings (solidez industrial)
     pareado com Poppins geométrico no corpo — contraste serifa/sans */
  --font:      'Poppins', system-ui, sans-serif;
  --font-display: 'Zilla Slab', 'Poppins', Georgia, serif;
}

/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  scroll-behavior:smooth;scroll-padding-top:76px;
  overflow-x:hidden;
}
body{
  font-family:var(--font);font-size:1rem;color:var(--text);
  background:var(--bg);line-height:1.7;
  -webkit-font-smoothing:antialiased;font-weight:400;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
img{display:block;max-width:100%;height:auto}
button{cursor:pointer;background:none;border:none;font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--font);text-wrap:balance;line-height:1.1;font-weight:700}
p{text-wrap:pretty}
::selection{background:rgba(228,84,51,.15)}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:var(--r-sm)}
a,button{-webkit-tap-highlight-color:rgba(228,84,51,.12)}

/* ── LAYOUT ── */
.wrap{max-width:1140px;margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}

/* ── TIPOGRAFIA ── */
.section-title{
  font-family:var(--font-display);
  font-size:clamp(2rem,3.5vw,3rem);font-weight:700;
  letter-spacing:-.015em;line-height:1.1;
  color:var(--text);margin-bottom:1rem;
}
.section-title--light{color:#fff}
.section-sub{
  font-size:1.0625rem;color:var(--muted);
  max-width:54ch;margin-bottom:2.75rem;
  line-height:1.75;font-weight:400;
}
.section-sub--light{color:var(--d-muted)}

/* ── SCROLL FADE — progressive enhancement ── */
.fi{opacity:1}
@supports(animation-timeline:scroll()){
  .fi{
    opacity:0;animation:fi linear both;
    animation-timeline:view();animation-range:entry 0% entry 68%;
  }
}
@keyframes fi{to{opacity:1}}

/* ── BOTÕES ── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--font);font-weight:600;border-radius:var(--r-pill);
  cursor:pointer;border:none;text-align:center;
  white-space:normal;
  transition:background .18s,box-shadow .18s,opacity .15s;
  min-height:44px; /* touch target WCAG 2.5.5 */
}
.btn-coral{
  background:var(--coral);color:#fff;
  padding:.875rem 1.875rem;font-size:.9375rem;
  box-shadow:0 4px 18px rgba(228,84,51,.28),0 1px 3px rgba(228,84,51,.2);
}
.btn-coral:hover{background:var(--coral-dark);box-shadow:0 6px 24px rgba(228,84,51,.4),0 1px 4px rgba(228,84,51,.25)}
.btn-coral--lg{padding:1.0625rem 2.375rem;font-size:1rem;letter-spacing:-.005em}
.btn-outline-light{
  background:rgba(255,255,255,.07);color:#fff;
  border:1.5px solid rgba(255,255,255,.2);
  padding:.875rem 1.75rem;font-size:.9375rem;
}
.btn-outline-light:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.35)}
.btn-outline-dark{
  background:transparent;color:var(--text);
  border:1.5px solid var(--rule-2);
  padding:.875rem 1.5rem;font-size:.875rem;
}
.btn-outline-dark:hover{background:var(--surface-alt);border-color:rgba(14,27,44,.2)}

/* ── ÍCONES (SVG de linha; herdam currentColor do container) ── */
.hc-icon{color:rgba(255,190,160,1)}
.pain-icon{color:var(--coral)}
.wc-icon{color:#fff}
.hc-icon svg,.pain-icon svg,.wc-icon svg,.di-icon svg{display:block;width:1.25rem;height:1.25rem}
.hc-icon svg{width:1.125rem;height:1.125rem}
.dbadge svg{width:.875rem;height:.875rem;flex-shrink:0;color:rgba(255,200,175,.85)}

/* ══════════════════════════════════════════
   NAV
   ══════════════════════════════════════════ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  background:rgba(25,39,64,.97);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:box-shadow .2s;
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding-block:1rem;
}
.logo{display:flex;align-items:center}
.logo-img{height:30px;width:auto;display:block}
@media(max-width:400px){.logo-img{height:26px}}
.nav-links{display:none;align-items:center;gap:2rem}
@media(min-width:720px){.nav-links{display:flex}}
.nav-link{
  position:relative;
  font-size:.8125rem;font-weight:500;
  color:rgba(200,220,255,.6);transition:color .15s;
  padding-block:.25rem;
}
.nav-link:hover{color:#fff}
/* Seção ativa (scroll-spy) — sublinhado coral discreto */
.nav-link.active{color:#fff}
.nav-link.active::after{
  content:'';position:absolute;left:0;right:0;bottom:-2px;height:2px;
  background:var(--coral);border-radius:1px;
}
.nav-actions{display:flex;align-items:center}
.btn-nav{
  background:var(--coral);color:#fff;
  padding:.5625rem 1.25rem;border-radius:var(--r-pill);
  font-size:.8125rem;font-weight:600;
  transition:background .15s;min-height:36px;
}
.btn-nav:hover{background:var(--coral-dark)}

/* ══════════════════════════════════════════
   HERO
   ══════════════════════════════════════════ */
.hero{
  padding-top:clamp(6rem,11vw,9.5rem);
  padding-bottom:clamp(5rem,9vw,8.5rem);
  background:var(--dark);position:relative;overflow:hidden;
}
/* Textura pontilhada — a única assinatura atmosférica das seções escuras
   (estilo papel-quadriculado / blueprint, condiz com o público industrial) */
.hero::before{
  content:'';position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:30px 30px;pointer-events:none;z-index:0;
}
/* Um único brilho coral discreto atrás do título (profundidade, não 3 orbs) */
.hero-orb{
  position:absolute;pointer-events:none;border-radius:50%;
  width:620px;height:620px;background:var(--coral);
  top:-240px;right:-180px;filter:blur(120px);opacity:.10;z-index:0;
}
.hero-orb:nth-child(n+2){display:none}

.hero-eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(228,84,51,.12);
  color:rgba(255,190,160,1);
  border:1px solid rgba(228,84,51,.25);
  font-size:.6875rem;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;
  padding:.4rem 1rem;border-radius:var(--r-pill);margin-bottom:1.75rem;
  position:relative;z-index:1;
}
.hero-pulse{
  width:6px;height:6px;border-radius:50%;
  background:var(--coral);animation:pulse 2s ease-in-out infinite;flex-shrink:0;
}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}

.hero-title{
  font-family:var(--font-display);
  /* min menor + vw maior: o slab (mais largo) não transborda em telas estreitas */
  font-size:clamp(2.05rem,7vw,4.625rem);
  font-weight:700;color:#fff;
  line-height:1.12;letter-spacing:-.02em;
  margin-bottom:1.625rem;
  position:relative;z-index:1;
  overflow-wrap:break-word;
}
.hero-title em{font-style:italic;color:rgba(255,190,155,.92);letter-spacing:-.01em}
/* A/B test do hero — variante definida em <head> (data-ab-hero). Sem JS mostra A. */
.hero-title .ab-b{display:none}
[data-ab-hero="b"] .hero-title .ab-a{display:none}
[data-ab-hero="b"] .hero-title .ab-b{display:inline}

.hero-sub{
  font-size:clamp(.9375rem,1.5vw,1.0625rem);
  color:var(--d-muted);line-height:1.8;
  margin-bottom:2.25rem;max-width:48ch;font-weight:400;
  position:relative;z-index:1;
}

.hero-ctas{
  display:flex;align-items:center;gap:1rem;
  flex-wrap:wrap;position:relative;z-index:1;
}

.hero-trust{
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
  margin-top:2.5rem;padding-top:2rem;
  border-top:1px solid rgba(255,255,255,.09);
  position:relative;z-index:1;
}
.trust-item{
  display:flex;align-items:center;gap:.4375rem;
  font-size:.78125rem;color:var(--d-muted);font-weight:400;
}
.trust-check{
  width:18px;height:18px;border-radius:50%;
  background:rgba(0,198,8,.18);border:1px solid rgba(0,198,8,.35);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;color:var(--green);font-size:.55rem;
}
.trust-sep{width:1px;height:16px;background:rgba(255,255,255,.1)}

.hero-grid{display:grid;grid-template-columns:1fr;gap:3.5rem;align-items:center;position:relative;z-index:1}
@media(min-width:900px){.hero-grid{grid-template-columns:1fr 380px}}

/* Hero card — painel sólido elevado (sem glassmorphism) */
.hero-card{
  background:var(--dark-2);
  border:1px solid var(--d-rule);
  border-radius:var(--r-2xl);
  padding:1.875rem;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}
.hero-card-title{
  font-size:.6875rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.12em;color:var(--d-label);margin-bottom:1.125rem;
}
.hc-item{
  display:flex;align-items:flex-start;gap:.875rem;
  padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.055);
}
.hc-item:last-child{border-bottom:none;padding-bottom:0}
.hc-icon{
  width:32px;height:32px;border-radius:.5rem;
  background:rgba(228,84,51,.2);border:1px solid rgba(228,84,51,.25);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:1rem;
}
.hc-name{font-size:.875rem;font-weight:600;color:#fff;margin-bottom:.125rem;letter-spacing:-.01em}
.hc-desc{font-size:.75rem;color:var(--d-muted);font-weight:400;line-height:1.5}

/* ══════════════════════════════════════════
   PROOF BAR
   ══════════════════════════════════════════ */
.proof-bar{
  background:var(--surface);
  border-bottom:1px solid var(--rule);
}
.proof-grid{
  display:grid;grid-template-columns:repeat(2,1fr);
}
@media(min-width:640px){.proof-grid{grid-template-columns:repeat(4,1fr)}}
.proof-item{
  text-align:center;
  padding:2.25rem 1.5rem;
  position:relative;
}
/* Separador vertical entre itens */
.proof-item+.proof-item::before{
  content:'';position:absolute;left:0;top:25%;bottom:25%;
  width:1px;background:var(--rule);
}
.proof-num{
  font-size:clamp(2.25rem,4vw,3.25rem);
  font-weight:700;color:var(--dark);
  line-height:1;letter-spacing:-.03em;
  margin-bottom:.375rem;
}
.proof-num b{color:var(--coral)}
.proof-lbl{
  font-size:.75rem;color:var(--muted);
  font-weight:400;line-height:1.4;max-width:16ch;margin-inline:auto;
}

/* ══════════════════════════════════════════
   PAIN SECTION
   ══════════════════════════════════════════ */
.pain-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--bg)}
/* Colunas editoriais abertas, separadas por filete — sem caixas repetidas */
.pain-grid{
  display:grid;grid-template-columns:1fr;gap:0;
  margin-top:2.5rem;counter-reset:pain;
}
.pain-card{
  position:relative;overflow:hidden;
  counter-increment:pain;padding:2rem 0;
}
.pain-card:not(:first-child){border-top:1px solid var(--rule)}
@media(min-width:680px){
  .pain-grid{grid-template-columns:repeat(3,1fr)}
  .pain-card{padding:.25rem clamp(1.5rem,2.5vw,2.25rem)}
  .pain-card:not(:first-child){border-top:0;border-left:1px solid var(--rule)}
  .pain-card:first-child{padding-left:0}
  .pain-card:last-child{padding-right:0}
}
/* Número de fundo — marca d'água editorial, decorativa */
.pain-card::after{
  content:'0' counter(pain);
  position:absolute;bottom:0;right:.25rem;z-index:0;
  font-size:4.5rem;font-weight:800;
  color:rgba(14,27,44,.045);line-height:1;pointer-events:none;
}
.pain-icon{
  width:44px;height:44px;border-radius:var(--r);
  background:var(--coral-05);border:1px solid var(--coral-10);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:1.25rem;font-size:1.25rem;position:relative;z-index:1;
}
.pain-card h3{font-size:1rem;font-weight:600;margin-bottom:.625rem;color:var(--text);letter-spacing:-.01em;position:relative;z-index:1}
.pain-card p{font-size:.9375rem;color:var(--muted);line-height:1.72;font-weight:400;position:relative;z-index:1}

/* ══════════════════════════════════════════
   TESTIMONIALS
   ══════════════════════════════════════════ */
.tm-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--bg)}
.tm-grid{display:grid;gap:1.25rem;grid-template-columns:1fr;margin-top:2.5rem}
@media(min-width:760px){
  .tm-grid{grid-template-columns:1.4fr 1fr;align-items:stretch}
  .tm-card--feature{grid-row:1 / span 2}
}
.tm-card{
  background:var(--surface);border:1px solid var(--rule);
  border-radius:var(--r-xl);padding:1.75rem;
  box-shadow:var(--sh-1);
  display:flex;flex-direction:column;gap:1rem;
  transition:box-shadow .22s var(--ease),transform .22s var(--ease);
}
.tm-card:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}
.tm-card--feature{padding:2.25rem;gap:1.25rem}
.tm-stars{display:flex;gap:.15rem;color:var(--coral)}
.tm-stars svg{width:1.05rem;height:1.05rem;display:block}
.tm-quote{
  font-size:.9688rem;line-height:1.7;color:var(--text);font-weight:400;
}
.tm-card--feature .tm-quote{font-size:1.0625rem;line-height:1.72}
.tm-author{display:flex;align-items:center;gap:.75rem;margin-top:auto}
.tm-avatar{
  width:42px;height:42px;border-radius:var(--r-pill);
  background:var(--coral);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:1rem;flex-shrink:0;
  font-family:var(--font-display);
}
.tm-meta{display:flex;flex-direction:column;line-height:1.3}
.tm-name{font-weight:600;color:var(--text);font-size:.9375rem}
.tm-role{font-size:.8125rem;color:var(--muted)}

/* ══════════════════════════════════════════
   QUOTE BREAK
   ══════════════════════════════════════════ */
.quote-sec{
  background:var(--dark);padding:clamp(4rem,6vw,6rem) 0;
  position:relative;overflow:hidden;
}
.quote-sec::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 100% at 50% 50%,rgba(228,84,51,.1) 0%,transparent 70%);
  pointer-events:none;
}
/* Aspas decorativas */
.quote-sec::after{
  content:'"';
  position:absolute;left:clamp(1.5rem,5vw,4rem);top:0;
  font-family:Georgia,serif;font-size:clamp(6rem,12vw,14rem);
  color:rgba(228,84,51,.12);line-height:.85;pointer-events:none;
  font-style:italic;
}
.quote-text{
  font-size:clamp(1.375rem,2.6vw,2rem);font-weight:600;
  color:#fff;line-height:1.4;
  text-align:center;max-width:860px;
  margin-inline:auto;position:relative;z-index:1;
  letter-spacing:-.02em;
}
.quote-text em{font-style:italic;color:rgba(255,190,155,.9)}
.quote-source{
  text-align:center;margin-top:1.25rem;
  font-size:.75rem;color:var(--d-label);
  font-weight:500;letter-spacing:.1em;text-transform:uppercase;
  position:relative;z-index:1;
}

/* ══════════════════════════════════════════
   METHOD
   ══════════════════════════════════════════ */
.method-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--surface)}
.method-top{
  display:grid;grid-template-columns:1fr;gap:3rem;
  align-items:start;margin-bottom:3.5rem;
}
@media(min-width:880px){.method-top{grid-template-columns:1fr auto;align-items:center;gap:4rem}}
.method-acronym{
  font-size:clamp(3.25rem,7vw,5.5rem);font-weight:800;
  color:var(--dark);letter-spacing:-.04em;line-height:.9;
  white-space:nowrap;
}
.method-acronym span{color:var(--coral)}

.method-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:560px){.method-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.method-grid{grid-template-columns:repeat(4,1fr)}}
.mc{
  background:var(--bg);
  border:1px solid var(--rule);
  border-top:3px solid var(--coral); /* âncora visual */
  border-radius:0 0 var(--r-lg) var(--r-lg);
  padding:1.75rem;
  box-shadow:var(--sh-1);
  transition:box-shadow .22s var(--ease),border-top-color .22s;
}
.mc:hover{box-shadow:var(--sh-2)}
.mc-letter{
  font-size:2.625rem;font-weight:800;color:var(--coral);
  line-height:1;margin-bottom:.5rem;letter-spacing:-.04em;
}
.mc-title{
  font-size:.75rem;font-weight:700;color:var(--text);
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem;
}
.mc-desc{font-size:.9375rem;color:var(--muted);line-height:1.68;font-weight:400}
/* Último card (R — Resultado) com tratamento diferenciado */
.mc--r{
  background:var(--dark);border:1px solid transparent;border-top:3px solid var(--coral);
}
.mc--r .mc-letter{color:rgba(255,190,155,.95)}
.mc--r .mc-title{color:rgba(255,255,255,.95)}
.mc--r .mc-desc{color:var(--d-muted)}
@media(min-width:900px){.mc:nth-child(7){grid-column:span 2}}

/* ══════════════════════════════════════════
   PROCESS — timeline vertical (sequência real,
   não fileira de cards)
   ══════════════════════════════════════════ */
.process-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--bg)}
.timeline{
  margin-top:3rem;max-width:740px;
  display:grid;gap:0;list-style:none;
}
.tl-step{
  position:relative;
  display:grid;grid-template-columns:2.75rem 1fr;
  column-gap:clamp(1rem,3vw,1.75rem);
  padding-bottom:2.5rem;
}
.tl-step:last-child{padding-bottom:0}
/* Espinha conectora entre os nós */
.tl-step:not(:last-child)::before{
  content:'';position:absolute;left:1.375rem;transform:translateX(-1px);
  top:3rem;bottom:.25rem;width:2px;
  background:linear-gradient(var(--rule-2) 60%,transparent);
}
.tl-num{
  width:2.75rem;height:2.75rem;border-radius:50%;
  background:var(--dark);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:.9375rem;
  position:relative;z-index:1;
  box-shadow:0 0 0 5px var(--bg),0 4px 12px rgba(14,27,44,.12);
}
/* Marca coral no nó — âncora de identidade */
.tl-num::after{
  content:'';position:absolute;inset:0;border-radius:50%;
  border:1.5px solid transparent;
}
.tl-step:first-child .tl-num{background:var(--coral);box-shadow:0 0 0 5px var(--bg),0 6px 18px rgba(228,84,51,.32)}
.tl-body{padding-top:.45rem}
.tl-body h3{font-size:1.0625rem;font-weight:600;margin-bottom:.4rem;color:var(--text);letter-spacing:-.015em}
.tl-body p{font-size:.9375rem;color:var(--muted);line-height:1.72;font-weight:400;max-width:60ch}

/* ══════════════════════════════════════════
   WHO
   ══════════════════════════════════════════ */
.who-sec{
  padding:clamp(5rem,8vw,8rem) 0;
  background:var(--dark);position:relative;overflow:hidden;
}
.who-sec::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 80% at 80% 50%,rgba(228,84,51,.1) 0%,transparent 60%);
  pointer-events:none;
}
.who-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:start}
@media(min-width:860px){.who-grid{grid-template-columns:1fr 1fr}}
.who-cards{display:flex;flex-direction:column;gap:1rem}
.who-card{
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--r-xl);padding:1.375rem 1.5rem;
  display:flex;align-items:flex-start;gap:1rem;
  transition:background .2s,border-color .2s;
}
.who-card:hover{background:rgba(255,255,255,.08);border-color:rgba(228,84,51,.35)}
.wc-icon{
  width:40px;height:40px;border-radius:var(--r);
  background:var(--coral);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:1rem;
}
.wc-title{font-size:.9375rem;font-weight:600;color:#fff;margin-bottom:.25rem;letter-spacing:-.01em}
.wc-desc{font-size:.875rem;color:var(--d-muted);line-height:1.65;font-weight:400}

.who-notfor{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.07);
  border-radius:var(--r-xl);padding:1.625rem;
}
.notfor-title{
  font-size:.6875rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.12em;color:var(--d-label);margin-bottom:1rem;
}
.notfor-list{list-style:none;display:flex;flex-direction:column;gap:.625rem}
.notfor-list li{
  font-size:.9375rem;color:var(--d-muted);font-weight:400;
  display:flex;align-items:flex-start;gap:.75rem;line-height:1.55;
}
.notfor-list li::before{
  content:'×';color:rgba(252,120,110,.65);
  font-weight:700;flex-shrink:0;margin-top:.1rem;
}
.ticket-box{
  margin-top:1.25rem;
  background:rgba(228,84,51,.08);
  border:1px solid rgba(228,84,51,.18);
  border-radius:var(--r-xl);padding:1.5rem;
}
.ticket-label{
  font-size:.6875rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.12em;color:rgba(255,200,175,.78);margin-bottom:.5rem;
}
.ticket-val{
  font-size:1.75rem;font-weight:700;
  color:rgba(255,185,155,1);line-height:1;
  margin-bottom:.5rem;letter-spacing:-.02em;
}
.ticket-val span{font-size:1rem;font-weight:500}
.ticket-desc{font-size:.875rem;color:var(--d-muted);line-height:1.65;font-weight:400}

/* ══════════════════════════════════════════
   RESULTS — ledger editorial de números
   (sem caixas de card; o número carrega o peso)
   ══════════════════════════════════════════ */
.results-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--bg)}
/* Funil (figura) ao lado do ledger */
.results-layout{
  margin-top:3rem;display:grid;gap:clamp(2rem,5vw,3.5rem);align-items:start;
}
@media(min-width:920px){
  .results-layout{grid-template-columns:minmax(320px,400px) 1fr}
}
.results-list{max-width:none}
.results-layout .results-list{margin-top:0}
.stat{
  display:grid;
  grid-template-columns:minmax(6.5rem,9rem) 1fr;
  column-gap:clamp(1.25rem,4vw,3rem);
  align-items:baseline;
  padding:2rem 0;
  border-top:1px solid var(--rule-2);
}
.stat:last-child{border-bottom:1px solid var(--rule-2)}
.stat-num{
  font-size:clamp(2.5rem,5.5vw,3.75rem);font-weight:700;
  color:var(--coral);line-height:.9;letter-spacing:-.035em;
}
.stat-num span{font-size:.5em;font-weight:600;letter-spacing:0}
.stat-body h3{font-size:1.0625rem;font-weight:600;color:var(--text);margin-bottom:.4rem;letter-spacing:-.015em}
.stat-body p{font-size:.9375rem;color:var(--muted);line-height:1.72;font-weight:400;max-width:62ch}
/* Linha destacada — a entrega principal, sem virar card */
.stat--feature .stat-num{color:var(--text)}
.stat-tag{
  display:inline-block;font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.13em;color:var(--coral-dark);
  margin-bottom:.5rem;
}
@media(max-width:520px){
  .stat{grid-template-columns:1fr;row-gap:.625rem;padding:1.625rem 0}
  .stat-num{line-height:1}
}

/* ── FUNIL RASTREADO (figura/prova visual) ── */
.funnel{
  margin:0;
  background:var(--dark);
  border:1px solid var(--d-rule);
  border-radius:var(--r-2xl);
  padding:clamp(1.375rem,3vw,1.875rem);
  box-shadow:var(--sh-3);
  background-image:
    radial-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(160deg,var(--dark) 0%,var(--dark-2) 100%);
  background-size:22px 22px,100% 100%;
}
@media(min-width:920px){.funnel{position:sticky;top:88px}}
.funnel-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;margin-bottom:1.125rem;
}
.funnel-kicker{
  display:inline-flex;align-items:center;gap:.45rem;
  font-size:.6875rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.12em;color:rgba(255,200,175,.92);
}
.funnel-dot{
  width:6px;height:6px;border-radius:50%;background:var(--coral);
  flex-shrink:0;animation:pulse 2s ease-in-out infinite;
}
.funnel-eg{
  font-size:.625rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.1em;color:var(--d-label);flex-shrink:0;
}
.funnel-title{
  font-family:var(--font-display);font-size:1.1875rem;font-weight:700;
  color:#fff;line-height:1.2;letter-spacing:-.01em;margin-bottom:1.5rem;
}
.funnel-stages{display:flex;flex-direction:column}
.fn-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.45rem}
.fn-label{font-size:.875rem;font-weight:600;color:var(--d-text)}
.fn-val{font-family:var(--font-display);font-size:1.0625rem;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.fn-bar{height:.5rem;border-radius:var(--r-pill);background:rgba(255,255,255,.06);overflow:hidden}
.fn-fill{
  display:block;height:100%;width:var(--w);border-radius:inherit;
  background:linear-gradient(90deg,var(--coral),#F4824F);
}
.fn-drop{
  display:flex;align-items:center;gap:.45rem;
  padding:.5rem 0 .5rem .125rem;
  font-size:.75rem;color:var(--d-muted);
}
.fn-pct{font-weight:700;color:rgba(255,200,175,.95);font-variant-numeric:tabular-nums}
.fn-note{
  margin-top:.5rem;font-size:.75rem;line-height:1.5;
  color:rgba(255,190,160,.82);
}
.fn-stage--win .fn-fill{background:linear-gradient(90deg,#F4824F,#FFB488)}
.fn-stage--win .fn-val{color:rgba(255,200,175,1)}
.funnel-foot{
  display:grid;grid-template-columns:1fr 1fr;gap:1rem;
  margin-top:1.5rem;padding-top:1.25rem;
  border-top:1px solid var(--d-rule);
}
.ff-k{
  display:block;font-size:.625rem;text-transform:uppercase;
  letter-spacing:.09em;color:var(--d-label);margin-bottom:.3rem;
}
.ff-v{font-family:var(--font-display);font-weight:700;color:#fff;font-size:1.0625rem;letter-spacing:-.01em}
@media(max-width:380px){.funnel-foot{grid-template-columns:1fr;gap:.875rem}}

/* ══════════════════════════════════════════
   DIAGNOSTIC
   ══════════════════════════════════════════ */
.diag-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--surface)}
.diag-grid{display:grid;grid-template-columns:1fr;gap:3.5rem;align-items:start}
@media(min-width:860px){.diag-grid{grid-template-columns:1fr 420px}}
.diag-items{display:flex;flex-direction:column;gap:1rem;margin-top:1.75rem}
.di{
  display:flex;align-items:flex-start;gap:1rem;
  padding:1.25rem 1.375rem;background:var(--bg);
  border:1px solid var(--rule);border-radius:var(--r-lg);
  transition:box-shadow .2s;
}
.di:hover{box-shadow:var(--sh-1)}
.di-icon{
  width:40px;height:40px;background:rgba(0,198,8,.1);
  border-radius:var(--r);display:flex;align-items:center;
  justify-content:center;flex-shrink:0;font-size:1rem;
  color:var(--green);border:1px solid rgba(0,198,8,.18);
}
.di h4{font-size:.9375rem;font-weight:600;color:var(--text);margin-bottom:.2rem;letter-spacing:-.01em}
.di p{font-size:.875rem;color:var(--muted);font-weight:400;line-height:1.6}

/* CTA card — dark glass */
.diag-card{
  background:var(--dark);border-radius:var(--r-2xl);
  padding:2.25rem;position:sticky;top:88px;
  box-shadow:var(--sh-3);
  /* Padrão pontilhado sutil */
  background-image:
    radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(135deg,var(--dark) 0%,var(--dark-2) 100%);
  background-size:24px 24px,100% 100%;
}
.diag-card-title{
  font-family:var(--font-display);
  font-size:1.5rem;font-weight:700;color:#fff;
  margin-bottom:.625rem;letter-spacing:-.01em;
}
.diag-card-sub{
  font-size:.9375rem;color:var(--d-muted);
  margin-bottom:1.75rem;line-height:1.72;font-weight:400;
}
.diag-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.625rem}
.dbadge{
  display:inline-flex;align-items:center;gap:.3rem;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r-pill);padding:.3125rem .8125rem;
  font-size:.6875rem;font-weight:500;color:rgba(185,210,255,.75);
}
.diag-btn-wa{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  background:var(--coral);color:#fff;width:100%;
  padding:1.0625rem;border-radius:var(--r-pill);
  font-size:1rem;font-weight:600;letter-spacing:-.01em;
  box-shadow:0 4px 18px rgba(228,84,51,.35),0 1px 3px rgba(228,84,51,.2);
  transition:background .15s,box-shadow .15s;
  margin-bottom:.875rem;min-height:48px;
}
.diag-btn-wa:hover{background:var(--coral-dark);box-shadow:0 6px 24px rgba(228,84,51,.5)}
.diag-btn-email{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.12);
  color:#fff;width:100%;padding:.9375rem;
  border-radius:var(--r-pill);font-size:.9375rem;font-weight:500;
  transition:.15s;min-height:44px;
}
.diag-btn-email:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.25)}
.diag-disclaimer{
  text-align:center;margin-top:.875rem;
  font-size:.6875rem;color:var(--d-muted);line-height:1.6;font-weight:400;
}

/* ══════════════════════════════════════════
   FAQ
   ══════════════════════════════════════════ */
.faq-sec{padding:clamp(5rem,8vw,8rem) 0;background:var(--bg)}
.faq-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:start}
@media(min-width:860px){.faq-grid{grid-template-columns:380px 1fr}}
.faq-list{display:flex;flex-direction:column;gap:.625rem}
.faq-item{
  background:var(--surface);border:1px solid var(--rule);
  border-radius:var(--r-lg);overflow:hidden;
  transition:border-color .2s,box-shadow .2s;
  box-shadow:var(--sh-1);
}
.faq-item.open{border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-05),var(--sh-1)}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:1.125rem 1.375rem;text-align:left;
  font-size:.9375rem;font-weight:500;color:var(--text);transition:color .15s;
  min-height:52px;
}
.faq-q:hover{color:var(--coral)}
.faq-ic{
  width:24px;height:24px;border-radius:50%;
  border:1.5px solid var(--rule-2);
  display:flex;align-items:center;justify-content:center;
  font-size:.9375rem;flex-shrink:0;
  color:var(--muted);transition:transform .3s var(--ease),background .18s,border-color .18s;
}
.faq-item.open .faq-ic{
  transform:rotate(45deg);
  background:var(--coral);border-color:var(--coral);color:#fff;
}
/* Progressive enhancement: respostas abertas por padrão (acessíveis sem JS);
   só quando o JS marca <html class="js"> o acordeão colapsa.
   max-height (não grid 0fr) para colapso confiável entre engines. */
.faq-a{overflow:hidden;transition:max-height .35s var(--ease)}
html.js .faq-a{max-height:0}
html.js .faq-item.open .faq-a{max-height:32rem}
.faq-a-inner{
  overflow:hidden;font-size:.9375rem;color:var(--muted);
  line-height:1.75;padding:0 1.375rem 1.25rem;font-weight:400;
}
.faq-contact{
  background:var(--dark);border-radius:var(--r-xl);
  padding:1.75rem;margin-top:1.75rem;
  box-shadow:var(--sh-2);
}
.faq-contact-title{font-size:1.125rem;font-weight:700;color:#fff;margin-bottom:.375rem;letter-spacing:-.015em}
.faq-contact-sub{font-size:.875rem;color:var(--d-muted);margin-bottom:1.25rem;line-height:1.68;font-weight:400}

/* ══════════════════════════════════════════
   FINAL CTA
   ══════════════════════════════════════════ */
.cta-sec{
  padding:clamp(6rem,10vw,9rem) 0;
  background:var(--dark);position:relative;overflow:hidden;text-align:center;
}
/* Gradientes de profundidade */
.cta-sec::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 120%,rgba(228,84,51,.2) 0%,transparent 65%);
  pointer-events:none;
}
.cta-sec::after{
  content:'';position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:28px 28px;pointer-events:none;
}
.cta-tag{
  display:inline-block;background:rgba(228,84,51,.14);
  color:rgba(255,185,155,1);border:1px solid rgba(228,84,51,.24);
  font-size:.6875rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  padding:.4rem .9375rem;border-radius:var(--r-pill);
  margin-bottom:1.5rem;position:relative;z-index:1;
}
.cta-title{
  font-family:var(--font-display);
  font-size:clamp(2rem,4vw,3.25rem);font-weight:700;color:#fff;
  margin-bottom:1rem;position:relative;z-index:1;
  max-width:700px;margin-inline:auto;
  line-height:1.12;letter-spacing:-.015em;
}
.cta-title em{font-style:italic;color:rgba(255,185,155,.9)}
.cta-sub{
  font-size:1.0625rem;color:var(--d-muted);
  margin-bottom:2.25rem;position:relative;z-index:1;
  max-width:52ch;margin-inline:auto;line-height:1.75;font-weight:400;
}
.cta-btns{
  display:flex;align-items:center;justify-content:center;
  gap:1rem;flex-wrap:wrap;position:relative;z-index:1;
}
.cta-guarantee{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  margin-top:1.25rem;font-size:.78125rem;color:var(--d-muted);
  position:relative;z-index:1;
}

/* ══════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════ */
.footer{
  background:var(--dark);
  border-top:1px solid rgba(255,255,255,.06);
  padding:2rem 0;
}
.footer-inner{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:1rem;
}
.footer-logo{display:inline-flex;align-items:center}
.footer-logo img{height:34px;width:auto;display:block}
.footer-copy{font-size:.75rem;color:var(--d-muted);font-weight:400}
.footer-links{display:flex;gap:1.5rem}
.footer-links a{font-size:.75rem;color:var(--d-muted);transition:color .15s}
.footer-links a:hover{color:var(--d-text)}

/* ══════════════════════════════════════════
   MOBILE STICKY CTA
   ══════════════════════════════════════════ */
.sticky-cta{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:300;
  background:rgba(25,39,64,.97);
  padding:.875rem clamp(1rem,4vw,1.5rem);
  box-shadow:0 -4px 24px rgba(0,0,0,.3);
  border-top:1px solid rgba(255,255,255,.07);
  transform:translateY(100%);
  transition:transform .3s var(--ease);
  backdrop-filter:blur(16px);
}
.sticky-cta.visible{transform:translateY(0)}
.sticky-cta-inner{
  display:flex;align-items:center;gap:.75rem;
  max-width:1140px;margin-inline:auto;
}
.sticky-cta-text{
  flex:1;min-width:0;
  font-size:.78125rem;color:var(--d-muted);font-weight:400;line-height:1.35;
}
.sticky-cta-text strong{display:block;color:#fff;font-size:.875rem;font-weight:600}
.sticky-cta-btn{
  display:inline-flex;align-items:center;gap:.4rem;
  background:var(--coral);color:#fff;
  padding:.6875rem 1.125rem;border-radius:var(--r-pill);
  font-size:.8125rem;font-weight:700;flex-shrink:0;
  box-shadow:0 2px 10px rgba(228,84,51,.3);
  transition:background .15s;min-height:44px;
}
.sticky-cta-btn:hover{background:var(--coral-dark)}
.sticky-cta-close{
  width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.07);border:none;
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.4);font-size:1.125rem;
  flex-shrink:0;cursor:pointer;transition:.15s;line-height:1;
}
.sticky-cta-close:hover{background:rgba(255,255,255,.14);color:#fff}

@media(max-width:879px){
  .sticky-cta{display:block}
  body{padding-bottom:72px}
}

/* ══════════════════════════════════════════
   RESPONSIVIDADE MOBILE
   Breakpoints: 960, 720, 680, 380
   ══════════════════════════════════════════ */

/* Acessibilidade: respeita preferência de movimento reduzido */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .fi{opacity:1!important}
  html{scroll-behavior:auto}
}

@media(max-width:680px){
  /* Hero sem max-width restrictivo */
  .hero-title{letter-spacing:-.025em}
  .hero-sub{max-width:100%}

  /* CTAs empilhados full-width */
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn-coral--lg,
  .hero-ctas .btn-outline-light{width:100%;justify-content:center}

  /* Trust items em coluna */
  .hero-trust{flex-direction:column;align-items:flex-start;gap:.5rem}
  .trust-sep{display:none}

  /* Section sub sem max-width */
  .section-sub{max-width:100%}

  /* Diag card: remove sticky */
  .diag-card{position:static;background:var(--dark)}

  /* Brilho do hero reduzido (perf GPU) */
  .hero-orb{width:340px;height:340px;filter:blur(80px)}

  /* CTA section */
  .cta-btns{flex-direction:column;align-items:stretch}
  .cta-btns .btn-coral--lg,
  .cta-btns .btn-outline-light{width:100%;justify-content:center}

  /* Method */
  .method-acronym{white-space:normal}

  /* FAQ */
  .faq-q{font-size:.9rem}
  .faq-a-inner{font-size:.875rem}

  /* Footer */
  .footer-inner{flex-direction:column;align-items:flex-start;gap:.75rem}
  .footer-links{gap:1rem}

  /* Proof */
  .proof-item+.proof-item::before{top:0;bottom:0;height:auto}
}

@media(max-width:380px){
  .btn-nav{font-size:.725rem;padding:.5rem 1rem}
  .hero-eyebrow{font-size:.625rem}
  .proof-grid{grid-template-columns:1fr}
  .diag-badges{flex-direction:column;align-items:flex-start}
}
