/* Phone-size fixes shared by every page. Loaded last so it overrides page styles. */
@media (max-width: 640px) {
  /* iPhones zoom into any field under 16px; keep forms steady. */
  input:not([type=radio]):not([type=checkbox]):not([type=range]), select, textarea {
    font-size: 16px !important;
  }

  /* Thumb-sized tap areas for menu, footer and back links (Apple's 44px guideline). */
  nav a, .nav-links a, .back-link, .wordmark, .foot a, .foot-links a, footer a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    min-width: 44px;
  }
  .btn-nav { min-height: 44px; display: inline-flex; align-items: center; }
  .reset-btn, .btn-reset { min-height: 44px; padding: 12px 16px !important; }
  .nav-links { gap: 0.25rem 1.25rem !important; }
  .foot-links { flex-wrap: wrap; gap: 0 1.25rem !important; }

  /* Links inside sentences: a taller hit area without changing the line. */
  p a, li a, .lg-check a, .lg-note a { padding: 13px 0; margin: -13px 0; }
  .lg-check { font-size: 13.5px; line-height: 1.6; }
  .lg-check input { width: 20px; height: 20px; margin-top: 1px; }

  /* Small all-caps labels: nothing under 12px. */
  .eyebrow, .card-label, .rlabel, .section-badge, .hiw-label, .pillar-tag, .brand, .fw,
  .progress-label, .progress-label span, .metric-label, .archetype-label, .score-label,
  .comparison-label, .value-gap-label, .step-label, .time-badge, .cta-note,
  .slider-labels span, .calc-note, footer, .field-hint,
  .step-num, .results-header .label, .chart-title, [id$="ChartFormula"], .legend-item, .insight-label {
    font-size: 12px !important;
  }
  label:not(.lg-option):not(.lg-check) { font-size: 12.5px !important; }

  /* Range sliders: easier to grab with a thumb. */
  input[type=range] { height: 32px; }

  /* Answer buttons on the qualifying form and assessments. */
  .lg-option span { padding: 13px 14px; font-size: 15px; }
  .lg-submit { padding: 17px; font-size: 16px; }
}
