:root{
  --primary:#00b84e;
  --primary-2:#18ff7a;
  --secondary:#004aad;
  --accent:#ffcc00;
  --whats:#25d366;

  --text:#ecf7f1;
  --muted:#a8d8c6;

  --glass:rgba(255,255,255,.08);
  --glass2:rgba(255,255,255,.12);
  --line:rgba(255,255,255,.16);

  --shadow: 0 18px 60px rgba(0,0,0,.45);
  --shadow2: 0 10px 30px rgba(0,0,0,.28);

  --radius:18px;
  --radius2:26px;
  --max:1120px;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; padding:0;
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:#06110b; /* ✅ agora é só cor (background do estádio só no HERO) */
  min-height:100vh;
  overflow-x:hidden;
}

a{ color:inherit; text-decoration:none; }
.container{ width:100%; max-width:var(--max); margin:0 auto; padding:0 20px; }

/* NAV */
.nav{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(12px);
  background: linear-gradient(180deg, rgba(0,0,0,.70), rgba(0,0,0,.45));
  border-bottom:1px solid rgba(255,255,255,.10);
}
.nav-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:14px; padding:14px 0;
}
.brand{ display:flex; align-items:center; gap:12px; min-width:220px; }
.brand img{
  width:44px; height:44px; object-fit:contain;
  filter: drop-shadow(0 10px 22px rgba(0,0,0,.35));
}
.title strong{ font-size:16px; display:block; letter-spacing:.2px; }
.title span{ font-size:12px; color:var(--muted); }

.nav-links{
  display:flex; flex-wrap:wrap; gap:8px;
  align-items:center; justify-content:center;
}
.pill{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 14px;
  border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.11);
  box-shadow: 0 10px 26px rgba(0,0,0,.18);
  font-size:13px;
  transition: transform .15s ease, background .15s ease, border .15s ease;
  user-select:none;
}
.pill:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.18);
}

.nav-cta{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end; min-width:0; }
.nav-cta .btn{ flex:0 1 auto; }
.nav-cta .btn-primary{ max-width:100%; }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  border:none; outline:none; cursor:pointer;
  border-radius:999px;
  padding:12px 18px;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow: var(--shadow2);
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
  white-space:nowrap;
}
.btn:active{ transform: translateY(1px); }
.btn-primary{
  background: linear-gradient(135deg, var(--primary), #0fd35d);
  color:#06110b;
}
.btn-primary:hover{ filter: brightness(1.05); box-shadow: 0 14px 44px rgba(0,184,78,.20); }
.btn-ghost{
  background: rgba(0,0,0,.15);
  border:1px solid rgba(255,255,255,.18);
  color: var(--text);
  box-shadow:none;
}
.btn-ghost:hover{ background: rgba(255,255,255,.08); }

/* HERO (✅ background do estádio só aqui) */
.hero{
  position:relative;
  padding:56px 0 22px;
  isolation:isolate; /* camadas */
  --bx: 50%;
  --by: 50%;
}
/* imagem do estádio */
.hero::before{
  content:"";
  position:absolute; inset:0;
  background: #06110b url('assets/stadium.jpg') no-repeat;
  background-size: cover;
  background-position: var(--bx) var(--by);
  z-index:-3;
}
/* overlay */
.hero::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(1200px 600px at 20% 10%, rgba(0,184,78,.26), transparent 60%),
    radial-gradient(900px 500px at 80% 30%, rgba(0,74,173,.20), transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,.72), rgba(0,0,0,.58));
  pointer-events:none;
  z-index:-2;
}
/* grain somente no hero (via div) */
.hero .grain{
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
  pointer-events:none;
  z-index:-1;
  mix-blend-mode:overlay;
}

.hero-grid{
  display:grid;
  grid-template-columns: 1.35fr .95fr;
  gap: 28px;
  align-items:start;
}
.hero-left{ padding:18px 0; }
.kicker{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.badge{
  display:inline-flex; gap:8px; align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background: rgba(0,184,78,.14);
  border:1px solid rgba(0,184,78,.28);
  color:#dfffe9;
  font-size:12.5px;
  font-weight:700;
}
.badge.alt{ background: rgba(0,74,173,.14); border:1px solid rgba(0,74,173,.28); }
.badge.gold{ background: rgba(255,204,0,.14); border:1px solid rgba(255,204,0,.28); color:#fff6c6; }

h1{
  margin:0;
  font-size: clamp(30px, 3.6vw, 46px);
  line-height:1.08;
  font-weight: 900;
  letter-spacing: -0.7px;
  color: #fff;
  text-shadow: 0 18px 52px rgba(0,0,0,.55);
}
h1 .hl{
  background: linear-gradient(90deg, var(--accent), #fff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.lead{
  margin:16px 0 0;
  font-size: clamp(14px, 1.7vw, 18px);
  line-height:1.55;
  color: var(--muted);
  max-width: 58ch;
}
.hero-actions{ margin: 22px 0 10px; display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.micro{ display:flex; flex-wrap:wrap; gap:12px; margin-top:16px; color:#d7ffe9; font-size: 13px; }
.micro .chip{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}
.dot{
  width:10px; height:10px; border-radius:50%;
  background: var(--whats);
  box-shadow: 0 0 0 6px rgba(37,211,102,.14);
}
.hero-note{
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.10);
  color:#ffeaa0;
  font-size: 12.5px;
  line-height:1.45;
}
.stats-row{
  margin-top: 18px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.mini{
  padding: 14px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.mini strong{ display:block; font-size:13.5px; }
.mini span{ display:block; margin-top:4px; font-size:12.3px; color: var(--muted); line-height:1.45; }

/* RIGHT: WhatsApp mock */
.panel{
  position:relative;
  border-radius: var(--radius2);
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.12);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.panel::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(500px 240px at 30% 10%, rgba(0,184,78,.22), transparent 55%),
    radial-gradient(520px 280px at 80% 35%, rgba(0,74,173,.20), transparent 55%);
  pointer-events:none;
}
.phone{ position:relative; padding: 16px; }
.phone-top{
  display:flex; align-items:center; justify-content:space-between;
  gap: 12px;
  padding: 10px 10px 12px;
}
.who{ display:flex; gap:10px; align-items:center; }
.avatar{
  width:40px;height:40px;border-radius:50%;
  background: linear-gradient(135deg, var(--secondary), #0a78ff);
  display:flex;align-items:center;justify-content:center;
  font-weight:900;
  box-shadow: 0 10px 24px rgba(0,0,0,.25);
}
.name strong{ font-size:14px; display:block; }
.name span{ font-size:11px; color:#bfffe3; }
.lock{
  display:inline-flex; align-items:center; gap:8px;
  padding: 8px 12px;
  border-radius:999px;
  background: rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.12);
  font-size:12px;
  color:#ffeaa0;
  white-space:nowrap;
}

.phone-body{
  position:relative;
  border-radius: 18px;
  background: rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.10);
  padding: 12px;
  min-height: 360px;
  max-height: 420px;
  overflow:auto;
  scroll-behavior:smooth;
}
.phone-body::-webkit-scrollbar{ width:10px; }
.phone-body::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.12);
  border: 2px solid rgba(0,0,0,.12);
  border-radius: 999px;
}

.bubble{
  padding: 10px 12px;
  border-radius: 18px;
  margin: 8px 0;
  max-width: 92%;
  line-height:1.45;
  font-size: 13px;
  word-wrap:break-word;
  box-shadow: 0 10px 22px rgba(0,0,0,.12);
  white-space:pre-line;
}
.bubble.user{
  margin-left:auto;
  background: linear-gradient(135deg, var(--primary), #12d962);
  color:#06110b;
  font-weight:800;
}
.bubble.bot{
  margin-right:auto;
  background: rgba(255,255,255,.92);
  color:#222;
  font-weight:600;
}

/* number chips inside bot messages */
.chips{
  display:flex; flex-wrap:wrap; gap:8px;
  margin-top:10px;
}
.chip-btn{
  display:inline-flex;
  align-items:center; justify-content:center;
  min-width:42px;
  padding:8px 10px;
  border-radius:999px;
  background: rgba(0,0,0,.06);
  border:1px solid rgba(0,0,0,.10);
  font-weight:900;
  font-size:12px;
  cursor:pointer;
  user-select:none;
  transition: transform .12s ease, background .12s ease;
}
.chip-btn:hover{ transform: translateY(-1px); background: rgba(0,0,0,.09); }
.chip-btn:active{ transform: translateY(1px); }
.chip-btn.green{ background: rgba(0,184,78,.12); border-color: rgba(0,184,78,.18); }
.chip-btn.gold{ background: rgba(255,204,0,.14); border-color: rgba(255,204,0,.18); }
.chip-btn.red{ background: rgba(255,70,70,.12); border-color: rgba(255,70,70,.18); }

.typing{
  display:flex; align-items:center; gap:8px;
  font-size: 12px;
  color: rgba(255,255,255,.80);
  margin-top: 10px;
  padding-left: 6px;
}
.dots{ display:inline-flex; gap:4px; }
.dots i{
  width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.85);
  display:inline-block;
  animation: bounce 1s infinite ease-in-out;
}
.dots i:nth-child(2){ animation-delay: .12s; }
.dots i:nth-child(3){ animation-delay: .24s; }
@keyframes bounce{
  0%, 80%, 100%{ transform: translateY(0); opacity:.6; }
  40%{ transform: translateY(-5px); opacity:1; }
}

.panel-foot{
  position:relative;
  display:flex; gap:10px; align-items:center; justify-content:space-between;
  padding: 12px 14px 14px;
  border-top:1px solid rgba(255,255,255,.10);
}
.panel-foot small{
  color: rgba(255,255,255,.78);
  font-size: 11.5px;
  line-height:1.3;
}
.btn-whats{
  background: linear-gradient(135deg, var(--whats), #41ff91);
  color:#06110b;
}

/* Sections */
.section{ padding: 66px 0; }
.section-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom: 22px; }
h2{
  margin:0;
  font-size: clamp(20px, 2.4vw, 28px);
  font-weight: 900;
  letter-spacing:-0.4px;
  color:#fff;
}
.sub{
  margin: 10px 0 0;
  color: var(--muted);
  line-height:1.6;
  max-width: 70ch;
  font-size: 14.5px;
}

.grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.card{
  border-radius: var(--radius);
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  padding: 18px 16px;
  box-shadow: 0 14px 32px rgba(0,0,0,.18);
  transition: transform .18s ease, background .18s ease, border .18s ease;
  min-height: 160px;
}
.card:hover{
  transform: translateY(-3px);
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.18);
}
.icon{ font-size: 26px; margin-bottom: 10px; }
.card h3{ margin:0; font-size: 15px; font-weight: 900; letter-spacing:-0.2px; }
.card p{ margin:8px 0 0; font-size: 13.3px; line-height:1.55; color: var(--muted); }

/* Steps */
.steps{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.step{
  border-radius: var(--radius);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  padding: 16px 14px;
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
  position:relative;
  overflow:hidden;
}
.step::before{
  content:"";
  position:absolute; inset:-60px -60px auto auto;
  width:140px; height:140px;
  background: radial-gradient(circle, rgba(255,204,0,.24), transparent 60%);
  transform: rotate(12deg);
}
.num{
  width:34px; height:34px; border-radius:50%;
  background: linear-gradient(135deg, var(--accent), #fff0a3);
  color:#1b1500;
  display:flex; align-items:center; justify-content:center;
  font-weight: 1000;
  box-shadow: 0 12px 26px rgba(255,204,0,.12);
  margin-bottom: 10px;
  position:relative;
}
.step strong{ display:block; font-size: 13.5px; }
.step span{ display:block; font-size: 12.5px; color: var(--muted); margin-top:6px; line-height:1.45; }

/* Testimonials */
.testimonials{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 10px;
}
.quote{
  border-radius: var(--radius);
  background: rgba(0,0,0,.16);
  border: 1px solid rgba(255,255,255,.10);
  padding: 16px 14px;
  line-height:1.55;
  color:#e9fff6;
  font-size: 13.5px;
}
.quote .who2{
  margin-top: 10px;
  color:#ffeaa0;
  font-size: 12.2px;
  font-weight: 800;
}

/* FAQ */
.faq{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 16px;
}
details{
  border-radius: var(--radius);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  padding: 12px 12px;
  box-shadow: 0 12px 26px rgba(0,0,0,.12);
}
summary{
  cursor:pointer;
  font-weight: 900;
  color:#fff3bf;
  outline:none;
  list-style:none;
}
summary::-webkit-details-marker{ display:none; }
details p{
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height:1.55;
}

/* Big CTA strip */
.cta{
  margin-top: 18px;
  border-radius: var(--radius2);
  background: linear-gradient(135deg, rgba(37,211,102,.18), rgba(0,184,78,.10));
  border: 1px solid rgba(37,211,102,.26);
  padding: 16px 14px;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  flex-wrap:wrap;
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
}
.cta strong{ font-weight: 1000; }
.cta span{ color: #d7ffe9; font-size: 13px; display:block; margin-top:4px; }

/* Footer */
footer{
  padding: 22px 0;
  border-top:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(10px);
}
.foot{
  display:flex; justify-content:space-between; align-items:center; gap:18px;
  flex-wrap:wrap;
  color: rgba(236,247,241,.92);
}
.foot a{ color: rgba(236,247,241,.92); text-decoration:underline; text-underline-offset: 3px; }
.foot small{ color: rgba(236,247,241,.75); }

/* Floating Whats button (mobile) */
.float-whats{
  position:fixed;
  right: 14px;
  bottom: 14px;
  z-index: 80;
  display:none;
}
.float-whats a{
  display:inline-flex; align-items:center; gap:10px;
  padding: 14px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--whats), #42ff92);
  color:#06110b;
  font-weight: 1000;
  box-shadow: 0 18px 50px rgba(0,0,0,.42);
  border: 1px solid rgba(255,255,255,.18);
}

/* Responsive */
@media (max-width: 980px){
  .nav-inner{ flex-wrap:wrap; align-items:center; }
  .brand{ flex:1 1 auto; min-width:0; }
  .nav-links{ display:none; }
  .nav-cta{ width:100%; justify-content:flex-start; }
  .hero-grid{ grid-template-columns: 1fr; }
  .stats-row{ grid-template-columns: 1fr; }
  .grid{ grid-template-columns: 1fr; }
  .steps{ grid-template-columns: 1fr 1fr; }
  .testimonials{ grid-template-columns: 1fr; }
  .faq{ grid-template-columns: 1fr; }
  .float-whats{ display:block; }
}
@media (max-width: 640px){
  .nav-inner{ gap:12px; }
  .title strong{ font-size:15px; }
  .title span{ font-size:11px; }
  .nav-cta{ flex-direction:column; align-items:stretch; width:100%; }
  .nav-cta .btn{ width:100%; }
  .nav-cta .btn-primary{ white-space:normal; text-align:center; line-height:1.25; }
}
@media (max-width: 520px){
  .steps{ grid-template-columns: 1fr; }
  .brand{ min-width:auto; }
  .btn{ padding: 12px 14px; }
}

/* Anchor offset */
.anchor{ scroll-margin-top: 88px; }


/* SEO + widget */
.seo-copy{max-width:78ch;margin:0 auto 18px;color:var(--muted);line-height:1.7}
.seo-copy strong{color:#fff}
.widget-wrap{
  padding:18px;border-radius:24px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow2);overflow:hidden;
}


.widget-shell{
  margin-top:6px;
  padding:10px;
  border-radius:20px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);

    /* 🔥 ESSENCIAL */
  min-height: 520px;
  display: block;
  overflow: visible;
}
.widget-top{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;margin-bottom:16px;flex-wrap:wrap}
.widget-top p{margin:6px 0 0;color:var(--muted);max-width:64ch;line-height:1.6}
.widget-badges{display:flex;gap:8px;flex-wrap:wrap}
.widget-note{margin-top:14px;color:var(--muted);font-size:13px;line-height:1.6}
.widget-note b{color:#fff}
.widget-cta{
  margin-top:18px;padding:16px;border-radius:18px;background:rgba(0,184,78,.10);
  border:1px solid rgba(0,184,78,.22);display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap;
}
.widget-cta p{margin:0;color:#dfffe9;max-width:62ch;line-height:1.6}
.widget-fallback{
  padding:18px;
  border-radius:18px;
  background:rgba(255,204,0,.08);
  border:1px solid rgba(255,204,0,.22);
  color:#fff6c6;
  line-height:1.6;
}
.widget-fallback code{color:#fff}
.seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.seo-card{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10)}
.seo-card h3{margin:8px 0 8px;font-size:18px}
.seo-card p{margin:0;color:var(--muted);line-height:1.6}
.breadcrumbs{margin:0 0 12px;color:#c7f5dc;font-size:13px}
.breadcrumbs a{opacity:.92}
.mini-list{margin:10px 0 0;padding-left:18px;color:var(--muted);line-height:1.7}
.faq details p{line-height:1.7}

@media (max-width: 900px){
  .seo-grid{grid-template-columns:1fr}
  .widget-wrap{padding:14px}
}
