/* ═══════════════════════════════════════════════════════════════
   Start Here — Page-specific styles
   ═══════════════════════════════════════════════════════════════ */

/* ── Hero spacing: ensure content clears the sticky top nav ─── */
.sh-hero {
  padding-top: 4.5rem;
  padding-bottom: 3.5rem;
}

/* ── Main content wrapper: safe bottom padding for mobile ───── */
.sh-main {
  max-width: 56rem;
  margin: 0 auto;
  padding: 0 1.5rem;
  /* Prevents content from being hidden by mobile browser chrome */
  padding-bottom: max(2rem, env(safe-area-inset-bottom));
}

/* ── For-you card: never clip behind anything ────────────────── */
.sh-for-you-card {
  scroll-margin-top: 5rem;
}

/* ── Note section: give breathing room above the newsletter ──── */
.sh-note-section {
  padding-bottom: 3rem;
}

/* ── Wander cards: consistent min-height so the grid feels balanced */
.wander-card {
  min-height: 160px;
}

/* ── Step cards: add hover lift + glow (not already on step-card) */
.step-card {
  transition: transform .25s, box-shadow .25s, border-color .25s;
}
.step-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px var(--glow-peach), var(--shadow);
  border-color: rgba(200, 112, 58, .35);
}

/* ── Wander card hover: stronger lift signal ─────────────────── */
.wander-card {
  transition: transform .25s, box-shadow .25s, border-color .25s, background .2s;
}
.wander-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px var(--glow-peach), var(--shadow);
  border-color: rgba(200, 112, 58, .4);
}

/* ── Primary button: make sure contrast is strong ───────────── */
.sh-hero .btn-primary {
  background: var(--primary);
  color: #fff;
  font-weight: 600;
  padding: .7rem 1.75rem;
  font-size: .9375rem;
  box-shadow: 0 4px 16px rgba(200, 112, 58, .35);
  transition: background .2s, box-shadow .2s, transform .15s;
}
.sh-hero .btn-primary:hover {
  background: var(--primary-hov);
  box-shadow: 0 6px 22px rgba(200, 112, 58, .45);
  transform: translateY(-1px);
  opacity: 1;
}

/* ── Outline button hover ────────────────────────────────────── */
.sh-hero .btn-outline {
  transition: background .2s, color .2s, border-color .2s, transform .15s;
}
.sh-hero .btn-outline:hover {
  transform: translateY(-1px);
}

/* ── Responsive: mobile breathing room ──────────────────────── */
@media (max-width: 639px) {
  .sh-hero {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .sh-main {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .sh-for-you-card {
    padding: 1.5rem !important;
  }
}

/* ── Dark theme overrides ────────────────────────────────────── */
[data-theme="dark"] .step-card:hover {
  border-color: rgba(208, 120, 67, .4);
}

[data-theme="dark"] .sh-hero .btn-primary {
  background: var(--primary);
  box-shadow: 0 4px 20px rgba(208, 120, 67, .4);
}
[data-theme="dark"] .sh-hero .btn-primary:hover {
  background: var(--primary-hov);
  box-shadow: 0 6px 28px rgba(208, 120, 67, .5);
}
