/* ═══════════════════════════════════════════════
   INMERSIÓN CUÁNTICA — Quiz Funnel CSS
   Paleta: Oniric violet + gold + rose + aqua
═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Jost:wght@300;400;500;600&display=swap');

/* ROOT & RESET */
#iq-root {
  all: initial !important;
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: hsl(270,40%,20%) !important;
  box-sizing: border-box !important;
  --vp: hsl(270,60%,45%);
  --vd: hsl(270,50%,25%);
  --vl: hsl(270,50%,72%);
  --vs: hsl(270,30%,93%);
  --pw: hsl(330,70%,68%);
  --ps: hsl(330,50%,88%);
  --go: hsl(45,80%,60%);
  --gl: hsl(45,70%,82%);
  --aq: hsl(180,55%,62%);
  --gr: linear-gradient(135deg,hsl(270,60%,25%) 0%,hsl(285,55%,30%) 30%,hsl(310,60%,35%) 60%,hsl(330,65%,38%) 85%,hsl(270,50%,28%) 100%);
  --gs: linear-gradient(135deg,hsl(270,30%,97%) 0%,hsl(330,40%,96%) 30%,hsl(180,35%,93%) 60%,hsl(45,60%,93%) 85%,hsl(270,25%,97%) 100%);
  --gd: linear-gradient(160deg,hsl(270,50%,12%) 0%,hsl(310,55%,16%) 50%,hsl(330,60%,14%) 100%);
}
#iq-root *:not(.iq-particle), #iq-root *:not(.iq-particle)::before, #iq-root *:not(.iq-particle)::after {
  all: unset !important;
  box-sizing: border-box !important;
}
#iq-root div, #iq-root section, #iq-root nav, #iq-root header, #iq-root footer, #iq-root main { display: block !important; }
#iq-root span, #iq-root label, #iq-root strong, #iq-root em, #iq-root b, #iq-root i { display: inline !important; }
#iq-root p { display: block !important; margin: 0 !important; padding: 0 !important; }
#iq-root h1, #iq-root h2, #iq-root h3 { display: block !important; margin: 0 !important; padding: 0 !important; }
#iq-root ul, #iq-root ol { display: block !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
#iq-root li { display: block !important; }

/* CSS VARS en hijos */
#iq-root .iq-wrap, #iq-root .iq-landing, #iq-root .iq-quiz-shell,
#iq-root .iq-card, #iq-root .iq-popup-overlay {
  --vp: hsl(270,60%,45%);
  --vd: hsl(270,50%,25%);
  --vl: hsl(270,50%,72%);
  --vs: hsl(270,30%,93%);
  --pw: hsl(330,70%,68%);
  --ps: hsl(330,50%,88%);
  --go: hsl(45,80%,60%);
  --aq: hsl(180,55%,62%);
  --gr: linear-gradient(135deg,hsl(270,60%,25%) 0%,hsl(285,55%,30%) 30%,hsl(310,60%,35%) 60%,hsl(330,65%,38%) 85%,hsl(270,50%,28%) 100%);
  --gs: linear-gradient(135deg,hsl(270,30%,97%) 0%,hsl(330,40%,96%) 30%,hsl(180,35%,93%) 60%,hsl(45,60%,93%) 85%,hsl(270,25%,97%) 100%);
  --gd: linear-gradient(160deg,hsl(270,50%,12%) 0%,hsl(310,55%,16%) 50%,hsl(330,60%,14%) 100%);
}

/* ── PARTÍCULAS ── */
#iq-root .iq-particles {
  display: block !important; position: absolute !important;
  inset: 0 !important; pointer-events: none !important;
  z-index: 0 !important; overflow: hidden !important;
}
#iq-root .iq-particle {
  display: block !important; position: absolute !important;
  border-radius: 50% !important;
  animation-name: iq-float !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-fill-mode: both !important;
  top: 105% !important;
}
@keyframes iq-float {
  0%   { transform: translateY(0) rotate(0deg); opacity: 0; }
  10%  { opacity: 0.4; }
  90%  { opacity: 0.2; }
  100% { transform: translateY(-130vh) rotate(540deg); opacity: 0; }
}

/* ══════════════════════════════════════════
   LANDING PAGE
══════════════════════════════════════════ */
#iq-root .iq-landing {
  display: block !important;
  background: var(--gd) !important;
  min-height: 100vh !important;
  position: relative !important;
  overflow: hidden !important;
}
#iq-root .iq-landing.iq-hidden { display: none !important; }
#iq-root .iq-landing-inner {
  display: block !important;
  position: relative !important; z-index: 1 !important;
  max-width: 780px !important; margin: 0 auto !important;
  padding: 4rem 2rem 3rem !important;
}
#iq-root .iq-landing-eyebrow {
  display: block !important;
  text-align: center !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.7rem !important; font-weight: 600 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: var(--go) !important; margin-bottom: 1.25rem !important;
}
#iq-root .iq-landing-for {
  display: block !important;
  text-align: center !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.72rem !important; font-weight: 500 !important;
  letter-spacing: 0.18em !important; text-transform: uppercase !important;
  color: hsl(330,50%,78%) !important; margin-bottom: 1.5rem !important;
}
#iq-root .iq-landing-h1 {
  display: block !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(2rem, 5vw, 3.4rem) !important;
  line-height: 1.12 !important; text-align: center !important;
  color: white !important; font-weight: 300 !important;
  margin-bottom: 1.25rem !important;
}
#iq-root .iq-landing-h1 strong {
  display: inline !important; font-weight: 600 !important;
  font-family: 'Cormorant Garamond', serif !important;
  background: linear-gradient(90deg, var(--go), var(--pw)) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
#iq-root .iq-landing-sub {
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 1rem !important; line-height: 1.7 !important;
  text-align: center !important;
  color: hsl(270,20%,80%) !important; margin-bottom: 2.5rem !important;
}
/* Bullets de beneficios */
#iq-root .iq-benefits {
  display: block !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 1.25rem !important;
  padding: 1.75rem !important; margin-bottom: 2.5rem !important;
}
#iq-root .iq-benefits-title {
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.75rem !important; font-weight: 600 !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  color: var(--go) !important; margin-bottom: 1.1rem !important;
}
#iq-root .iq-benefit {
  display: flex !important; align-items: flex-start !important;
  gap: 0.85rem !important; margin-bottom: 0.85rem !important;
}
#iq-root .iq-benefit:last-child { margin-bottom: 0 !important; }
#iq-root .iq-benefit-icon {
  display: flex !important; align-items: center !important; justify-content: center !important;
  min-width: 36px !important; height: 36px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.08) !important;
  font-size: 1.1rem !important; flex-shrink: 0 !important;
}
#iq-root .iq-benefit-text {
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.88rem !important; line-height: 1.55 !important;
  color: hsl(270,20%,85%) !important; padding-top: 0.4rem !important;
}
#iq-root .iq-benefit-text strong {
  display: inline !important; color: white !important; font-weight: 600 !important;
  font-family: 'Jost', sans-serif !important;
}
/* CTA landing */
#iq-root .iq-landing-cta { display: block !important; text-align: center !important; margin-bottom: 1.5rem !important; }
#iq-root .iq-cta-btn {
  display: inline-block !important;
  padding: 1.1rem 2.5rem !important; border-radius: 0.875rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 1rem !important; font-weight: 600 !important;
  letter-spacing: 0.06em !important; text-transform: uppercase !important;
  box-shadow: 0 6px 40px hsl(270,60%,45%,0.5) !important;
  transition: all 0.25s cubic-bezier(0.22,1,0.36,1) !important;
  text-align: center !important;
}
#iq-root .iq-cta-btn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 50px hsl(270,60%,45%,0.65) !important;
}
#iq-root .iq-landing-firma {
  display: block !important; text-align: center !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.72rem !important; color: hsl(270,15%,60%) !important;
  line-height: 1.6 !important;
}
#iq-root .iq-landing-firma strong {
  display: inline !important; color: hsl(270,15%,75%) !important;
  font-weight: 500 !important; font-family: 'Jost', sans-serif !important;
}

/* ══════════════════════════════════════════
   QUIZ SHELL
══════════════════════════════════════════ */
#iq-root .iq-quiz-shell {
  display: none !important;
  background: var(--gs) !important;
  min-height: 100vh !important;
  position: relative !important; overflow: hidden !important;
  padding: 1.5rem 1rem !important;
}
#iq-root .iq-quiz-shell.iq-visible { display: block !important; }

/* CARD */
#iq-root .iq-card {
  display: block !important; position: relative !important; z-index: 1 !important;
  background: rgba(255,255,255,0.96) !important;
  backdrop-filter: blur(20px) !important;
  border-radius: 1.75rem !important;
  padding: 2.5rem 2rem !important;
  max-width: 680px !important; margin: 0 auto !important;
  box-shadow: 0 8px 60px hsl(270,50%,25%,0.13), 0 2px 20px hsl(330,70%,68%,0.09) !important;
  border: 1px solid hsl(270,25%,88%) !important;
}

/* PÁGINAS */
#iq-root .iq-page { display: none !important; }
#iq-root .iq-page.iq-active {
  display: block !important;
  animation: iq-in 0.45s cubic-bezier(0.22,1,0.36,1) both !important;
}
@keyframes iq-in {
  from { opacity:0; transform: translateY(18px) scale(0.975); }
  to   { opacity:1; transform: translateY(0)    scale(1);     }
}

/* PROGRESS */
#iq-root .iq-progress-wrap { display: block !important; margin-bottom: 1.75rem !important; }
#iq-root .iq-progress-top {
  display: flex !important; justify-content: space-between !important; align-items: center !important;
  margin-bottom: 0.5rem !important;
}
#iq-root .iq-progress-fase {
  display: inline-flex !important; align-items: center !important; gap: 0.35rem !important;
  background: hsl(270,30%,92%) !important; color: var(--vp) !important;
  font-size: 0.65rem !important; font-weight: 600 !important;
  letter-spacing: 0.1em !important; text-transform: uppercase !important;
  padding: 0.22rem 0.65rem !important; border-radius: 99px !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-progress-fase span {
  display: inline-block !important; width: 5px !important; height: 5px !important;
  border-radius: 50% !important; background: var(--vp) !important;
}
#iq-root .iq-progress-num {
  display: inline !important; font-size: 0.7rem !important; font-weight: 500 !important;
  color: hsl(270,20%,55%) !important; font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-progress-bar {
  display: block !important; height: 4px !important;
  background: hsl(270,25%,90%) !important; border-radius: 99px !important; overflow: hidden !important;
}
#iq-root .iq-progress-fill {
  display: block !important; height: 100% !important;
  background: var(--gr) !important; border-radius: 99px !important;
  transition: width 0.6s cubic-bezier(0.22,1,0.36,1) !important;
}

/* PREGUNTA */
#iq-root .iq-q-label {
  display: block !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 0.8rem !important; color: var(--pw) !important;
  font-weight: 600 !important; letter-spacing: 0.1em !important;
  text-transform: uppercase !important; margin-bottom: 0.4rem !important;
}
#iq-root .iq-q-text {
  display: block !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.25rem, 2.5vw, 1.5rem) !important;
  line-height: 1.45 !important; color: hsl(270,40%,18%) !important;
  font-weight: 400 !important; margin-bottom: 1.75rem !important;
}
#iq-root .iq-q-note {
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.88rem !important;
  color: hsl(270,15%,50%) !important;
  margin-top: -1.25rem !important;
  margin-bottom: 1.5rem !important;
  font-style: italic !important;
}
#iq-root .iq-q-text em {
  display: inline !important; color: var(--vp) !important;
  font-style: italic !important; font-family: 'Cormorant Garamond', serif !important;
}
#iq-root .iq-q-text strong {
  display: inline !important; font-weight: 600 !important;
  font-family: 'Cormorant Garamond', serif !important;
}

/* ── FORMATO 1: SLIDER / TERMÓMETRO ── */
#iq-root .iq-slider-wrap { display: block !important; margin-bottom: 1.75rem !important; }
#iq-root .iq-slider-poles {
  display: flex !important; justify-content: space-between !important;
  margin-bottom: 0.9rem !important;
}
#iq-root .iq-pole {
  display: block !important; max-width: 22% !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 0.78rem !important; line-height: 1.25 !important;
  color: hsl(270,20%,48%) !important;
}
#iq-root .iq-pole.right { text-align: right !important; }
#iq-root .iq-pole-emoji { display: block !important; font-size: 1.2rem !important; margin-bottom: 0.2rem !important; }
#iq-root .iq-slider-track {
  display: block !important; position: relative !important;
  height: 6px !important; background: hsl(270,25%,88%) !important;
  border-radius: 99px !important; margin-bottom: 1rem !important;
}
#iq-root .iq-slider-fill {
  display: block !important; position: absolute !important;
  left: 0 !important; top: 0 !important; height: 100% !important;
  background: var(--gr) !important; border-radius: 99px !important;
  transition: width 0.2s !important; pointer-events: none !important;
}
#iq-root .iq-slider-dots {
  display: flex !important; justify-content: space-between !important;
}
#iq-root .iq-dot-btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 46px !important; height: 46px !important; border-radius: 50% !important;
  border: 2px solid hsl(270,20%,83%) !important;
  background: white !important; cursor: pointer !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.1rem !important; font-weight: 600 !important;
  color: hsl(270,25%,52%) !important;
  transition: all 0.18s cubic-bezier(0.22,1,0.36,1) !important;
  padding: 0 !important; margin: 0 !important;
}
#iq-root .iq-dot-btn:hover {
  border-color: var(--vp) !important; color: var(--vp) !important;
  background: hsl(270,55%,97%) !important; transform: scale(1.1) !important;
}
#iq-root .iq-dot-btn.iq-sel {
  background: var(--gr) !important; border-color: transparent !important;
  color: white !important; transform: scale(1.15) !important;
  box-shadow: 0 4px 18px hsl(270,60%,45%,0.4) !important;
}

/* ── FORMATO: RANGE (Slider con emoji) ── */
#iq-root .iq-range-container {
  display: block !important; position: relative !important; margin: 1.5rem 0 !important;
}
#iq-root .iq-range-track-box {
  display: block !important; position: relative !important; height: 42px !important; cursor: pointer !important;
  touch-action: none !important;
}
#iq-root .iq-range-bar {
  display: block !important; position: absolute !important; top: 18px !important; left: 0 !important; right: 0 !important;
  height: 6px !important; background: hsl(270,25%,88%) !important; border-radius: 99px !important;
}
#iq-root .iq-range-fill {
  display: block !important; position: absolute !important; top: 18px !important; left: 0 !important;
  height: 6px !important; background: var(--gr) !important; border-radius: 99px !important;
  transition: width 0.25s cubic-bezier(0.22,1,0.36,1) !important;
}
#iq-root .iq-range-thumb {
  display: flex !important; align-items: center !important; justify-content: center !important;
  position: absolute !important; top: 1px !important; width: 40px !important; height: 40px !important;
  font-size: 30px !important; transform: translateX(-50%) !important;
  transition: left 0.25s cubic-bezier(0.22,1,0.36,1) !important;
  pointer-events: none !important;
}
#iq-root .iq-range-labels {
  display: flex !important; justify-content: space-between !important; padding: 0 4px !important;
  margin-top: 2px !important;
}
#iq-root .iq-range-labels span {
  font-family: 'Cormorant Garamond', serif !important; font-size: 0.85rem !important;
  font-weight: 600 !important; color: hsl(270,20%,50%) !important;
}

/* ── FORMATO 2: ESCENARIOS (A/B o A/B/C/D/E numérico) ── */
#iq-root .iq-scenarios { display: flex !important; flex-direction: column !important; gap: 0.6rem !important; margin-bottom: 1.75rem !important; }
#iq-root .iq-scenario-btn {
  display: flex !important; align-items: flex-start !important; gap: 0.75rem !important;
  padding: 0.9rem 1.1rem !important; border-radius: 0.875rem !important;
  border: 2px solid hsl(270,18%,88%) !important;
  background: white !important; cursor: pointer !important; text-align: left !important;
  font-family: 'Jost', sans-serif !important; font-size: 0.87rem !important;
  line-height: 1.5 !important; color: hsl(270,28%,30%) !important;
  transition: all 0.2s cubic-bezier(0.22,1,0.36,1) !important;
  width: 100% !important; margin: 0 !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-scenario-btn:hover {
  border-color: var(--vl) !important; background: hsl(270,28%,98%) !important;
  transform: translateX(3px) !important;
}
#iq-root .iq-scenario-btn.iq-sel {
  border-color: var(--vp) !important; background: hsl(270,55%,97%) !important;
  color: var(--vp) !important;
}
#iq-root .iq-scenario-btn.iq-sel .iq-sc-badge {
  background: var(--gr) !important; color: white !important; border-color: transparent !important;
}
#iq-root .iq-sc-badge {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  min-width: 24px !important; height: 24px !important; border-radius: 50% !important;
  border: 2px solid hsl(270,18%,80%) !important;
  font-size: 0.7rem !important; font-weight: 700 !important;
  color: var(--vp) !important; flex-shrink: 0 !important;
  margin-top: 1px !important; font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-scenario-btn span:not(.iq-sc-badge) {
  display: inline !important; font-family: 'Jost', sans-serif !important;
}

/* ── FORMATO 3: TARJETAS DE ÍCONOS ── */
#iq-root .iq-cards-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
  gap: 0.75rem !important; margin-bottom: 1.75rem !important;
}
#iq-root .iq-cards-grid.iq-2col { grid-template-columns: 1fr 1fr !important; }
#iq-root .iq-icon-card {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; text-align: center !important;
  gap: 0.6rem !important; padding: 1.1rem 0.85rem !important;
  border-radius: 1rem !important; border: 2px solid hsl(270,18%,88%) !important;
  background: white !important; cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.22,1,0.36,1) !important;
  width: 100% !important; margin: 0 !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-icon-card:hover {
  border-color: var(--vl) !important; background: hsl(270,28%,98%) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px hsl(270,40%,30%,0.1) !important;
}
#iq-root .iq-icon-card.iq-sel {
  border-color: var(--vp) !important;
  background: linear-gradient(145deg, hsl(270,55%,97%), hsl(330,40%,97%)) !important;
  box-shadow: 0 6px 24px hsl(270,60%,45%,0.18) !important;
}
#iq-root .iq-card-emoji { display: block !important; font-size: 2rem !important; line-height: 1 !important; }
#iq-root .iq-card-title {
  display: block !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.8rem !important; font-weight: 600 !important;
  color: var(--vd) !important; line-height: 1.3 !important;
}
#iq-root .iq-icon-card.iq-sel .iq-card-title { color: var(--vp) !important; }
#iq-root .iq-card-desc {
  display: block !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.76rem !important; line-height: 1.45 !important;
  color: hsl(270,20%,48%) !important;
}
#iq-root .iq-icon-card.iq-sel .iq-card-desc { color: hsl(270,30%,40%) !important; }

/* ── FORMATO 4: EL ESPEJO (A/B o A/B/C/D vertical) ── */
#iq-root .iq-mirror { display: flex !important; flex-direction: column !important; gap: 0.75rem !important; margin-bottom: 1.75rem !important; }
#iq-root .iq-mirror-btn {
  display: flex !important; align-items: flex-start !important; gap: 0.75rem !important;
  padding: 1rem 1.15rem !important; border-radius: 1rem !important;
  border: 2px solid hsl(270,18%,88%) !important;
  background: white !important; cursor: pointer !important; text-align: left !important;
  font-family: 'Jost', sans-serif !important; font-size: 0.87rem !important;
  line-height: 1.55 !important; color: hsl(270,28%,32%) !important;
  transition: all 0.2s cubic-bezier(0.22,1,0.36,1) !important;
  font-style: italic !important; width: 100% !important; margin: 0 !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-mirror-btn:hover {
  border-color: var(--pw) !important; background: hsl(330,30%,98%) !important;
  transform: translateX(3px) !important;
}
#iq-root .iq-mirror-btn.iq-sel {
  border-color: var(--pw) !important; background: hsl(330,40%,97%) !important;
  color: hsl(330,40%,28%) !important;
}
#iq-root .iq-mirror-btn.iq-sel .iq-mirror-badge {
  background: linear-gradient(135deg, var(--pw), hsl(310,60%,55%)) !important;
  color: white !important; border-color: transparent !important;
}
#iq-root .iq-mirror-badge {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  min-width: 22px !important; height: 22px !important; border-radius: 50% !important;
  border: 2px solid hsl(330,25%,80%) !important; font-size: 0.68rem !important;
  font-weight: 700 !important; color: var(--pw) !important; flex-shrink: 0 !important;
  margin-top: 2px !important; font-family: 'Jost', sans-serif !important;
  font-style: normal !important;
}

/* ── SELECCIÓN MÚLTIPLE ── */
#iq-root .iq-multi-note {
  display: block !important; font-size: 0.72rem !important;
  color: hsl(270,20%,55%) !important; font-style: italic !important;
  margin-bottom: 0.75rem !important; font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-multi-confirm {
  display: block !important; width: 100% !important;
  padding: 0.85rem 1.5rem !important; border-radius: 0.75rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.88rem !important; font-weight: 600 !important;
  letter-spacing: 0.04em !important; text-transform: uppercase !important;
  margin-top: 0.85rem !important;
  box-shadow: 0 4px 24px hsl(270,60%,45%,0.3) !important;
  transition: all 0.2s cubic-bezier(0.22,1,0.36,1) !important;
  text-align: center !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-multi-confirm:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 32px hsl(270,60%,45%,0.45) !important;
}

/* ── BTN SIGUIENTE ── */
#iq-root .iq-next-btn {
  display: block !important; width: 100% !important;
  padding: 1rem 2rem !important; border-radius: 0.875rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.95rem !important; font-weight: 600 !important;
  letter-spacing: 0.05em !important; text-transform: uppercase !important;
  transition: all 0.25s cubic-bezier(0.22,1,0.36,1) !important;
  box-shadow: 0 4px 30px hsl(270,60%,45%,0.3) !important;
  text-align: center !important; margin: 0 !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-next-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 40px hsl(270,60%,45%,0.48) !important;
}
#iq-root .iq-next-btn:disabled {
  opacity: 0.38 !important; cursor: not-allowed !important;
  transform: none !important; box-shadow: none !important;
}

/* ── FORMULARIO ── */
#iq-root .iq-form-group { display: block !important; margin-bottom: 1.1rem !important; }
#iq-root .iq-label {
  display: block !important; font-size: 0.74rem !important; font-weight: 600 !important;
  color: hsl(270,28%,45%) !important; margin-bottom: 0.4rem !important;
  letter-spacing: 0.06em !important; text-transform: uppercase !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-input {
  display: block !important; width: 100% !important;
  padding: 0.85rem 1rem !important; border-radius: 0.75rem !important;
  border: 2px solid hsl(270,18%,87%) !important; background: white !important;
  font-family: 'Jost', sans-serif !important; font-size: 0.93rem !important;
  color: hsl(270,38%,20%) !important; outline: none !important;
  line-height: 1.5 !important; margin: 0 !important;
  transition: border-color 0.2s !important;
  appearance: none !important; -webkit-appearance: none !important; box-shadow: none !important;
}
#iq-root .iq-input:focus {
  border-color: var(--vp) !important;
  box-shadow: 0 0 0 3px hsl(270,60%,45%,0.1) !important;
}
#iq-root .iq-phone-row { display: flex !important; gap: 0.5rem !important; }
#iq-root .iq-country {
  display: block !important; padding: 0.85rem 0.7rem !important;
  border-radius: 0.75rem !important; border: 2px solid hsl(270,18%,87%) !important;
  background: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.8rem !important; color: hsl(270,38%,20%) !important;
  outline: none !important; min-width: 128px !important; cursor: pointer !important;
  margin: 0 !important; appearance: auto !important; -webkit-appearance: auto !important;
  transition: border-color 0.2s !important;
}
#iq-root .iq-country:focus { border-color: var(--vp) !important; }
#iq-root .iq-phone-input { flex: 1 !important; min-width: 0 !important; }
#iq-root .iq-field-error {
  display: none !important; font-size: 0.74rem !important;
  color: hsl(0,68%,54%) !important; margin-top: 0.3rem !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-field-error.iq-show { display: block !important; }
#iq-root .iq-submit-btn {
  display: block !important; width: 100% !important;
  padding: 1rem 2rem !important; border-radius: 0.875rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 1rem !important; font-weight: 600 !important;
  letter-spacing: 0.05em !important; text-transform: uppercase !important;
  box-shadow: 0 4px 30px hsl(270,60%,45%,0.35) !important;
  transition: all 0.25s cubic-bezier(0.22,1,0.36,1) !important;
  text-align: center !important; margin-top: 0.5rem !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-submit-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 40px hsl(270,60%,45%,0.5) !important;
}
#iq-root .iq-submit-btn:disabled { opacity: 0.42 !important; cursor: not-allowed !important; transform: none !important; }

/* ── DISCLAIMER ── */
#iq-root .iq-disclaimer {
  display: block !important; font-size: 0.67rem !important;
  color: hsl(270,14%,60%) !important; text-align: center !important;
  line-height: 1.5 !important; margin-top: 0.85rem !important;
  padding-top: 0.85rem !important;
  border-top: 1px solid hsl(270,18%,90%) !important;
  font-family: 'Jost', sans-serif !important;
}

/* ── HEADINGS INTERNOS ── */
#iq-root .iq-section-h {
  display: block !important; font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.3rem, 2.8vw, 1.9rem) !important; line-height: 1.28 !important;
  color: hsl(270,40%,16%) !important; margin-bottom: 0.45rem !important; font-weight: 400 !important;
}
#iq-root .iq-section-sub {
  display: block !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.88rem !important; color: hsl(270,18%,50%) !important;
  margin-bottom: 1.5rem !important; line-height: 1.6 !important;
}
#iq-root .iq-welcome { display: inline !important; font-family: 'Cormorant Garamond', serif !important; font-style: italic !important; color: var(--vp) !important; }

/* ── PÁGINA RESULTADO / VSL ── */
#iq-root .iq-result-score {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 90px !important; height: 90px !important; border-radius: 50% !important;
  background: var(--gr) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 2rem !important; font-weight: 600 !important; color: white !important;
  margin: 0 auto 0.85rem !important;
  box-shadow: 0 6px 32px hsl(270,60%,45%,0.42) !important;
}
#iq-root .iq-result-header { display: block !important; text-align: center !important; margin-bottom: 1.5rem !important; }
#iq-root .iq-result-perfil {
  display: block !important; font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.8rem !important; font-weight: 600 !important;
  color: hsl(270,40%,16%) !important; line-height: 1.2 !important; margin-bottom: 0.4rem !important;
}
#iq-root .iq-result-rango {
  display: block !important; font-size: 0.7rem !important; font-weight: 600 !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  color: var(--pw) !important; margin-bottom: 1.25rem !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-result-box {
  display: block !important; background: hsl(270,28%,97%) !important;
  border-radius: 0.875rem !important; padding: 1.25rem !important;
  margin-bottom: 1.5rem !important; border-left: 3px solid var(--vp) !important;
}
#iq-root .iq-result-box p {
  display: block !important; font-size: 0.88rem !important; line-height: 1.68 !important;
  color: hsl(270,28%,34%) !important; font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-vsl-wrap {
  display: block !important; background: hsl(270,42%,14%) !important;
  border-radius: 1rem !important; aspect-ratio: 16/9 !important;
  margin-bottom: 1.5rem !important; position: relative !important; overflow: hidden !important;
}
#iq-root .iq-vsl-bg {
  display: block !important; position: absolute !important; inset: 0 !important;
  background: linear-gradient(135deg, hsl(270,50%,18%) 0%, hsl(310,55%,22%) 50%, hsl(330,60%,20%) 100%) !important;
}
#iq-root .iq-vsl-inner {
  display: block !important; position: relative !important; z-index: 1 !important;
  text-align: center !important; padding: 2rem !important;
}
#iq-root .iq-vsl-play {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 64px !important; height: 64px !important; border-radius: 50% !important;
  background: rgba(255,255,255,0.15) !important;
  border: 2px solid rgba(255,255,255,0.3) !important;
  font-size: 1.4rem !important; color: white !important;
  margin: 0 auto 0.85rem !important;
}
#iq-root .iq-vsl-label {
  display: block !important; color: rgba(255,255,255,0.88) !important;
  font-family: 'Cormorant Garamond', serif !important; font-size: 1.1rem !important;
}
#iq-root .iq-vsl-sub {
  display: block !important; color: rgba(255,255,255,0.5) !important;
  font-size: 0.73rem !important; margin-top: 0.3rem !important;
  font-family: 'Jost', sans-serif !important;
}

/* ── PÁGINA FINAL (bienvenida/gracias) ── */
#iq-root .iq-thanks {
  display: block !important; text-align: center !important;
  padding: 1.5rem 0 !important;
}
#iq-root .iq-thanks-icon { display: block !important; font-size: 3rem !important; margin-bottom: 0.75rem !important; }
#iq-root .iq-thanks-h {
  display: block !important; font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.5rem, 3vw, 2.2rem) !important; color: hsl(270,40%,16%) !important;
  font-weight: 400 !important; margin-bottom: 0.75rem !important; line-height: 1.3 !important;
}
#iq-root .iq-thanks-p {
  display: block !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.92rem !important; line-height: 1.65 !important;
  color: hsl(270,18%,45%) !important; margin-bottom: 0.85rem !important;
}
#iq-root .iq-thanks-highlight {
  display: block !important; font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.2rem !important; color: var(--vp) !important;
  font-style: italic !important; margin-bottom: 1.5rem !important; line-height: 1.45 !important;
}
#iq-root .iq-calendly-btn {
  display: inline-block !important;
  padding: 1.1rem 2.5rem !important; border-radius: 0.875rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 1rem !important; font-weight: 600 !important;
  letter-spacing: 0.05em !important; text-transform: uppercase !important;
  box-shadow: 0 6px 36px hsl(270,60%,45%,0.45) !important;
  transition: all 0.25s cubic-bezier(0.22,1,0.36,1) !important;
  text-align: center !important; margin-bottom: 1rem !important;
}
#iq-root .iq-calendly-btn:hover { transform: translateY(-3px) !important; box-shadow: 0 12px 48px hsl(270,60%,45%,0.6) !important; }

/* ── POPUP ── */
#iq-root .iq-popup-overlay {
  display: none !important; position: fixed !important;
  top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  z-index: 999999 !important;
  background: rgba(12,4,28,0.78) !important; backdrop-filter: blur(10px) !important;
  align-items: center !important; justify-content: center !important; padding: 1.5rem !important;
}
#iq-root .iq-popup-overlay.iq-show {
  display: flex !important; animation: iq-fade 0.3s ease !important;
}
@keyframes iq-fade { from { opacity:0; } to { opacity:1; } }
#iq-root .iq-popup-card {
  display: block !important; background: white !important;
  border-radius: 1.75rem !important; padding: 2.5rem 1.75rem !important;
  max-width: 480px !important; width: 100% !important; text-align: center !important;
  box-shadow: 0 28px 90px hsl(270,60%,18%,0.4) !important;
  animation: iq-pop 0.4s cubic-bezier(0.22,1,0.36,1) both !important;
}
@keyframes iq-pop {
  from { opacity:0; transform: scale(0.82) translateY(22px); }
  to   { opacity:1; transform: scale(1)    translateY(0);    }
}
#iq-root .iq-popup-icon { display: block !important; font-size: 2.5rem !important; margin-bottom: 0.6rem !important; }
#iq-root .iq-popup-pct {
  display: block !important; font-size: 0.7rem !important; font-weight: 700 !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  color: var(--pw) !important; margin-bottom: 0.5rem !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-popup-bar {
  display: block !important; height: 5px !important; background: hsl(270,20%,90%) !important;
  border-radius: 99px !important; overflow: hidden !important; margin-bottom: 1.4rem !important;
}
#iq-root .iq-popup-bar-fill {
  display: block !important; height: 100% !important; background: var(--gr) !important;
  border-radius: 99px !important; transition: width 1.5s cubic-bezier(0.22,1,0.36,1) !important;
}
#iq-root .iq-popup-title {
  display: block !important; font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.5rem !important; font-weight: 600 !important; line-height: 1.3 !important;
  color: hsl(270,40%,16%) !important; margin-bottom: 0.85rem !important;
}
#iq-root .iq-popup-text {
  display: block !important; font-size: 0.88rem !important; line-height: 1.65 !important;
  color: hsl(270,18%,42%) !important; margin-bottom: 1.5rem !important;
  font-family: 'Jost', sans-serif !important;
}
#iq-root .iq-popup-btn {
  display: block !important; width: 100% !important;
  padding: 0.95rem 1.5rem !important; border-radius: 0.875rem !important;
  background: var(--gr) !important; border: none !important; cursor: pointer !important;
  color: white !important; font-family: 'Jost', sans-serif !important;
  font-size: 0.93rem !important; font-weight: 600 !important;
  letter-spacing: 0.05em !important; text-transform: uppercase !important;
  box-shadow: 0 4px 28px hsl(270,60%,45%,0.32) !important;
  transition: all 0.2s !important; text-align: center !important;
  appearance: none !important; -webkit-appearance: none !important;
}
#iq-root .iq-popup-btn:hover { transform: translateY(-2px) !important; }

/* ── RESPONSIVE ── */
@media (max-width: 520px) {
  #iq-root .iq-card { padding: 1.75rem 1.25rem !important; border-radius: 1.35rem !important; }
  #iq-root .iq-dot-btn { width: 40px !important; height: 40px !important; font-size: 1rem !important; }
  #iq-root .iq-cards-grid { grid-template-columns: 1fr 1fr !important; }
  #iq-root .iq-phone-row { flex-direction: column !important; }
  #iq-root .iq-country { min-width: unset !important; width: 100% !important; }
  #iq-root .iq-landing-inner { padding: 2.5rem 1.25rem 2rem !important; }
}
@media (max-width: 360px) {
  #iq-root .iq-cards-grid { grid-template-columns: 1fr !important; }
}
#iq-root .iq-q-highlight {
  color: var(--go) !important;
  font-weight: 600 !important;
}
