/* ═══════════════════════════════════════════════════════════════
   ASESORÍA VISA GLOBAL — PREMIUM DESIGN SYSTEM V3
   Full Dark — Stripe / Linear / Vercel inspired
   ═══════════════════════════════════════════════════════════════ */

/* ── TOKENS ──────────────────────────────────────────────────── */
:root {
  --bg:         #060E1C !important;
  --bg2:        #0A1628 !important;
  --bg3:        #0F1F38 !important;
  --bg4:        #142848 !important;
  --bg-card:    #0D1930 !important;
  --bg-hover:   #142848 !important;
  --navy:       #0A1628 !important;
  --navy-deep:  #060E1C !important;
  --navy-mid:   #0F1F38 !important;
  --navy-lt:    #1A3050 !important;

  --gold:       #C8861A !important;
  --gold-lt:    #F5C842 !important;
  --gold-bdr:   rgba(245,200,66,.22) !important;
  --gold-glow:  rgba(245,200,66,.15) !important;

  --electric:    #3B82F6 !important;
  --electric-lt: #60A5FA !important;

  --green:      #10B981 !important;
  --white:      #FFFFFF !important;

  --line:       rgba(255,255,255,.07) !important;
  --line2:      rgba(255,255,255,.13) !important;
  --line-dk:    rgba(255,255,255,.07) !important;
  --line2-dk:   rgba(255,255,255,.13) !important;

  --text:       #94A3B8 !important;
  --muted:      #475569 !important;
  --dark-txt:   #E2E8F0 !important;

  --shadow-sm:  0 2px 16px rgba(0,0,0,.5) !important;
  --shadow-md:  0 8px 40px rgba(0,0,0,.6) !important;
  --shadow-lg:  0 24px 80px rgba(0,0,0,.7) !important;
  --shadow-gold:0 8px 40px rgba(245,200,66,.2) !important;
  --shadow-blue:0 8px 40px rgba(59,130,246,.2) !important;
}

/* ── BODY ────────────────────────────────────────────────────── */
body {
  background: #060E1C !important;
  color: #94A3B8 !important;
}

body::before {
  content: '';
  position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(ellipse 80% 60% at 10% 5%, rgba(59,130,246,.07), transparent),
    radial-gradient(ellipse 60% 50% at 90% 90%, rgba(245,200,66,.05), transparent),
    radial-gradient(ellipse 50% 40% at 50% 50%, rgba(59,130,246,.03), transparent);
}

/* ── SCROLLBAR ───────────────────────────────────────────────── */
::-webkit-scrollbar { width: 3px; }
::-webkit-scrollbar-track { background: #060E1C; }
::-webkit-scrollbar-thumb { background: rgba(245,200,66,.3); border-radius: 10px; }

/* ── SELECTION ───────────────────────────────────────────────── */
::selection { background: var(--gold-lt); color: #060E1C; }

/* ── LOADER ──────────────────────────────────────────────────── */
#loader { background: #060E1C !important; }

/* ── NAV ─────────────────────────────────────────────────────── */
nav.scrolled {
  background: rgba(6,14,28,.95) !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
}

.nav-cta {
  background: linear-gradient(135deg, #F5C842, #C8861A) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
}

/* ── HERO — forzar visibilidad completa ──────────────────────── */
.hero {
  background: #060E1C !important;
  align-items: flex-start !important;
}

.hero-bg {
  background: url('hero-bg.jpg') center/cover no-repeat !important;
}

.hero-overlay {
  background:
    linear-gradient(to right, rgba(6,14,28,.93) 0%, rgba(6,14,28,.72) 50%, rgba(6,14,28,.45) 100%),
    linear-gradient(to bottom, rgba(6,14,28,.2) 0%, rgba(6,14,28,.6) 65%, #060E1C 100%) !important;
}

/* Forzar visibilidad del contenido del hero sin depender de animaciones */
.hero h1 .word {
  transform: none !important;
  opacity: 1 !important;
  animation: none !important;
}

.hero-eyebrow,
.hero-sub,
.hero-actions {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

/* Stats: visible pero SIN bloquear la animación de conteo JS */
.hero-stats {
  opacity: 1 !important;
  transform: none !important;
}

/* Eyebrow — píldora dorada, siempre visible sobre cualquier fondo */
.hero-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #060E1C !important;
  background: linear-gradient(135deg, #F5C842, #C8861A) !important;
  border: none !important;
  border-radius: 100px !important;
  padding: 8px 20px !important;
  font-weight: 800 !important;
  font-size: .75rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
  margin-bottom: 20px !important;
  box-shadow: 0 4px 20px rgba(245,200,66,.3) !important;
}

/* Stats labels — más grandes y visibles */
.hstat-l {
  color: rgba(255,255,255,.65) !important;
  font-size: .8rem !important;
  letter-spacing: .06em !important;
  margin-top: 6px !important;
}

/* Stats números — más grandes */
.hstat-n {
  font-size: clamp(2rem, 4vw, 2.8rem) !important;
}

/* ── HERO BADGE — ocultar, causaba caja oscura ───────────────── */
.hero-badge {
  display: none !important;
}

/* eyebrow — regla unificada arriba */

/* Stats — fila limpia */
.hero-stats {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: flex !important;
  gap: 40px !important;
  align-items: flex-end !important;
}

.hstat { text-align: right !important; }
.hstat-n {
  color: #F5C842 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
.hstat-l {
  color: rgba(255,255,255,.4) !important;
  font-size: .625rem !important;
  text-transform: uppercase !important;
  letter-spacing: .15em !important;
  margin-top: 4px !important;
}

/* ── MARQUEE ─────────────────────────────────────────────────── */
.marquee {
  background: rgba(6,14,28,.98) !important;
  border-top: 1px solid rgba(245,200,66,.1) !important;
  border-bottom: 1px solid rgba(245,200,66,.1) !important;
  backdrop-filter: blur(20px) !important;
}

.marquee-item { color: rgba(255,255,255,.3) !important; }
.marquee-item.g { color: #F5C842 !important; }

/* ── IMPACT ──────────────────────────────────────────────────── */
.impact {
  background: linear-gradient(160deg, #060E1C 0%, #0A1628 50%, #060E1C 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  position: relative; overflow: hidden;
}

.impact::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 80% 60% at 50% 50%, rgba(59,130,246,.06), transparent),
    radial-gradient(ellipse 40% 30% at 80% 20%, rgba(245,200,66,.05), transparent);
}

.impact-num { color: rgba(255,255,255,.025) !important; }
.impact-text { color: #E2E8F0 !important; text-shadow: 0 2px 20px rgba(0,0,0,.4) !important; }
.impact-text em { color: #F5C842 !important; }
.impact-sub { color: rgba(255,255,255,.4) !important; }

/* ── LABEL ───────────────────────────────────────────────────── */
.label {
  color: #F5C842 !important;
  background: rgba(245,200,66,.08) !important;
  border: 1px solid rgba(245,200,66,.2) !important;
  border-radius: 100px !important;
  padding: 6px 16px !important;
}

/* ── HEADINGS ────────────────────────────────────────────────── */
h2.display { color: #E2E8F0 !important; }
h2.display em { color: #F5C842 !important; font-style: italic !important; }

/* ── SECTIONS ────────────────────────────────────────────────── */
.sec { background: #060E1C !important; border-bottom: 1px solid rgba(255,255,255,.07) !important; }
.sec:nth-child(even) { background: #0A1628 !important; }

/* ── SERVICES ────────────────────────────────────────────────── */
.services-dark {
  background: linear-gradient(160deg, #060E1C 0%, #0A1628 60%, #060E1C 100%) !important;
  position: relative; overflow: hidden;
}

.services-dark::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 60% 50% at 10% 50%, rgba(59,130,246,.06), transparent),
    radial-gradient(ellipse 40% 40% at 90% 0%, rgba(245,200,66,.04), transparent);
}

.svc-grid {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 20px !important;
}

.svc-card {
  background: rgba(255,255,255,.03) !important;
  backdrop-filter: blur(8px);
  border: none !important;
}

.svc-card:hover { background: rgba(255,255,255,.07) !important; }

.svc-code { color: rgba(255,255,255,.12) !important; }
.svc-card:hover .svc-code { color: rgba(245,200,66,.3) !important; }
.svc-dest { color: #C8861A !important; }
.svc-card h3 { color: #E2E8F0 !important; }
.svc-card p { color: #94A3B8 !important; }
.svc-arrow { color: #475569 !important; }
.svc-card:hover .svc-arrow { color: #F5C842 !important; }

/* ── WHATSAPP SECTION ────────────────────────────────────────── */
.wa-section {
  background: linear-gradient(135deg, #060E1C 0%, #0D1930 50%, #060E1C 100%) !important;
  position: relative; overflow: hidden;
}

.wa-section::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 60% 60% at 80% 40%, rgba(59,130,246,.08), transparent),
    radial-gradient(ellipse 40% 40% at 20% 80%, rgba(245,200,66,.05), transparent);
}

.wa-feat h4 { color: #E2E8F0 !important; }
.wa-feat p { color: #94A3B8 !important; }
.wa-feat { border-bottom: 1px solid rgba(255,255,255,.07) !important; }
.wa-float-stat { background: rgba(6,14,28,.95) !important; border: 1px solid rgba(245,200,66,.2) !important; }

/* ── RESULTS ─────────────────────────────────────────────────── */
.results-grid {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 20px !important;
}

.res-cell {
  background: #0D1930 !important;
  position: relative; overflow: hidden;
}

.res-cell:hover { background: #142848 !important; }

.res-big {
  background: linear-gradient(135deg, #F5C842, #C8861A) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

.res-cell h3 { color: #E2E8F0 !important; }
.res-cell p { color: #94A3B8 !important; }

/* ── SUCCESS / TESTIMONIALS ──────────────────────────────────── */
.success-split { background: #060E1C; }
.success-content { background: #0A1628 !important; }
.success-img-overlay { background: linear-gradient(to right, transparent 40%, #0A1628 100%) !important; }
.success-img img { filter: brightness(.65) saturate(1.2) !important; }

.test-mini {
  background: #0D1930 !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;
}

.test-mini:hover {
  border-color: rgba(245,200,66,.25) !important;
  box-shadow: 0 8px 40px rgba(245,200,66,.1) !important;
  transform: translateY(-4px);
}

.test-mini blockquote { color: #CBD5E1 !important; }
.test-mini-name { color: #E2E8F0 !important; }
.test-mini-detail { color: #475569 !important; }
.ts { background: #F5C842 !important; }
.test-mini-photo { border-color: rgba(245,200,66,.4) !important; }

/* ── CTA ─────────────────────────────────────────────────────── */
.cta-full {
  background: #060E1C !important;
  position: relative; overflow: hidden;
}

.cta-full::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 100% 80% at 50% 100%, rgba(59,130,246,.08), transparent),
    radial-gradient(ellipse 60% 60% at 10% 0%, rgba(245,200,66,.05), transparent);
}

.cta-full::after {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(245,200,66,.5), rgba(59,130,246,.4), transparent);
}

.cta-full h2 { color: #E2E8F0 !important; }
.cta-full h2 em { color: #F5C842 !important; }
.cta-full p { color: rgba(255,255,255,.45) !important; }
.cta-trust-item { color: rgba(255,255,255,.35) !important; }

/* ── PROCESS ─────────────────────────────────────────────────── */
.process-img-wrap {
  border-radius: 24px !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.7) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
}

.pstep { border-bottom: 1px solid rgba(255,255,255,.07) !important; }
.pstep h3 { color: #E2E8F0 !important; }
.pstep p { color: #94A3B8 !important; }

/* ── FAQ — fix acordeón completo ─────────────────────────────── */
.faq-ans {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transition: none !important;
}

.faq-item.open .faq-ans {
  display: block !important;
  height: auto !important;
  max-height: 9999px !important;
  overflow: visible !important;
  opacity: 1 !important;
  padding-bottom: 22px !important;
}

/* Color texto FAQ en modo oscuro */
.faq-btn { color: #94A3B8 !important; }
.faq-btn:hover, .faq-item.open .faq-btn { color: #E2E8F0 !important; font-weight: 600 !important; }
.faq-ans { color: #64748B !important; line-height: 1.8 !important; font-size: .875rem !important; }

/* ── FAQ ─────────────────────────────────────────────────────── */
.faq-contact-box {
  background: #0D1930 !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;
}

.faq-contact-box p { color: rgba(255,255,255,.5) !important; }
.faq-item { border-bottom: 1px solid rgba(255,255,255,.07) !important; }
.faq-btn { color: #94A3B8 !important; }
.faq-btn:hover { color: #E2E8F0 !important; }
.faq-item.open .faq-btn { color: #E2E8F0 !important; }
.faq-ans { color: #94A3B8 !important; }
.faq-ico { border-color: rgba(255,255,255,.13) !important; color: #475569 !important; }
.faq-item.open .faq-ico { border-color: rgba(245,200,66,.3) !important; color: #F5C842 !important; }

/* ── FOOTER ──────────────────────────────────────────────────── */
footer {
  background: #030A14 !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  position: relative;
}

footer::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(59,130,246,.4), rgba(245,200,66,.3), transparent);
}

.foot-col h4 { color: rgba(255,255,255,.25) !important; }
.foot-col a { color: rgba(255,255,255,.4) !important; }
.foot-col a:hover { color: #E2E8F0 !important; }
.foot-brand a span { color: #E2E8F0 !important; }
.foot-brand p { color: rgba(255,255,255,.35) !important; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.07) !important; }
.footer-bottom p { color: rgba(255,255,255,.25) !important; }

/* ── BUTTONS ─────────────────────────────────────────────────── */
.btn-gold {
  background: linear-gradient(135deg, #F5C842 0%, #C8861A 100%) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
  box-shadow: 0 8px 40px rgba(245,200,66,.2) !important;
  padding: 18px 40px !important;
}

.btn-gold:hover {
  transform: scale(1.05) translateY(-3px) !important;
  box-shadow: 0 16px 50px rgba(245,200,66,.35) !important;
}

.btn-dark {
  background: linear-gradient(135deg, #F5C842 0%, #C8861A 100%) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
  box-shadow: 0 8px 40px rgba(245,200,66,.2) !important;
  padding: 20px 48px !important;
}

.btn-dark:hover {
  transform: scale(1.05) translateY(-3px) !important;
  box-shadow: 0 16px 50px rgba(245,200,66,.35) !important;
}

.btn-outline-light {
  border: 1px solid rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.7) !important;
  border-radius: 100px !important;
}

.btn-outline-light:hover {
  border-color: rgba(245,200,66,.4) !important;
  color: #F5C842 !important;
}

/* ── WA FLOAT ────────────────────────────────────────────────── */
.wa-float {
  background: linear-gradient(135deg, #25D366, #128C7E) !important;
  border-radius: 50px !important;
  box-shadow: 0 8px 30px rgba(37,211,102,.3) !important;
}

/* ── TOAST ───────────────────────────────────────────────────── */
#toast {
  background: rgba(6,14,28,.97) !important;
  border: 1px solid rgba(245,200,66,.2) !important;
}

/* ── URGENCY BAR ─────────────────────────────────────────────── */
#urgency {
  background: linear-gradient(90deg, #F5C842, #C8861A, #F5C842) !important;
  color: #060E1C !important;
}

/* ── SCROLL PROGRESS ─────────────────────────────────────────── */
#scroll-progress {
  background: linear-gradient(90deg, #F5C842, #3B82F6) !important;
}

/* ── PRICE CARDS ─────────────────────────────────────────────── */
.price-card {
  background: #0D1930 !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 20px !important;
}

.price-card:hover {
  border-color: rgba(245,200,66,.25) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(245,200,66,.2) !important;
}

.price-card.featured {
  background: #0F1F38 !important;
  border-color: rgba(245,200,66,.3) !important;
  box-shadow: 0 0 0 1px rgba(245,200,66,.3), 0 20px 60px rgba(245,200,66,.1) !important;
}

.price-card.featured:hover {
  box-shadow: 0 24px 60px rgba(245,200,66,.2), 0 0 0 2px #F5C842 !important;
}

/* ── INSIDER / CUSTOM SECTIONS ───────────────────────────────── */
.insider-section { background: #0A1628 !important; }
.insider-section h2,
.insider-headline { color: #E2E8F0 !important; }
.insider-section p,
.insider-sub,
.insider-desc { color: #94A3B8 !important; }
.insider-cta {
  color: #06101E !important;
  border-color: rgba(245,200,66,.3) !important;
}

/* Secciones con ID específico */
#viajes-oficiales { background: #060E1C !important; }
#diagnostico-ia { background: #0A1628 !important; }

/* Cualquier sección sec sin clase específica */
section.sec:not(.services-dark):not(.wa-section) {
  background: #060E1C;
}

section.sec:nth-child(even):not(.services-dark):not(.wa-section) {
  background: #0A1628;
}

/* Textos genéricos en secciones claras */
.sec h3,
.sec h4 { color: #E2E8F0; }

.sec p:not(.hero-sub):not(.impact-sub) { color: #94A3B8; }

/* Cualquier fondo blanco residual */
[style*="background: white"],
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background-color: white"],
[style*="background-color:#fff"] {
  background: #0D1930 !important;
}

/* ── HERO BADGE ──────────────────────────────────────────────── */
.hero-badge {
  background: rgba(245,200,66,.08) !important;
  border: 1px solid rgba(245,200,66,.2) !important;
}

/* ── FORMULARIO LEAD MAGNET — 4 campos iguales ───────────────── */
.lm-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}

/* Campo base — todos idénticos */
.lm-field {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 10px !important;
  color: #E2E8F0 !important;
  font-family: 'Space Grotesk', system-ui, sans-serif !important;
  font-size: .9rem !important;
  padding: 14px 16px !important;
  outline: none !important;
  transition: border-color .2s, background .2s !important;
  width: 100% !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  box-sizing: border-box !important;
}

.lm-field::placeholder {
  color: rgba(255,255,255,.3) !important;
}

.lm-field:focus {
  border-color: rgba(245,200,66,.4) !important;
  background: rgba(255,255,255,.09) !important;
}

/* Select específico */
.lm-field-select {
  cursor: pointer !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23F5C842' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 36px !important;
}

.lm-field-select option {
  background: #0F1F38 !important;
  color: #E2E8F0 !important;
}

@media (max-width: 480px) {
  .lm-grid { grid-template-columns: 1fr !important; }
}

/* ── ANIMACIONES ─────────────────────────────────────────────── */
@keyframes shimmer-gold {
  0% { background-position: -200% center; }
  100% { background-position: 200% center; }
}

/* Pulse sutil en CTA principal */
.pulse-cta {
  animation: pulse-gold 3s ease-in-out infinite;
}

@keyframes pulse-gold {
  0%, 100% { box-shadow: 0 8px 40px rgba(245,200,66,.2); }
  50% { box-shadow: 0 8px 60px rgba(245,200,66,.4); }
}

/* ── DIAGNOSTICO IA ──────────────────────────────────────────── */
.diag-section {
  background: linear-gradient(160deg, #060E1C 0%, #0A1628 50%, #060E1C 100%) !important;
}
.diag-title { color: #E2E8F0 !important; }
.diag-title em { color: #F5C842 !important; font-style: italic !important; }
.diag-sub { color: #94A3B8 !important; }
.diag-badge {
  background: rgba(245,200,66,.08) !important;
  border: 1px solid rgba(245,200,66,.2) !important;
  border-radius: 100px !important;
}
.diag-badge-txt { color: #F5C842 !important; }
.diag-badge-pulse {
  background: #F5C842 !important;
  border-radius: 50% !important;
  animation: blink-pulse 2s infinite !important;
}
@keyframes blink-pulse { 0%,100%{opacity:1} 50%{opacity:.2} }
.diag-terminal {
  background: #0A0F1A !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.7) !important;
}
.diag-term-bar { background: #141E2E !important; border-bottom: 1px solid rgba(255,255,255,.07) !important; }
.diag-term-body { background: #0A0F1A !important; color: #10B981 !important; }
.dt-result { background: #111827 !important; border: 1px solid rgba(255,255,255,.07) !important; border-radius: 10px !important; }
.dt-result-label { color: rgba(255,255,255,.35) !important; }
.dt-result-text { color: #E2E8F0 !important; }
.diag-feat-text { color: #94A3B8 !important; }
.diag-price { color: #E2E8F0 !important; }
.diag-price-num { color: #F5C842 !important; }
.diag-price-curr { color: #94A3B8 !important; }
.diag-price-note { color: #475569 !important; }
.diag-cta-primary {
  background: linear-gradient(135deg,#F5C842,#C8861A) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
}
.diag-cta-sec { color: rgba(255,255,255,.5) !important; }
.diag-trust-item { color: rgba(255,255,255,.3) !important; }

/* ── PRECIOS ─────────────────────────────────────────────────── */
.pricing-section { background: #0A1628 !important; }
.pricing-header h2 { color: #E2E8F0 !important; }
.pricing-header h2 em { color: #F5C842 !important; font-style: italic !important; }
.pricing-note { color: #64748B !important; }
.pricing-grid { background: transparent !important; }
.price-name { color: #94A3B8 !important; font-size: .75rem !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .1em !important; }
.price-amount { color: #E2E8F0 !important; }
.price-currency { color: #F5C842 !important; }
.price-num { color: #E2E8F0 !important; }
.price-period { color: #475569 !important; }
.price-badge {
  background: rgba(245,200,66,.1) !important;
  color: #F5C842 !important;
  border: 1px solid rgba(245,200,66,.25) !important;
  border-radius: 100px !important;
}
.price-divider { border-color: rgba(255,255,255,.07) !important; }
.price-features li { color: #94A3B8 !important; }
.price-features li::before { color: #10B981 !important; }
.price-ideal { color: #475569 !important; }
.price-tier { color: rgba(255,255,255,.25) !important; }
.price-cta {
  background: linear-gradient(135deg,#F5C842,#C8861A) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
  display: block !important;
  text-align: center !important;
}
.pricing-free { color: #10B981 !important; }

/* ── LEAD MAGNET ─────────────────────────────────────────────── */
.lm-section {
  background: linear-gradient(160deg, #0A1628 0%, #060E1C 100%) !important;
}
.lm-title { color: #E2E8F0 !important; }
.lm-title em { color: #F5C842 !important; font-style: italic !important; }
.lm-sub { color: #94A3B8 !important; }
.lm-badge {
  background: rgba(245,200,66,.08) !important;
  border: 1px solid rgba(245,200,66,.2) !important;
  border-radius: 100px !important;
}
.lm-badge-dot { background: #F5C842 !important; border-radius: 50% !important; }
.lm-badge-txt { color: #F5C842 !important; }
.lm-preview {
  background: #060E1C !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.6) !important;
}
.lm-prev-cover {
  background: linear-gradient(135deg,#0F1F38,#060E1C) !important;
  border-radius: 12px 12px 0 0 !important;
}
.lm-prev-tag { color: #F5C842 !important; }
.lm-prev-title { color: #E2E8F0 !important; }
.lm-prev-auth { color: rgba(255,255,255,.4) !important; }
.lm-prev-footer { background: #0A1628 !important; border-top: 1px solid rgba(255,255,255,.07) !important; }
.lm-prev-pages { color: rgba(255,255,255,.3) !important; }
.lm-prev-num { color: #F5C842 !important; }
.lm-submit {
  background: linear-gradient(135deg,#F5C842,#C8861A) !important;
  color: #060E1C !important;
  font-weight: 800 !important;
  border-radius: 100px !important;
  width: 100% !important;
  border: none !important;
  cursor: pointer !important;
}
.lm-submit:hover { transform: translateY(-2px) !important; box-shadow: 0 12px 40px rgba(245,200,66,.35) !important; }
.lm-privacy { color: rgba(255,255,255,.25) !important; }
.lm-success { color: #10B981 !important; }

/* ── PROCESO ─────────────────────────────────────────────────── */
.process-grid { gap: 60px !important; }
.process-steps { gap: 0 !important; }

/* ── RESULTADOS — textos adicionales ─────────────────────────── */
.res-big { font-size: clamp(2.5rem,5vw,4rem) !important; line-height: 1 !important; }
.res-cell h3 { font-size: 1rem !important; margin-top: 8px !important; }

/* ── TEXTOS GENÉRICOS OSCUROS — forzar blanco ────────────────── */
h1:not(.hero h1):not(.diag-title):not(.lm-title) { color: #E2E8F0 !important; }
h2:not(.display):not(.diag-title):not(.lm-title) { color: #E2E8F0 !important; }
h3, h4, h5 { color: #E2E8F0 !important; }
p:not(.hero-sub):not(.impact-sub):not(.diag-sub):not(.lm-sub) { color: #94A3B8; }

/* Forzar que todo fondo claro se convierta a dark */
.bg-white, .bg-light, [class*="bg-gray"], [class*="bg-slate"] { background: #0D1930 !important; }
.text-dark, .text-black, [class*="text-gray-9"], [class*="text-slate-9"] { color: #E2E8F0 !important; }

/* Formularios e inputs del sistema */
input:not(.lm-field), select:not(.lm-field), textarea {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  color: #E2E8F0 !important;
  border-radius: 10px !important;
}
input::placeholder, textarea::placeholder { color: rgba(255,255,255,.25) !important; }

/* ── MODAL LEAD MAGNET ────────────────────────────────────────── */
.modal-overlay, .modal-bg { background: rgba(6,14,28,.92) !important; backdrop-filter: blur(12px) !important; }
.modal-box, .modal-content {
  background: #0D1930 !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 20px !important;
}
.modal-box h2, .modal-content h2 { color: #E2E8F0 !important; }
.modal-box p, .modal-content p { color: #94A3B8 !important; }
.modal-close { color: rgba(255,255,255,.4) !important; }
.modal-close:hover { color: #F5C842 !important; }

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media (max-width: 960px) {
  .success-img-overlay {
    background: linear-gradient(to bottom, transparent 60%, #0A1628 100%) !important;
  }
}

@media (max-width: 768px) {
  .pricing-grid { grid-template-columns: 1fr !important; }
  .diag-layout { grid-template-columns: 1fr !important; }
  .lm-grid { grid-template-columns: 1fr !important; }
  .process-grid { grid-template-columns: 1fr !important; }
  .results-grid { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 480px) {
  .hero h1 { font-size: clamp(2rem, 10vw, 3rem) !important; }
  .results-grid { grid-template-columns: 1fr !important; }
  .hstat-n { font-size: 1.6rem !important; }
}
