/* Challenge-specific additions to the existing Balance Learn visual layout. */
:root { color-scheme: light; }
.challenge-learn-page { padding-bottom: max(24px, env(safe-area-inset-bottom, 0px)); }
.challenge-learn-page .wrap { padding-left: env(safe-area-inset-left, 0px); padding-right: env(safe-area-inset-right, 0px); }
.challenge-learn-page section[id] { scroll-margin-top: 125px; }
.challenge-consult-note { margin-top: 16px; color: var(--muted); font-size: .85rem; line-height: 1.6; max-width: 480px; }
.challenge-kicker { font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; color: var(--leaf); }
.challenge-consult h3 { font: 800 2rem/1.15 Outfit, sans-serif; margin: 16px 0; }
.challenge-consult .learn-close-offer > p { line-height: 1.65; }
.challenge-consult .cta { margin-top: 12px; }
.challenge-learn-page .plan-meal-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.challenge-rhythm { margin-top: 24px; padding: 22px; border-left: 3px solid var(--leaf); background: var(--paper); border-radius: 0 14px 14px 0; }
.challenge-rhythm p { margin: 0; line-height: 1.65; }
.challenge-rhythm p + p { margin-top: 12px; }
@media (max-width: 600px) {
  .challenge-learn-page .hero h1 { font-size: clamp(2.5rem, 11vw, 3.6rem); }
  .challenge-learn-page .hero .cta { white-space: normal; text-align: center; }
}
