/* ================================================================
   RURAL PLANNER — IDENTIDADE VISUAL PREMIUM GOLD
   Estilo: Agro Luxo | Campo Produtivo | Alta Conversão
   ================================================================ */

/* ── Tokens de Design ──────────────────────────────────────── */
:root {
  /* Verdes escuros */
  --rp-bg:          #0F1E0B;   /* Fundo principal cinematográfico */
  --rp-bg-alt:      #10220D;   /* Alternativa de fundo */
  --rp-bg-deep:     #080F07;   /* Preto esverdeado para profundidade */
  --rp-forest:      #162A12;   /* Verde floresta — blocos secundários */
  --rp-forest-mid:  #263F18;   /* Verde floresta médio */

  /* Dourado metálico */
  --rp-gold:        #D5A351;
  --rp-gold-mid:    #CF9E32;
  --rp-gold-dark:   #B47A22;
  --rp-gold-shine:  #F0C060;   /* Brilho dourado */
  --rp-gold-glow:   rgba(213, 163, 81, 0.35);

  /* Textos */
  --rp-white:       #F8F8F8;
  --rp-cream:       #F5E8C8;
  --rp-text-muted:  rgba(245, 232, 200, 0.55);

  /* Alerta/ação */
  --rp-red:         #C0392B;
  --rp-red-dark:    #9B1C1C;

  /* Tipografia */
  --font-display: 'Archivo Black', 'Playfair Display', serif;
  --font-body:    'Inter', system-ui, sans-serif;
  --font-serif:   'Playfair Display', Georgia, serif;
}

/* ── Reset & Base ──────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  font-family: var(--font-body) !important;
  background-color: var(--rp-bg) !important;
  color: var(--rp-cream) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Textura sutil de vegetação/papel */
  background-image:
    radial-gradient(ellipse at 20% 0%, rgba(38, 63, 24, 0.4) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 100%, rgba(38, 63, 24, 0.3) 0%, transparent 50%);
}

/* Linha ornamental dourada no topo */
body::before {
  content: '';
  display: block;
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent 0%, var(--rp-gold) 30%, var(--rp-gold-shine) 50%, var(--rp-gold) 70%, transparent 100%);
  z-index: 10000;
  pointer-events: none;
}

/* ── Scrollbar premium ─────────────────────────────────────── */
::-webkit-scrollbar { width: 7px; }
::-webkit-scrollbar-track { background: var(--rp-bg-deep); }
::-webkit-scrollbar-thumb { background: var(--rp-gold-dark); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--rp-gold); }

/* ── Seleção ───────────────────────────────────────────────── */
::selection { background: var(--rp-gold); color: var(--rp-bg); }

/* ── Tipografia ────────────────────────────────────────────── */
.font-display, h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display) !important;
}
h1, h2, h3, h4, h5, h6 { color: var(--rp-cream) !important; }
strong { color: var(--rp-gold) !important; font-weight: 700; }

/* ── Override tokens Tailwind que o site usa ───────────────── */

/* bg-brand-bg → nosso verde escuro profundo */
.bg-brand-bg, .min-h-screen.bg-brand-bg { background-color: var(--rp-bg) !important; }

/* bg-brand-card → verde floresta escuro */
.bg-brand-card { background-color: var(--rp-forest) !important; }

/* bg-brand-neon → dourado metálico */
.bg-brand-neon { background-color: var(--rp-gold) !important; color: var(--rp-bg) !important; }

/* text-brand-neon → dourado */
.text-brand-neon { color: var(--rp-gold) !important; }

/* text-brand-bg → verde escuro */
.text-brand-bg { color: var(--rp-bg) !important; }

/* text-brand-red → vermelho */
.text-brand-red { color: var(--rp-red) !important; }

/* ring/border brand-neon → dourado */
[class*="ring-brand-neon"],
[class*="border-brand-neon"] {
  --tw-ring-color: rgba(213, 163, 81, 0.4) !important;
  border-color: rgba(213, 163, 81, 0.4) !important;
}

/* ── ⚠️ BARRA DE ALERTA NO TOPO — MANTÉM VERMELHO ─────────── */
div.sticky,
div[class*="sticky"][class*="top-0"],
div[class*="bg-brand-red"],
.bg-brand-red {
  background-color: var(--rp-red) !important;
  color: #FFFFFF !important;
  border-bottom: 1px solid rgba(192, 57, 43, 0.5) !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em;
}

/* Ícone dentro do alerta */
div.sticky svg,
div[class*="sticky"] svg {
  color: #FFFFFF !important;
}

/* ── HERO ──────────────────────────────────────────────────── */
section.relative.overflow-hidden {
  background:
    radial-gradient(ellipse at 50% -10%, rgba(213, 163, 81, 0.12) 0%, transparent 60%),
    linear-gradient(180deg, var(--rp-forest-mid) 0%, var(--rp-bg-alt) 40%, var(--rp-bg) 100%) !important;
  border-bottom: 1px solid rgba(213, 163, 81, 0.15);
  padding-bottom: 5rem;
}

/* H1 hero */
section.relative h1 {
  color: var(--rp-white) !important;
  text-shadow: 0 2px 30px rgba(0,0,0,0.6), 0 0 80px rgba(213,163,81,0.08);
  letter-spacing: -0.01em;
}

/* Subtítulo underline hero */
section.relative p.underline {
  color: var(--rp-gold) !important;
  text-decoration-color: var(--rp-gold) !important;
  font-style: italic;
}

/* Parágrafo descritivo hero */
section.relative p.text-slate-300,
section.relative p.text-base {
  color: var(--rp-text-muted) !important;
}

/* Badge "receba no WhatsApp" */
.border-white\/15,
div[class*="border-white/15"] {
  border-color: rgba(213, 163, 81, 0.25) !important;
  background-color: rgba(213, 163, 81, 0.06) !important;
  color: var(--rp-cream) !important;
}

/* Ícone smartphone dourado */
.text-brand-neon.lucide-smartphone,
svg.text-brand-neon { color: var(--rp-gold) !important; }

/* ── BOTÃO CTA PRINCIPAL ───────────────────────────────────── */
.neon-cta, a.neon-cta, [class*="neon-cta"] {
  background: linear-gradient(135deg, var(--rp-gold-shine) 0%, var(--rp-gold) 40%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  box-shadow:
    0 0 0 1px rgba(213,163,81,0.5),
    0 8px 32px rgba(213,163,81,0.45),
    0 2px 8px rgba(0,0,0,0.4) !important;
  border: none !important;
  font-family: var(--font-display) !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 9999px !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  position: relative;
  overflow: hidden;
}

.neon-cta:hover, a.neon-cta:hover {
  transform: scale(1.05) translateY(-1px) !important;
  box-shadow:
    0 0 0 1px rgba(213,163,81,0.7),
    0 12px 48px rgba(213,163,81,0.6),
    0 4px 16px rgba(0,0,0,0.4) !important;
}

.neon-cta__shine {
  background: linear-gradient(105deg, transparent 20%, rgba(255,255,255,0.3) 50%, transparent 80%) !important;
}

/* ── SEÇÕES GERAIS ─────────────────────────────────────────── */
section { background-color: var(--rp-bg) !important; }

/* Seções que usam bg-white → fundo cremoso sobre verde escuro */
section.bg-white {
  background: linear-gradient(180deg, var(--rp-forest) 0%, var(--rp-forest-mid) 100%) !important;
  color: var(--rp-cream) !important;
}

section.bg-white h2 { color: var(--rp-cream) !important; }
section.bg-white p.text-slate-600 { color: var(--rp-text-muted) !important; }

/* Badges de seção (bg-brand-neon inline-flex) dentro de section.bg-white */
section.bg-white .bg-brand-neon {
  background: linear-gradient(90deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
}

/* ── CARDS DE BENEFÍCIOS ───────────────────────────────────── */
.rounded-2xl.border.border-white\/10,
div[class*="rounded-2xl border border-white"] {
  background-color: var(--rp-forest) !important;
  border: 1px solid rgba(213, 163, 81, 0.18) !important;
  box-shadow: inset 0 1px 0 rgba(213,163,81,0.08), 0 4px 20px rgba(0,0,0,0.3);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.rounded-2xl.border.border-white\/10:hover {
  transform: translateY(-3px);
  border-color: rgba(213, 163, 81, 0.45) !important;
  box-shadow: 0 8px 32px rgba(213,163,81,0.15), 0 4px 16px rgba(0,0,0,0.3) !important;
}

.rounded-2xl h3 {
  color: var(--rp-cream) !important;
  font-size: 0.8rem;
}

.rounded-2xl p.text-slate-400 { color: var(--rp-text-muted) !important; }

/* ── CAROUSEL DE PROJETOS ──────────────────────────────────── */
/* Imagens com borda dourada */
.ring-1.ring-black\/10 {
  border: 2px solid rgba(213, 163, 81, 0.35) !important;
  border-radius: 12px !important;
  box-shadow: 0 6px 24px rgba(0,0,0,0.5), 0 0 0 1px rgba(213,163,81,0.1) !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ring-1.ring-black\/10:hover {
  border-color: rgba(213, 163, 81, 0.65) !important;
}

/* Botões do carousel → dourado */
button[class*="bg-brand-neon"] {
  background: linear-gradient(135deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  border-color: var(--rp-gold-dark) !important;
}

/* ── SEÇÃO ANTES × DEPOIS ──────────────────────────────────── */
.bg-slate-100 {
  background-color: var(--rp-forest) !important;
  color: var(--rp-cream) !important;
  border: 1px solid rgba(213,163,81,0.2) !important;
}

/* Label "SEM OS PROJETOS" */
[class*="bg-white"][class*="ring-brand-red"] {
  background-color: rgba(155, 28, 28, 0.15) !important;
  color: #FF6B6B !important;
  border: 1px solid rgba(192,57,43,0.4) !important;
}

/* Label "COM OS PROJETOS" */
[class*="bg-brand-neon"][class*="text-brand-bg"] {
  background: linear-gradient(90deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
}

/* Checks verdes → verde floresta médio */
.text-emerald-700 { color: #5A9E4F !important; }
li[class*="text-emerald"] { color: #5A9E4F !important; }

/* ── SEÇÃO "KIT COMPLETO" (bg-white interno) ───────────────── */
.rounded-3xl.bg-white {
  background: linear-gradient(160deg, var(--rp-forest-mid) 0%, var(--rp-forest) 100%) !important;
  border: 1px solid rgba(213,163,81,0.3) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5), inset 0 1px 0 rgba(213,163,81,0.15) !important;
  color: var(--rp-cream) !important;
}

.rounded-3xl h3,
.rounded-3xl h2 {
  color: var(--rp-cream) !important;
}

.rounded-3xl p.text-slate-600,
.rounded-3xl p.text-slate-500,
.rounded-3xl .text-slate-600,
.rounded-3xl .text-slate-500 {
  color: var(--rp-text-muted) !important;
}

/* Itens de lista do kit */
.rounded-3xl .font-bold.text-slate-900 {
  color: var(--rp-cream) !important;
}

.rounded-3xl .text-emerald-600 { color: var(--rp-gold) !important; }

/* Badge "ACESSO IMEDIATO" */
.absolute.rounded-md.bg-brand-red,
span[class*="bg-brand-red"] {
  background-color: var(--rp-red) !important;
  color: #FFF !important;
}

/* Badge ITEM 01, ITEM 02... */
span[class*="bg-brand-neon/30"] {
  background-color: rgba(213,163,81,0.2) !important;
  color: var(--rp-gold) !important;
}

/* "6 BÔNUS" destaque */
p[class*="text-brand-red"] {
  color: var(--rp-gold) !important;
  font-weight: 800;
}

/* ── CARDS DE BÔNUS ────────────────────────────────────────── */
.overflow-hidden.rounded-2xl.bg-brand-card {
  background-color: var(--rp-forest) !important;
  border: 1px solid rgba(213,163,81,0.2) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.overflow-hidden.rounded-2xl.bg-brand-card:hover {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 12px 40px rgba(213,163,81,0.2), 0 4px 16px rgba(0,0,0,0.4) !important;
  border-color: rgba(213,163,81,0.5) !important;
}

/* Cabeçalho do card bônus — degradê dourado/escuro */
.overflow-hidden.rounded-2xl .bg-gradient-to-b {
  background: linear-gradient(180deg, var(--rp-forest-mid) 0%, var(--rp-bg-deep) 100%) !important;
  border-bottom: 1px solid rgba(213,163,81,0.2);
}

/* Badge de número do bônus */
.overflow-hidden.rounded-2xl span.bg-brand-neon {
  background: linear-gradient(90deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  font-weight: 800;
  box-shadow: 0 2px 8px rgba(213,163,81,0.4);
}

.overflow-hidden.rounded-2xl h3 {
  color: var(--rp-cream) !important;
}
.overflow-hidden.rounded-2xl p.text-slate-400 {
  color: var(--rp-text-muted) !important;
}

/* ── PROVA SOCIAL / DEPOIMENTOS ────────────────────────────── */
.text-amber-400, .text-yellow-400, [class*="text-amber"] {
  color: var(--rp-gold) !important;
}

/* Cards de depoimento */
div[class*="bg-brand-card"],
[class*="rounded"][class*="bg-brand-card"] {
  background-color: var(--rp-forest) !important;
  border: 1px solid rgba(213,163,81,0.15) !important;
}

/* ── PRECIFICAÇÃO / PLANOS ─────────────────────────────────── */
/* Containers dos planos */
[id="planos"] section,
section[id="planos"],
div[id="planos"] {
  background-color: var(--rp-bg) !important;
}

/* Cards de planos brancos → verde escuro */
div.rounded-3xl.bg-white,
div[class*="rounded-3xl bg-white"] {
  background: linear-gradient(160deg, var(--rp-forest-mid) 0%, var(--rp-forest) 100%) !important;
  border: 1px solid rgba(213,163,81,0.3) !important;
  color: var(--rp-cream) !important;
}

/* Preços em destaque */
[class*="text-4xl"],
[class*="text-5xl"],
[class*="text-6xl"] {
  color: var(--rp-gold) !important;
  text-shadow: 0 0 30px rgba(213,163,81,0.3);
}

/* Preço riscado */
s, del, [class*="line-through"] {
  color: var(--rp-text-muted) !important;
  text-decoration-color: var(--rp-text-muted) !important;
}

/* Imagens dos planos */
img[alt*="Plano"], img[alt*="plano"] {
  border: 2px solid rgba(213,163,81,0.35) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(213,163,81,0.15) !important;
}

/* Ring de destaque dos planos */
[class*="ring-2"],
[class*="ring-brand-neon"] {
  --tw-ring-color: var(--rp-gold) !important;
  border-color: var(--rp-gold) !important;
}

/* Botões de compra dentro dos planos */
a[href*="hotmart"],
a[href*="pay"],
button[class*="neon-cta"],
a[class*="neon-cta"] {
  background: linear-gradient(135deg, var(--rp-gold-shine) 0%, var(--rp-gold) 40%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 32px rgba(213,163,81,0.5) !important;
}

/* ── FAQ / PERGUNTAS FREQUENTES ────────────────────────────── */
details {
  background-color: var(--rp-forest) !important;
  border: 1px solid rgba(213,163,81,0.18) !important;
  border-radius: 12px !important;
  transition: border-color 0.2s;
}

details:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.3);
}details summary {
  color: var(--rp-cream) !important;
  font-weight: 600;
  padding: 1rem;
  cursor: pointer;
  list-style: none;
}

details summary::-webkit-details-marker { display: none; }
details[open] summary { color: var(--rp-gold) !important; }

details .text-slate-600,
details p {
  color: var(--rp-text-muted) !important;
  padding: 0 1rem 1rem;
}

/* ── SEÇÃO GARANTIA ────────────────────────────────────────── */
section.bg-white.px-4.py-16 {
  background: linear-gradient(180deg, var(--rp-forest-mid) 0%, var(--rp-bg-alt) 100%) !important;
  border-top: 1px solid rgba(213,163,81,0.2);
  border-bottom: 1px solid rgba(213,163,81,0.2);
}

/* Círculo 7 DIAS */
.grid.place-items-center.rounded-full[class*="bg-gradient"] {
  background: linear-gradient(135deg, var(--rp-gold-shine) 0%, var(--rp-gold) 50%, var(--rp-gold-dark) 100%) !important;
  box-shadow: 0 0 30px rgba(213,163,81,0.5), 0 4px 16px rgba(0,0,0,0.4);
}

.text-amber-500, .text-amber-600 { color: var(--rp-gold) !important; }

/* ── POPUP PROVA SOCIAL ────────────────────────────────────── */
div[class*="fixed bottom-4"] {
  background-color: rgba(15, 30, 11, 0.97) !important;
  border-color: rgba(213,163,81,0.35) !important;
  backdrop-filter: blur(12px);
}

div[class*="bg-brand-neon/15"] {
  background-color: rgba(213,163,81,0.15) !important;
}

div[class*="fixed bottom-4"] p { color: var(--rp-cream) !important; }
div[class*="text-white/60"] { color: var(--rp-text-muted) !important; }

/* ── FOOTER ────────────────────────────────────────────────── */
footer {
  background: linear-gradient(180deg, var(--rp-bg-alt) 0%, var(--rp-bg-deep) 100%) !important;
  border-top: 1px solid rgba(213,163,81,0.25) !important;
  color: var(--rp-text-muted) !important;
}

footer .font-display {
  color: var(--rp-gold) !important;
  letter-spacing: 0.15em;
  font-size: 1.1rem;
}

footer a { color: var(--rp-text-muted) !important; }
footer a:hover { color: var(--rp-gold) !important; }

/* ── TEXTOS GERAIS ─────────────────────────────────────────── */
.text-white { color: var(--rp-white) !important; }
.text-slate-300 { color: rgba(245,232,200,0.7) !important; }
.text-slate-400 { color: var(--rp-text-muted) !important; }
.text-slate-500 { color: rgba(245,232,200,0.4) !important; }

/* slate-900 que aparece em containers brancos */
.text-slate-900 { color: var(--rp-cream) !important; }
.text-slate-700 { color: rgba(245,232,200,0.65) !important; }
.text-slate-600 { color: rgba(245,232,200,0.55) !important; }

/* ── HERO MOCKUP ───────────────────────────────────────────── */
@keyframes hero-float {
  0%, 100% { transform: translateY(0px); }
  50%       { transform: translateY(-12px); }
}

.hero-mockup-float {
  animation: hero-float 5s ease-in-out infinite !important;
  filter: drop-shadow(0 20px 50px rgba(213,163,81,0.25)) drop-shadow(0 8px 20px rgba(0,0,0,0.5)) !important;
}

.hero-mockup-glow {
  background: radial-gradient(ellipse at center, rgba(213,163,81,0.25) 0%, transparent 70%) !important;
}

/* ── MICRO-ANIMAÇÕES ───────────────────────────────────────── */
.rounded-2xl, .rounded-3xl {
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

/* ── DIVISÓRIAS ELEGANTES ──────────────────────────────────── */
hr {
  border: none !important;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(213,163,81,0.3), transparent) !important;
  margin: 2rem 0;
}

/* ── SELOS ORNAMENTAIS DOURADOS ────────────────────────────── */
/* Qualquer badge/span com bg-brand-neon recebe gradiente dourado */
span.bg-brand-neon,
div.bg-brand-neon {
  background: linear-gradient(135deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  box-shadow: 0 2px 12px rgba(213,163,81,0.35);
}

/* ── OUTLINE DOURADO PARA FOCO (acessibilidade) ────────────── */
:focus-visible {
  outline: 2px solid var(--rp-gold) !important;
  outline-offset: 3px;
}

/* ── IMAGENS GENÉRICAS ─────────────────────────────────────── */
img {
  border-radius: 8px;
}

/* ── RESPONSIVIDADE ────────────────────────────────────────── */
@media (max-width: 640px) {
  body::before { height: 2px; }

  .neon-cta, a.neon-cta {
    font-size: 0.875rem !important;
    padding: 0.875rem 1.5rem !important;
  }
}

/* ── BOTÕES DE COMPRA PREMIUM ──────────────────────────────── */
.rp-btn-gold {
  background: linear-gradient(135deg, var(--rp-gold-shine) 0%, var(--rp-gold) 45%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 32px rgba(213,163,81,0.5), 0 2px 8px rgba(0,0,0,0.3) !important;
  border: none !important;
  position: relative;
  overflow: hidden;
}
.rp-btn-gold::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%);
  transform: translateX(-100%);
  transition: transform 0.5s ease;
}
.rp-btn-gold:hover::after { transform: translateX(100%); }

.rp-btn-secondary {
  background: rgba(213,163,81,0.08) !important;
  color: var(--rp-gold) !important;
  font-weight: 700 !important;
  border: 1px solid rgba(213,163,81,0.4) !important;
}
.rp-btn-secondary:hover {
  background: rgba(213,163,81,0.15) !important;
}

/* ── SEÇÃO GARANTIA ────────────────────────────────────────── */
.rp-section-guarantee {
  background: linear-gradient(180deg, var(--rp-bg) 0%, var(--rp-forest-mid) 50%, var(--rp-bg) 100%) !important;
  position: relative;
}
.rp-section-guarantee::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, rgba(213,163,81,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.rp-guarantee-card {
  background: linear-gradient(135deg, var(--rp-forest) 0%, var(--rp-forest-mid) 100%) !important;
  border: 1px solid rgba(213,163,81,0.35) !important;
  box-shadow:
    0 0 60px rgba(213,163,81,0.1),
    0 20px 60px rgba(0,0,0,0.4),
    inset 0 1px 0 rgba(213,163,81,0.2) !important;
}

/* Pulsação dourada no selo */
@keyframes seal-pulse {
  0%, 100% { box-shadow: 0 0 40px rgba(213,163,81,0.5), inset 0 2px 4px rgba(255,255,255,0.3); }
  50%       { box-shadow: 0 0 70px rgba(213,163,81,0.8), inset 0 2px 4px rgba(255,255,255,0.4); }
}
.rp-guarantee-seal { animation: seal-pulse 3s ease-in-out infinite; }

/* ── SEÇÃO FAQ / O QUE INCLUSO ─────────────────────────────── */
/* A seção do FAQ (detalhes) simples com divisórias de linha discretas */
.rp-faq-section details {
  background: linear-gradient(135deg, var(--rp-forest) 0%, var(--rp-forest-mid) 100%) !important;
  border: 1px solid rgba(213,163,81,0.35) !important;
  border-radius: 12px !important;
  padding: 1rem !important;
  margin-bottom: 1rem !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}
.rp-faq-section details:first-of-type {
  border-top: 1px solid rgba(213,163,81,0.15) !important;
}
.rp-faq-section details:hover {
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
}
.rp-faq-section details[open] {
  background: transparent !important;
}
.rp-faq-section details summary {
  padding: 1.1rem 0.5rem !important;
  font-size: 0.95rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--rp-cream) !important;
  transition: color 0.2s;
}
.rp-faq-section details summary:hover { color: var(--rp-gold) !important; }
.rp-faq-section details[open] summary { color: var(--rp-gold) !important; }
.rp-faq-section details p {
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgba(245,232,200,0.65) !important;
  padding: 0 0.5rem 1rem !important;
  border-top: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* O ícone chevron gira ao abrir */
details[open] .lucide-chevron-right { transform: rotate(90deg) !important; }
.lucide-chevron-right { transition: transform 0.25s ease !important; color: var(--rp-gold) !important; }

/* ── PONTOS DO CAROUSEL ────────────────────────────────────── */
#carousel-dots button,
#dep-dots button {
  outline: none;
  padding: 0;
}
#carousel-dots button:focus-visible,
#dep-dots button:focus-visible {
  outline: 2px solid var(--rp-gold);
  outline-offset: 2px;
}

/* ── PLANO COMPLETO (ring dourado) ─────────────────────────── */
#comprar[class*="rounded-3xl"],
div[id="comprar"] {
  background: linear-gradient(160deg, var(--rp-forest-mid) 0%, var(--rp-forest) 100%) !important;
  border: 2px solid var(--rp-gold) !important;
  box-shadow:
    0 0 40px rgba(213,163,81,0.2),
    0 20px 60px rgba(0,0,0,0.5) !important;
  ring: none !important;
}

/* Badge "Mais Vendido" */
div[id="comprar"] > span[class*="absolute"] {
  background: linear-gradient(90deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
  font-weight: 800 !important;
  padding: 0.3rem 1rem !important;
}

/* Countdown box */
div[id="comprar"] .rounded-xl.border-2 {
  background: rgba(213,163,81,0.07) !important;
  border-color: rgba(213,163,81,0.35) !important;
}
div[id="comprar"] .text-brand-red { color: var(--rp-gold) !important; }

/* "Todos os Bônus Inclusos" banner */
div[id="comprar"] .rounded-xl.bg-brand-bg {
  background: linear-gradient(90deg, var(--rp-gold) 0%, var(--rp-gold-dark) 100%) !important;
  color: var(--rp-bg) !important;
}

/* ── PLANO BÁSICO ──────────────────────────────────────────── */
.card-border-light {
  background: var(--rp-forest) !important;
  border: 1px solid rgba(213,163,81,0.2) !important;
}

/* Plano "bg-lime-50" → escuro */
.bg-lime-50 {
  background: linear-gradient(160deg, var(--rp-forest-mid) 0%, var(--rp-forest) 100%) !important;
}

/* ── SOFT-PULSE ANIMATION ──────────────────────────────────── */
@keyframes soft-pulse {
  0%, 100% { box-shadow: 0 8px 32px rgba(213,163,81,0.45); }
  50%       { box-shadow: 0 8px 48px rgba(213,163,81,0.75); }
}
.soft-pulse { animation: soft-pulse 2.5s ease-in-out infinite; }

/* ── OFERTA EXPIRIA (red badge) ────────────────────────────── */
.bg-red-50 {
  background: rgba(192,57,43,0.12) !important;
}
span[class*="text-brand-red"][class*="bg-red-50"] {
  color: #FF7373 !important;
}

/* ── UPSELL MODAL ──────────────────────────────────────────── */
.upsell-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.78);
  backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
  padding: 1rem;
}
.upsell-overlay.active {
  opacity: 1;
  pointer-events: all;
}
.upsell-modal {
  position: relative;
  width: 100%;
  max-width: 420px;
  max-height: 90vh;
  overflow-y: auto;
  background: linear-gradient(160deg, var(--rp-bg-deep) 0%, var(--rp-forest) 40%, var(--rp-forest-mid) 100%);
  border: 2px solid rgba(213, 163, 81, 0.5);
  border-radius: 1.5rem;
  padding: 2rem 1.5rem 1.5rem;
  box-shadow:
    0 0 0 6px rgba(213, 163, 81, 0.1),
    0 24px 60px rgba(0, 0, 0, 0.55),
    inset 0 1px 0 rgba(213, 163, 81, 0.2);
  transform: scale(0.92) translateY(20px);
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: visible;
}
.upsell-overlay.active .upsell-modal {
  transform: scale(1) translateY(0);
}
.upsell-modal::-webkit-scrollbar { width: 5px; }
.upsell-modal::-webkit-scrollbar-track { background: transparent; }
.upsell-modal::-webkit-scrollbar-thumb { background: rgba(213,163,81,0.3); border-radius: 4px; }

/* Pulse animation for CTA */
@keyframes pulse-gold {
  0%, 100% { box-shadow: 0 6px 24px rgba(213,163,81,0.5); }
  50%       { box-shadow: 0 6px 40px rgba(213,163,81,0.8); }
}

/* Shimmer animation */
@keyframes shimmer-premium {
  0%, 100% { transform: translate(0, 0) scale(1); opacity: 0.6; }
  50%       { transform: translate(30%, 30%) scale(1.3); opacity: 1; }
}