/* ============================================================
   worldcup2026.css — page-specific styles for /worldcup2026
   Does not modify styles.css.
   ============================================================ */

/* ── Urgency banner — fixed top strip ── */
.urgency-banner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: var(--brand600);
  color: #ffffff;
  text-align: center;
  padding: 10px 24px 11px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.01em;
  z-index: 1001;
  line-height: 1.4;
}
.urgency-banner a {
  color: #ffffff;
  font-weight: 700;
  text-decoration: underline;
  margin-left: 12px;
  transition: opacity 200ms;
}
.urgency-banner a:hover { opacity: 0.85; }

/* ── Nav: sits at 40px (below banner), always solid background ──
   Height stays 64px. All three items (logo, wc link, cta) fit
   because the shared nav-left flex group handles logo + link.
── */
#nav {
  top: 40px;
  height: 64px;
  background: var(--grey950);
  border-bottom: 1px solid var(--grey800);
  z-index: 999;
}

/* ── Hero: total fixed chrome = banner 40px + nav 64px = 104px
   padding-top 180px gives 76px of breathing room below the nav.
   Using a concrete px value (not a variable) to guarantee
   it overrides the 120px default in styles.css.
── */
.hero-content {
  padding-top: 180px;
  padding-bottom: 80px;
}

/* ── Hero urgency line — brand600, above CTA group ── */
.hero-urgency {
  font-family: var(--font-body);
  font-size: var(--size-t5);
  font-weight: 600;
  color: var(--brand600);
  margin-bottom: var(--space-lg);
  letter-spacing: 0.01em;
}

/* ── Struck-through original price ── */
.price-struck {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 400;
  color: var(--grey500);
  text-decoration: line-through;
  display: block;
  margin-bottom: 4px;
}

/* ── Saving line beneath active price ── */
.price-saving {
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 600;
  color: var(--brand600);
  letter-spacing: 0.02em;
  display: block;
  margin-top: 10px;
}

/* ── Offer deadline panel ── */
.offer-deadline {
  border: 1px solid var(--brand600);
  padding: 24px 32px;
  margin-top: 32px;
  border-radius: 4px;
}
.offer-deadline__text {
  font-family: var(--font-body);
  font-size: var(--size-t5);
  line-height: var(--lh-t5);
  color: var(--text-secondary);
}
.offer-deadline__text + .offer-deadline__text { margin-top: 10px; }

/* ── Mid-page CTA — World Cup version ── */
.wc-midcta-label {
  font-family: var(--font-body);
  font-size: var(--size-t5);
  font-weight: 500;
  color: var(--brand600);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  display: block;
}
.wc-midcta-headline {
  font-family: var(--font-display);
  font-size: var(--size-t2);
  line-height: var(--lh-t2);
  font-weight: 400;
  font-style: italic;
  color: var(--text-secondary);
  margin-top: var(--space-sm);
}
.wc-midcta-sub {
  font-family: var(--font-body);
  font-size: var(--size-t5);
  line-height: var(--lh-t5);
  color: var(--text-muted);
  margin-top: var(--space-xs);
}

/* ── CTA urgency line ── */
.cta-urgency {
  font-family: var(--font-body);
  font-size: var(--size-t5);
  font-weight: 600;
  color: var(--brand600);
  letter-spacing: 0.01em;
  margin-top: var(--space-lg);
  text-align: center;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .urgency-banner {
    font-size: 12px;
    padding: 8px 16px;
    line-height: 1.5;
  }
  #nav {
    top: 52px;
    height: 56px;
  }
  .hero-content {
    padding-top: 164px; /* 52px banner + 56px nav + 56px breathing room */
    padding-bottom: 60px;
  }
}
