:root{
  --bg:#0A0F1C;
  --bg-2:#0E1526;
  --text:#E6F1FF;
  --muted:#90A3BF;
  --primary:#00E6FF;
  --primary-2:#00B2FF;
  --accent:#14F195;
  --success:#2ecc71;
  --success-2:#1fb25d;
  --wa:#25D366;
  --card:#0C1322;
  --border:rgba(0,230,255,0.2);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;
  background: radial-gradient(60% 60% at 50% 0%, #09111F 0%, var(--bg) 60%) fixed;
  color:var(--text); line-height:1.6; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.skip{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip:focus{left:16px;top:16px;width:auto;height:auto;z-index:999}
.container{width:min(1400px,94%); margin-inline:auto}
.container--wide{width:min(1600px,96%)}

/* Navigation */
.nav{position:sticky; top:0; z-index:10; backdrop-filter:saturate(140%) blur(10px); background:linear-gradient(180deg, rgba(10,15,28,.85), rgba(10,15,28,.5) 60%, transparent)}
.nav__inner{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--text); font-weight:700}
.brand img{width:36px; height:36px; filter:drop-shadow(0 0 12px rgba(0,230,255,.45))}
.menu__toggle{display:none; background:none; border:1px solid var(--border); color:var(--text); padding:.4rem .6rem; border-radius:8px}
.menu__list{display:flex; gap:20px; align-items:center; list-style:none; margin:0; padding:0}
.menu__list a{color:var(--text); text-decoration:none}

/* Buttons */
.btn{--glow:0 0 24px rgba(0,230,255,.55); display:inline-flex; align-items:center; justify-content:center; gap:8px; text-decoration:none; color:#001018; font-weight:700; border-radius:12px; padding:.9rem 1.1rem; transition:transform .15s ease, opacity .15s ease, box-shadow .2s; cursor:pointer; border:none}
.btn--primary{background:linear-gradient(180deg,var(--primary),var(--primary-2)); box-shadow:0 0 0 1px rgba(0,230,255,.45), var(--glow)}
.btn--primary:hover{transform:translateY(-1px); box-shadow:0 0 0 1px rgba(0,230,255,.7), 0 0 40px rgba(0,230,255,.6)}
.btn--ghost{color:var(--text); background:transparent; border:1px solid var(--border)}
.btn--lg{padding:1.1rem 1.4rem; font-size:1.05rem}
.btn--success{background:linear-gradient(180deg,var(--success),var(--success-2)); color:#00160b; box-shadow:0 0 0 1px rgba(46,204,113,.35), 0 0 24px rgba(46,204,113,.25)}
.btn--success:hover{transform:translateY(-1px); box-shadow:0 0 0 1px rgba(46,204,113,.6), 0 0 36px rgba(46,204,113,.35)}
.btn--pulse{animation:pulse-glow 2s infinite}
.btn--full{width:100%}
.btn-arrow{transition:transform .2s ease}
.btn:hover .btn-arrow{transform:translateX(4px)}

@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}
@keyframes pulse-glow{0%,100%{box-shadow:0 0 0 1px rgba(0,230,255,.45), var(--glow)}50%{box-shadow:0 0 0 1px rgba(0,230,255,.7), 0 0 50px rgba(0,230,255,.8)}}

/* Hero */
.hero{position:relative; overflow:hidden; border-bottom:1px solid var(--border)}
.hero__inner{display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:48px; padding:72px 0}
.hero{background:radial-gradient(70% 100% at 70% 20%, rgba(0,230,255,.05), transparent 60%), linear-gradient(180deg, var(--bg), var(--bg-2))}
.hero h1{font-family:"Space Grotesk",Inter,system-ui; font-size:clamp(2rem, 5vw, 3.2rem); line-height:1.1; margin:0 0 12px}
.lead{font-size:1.1rem; color:#BBD1FF; max-width:60ch}
.hero__ctas{display:flex; gap:12px; margin:16px 0 8px}
.badges{display:flex; gap:12px; padding:0; margin:18px 0 0; list-style:none; flex-wrap:wrap}
.badges li{border:1px solid var(--border); color:var(--muted); padding:.4rem .6rem; border-radius:999px; font-size:14px}
.hero__art{
  position:relative; 
  height:520px;
}


.hero__badge{
  position: relative;
  z-index: 3;
}

.circuit{
  position: absolute; 
  inset: 15% 8% 15% 8%; 
  border: 1px dashed rgba(0,230,255,.25); 
  border-radius: 16px; 
  box-shadow: inset 0 0 32px rgba(0,230,255,.15); 
  display: flex; 
  align-items: center; 
  justify-content: center; 
  padding: 20px; 
  min-height: 140px;
  z-index: 2;
}

.chart-container, .chart-bars, .chart-line, .bar, .line-point {
  position: relative;
  z-index: 3;
}
.glow{color:var(--primary); text-shadow:0 0 12px rgba(0,230,255,.6)}


/* Testimonials Rail (full width, estilo mensagens) */
.testimonials-rail{position:relative; overflow:hidden; background:linear-gradient(180deg,#0b1222,#0a0f1c)}
.testimonials-rail .heading{margin-bottom:20px; text-align:center}
.rail-wrapper{position:relative; width:100%}
.rail{display:flex; flex-wrap:nowrap; align-items:stretch; gap:20px; will-change:transform; padding:8px 0; width:100%}
.rail--single{animation:railSingle 25s linear infinite; width:100%}
@keyframes railSingle{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.rail-mask{position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#0a0f1c 0%, rgba(10,15,28,0) 8%, rgba(10,15,28,0) 92%, #0a0f1c 100%)}
.msg-card{display:flex; flex-direction:column; gap:8px; min-width:360px; width:420px; max-width:92vw; flex:0 0 auto; background:#0f172a; border:1px solid rgba(255,255,255,.06); border-radius:16px; padding:14px 16px; color:var(--text); box-shadow:0 10px 30px rgba(0,0,0,.35)}
.msg-head{display:flex; align-items:center; justify-content:space-between; gap:10px}
.person{display:flex; align-items:center; gap:10px}
.avatar{width:28px; height:28px; border-radius:999px; background:linear-gradient(180deg,#2dd4bf,#22d3ee); display:grid; place-items:center; color:#032024; font-weight:800}
.name{font-weight:700}
.time{color:var(--muted); font-size:.85rem}
.msg{font-size:.98rem}
.hl{box-shadow:inset 0 -10px 0 0 #fff2a8}

@media (max-width:980px){
  .msg-card{min-width:280px; width:320px}
}

/* Urgência */
.urgency-banner{display:flex; align-items:center; gap:8px; background:linear-gradient(135deg, rgba(255,193,7,.15), rgba(255,152,0,.15)); border:1px solid rgba(255,193,7,.3); border-radius:12px; padding:8px 12px; margin-bottom:16px; animation:pulse 2s infinite}
.urgency-icon{font-size:1.2rem}
.urgency-text{color:#FFD700; font-weight:600; font-size:14px}
.urgency-timer{color:#FFA500; font-weight:700; margin-left:auto}

/* Prova social no hero */
.hero-social-proof{display:flex; gap:24px; margin:20px 0; padding:16px 0; border-top:1px solid rgba(0,230,255,.2); border-bottom:1px solid rgba(0,230,255,.2)}
.social-proof-item{text-align:center; flex:1}
.social-proof-number{display:block; font-family:"Space Grotesk",Inter; font-size:1.4rem; font-weight:700; color:var(--primary); text-shadow:0 0 12px rgba(0,230,255,.4)}
.social-proof-label{display:block; font-size:14px; color:var(--muted); margin-top:2px}

/* Microcopy do CTA */
.cta-microcopy{color:#BBD1FF; font-size:14px; margin-top:8px; text-align:center; font-weight:500}

/* Elementos de confiança */
.trust-elements{display:flex; gap:20px; margin-top:20px; padding:16px 0; justify-content:center; flex-wrap:wrap}
.trust-item{display:flex; align-items:center; gap:6px; color:#BBD1FF; font-size:14px; font-weight:500}
.trust-icon{font-size:16px}

/* Sections */
.section{padding:64px 0}
.section--shade{background:linear-gradient(180deg, var(--bg-2), var(--bg))}
.section--cta{background:radial-gradient(60% 80% at 50% 0%, rgba(0,230,255,.08), transparent 60%), var(--bg-2); text-align:center; border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.section h2{font-family:"Space Grotesk",Inter,system-ui; font-size:clamp(1.6rem, 3.6vw, 2.2rem); margin:0 0 10px}
.section__sub{color:#BBD1FF; margin:0 0 24px}
.center{text-align:center}
.muted{color:var(--muted)}
.small{font-size:14px}

/* Full-width testimonials rail */
.testimonials-rail{position:relative; overflow:hidden; background:linear-gradient(180deg, #0b1222, #0a0f1c); padding:80px 0}
.testimonials-rail .heading{margin-bottom:40px; text-align:center}

/* Estatísticas dos depoimentos */
.testimonials-stats{display:flex; gap:40px; margin-top:24px; justify-content:center; flex-wrap:wrap}
.stat-item{text-align:center; padding:16px 20px; background:rgba(0,230,255,.05); border:1px solid rgba(0,230,255,.2); border-radius:12px; min-width:120px}
.stat-number{display:block; font-family:"Space Grotesk",Inter; font-size:1.8rem; font-weight:700; color:var(--primary); text-shadow:0 0 12px rgba(0,230,255,.4); margin-bottom:4px}
.stat-label{display:block; font-size:12px; color:var(--muted); font-weight:500; text-transform:uppercase; letter-spacing:.5px}
.rail-wrapper{position:relative}
.rail{display:flex; gap:20px; will-change:transform; white-space:nowrap; padding:20px 0}
.rail--left{animation:railLeft 30s linear infinite}
.rail--right{animation:railRight 35s linear infinite}
@keyframes railLeft{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes railRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.rail-mask{position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg, #0a0f1c 0%, rgba(10,15,28,0) 8%, rgba(10,15,28,0) 92%, #0a0f1c 100%)}

/* Cards com fundo branco */
.msg-card{display:flex; flex-direction:column; gap:16px; min-width:380px; width:420px; max-width:92vw; flex:0 0 auto; background:#ffffff; border:1px solid #e5e7eb; border-radius:20px; padding:24px; color:#1f2937; box-shadow:0 10px 30px rgba(0,0,0,.1); transition:transform .2s ease, box-shadow .2s ease}
.msg-card:hover{transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.15)}

.msg-head{display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px}
.person{display:flex; align-items:center; gap:16px}
.avatar-img{width:48px; height:48px; border-radius:50%; object-fit:cover; border:3px solid #00e6ff; flex-shrink:0}
.name{font-weight:700; color:#1f2937; font-size:16px}
.time{color:#6b7280; font-size:16px; font-weight:500}
.msg{font-size:17px; line-height:1.5; color:#374151; margin:0; word-wrap:break-word; white-space:normal}
.hl{background:linear-gradient(135deg, #fbbf24, #f59e0b); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:700; padding:2px 4px; border-radius:4px}

@media (max-width: 980px){
  .msg-card{min-width:320px; width:360px; padding:20px}
  .avatar-img{width:40px; height:40px}
  .msg{font-size:16px}
  .name{font-size:16px}
  .time{font-size:16px}
}
/* Cards and grid */
.grid{display:grid; gap:20px}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--2{grid-template-columns:1.2fr .8fr}
.card{background:var(--card); border:1px solid var(--border); border-radius:14px; padding:18px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), 0 0 24px rgba(0,0,0,.25)}
.card h3{margin:6px 0 6px}
.card ul{margin:8px 0 0 18px}

.metric{background:linear-gradient(180deg, rgba(0,230,255,.06), rgba(0,230,255,.02)); border:1px solid var(--border); border-radius:14px; padding:24px; text-align:center}
.metric__value{font-family:"Space Grotesk",Inter; font-size:2rem; color:var(--primary); text-shadow:0 0 16px rgba(0,230,255,.45)}
.metric__label{display:block; color:var(--muted)}

/* Timeline */
.timeline{display:grid; grid-template-columns:repeat(4,1fr); gap:18px}
.step{position:relative; background:var(--card); border:1px solid var(--border); border-radius:14px; padding:18px}
.step__num{position:absolute; top:-12px; left:-12px; background:linear-gradient(180deg,var(--primary),var(--primary-2)); color:#001018; font-weight:800; border-radius:999px; width:38px; height:38px; display:grid; place-items:center; box-shadow:0 0 18px rgba(0,230,255,.45)}

/* Cases */
.cases-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:24px; margin-top:32px}
.case-card{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:24px; transition:transform .2s ease, box-shadow .2s ease}
.case-card:hover{transform:translateY(-2px); box-shadow:0 8px 32px rgba(0,230,255,.15)}
.case-header{display:flex; justify-content:space-between; align-items:center; margin-bottom:16px}
.case-header h3{margin:0; font-size:1.1rem}
.case-industry{background:rgba(0,230,255,.1); color:var(--primary); padding:4px 8px; border-radius:6px; font-size:14px; font-weight:600}
.case-results{display:flex; gap:20px; margin-bottom:12px}
.case-metric{text-align:center}
.case-number{display:block; font-family:"Space Grotesk",Inter; font-size:1.3rem; font-weight:700; color:var(--primary); text-shadow:0 0 12px rgba(0,230,255,.4)}
.case-label{display:block; font-size:14px; color:var(--muted)}
.case-description{color:#BBD1FF; font-size:14px; line-height:1.5}

/* Redução de risco/Garantias */
.risk-reversal{display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:24px; margin:32px 0 40px; padding:24px 0; border-top:1px solid rgba(0,230,255,.2); border-bottom:1px solid rgba(0,230,255,.2)}
.guarantee-card{background:linear-gradient(135deg, rgba(0,230,255,.08), rgba(0,230,255,.03)); border:2px solid rgba(0,230,255,.3); border-radius:16px; padding:24px; text-align:center; transition:transform .2s ease, box-shadow .2s ease; position:relative; overflow:hidden}
.guarantee-card::before{content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg, var(--primary), var(--accent))}
.guarantee-card:hover{transform:translateY(-2px); box-shadow:0 8px 25px rgba(0,230,255,.2)}
.guarantee-icon{font-size:2.5rem; margin-bottom:12px; display:block}
.guarantee-card h3{margin:0 0 8px; font-size:1.2rem; color:var(--text); font-weight:700}
.guarantee-card p{color:#BBD1FF; line-height:1.5; margin:0; font-size:14px; font-weight:500}

/* Benefícios/Diferenciais */
.benefits-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:28px; margin-top:32px}
.benefit-card{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:28px; text-align:center; transition:transform .2s ease, box-shadow .2s ease}
.benefit-card:hover{transform:translateY(-4px); box-shadow:0 12px 40px rgba(0,230,255,.15)}
.benefit-icon{font-size:3rem; margin-bottom:16px; display:block}
.benefit-card h3{margin:0 0 12px; font-size:1.3rem; color:var(--text)}
.benefit-card p{color:#BBD1FF; line-height:1.6; margin:0; font-size:16px}

/* FAQ */
.faq-grid{display:grid; gap:16px; margin-top:32px; max-width:900px; margin-left:auto; margin-right:auto}
.faq-item{border:1px solid var(--border); border-radius:16px; overflow:hidden; background:var(--card)}
.faq-question{width:100%; background:none; border:none; color:var(--text); padding:20px 24px; text-align:left; cursor:pointer; display:flex; justify-content:space-between; align-items:center; font-weight:600; font-size:16px; transition:background .2s ease}
.faq-question:hover{background:rgba(0,230,255,.05)}
.faq-icon{font-size:1.2rem; color:var(--primary); transition:transform .2s ease}
.faq-question[aria-expanded="true"] .faq-icon{transform:rotate(45deg)}
.faq-answer{padding:0 24px; max-height:0; overflow:hidden; transition:max-height .3s ease, padding .3s ease; font-size:16px; line-height:1.6}
.faq-question[aria-expanded="true"] + .faq-answer{padding:0 24px 24px; max-height:200px}
.faq-answer p{margin:0; color:#BBD1FF; line-height:1.6}

/* Ofertas/Up-sell */
.offers{background:linear-gradient(180deg, var(--bg-2), var(--bg))}

/* Banner de escassez */
.scarcity-banner{display:flex; align-items:center; gap:12px; background:linear-gradient(135deg, rgba(255,87,87,.15), rgba(255,152,0,.15)); border:2px solid rgba(255,87,87,.3); border-radius:16px; padding:12px 20px; margin:24px 0; animation:pulse 2s infinite; justify-content:center; flex-wrap:wrap}
.scarcity-icon{font-size:1.4rem; animation:pulse 1s infinite}
.scarcity-text{color:#FF6B6B; font-weight:700; font-size:16px}
.scarcity-timer{color:#FF8C00; font-weight:800; font-size:16px; margin-left:auto}

/* Container para ofertas dinâmicas */
.offers-container{display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:28px; margin-top:32px}

/* Cards de ofertas */
.offer-card{position:relative; background:var(--card); border:1px solid var(--border); border-radius:20px; padding:28px; text-align:center; transition:transform .3s ease, box-shadow .3s ease; overflow:hidden}
.offer-card:hover{transform:translateY(-4px); box-shadow:0 12px 40px rgba(0,230,255,.2)}
.offer-card.featured{border:2px solid var(--primary); box-shadow:0 0 30px rgba(0,230,255,.3); transform:scale(1.05)}

/* Badge "Mais Popular" */
.badge{position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg, var(--primary), var(--primary-2)); color:#001018; padding:6px 16px; border-radius:20px; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; z-index:1}

/* Header da oferta */
.offer-header{margin-bottom:24px}
.offer-header h3{margin:0 0 12px; font-size:1.4rem; color:var(--text); font-weight:700}
.offer-header p{margin:0; color:#BBD1FF; font-size:15px; line-height:1.5}

/* Preços */
.offer-price{display:flex; flex-direction:column; align-items:center; gap:8px; margin-bottom:24px}
.price-current{color:var(--primary); font-size:2rem; font-weight:700; text-shadow:0 0 12px rgba(0,230,255,.4); line-height:1}
.price-original{color:var(--muted); font-size:1rem; text-decoration:line-through; opacity:.7}
.discount{background:linear-gradient(135deg, var(--accent), #00D4AA); color:#00160b; padding:4px 12px; border-radius:12px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.5px}

/* Lista de recursos */
.offer-features{list-style:none; padding:0; margin:0 0 28px; text-align:left}
.offer-features .feature{color:#BBD1FF; padding:8px 0; font-size:14px; display:flex; align-items:center; gap:10px; border-bottom:1px solid rgba(255,255,255,.05)}
.offer-features .feature:last-child{border-bottom:none}
.offer-features .feature::before{content:'✓'; color:var(--primary); font-weight:700; font-size:16px; flex-shrink:0}

/* Efeitos visuais adicionais */
.offer-card::before{content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg, var(--primary), var(--accent)); opacity:0; transition:opacity .3s ease}
.offer-card:hover::before{opacity:1}
.offer-card.featured::before{opacity:1}

/* Animação de entrada para ofertas */
@keyframes slideInUp{from{opacity:0; transform:translateY(30px)}to{opacity:1; transform:translateY(0)}}
.offer-card{animation:slideInUp .6s ease forwards; opacity:0}
.offer-card:nth-child(1){animation-delay:.1s}
.offer-card:nth-child(2){animation-delay:.2s}
.offer-card:nth-child(3){animation-delay:.3s}

/* Melhorias no botão das ofertas */
.offer-card .btn{width:100%; margin-top:8px; font-size:16px; padding:14px 20px}

/* Grid responsivo para ofertas */
@media (max-width:768px){
  .offers-container{grid-template-columns:1fr; gap:20px}
  .offer-card.featured{transform:none; margin-bottom:16px}
  .offer-card{padding:24px}
  .offer-header h3{font-size:1.2rem}
  .price-current{font-size:1.6rem}
  .offer-card .btn{padding:12px 16px; font-size:14px}
}
.offers-footer{text-align:center; margin-top:32px; padding-top:24px; border-top:1px solid var(--border)}
.offers-disclaimer{color:var(--muted); font-size:14px; margin:0}
.offers-disclaimer a{color:var(--primary); text-decoration:none; font-weight:600}
.offers-disclaimer a:hover{text-decoration:underline}

/* CTA melhorado */
.cta-benefits{display:flex; justify-content:center; gap:32px; margin:20px 0; flex-wrap:wrap}
.cta-benefit{color:#BBD1FF; font-weight:600; font-size:14px}
.cta-buttons{display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-top:24px}

/* Contact melhorado */
.form-header{text-align:center; margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid var(--border)}
.form-header h3{margin:0 0 8px; color:var(--text)}
.form-header p{margin:0; color:var(--muted); font-size:14px}
.form-guarantee{display:flex; align-items:center; gap:12px; background:rgba(0,230,255,.05); border:1px solid rgba(0,230,255,.2); border-radius:12px; padding:12px; margin:16px 0}
.guarantee-icon{font-size:1.5rem}
.guarantee-text{color:#BBD1FF; font-size:14px; line-height:1.4}
.contact-info{display:flex; flex-direction:column; gap:24px}
.contact-cards{display:grid; gap:16px}
.contact-card{display:flex; align-items:center; gap:16px; background:var(--card); border:1px solid var(--border); border-radius:16px; padding:20px; text-decoration:none; color:var(--text); transition:transform .2s ease}
.contact-card:hover{transform:translateY(-2px)}
.contact-card__icon{font-size:1.5rem}
.contact-card__content{display:flex; flex-direction:column; gap:2px}
.contact-card__title{color:#C7DAFF; font-weight:600; font-size:14px}
.trust-badges{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:24px}
.trust-badges h4{margin:0 0 16px; color:var(--text); font-size:1.1rem}
.trust-list{list-style:none; padding:0; margin:0; display:grid; gap:8px}
.trust-list li{color:#BBD1FF; font-size:14px; display:flex; align-items:center; gap:8px}

/* Contact */
.form{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:28px}
.field{display:flex; flex-direction:column; gap:6px; margin-bottom:16px}
label{color:#C7DAFF; font-weight:600; font-size:14px}
input, textarea{background:#0b1222; color:var(--text); border:1px solid var(--border); border-radius:12px; padding:1rem 1.2rem; outline:none; transition:border-color .2s ease, box-shadow .2s ease; font-size:16px}
input:focus, textarea:focus{border-color:rgba(0,230,255,.55); box-shadow:0 0 0 3px rgba(0,230,255,.15)}
input::placeholder, textarea::placeholder{color:var(--muted)}

/* Footer */
.footer{border-top:1px solid var(--border); padding:28px 0; background:linear-gradient(180deg, transparent, rgba(0,230,255,.03))}
.footer__inner{display:flex; align-items:center; justify-content:space-between}
.brand--footer img{width:28px; height:28px}
.brand--footer{gap:10px}

/* Responsive */
@media (max-width: 980px){
  .hero__inner{grid-template-columns:1fr; padding:54px 0; text-align:center}
  .grid--3{grid-template-columns:1fr}
  .grid--2{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr;}
  .menu__toggle{display:inline-flex}
  .menu__list{display:none; position:absolute; right:4%; top:64px; background:var(--bg-2); border:1px solid var(--border); padding:14px; border-radius:12px; flex-direction:column; width:min(92%, 320px)}
  .menu__list.show{display:flex}
  
  /* Novos elementos mobile */
  .hero-social-proof{flex-direction:column; gap:16px; text-align:center}
  .urgency-banner{flex-direction:column; text-align:center; gap:4px}
  .urgency-timer{margin-left:0; margin-top:4px}
  .trust-elements{flex-direction:column; gap:12px; text-align:center}
  .testimonials-stats{flex-direction:column; gap:16px; align-items:center}
  .stat-item{min-width:auto; width:100%; max-width:200px}
  .risk-reversal{grid-template-columns:1fr; gap:16px}
  .scarcity-banner{flex-direction:column; text-align:center; gap:8px}
  .scarcity-timer{margin-left:0; margin-top:4px}
  .cases-grid{grid-template-columns:1fr}
  .testimonials-grid{grid-template-columns:1fr}
  .offers-grid{grid-template-columns:1fr}
  .offer-card--featured{transform:none; margin-bottom:16px}
  .cta-benefits{flex-direction:column; gap:12px; text-align:center}
  .cta-buttons{flex-direction:column; align-items:center}
  .contact-info{order:-1; margin-bottom:24px}
  .trust-badges{margin-top:16px}
  
  /* Melhor responsividade para botões no mobile */
  .btn--lg{
    padding: 1.1rem 1.3rem;
    font-size: 0.95rem;
    line-height: 1.3;
    text-align: center;
    width: 100%;
    max-width: 100%;
    word-wrap: break-word;
    white-space: normal;
    min-height: 52px;
  }
  
  .hero__ctas{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    width: 100%;
  }
  
  .hero__ctas .btn--lg{
    padding: 1.2rem 1.1rem;
    font-size: 0.9rem;
    font-weight: 700;
    width: 100%;
  }
  
  .cta-microcopy{
    font-size: 13px;
    line-height: 1.4;
    margin-top: 0;
    text-align: center;
    padding: 0 12px;
  }
}

/* Hero Badge */
.hero__badge{position:absolute; top:15px; right:15px; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#000; font-weight:800; font-size:1.1rem; padding:.6rem 1.2rem; border-radius:25px; z-index:4; animation:pulse 2s infinite; box-shadow:0 4px 15px rgba(0,230,255,.4)}

/* Chart Container */
.chart-container{position:relative; width:100%; height:100%; display:flex; align-items:end; justify-content:space-between; padding:0 10px}

/* Chart Bars */
.chart-bars{position:absolute; bottom:0; left:0; right:0; height:100%; display:flex; align-items:end; justify-content:space-between; padding:0 15px; z-index:1}
.bar{width:16%; background:linear-gradient(180deg, rgba(0,230,255,.4), rgba(0,230,255,.9)); border-radius:4px 4px 0 0; transition:all .3s ease; animation:bar-glow 3s ease-in-out infinite; min-height:25px; box-shadow:0 0 10px rgba(0,230,255,.3)}
.bar:nth-child(1){animation-delay:0s}
.bar:nth-child(2){animation-delay:.5s}
.bar:nth-child(3){animation-delay:1s}
.bar:nth-child(4){animation-delay:1.5s}

/* Chart Line */
.chart-line{position:absolute; bottom:0; left:0; right:0; height:100%; z-index:2}
.line-point{position:absolute; width:6px; height:6px; background:var(--primary); border-radius:50%; box-shadow:0 0 12px rgba(0,230,255,.9); animation:point-pulse 2s ease-in-out infinite; border:2px solid rgba(255,255,255,.2)}
.line-point:nth-child(1){animation-delay:0s}
.line-point:nth-child(2){animation-delay:.3s}
.line-point:nth-child(3){animation-delay:.6s}
.line-point:nth-child(4){animation-delay:.9s}

/* Animations */
@keyframes bar-glow{0%,100%{opacity:.7; transform:scaleY(1)}50%{opacity:1; transform:scaleY(1.05)}}
@keyframes point-pulse{0%,100%{opacity:.8; transform:scale(1)}50%{opacity:1; transform:scale(1.2)}}

/* Testimonials Highlight */
.testimonial--highlight{background:var(--card); border:1px solid var(--border); border-radius:12px; padding:20px; transition:transform .2s ease, box-shadow .2s ease}
.testimonial--highlight:hover{transform:translateY(-2px); box-shadow:0 8px 25px rgba(0,230,255,.1)}
.testimonial--highlight .testimonial-content p{margin-bottom:8px; font-size:14px; line-height:1.4}
.testimonial--highlight .testimonial-content strong{color:var(--primary); font-weight:600}

/* Testimonials CTA */
.testimonials-cta{text-align:center; margin-top:40px}

/* Container Full Width */
.container-full{width:100%; padding:0 20px}

/* Seção de Análise Melhorada */
.analysis-section{
  background: linear-gradient(135deg, rgba(0,230,255,0.03) 0%, rgba(46,204,113,0.03) 100%);
  border-top: 1px solid rgba(0,230,255,0.1);
  border-bottom: 1px solid rgba(0,230,255,0.1);
}

.analysis-hero{
  text-align: center;
  margin-bottom: 48px;
}

.analysis-badge{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, rgba(0,230,255,0.1), rgba(46,204,113,0.1));
  border: 1px solid rgba(0,230,255,0.3);
  border-radius: 50px;
  padding: 8px 16px;
  margin-bottom: 20px;
  font-size: 14px;
  font-weight: 600;
  color: #00E6FF;
}

.badge-icon{
  font-size: 16px;
}

.analysis-subtitle{
  font-size: 1.2rem;
  color: #BBD1FF;
  margin: 0;
}

.highlight{
  background: linear-gradient(135deg, #00E6FF, #2ecc71);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 700;
}

.analysis-container{
  display: flex;
  justify-content: center;
  max-width: 600px;
  margin: 0 auto;
}

.analysis-card{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 32px;
  box-shadow: 0 10px 40px rgba(0,230,255,0.1);
  position: relative;
  overflow: hidden;
}

.analysis-card::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #00E6FF, #2ecc71, #14F195);
}

.analysis-header{
  text-align: center;
  margin-bottom: 32px;
}

.analysis-icon{
  width: 64px;
  height: 64px;
  background: linear-gradient(135deg, rgba(0,230,255,0.1), rgba(46,204,113,0.1));
  border: 1px solid rgba(0,230,255,0.3);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
  color: #00E6FF;
}

.analysis-header h3{
  font-size: 1.5rem;
  margin: 0 0 8px;
  color: var(--text);
}

.analysis-description{
  color: #BBD1FF;
  margin: 0;
  font-size: 16px;
}

.analysis-features{
  margin-bottom: 32px;
}

.feature-item{
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.feature-item:last-child{
  border-bottom: none;
}

.feature-icon{
  font-size: 24px;
  width: 40px;
  height: 40px;
  background: rgba(0,230,255,0.1);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.feature-content h4{
  margin: 0 0 4px;
  font-size: 16px;
  color: var(--text);
  font-weight: 600;
}

.feature-content p{
  margin: 0;
  font-size: 14px;
  color: #90A3BF;
  line-height: 1.4;
}

.analysis-cta{
  text-align: center;
  margin-bottom: 32px;
}

.analysis-btn{
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #00E6FF, #2ecc71);
  color: #000;
  font-weight: 700;
  padding: 16px 32px;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0,230,255,0.3);
  transition: all 0.3s ease;
}

.analysis-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(0,230,255,0.4);
}

.btn-icon{
  margin-right: 8px;
  font-size: 18px;
}

.analysis-note{
  margin: 12px 0 0;
  font-size: 12px;
  color: #90A3BF;
  font-weight: 500;
}

.analysis-stats{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.05);
}

.analysis-stats .stat-item{
  text-align: center;
  padding: 12px;
  background: rgba(0,230,255,0.05);
  border-radius: 8px;
  border: 1px solid rgba(0,230,255,0.1);
}

.analysis-stats .stat-number{
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #00E6FF;
  margin-bottom: 4px;
}

.analysis-stats .stat-label{
  font-size: 11px;
  color: #90A3BF;
  font-weight: 500;
}


/* Responsive */
@media (max-width: 980px){
  .analysis-container{
    max-width: 100%;
    padding: 0 20px;
  }
  
  .analysis-hero{
    text-align: center;
    padding: 0 10px;
  }
  
  .analysis-card{
    text-align: center;
  }
  
  .analysis-stats{
    grid-template-columns: 1fr;
    gap: 12px;
    justify-items: center;
    align-items: center;
  }
  
  .analysis-stats .stat-item{
    padding: 16px;
    width: 100%;
    max-width: 280px;
    text-align: center;
    margin: 0 auto;
  }
}

/* Testimonials Carousel */
.testimonials-carousel{background:var(--bg-alt); padding:80px 0}
.carousel-container{position:relative; margin-top:40px; overflow:hidden}
.carousel-track{display:flex; gap:20px; transition:transform .5s ease; padding:20px 0}
.testimonial-card{display:flex; gap:16px; min-width:350px; background:var(--card); border:1px solid var(--border); border-radius:16px; padding:20px; transition:transform .2s ease, box-shadow .2s ease}
.testimonial-card:hover{transform:translateY(-4px); box-shadow:0 8px 25px rgba(0,230,255,.15)}

/* Avatar */
.testimonial-avatar{flex-shrink:0; width:50px; height:50px}
.testimonial-avatar img{width:100%; height:100%; border-radius:50%; object-fit:cover; border:2px solid var(--primary)}

/* Bubble */
.testimonial-bubble{flex:1; min-width:0}
.testimonial-header{display:flex; justify-content:space-between; align-items:center; margin-bottom:8px}
.testimonial-name{font-weight:600; color:var(--text); font-size:14px}
.testimonial-time{font-size:14px; color:var(--muted)}
.testimonial-message{color:var(--text); line-height:1.4; margin-bottom:8px}
.highlight-text{background:linear-gradient(135deg,var(--accent),#FFD700); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:600}

/* Reply */
.testimonial-reply{margin-top:12px; padding-left:16px; border-left:2px solid var(--border)}
.testimonial-reply .testimonial-header{margin-bottom:4px}
.testimonial-reply .testimonial-name{color:var(--primary); font-size:14px}
.testimonial-reply .testimonial-time{font-size:14px}
.testimonial-reply .testimonial-message{font-size:14px}

/* Reactions */
.testimonial-reactions{display:flex; gap:12px; margin-top:8px}
.reaction{font-size:14px; color:var(--muted); display:flex; align-items:center; gap:4px}

/* Carousel Controls */
.carousel-controls{position:absolute; top:50%; transform:translateY(-50%); width:100%; display:flex; justify-content:space-between; pointer-events:none; z-index:2}
.carousel-btn{background:var(--card); border:1px solid var(--border); color:var(--text); width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .2s ease; pointer-events:auto; font-size:1.2rem; font-weight:bold}
.carousel-btn:hover{background:var(--primary); color:#000; transform:scale(1.1)}
.carousel-btn.prev{left:20px}
.carousel-btn.next{right:20px}

/* Responsive Carousel */
@media (max-width:768px){
  .testimonial-card{min-width:280px; padding:16px}
  .testimonial-avatar{width:40px; height:40px}
  .carousel-controls{display:none}
  .carousel-track{gap:16px; padding:16px 0}
}

@keyframes graph-pulse{0%,100%{opacity:1; transform:scale(1)}50%{opacity:.7; transform:scale(1.2)}}

/* Modal */
.modal{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  transition:all .3s ease;
  padding:20px;
  box-sizing:border-box;
}

/* Garantir que o body nunca tenha overflow hidden */
body{
  overflow:auto !important;
}

/* Remover scroll lock do modal */
.modal.active{
  opacity:1;
  visibility:visible;
}

.modal.active body{
  overflow:auto !important;
}

.modal-overlay{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,.8);
  backdrop-filter:blur(4px);
  cursor:pointer;
}

.modal-content{
  position:relative;
  background:var(--bg-2);
  border:1px solid var(--border);
  border-radius:20px;
  padding:0;
  max-width:600px;
  width:90%;
  max-height:90vh;
  overflow-y:auto;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
  transform:scale(.9) translateY(20px);
  transition:transform .3s ease;
  margin:auto;
}

.modal.active .modal-content{
  transform:scale(1) translateY(0);
}

/* Garantir centralização perfeita */
.modal.active{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Reset de posicionamento para garantir centralização */
.modal[style*="left"]{
  left:0 !important;
}

.modal[style*="top"]{
  top:0 !important;
}

.modal-close{
  position:absolute;
  top:16px;
  right:16px;
  background:none;
  border:none;
  color:var(--muted);
  cursor:pointer;
  padding:8px;
  border-radius:50%;
  transition:all .2s ease;
  z-index:10;
}

.modal-close:hover{
  background:rgba(255,255,255,.1);
  color:var(--text);
}

.modal-header{
  padding:32px 32px 24px;
  text-align:center;
  border-bottom:1px solid var(--border);
}

.modal-header h2{
  margin:0 0 8px;
  font-size:1.8rem;
  color:var(--text);
}

.modal-header p{
  margin:0;
  color:var(--muted);
  font-size:16px;
}

.modal-form{
  padding:32px;
}

.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}

.form-status{
  margin-top:16px;
  text-align:center;
  font-size:14px;
  font-weight:500;
}

/* Botão WhatsApp Fixo */
.whatsapp-fixed{
  position:fixed;
  bottom:20px;
  right:20px;
  z-index:1000;
  background:linear-gradient(135deg, #25D366, #128C7E);
  color:#fff;
  border:none;
  padding:12px 16px;
  border-radius:50px;
  box-shadow:0 4px 20px rgba(37,211,102,.4);
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:600;
  font-size:14px;
  transition:all .3s ease;
  animation:pulse-whatsapp 2s infinite;
  cursor:pointer;
}

.whatsapp-fixed:hover{
  transform:translateY(-2px);
  box-shadow:0 6px 25px rgba(37,211,102,.6);
  color:#fff;
}

.whatsapp-fixed svg{
  width:20px;
  height:20px;
  flex-shrink:0;
}

@keyframes pulse-whatsapp{
  0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.4)}
  50%{box-shadow:0 4px 25px rgba(37,211,102,.7), 0 0 0 10px rgba(37,211,102,.1)}
}

@media (max-width:768px){
  .modal-content{
    width:95%;
    margin:20px;
  }
  
  .modal-header{
    padding:24px 20px 16px;
  }
  
  .modal-header h2{
    font-size:1.5rem;
  }
  
  .modal-form{
    padding:20px;
  }
  
  .form-row{
    grid-template-columns:1fr;
    gap:12px;
  }
  
  .whatsapp-fixed{
    bottom:16px;
    right:16px;
    padding:10px 14px;
    font-size:13px;
  }
  
  .whatsapp-fixed span{
    display:none;
  }
  
  .whatsapp-fixed svg{
    width:24px;
    height:24px;
  }
  
  /* Melhorias específicas para telas pequenas */
  .btn--lg{
    padding: 1.2rem 1rem !important;
    font-size: 0.9rem !important;
    line-height: 1.3;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 14px;
  }
  
  .hero__ctas{
    width: 100%;
    margin: 20px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
  
  .hero__ctas .btn--lg{
    width: 100%;
    max-width: 100%;
    font-size: 0.85rem !important;
    padding: 1.3rem 1rem !important;
    font-weight: 800;
    letter-spacing: 0.5px;
  }
  
  .btn-arrow{
    margin-left: 6px;
    flex-shrink: 0;
    font-size: 1.1rem;
  }
  
  .cta-microcopy{
    font-size: 13px !important;
    line-height: 1.4;
    margin-top: 0 !important;
    padding: 0 15px;
    text-align: center;
    order: 2;
    width: 100%;
  }
  
  .hero__copy{
    padding: 0 10px;
  }
  
  /* Esconder gráfico no mobile */
  .hero__art{
    display: none;
  }
  
  /* Controle de texto do botão */
  .btn-text-full{
    display: none;
  }
  
  .btn-text-mobile{
    display: inline;
  }
}

/* Texto do botão para desktop */
.btn-text-full{
  display: inline;
}

.btn-text-mobile{
  display: none;
}

/* Media query para telas muito pequenas */
@media (max-width: 480px){
  .hero__ctas .btn--lg{
    padding: 1.4rem 0.8rem !important;
    font-size: 0.8rem !important;
    min-height: 58px;
    font-weight: 800;
    letter-spacing: 0.3px;
  }
  
  .cta-microcopy{
    font-size: 12px !important;
    padding: 0 20px;
  }
  
  .hero__copy{
    padding: 0 15px;
  }
  
  /* Ajustes para cards de análise em telas pequenas */
  .analysis-stats .stat-item{
    max-width: 250px !important;
    padding: 14px !important;
  }
  
  .analysis-stats .stat-number{
    font-size: 16px !important;
  }
  
  .analysis-stats .stat-label{
    font-size: 10px !important;
  }
}

/* Análise de Landing Page */
.analysis-progress{margin-top:12px}
.analysis-steps{display:grid; gap:8px; margin:12px 0 16px}
.analysis-step{display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px dashed var(--border); border-radius:10px; color:var(--muted); background:rgba(255,255,255,.02)}
.analysis-step.active{border-color:rgba(0,230,255,.45); color:#E6F7FF; background:rgba(0,230,255,.05)}
.analysis-step.done{border-color:rgba(46,204,113,.4); color:#CFF8DF; background:rgba(46,204,113,.06)}
.analysis-step .dot{width:10px; height:10px; border-radius:50%; background:var(--border)}
.analysis-step.active .dot{background:linear-gradient(180deg,var(--primary),var(--primary-2))}
.analysis-step.done .dot{background:linear-gradient(180deg,var(--success),var(--success-2))}
.progress-bar{height:10px; background:rgba(255,255,255,.06); border:1px solid var(--border); border-radius:999px; overflow:hidden}
.progress-bar__fill{height:100%; width:0; background:linear-gradient(90deg, var(--primary), var(--success)); box-shadow:0 0 24px rgba(0,230,255,.35)}
.progress-hint{margin-top:10px; color:#BBD1FF; font-size:14px; text-align:center}

.analysis-result{margin-top:18px}
.analysis-result h3{margin:0 0 8px}
.analysis-result .result-url{color:#BBD1FF; margin:0 0 10px}
.analysis-result .result-list{margin:0; padding-left:18px}
.analysis-result .result-list li{margin:6px 0}
.analysis-result .result-cta{margin-top:16px; display:flex; justify-content:center}

/* Toast Notification */
.toast {
  position: fixed;
  top: 20px;
  right: 20px;
  background: linear-gradient(135deg, var(--success), var(--success-2));
  color: #00160b;
  padding: 16px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(46, 204, 113, 0.3), 0 0 0 1px rgba(46, 204, 113, 0.4);
  z-index: 1000;
  transform: translateX(400px);
  transition: transform 0.3s ease;
  max-width: 350px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 12px;
}

.toast.show {
  transform: translateX(0);
}

.toast-icon {
  font-size: 20px;
  flex-shrink: 0;
}

.toast-message {
  flex: 1;
  line-height: 1.4;
}

.toast-close {
  background: none;
  border: none;
  color: inherit;
  font-size: 18px;
  cursor: pointer;
  padding: 4px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.toast-close:hover {
  background: rgba(0, 0, 0, 0.1);
}

/* Phone Mask */
.phone-mask {
  font-family: 'Inter', monospace;
  letter-spacing: 0.5px;
}
