/* ============================================================
   InteractiveWish — Halloween Scratch Card Landing CSS
   Prefix: hsc-
   Extends universal-landing.css
   Palette allineata all'editor: arancione zucca #FF7518,
   viola strega #6D28D9, carbone #171326, crema #FFF8F0.
   ============================================================ */

/* ── SPOOKY (hero) ─────────────────────────────────────────── */
.hsc-spooky-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.hsc-spooky-item {
  position: absolute;
  animation: hsc-float linear infinite;
  opacity: 0;
  user-select: none;
  font-style: normal;
}
@keyframes hsc-float {
  0%   { opacity: 0; transform: translateY(0) rotate(-6deg) scale(0.7); }
  8%   { opacity: 0.8; }
  50%  { transform: translateY(-55vh) rotate(8deg) scale(1.05); }
  92%  { opacity: 0.5; }
  100% { opacity: 0; transform: translateY(-110vh) rotate(-5deg) scale(1.1); }
}

/* ── HERO title em ──────────────────────────────────────────── */
.ulp-hero-title em {
  background: linear-gradient(135deg, #ff7518 0%, #a855f7 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ── Idea card borders — alternate pumpkin / witch ──────────── */
.ulp-idea-card {
  border-left-color: #ff7518;
}
.ulp-idea-card:nth-child(2n) {
  border-left-color: #6d28d9;
}

/* ── Emotional close block ──────────────────────────────────── */
.hsc-emotional-close {
  background: linear-gradient(135deg, rgba(255,117,24,0.16) 0%, rgba(109,40,217,0.14) 100%);
  border-color: rgba(255,117,24,0.3);
}

/* ── CTA primary ────────────────────────────────────────────── */
.ulp-cta--primary {
  background: linear-gradient(135deg, #ff7518 0%, #c45a08 100%);
  color: #171326;
  font-weight: 700;
  box-shadow: 0 4px 20px rgba(255,117,24,0.4);
}
.ulp-cta--primary:hover {
  background: linear-gradient(135deg, #ff8a33 0%, #ff7518 100%);
  box-shadow: 0 8px 26px rgba(255,117,24,0.5);
}

/* ── Step number — witch purple for even ────────────────────── */
.ulp-how-step:nth-child(2n) .ulp-how-step-num {
  background: linear-gradient(135deg, #6d28d9 0%, #4c1d95 100%);
  color: #fff;
}

/* ── Nav CTA ────────────────────────────────────────────────── */
.ulp-nav-cta--primary {
  background: linear-gradient(135deg, #ff7518 0%, #c45a08 100%);
  color: #171326;
  font-weight: 700;
  box-shadow: 0 2px 10px rgba(255,117,24,0.38);
}

/* ── Eyebrow gradient ───────────────────────────────────────── */
.ulp-eyebrow {
  background: linear-gradient(135deg, #ff7518 0%, #6d28d9 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ── Logo gradient ──────────────────────────────────────────── */
.ulp-logo-text {
  background: linear-gradient(135deg, #ff7518 0%, #a855f7 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ── Sections: crema calda e lavanda, come l'editor ─────────── */
.ulp-section--alt {
  background: #fff8f0;
}
.ulp-section--light {
  background: #f5eeff;
}

/* ── Example cards: il messaggio e il protagonista ──────────── */
.ulp-example-card {
  border-color: rgba(255,117,24,0.3);
}
.ulp-example-label {
  color: #ff8a32;
}

/* ── Stars ──────────────────────────────────────────────────── */
.ulp-stars {
  color: #ff7518;
}

@media (prefers-reduced-motion: reduce) {
  .hsc-spooky-item {
    animation: none;
    opacity: 0.4;
  }
}

/* ── PLANS (free vs premium) ────────────────────────────────── */
.hsc-plans-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  align-items: start;
  max-width: 760px;
  margin: 0 auto;
}
.hsc-plan {
  background: #fff;
  border-radius: var(--ulp-radius, 16px);
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(23, 19, 38, 0.12);
  display: flex;
  flex-direction: column;
  position: relative;
}
/* Il premium sta leggermente più in alto: a parità di contenuto l'occhio
   si ferma prima sul riquadro che sporge. */
.hsc-plan--featured {
  box-shadow: 0 10px 40px rgba(255, 117, 24, 0.28);
  border: 2px solid rgba(255, 117, 24, 0.45);
}
@media (min-width: 720px) {
  .hsc-plan--featured {
    transform: translateY(-8px);
  }
}
.hsc-plan-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: linear-gradient(135deg, #ff7518 0%, #c45a08 100%);
  color: #171326;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  padding: 5px 11px;
  border-radius: 999px;
  z-index: 2;
}
.hsc-plan-header {
  padding: 28px 22px 20px;
  text-align: center;
}
.hsc-plan-header--free {
  background: #f5eeff;
}
.hsc-plan-header--premium {
  background: linear-gradient(160deg, #fff4e5 0%, #ffe0c2 100%);
}
.hsc-plan-emoji {
  font-size: 2.2rem;
  display: block;
  margin-bottom: 8px;
}
.hsc-plan-header h3 {
  margin: 0 0 6px;
  font-size: 1.3rem;
  color: #171326;
}
.hsc-plan-price {
  font-size: 1.9rem;
  font-weight: 800;
  color: #c45a08;
  line-height: 1.1;
}
.hsc-plan-header--free .hsc-plan-price {
  color: #6d28d9;
}
.hsc-plan-price s {
  font-size: 1rem;
  font-weight: 600;
  opacity: 0.55;
  margin-left: 6px;
}
.hsc-plan-desc {
  margin: 10px 0 0;
  font-size: 0.92rem;
  color: #4a3a5c;
  line-height: 1.5;
}
.hsc-plan-features {
  list-style: none;
  margin: 0;
  padding: 20px 22px;
  flex: 1;
}
.hsc-plan-features li {
  padding: 9px 0;
  font-size: 0.94rem;
  color: #24152f;
  border-bottom: 1px solid rgba(109, 40, 217, 0.1);
}
.hsc-plan-features li:last-child {
  border-bottom: none;
}
.hsc-plan-cta {
  margin: 0 22px 22px;
  text-align: center;
}
/* La gratuita non deve competere col premium: contorno invece di pieno. */
.hsc-plan-cta--free {
  background: #fff;
  color: #6d28d9;
  border: 2px solid #6d28d9;
  box-shadow: none;
}
.hsc-plan-cta--free:hover {
  background: #f5eeff;
}
.hsc-plans-note {
  text-align: center;
  margin: 28px auto 0;
  font-size: 0.88rem;
  color: #4a3a5c;
  max-width: 480px;
}
