/* Phone readability floor. Loaded last on every page so it overrides each
   component's desktop size: no running text under 13px, labels under 12px,
   and every tap target at least 44px tall. */
@media (max-width: 900px) {
  body { line-height: 1.5; }
  .hero__sub, .tile p, .step p, .enquiry__lede, .capture__streams { line-height: 1.5; }

  .label, .chip, .capture__kind, .flow__label, .stats dt, .case-card__figs dt,
  .shot__state, .shot__action, .player__action, .player__time, .step__n,
  .capture__toggle, .footer__base { font-size: 13px; }
  .case__kind, .explorer__readout { font-size: 13px; }
  .flow__flag, .player__seg, .segbar li, .episode__axis { font-size: 12px; }
  .rowfilter button, .linklike { min-height: 44px; font-size: 14px; }
  .shot figcaption, .hint, .field > .hint, .delivery figcaption, .delivery__code { font-size: 14px; }
  .tabs [role='tab'], .switch__tabs button { font-size: 14px; }
  .switch__tabs button { line-height: 1.25; }
  .btn__arrow { width: 18px; height: 18px; font-size: 11px; }

  .brand, .switch__tabs button { min-height: 44px; }
  .footer__cols a { min-height: 44px; }
  .footer__cols ul { gap: 0; }
  .capture__toggle { min-height: 44px; }
}
