/* MOBILE OVERRIDES */
@media (max-width: 767px) {
  /* Baseline — make rem smaller on phones */
  html { font-size: 16px !important; }

  /* Global text */
  body, .z-body, .zpe-body, .zsi-body, .site-body, .section, .container, .row, .col, .z-text, .znb-text, .zpe-text, .text-block {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  /* Headings */
  h1, .heading1, .z-heading-1 { font-size: 28px !important; line-height: 1.2 !important; }
  h2, .heading2, .z-heading-2 { font-size: 24px !important; line-height: 1.25 !important; }
  h3, .heading3, .z-heading-3 { font-size: 20px !important; line-height: 1.3 !important; }

  /* Paragraphs & list items */
  p, li { font-size: 16px !important; }

  /* Navigation & buttons */
  header nav a, .znav a, .menu a, .navbar a { font-size: 15px !important; padding: 10px 8px !important; }
  .btn, .button, .zbtn { font-size: 15px !important; padding: 10px 14px !important; }

  /* Cards / reusable blocks */
  .card p, .feature p, .text-muted { font-size: 15px !important; }
}
