/* Hello Child v5 — playful professional typography without changing the approved visual layout. */
:root {
  --font: "Nunito", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --display: "Fredoka", "Nunito", system-ui, sans-serif;
}

html { font-size: 16px; }
body { font-size: 1rem; line-height: 1.65; }
body, button, input, textarea, select { font-family: var(--font); }
h1, h2, h3, h4, h5, h6 { font-family: var(--display); font-weight: 600; letter-spacing: -.025em; }

/* Standard readable UI sizing while preserving the previous design proportions. */
p, li { font-size: 1rem; }
.ecosystem-copy > p,
.section-heading p,
.teen-copy > p,
.partner-copy > p,
.update-channel-card > p { font-size: 1rem; line-height: 1.7; }
.desktop-navigation > a,
.nav-group > button,
.header-link,
.account-link { font-size: .94rem; }
.button { font-size: .95rem; }
.button-compact { font-size: .9rem; }
.text-link { font-size: .94rem; }
.eyebrow { font-size: .78rem; }
.rail-link small { font-size: .69rem; }
.destination-eyebrow { font-size: .73rem; }
.destination-card p { font-size: .94rem; line-height: 1.58; }
.destination-action { font-size: .88rem; }
.stat-item small { font-size: .76rem; }
.event-card-copy small { font-size: .78rem; }
.event-card-copy p { font-size: .9rem; }
.news-row > div > span,
.news-row > div > small { font-size: .78rem; }
.news-row p { font-size: .9rem; }
.channel-list span { font-size: .9rem; }
.footer-brand-block p,
.footer-column a { font-size: .9rem; }
.footer-bottom { font-size: .8rem; }

/* Keep forms comfortably readable. */
.professional-form label > span,
.app-form label { font-size: .9rem; }
.professional-form input,
.professional-form textarea,
.professional-form select,
.app-form input,
.app-form textarea,
.app-form select,
.event-search-bar input,
.event-search-bar select { font-size: 1rem; }
.app-help { font-size: .875rem; }
.event-card-v4 p,
.event-card-meta,
.event-results-summary { font-size: .92rem; }

.empty-home-state {
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  background: #fff;
  text-align: center;
}
.empty-home-state p { margin-bottom: 16px; }

@media (max-width: 720px) {
  html { font-size: 16px; }
  .rail-link small { font-size: .68rem; }
  .ecosystem-copy > p,
  .section-heading p,
  .teen-copy > p,
  .partner-copy > p { font-size: 1rem; }
}
