/* Keep focused controls clear of the fixed mobile navigation bar. */
html.has-gaja-global-nav,
body.has-gaja-global-nav {
  scroll-padding-bottom: calc(90px + env(safe-area-inset-bottom));
}

@media (max-width: 720px) {
  body { color: #111c18; line-height: 1.55; }
  p, li, label, input, select, textarea, button { font-size: 16px; }
  small, .muted, .eyebrow, .helper, .caption { font-size: 13px; color: #293a34; }
  h1 { font-size: clamp(28px, 8vw, 38px); line-height: 1.2; }
  h2 { font-size: clamp(22px, 6vw, 30px); line-height: 1.25; }
  h3 { font-size: 20px; line-height: 1.3; }
  button, a.button, input[type="submit"] { min-height: 46px; }
  input, select, textarea { min-height: 46px; color: #111c18; border-color: #81978e; }
  :focus-visible { outline: 3px solid #e09b00; outline-offset: 2px; }
  .has-gaja-global-nav input:focus,
  .has-gaja-global-nav select:focus,
  .has-gaja-global-nav textarea:focus {
    scroll-margin-bottom: calc(90px + env(safe-area-inset-bottom));
  }

  .course-quick-list,
  .filters {
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
  }
}
