/* Responsive overrides for the inline-styled pages. Breakpoints: 1024 / 760 px. */
html { scroll-behavior: smooth; }
header nav a[aria-current="page"] { color: #1F5EFF !important; font-weight: 700 !important; }

/* Mobile nav toggle (injected by site.js) */
.mf-menu-btn { display: none; width: 44px; height: 44px; border: 1.5px solid #D6E0F2; border-radius: 10px; background: #fff; align-items: center; justify-content: center; cursor: pointer; }

@media (max-width: 1024px) {
  h1 { font-size: 44px !important; }
  h2 { font-size: 34px !important; }
  [style*="grid-template-columns:repeat(4"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  [style*="grid-template-columns:repeat(3"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  h1 { font-size: 36px !important; line-height: 1.1 !important; }
  h2 { font-size: 28px !important; }
  section > div, footer > div, header > div { padding-left: 16px !important; padding-right: 16px !important; }
  section > div { padding-top: 56px !important; padding-bottom: 56px !important; }
  [style*="grid-template-columns:repeat("] { grid-template-columns: 1fr !important; }
  .mf-menu-btn { display: inline-flex; }
  header nav { display: none !important; width: 100%; flex-direction: column; gap: 4px !important; padding: 8px 0 16px; }
  header nav a { padding: 12px 4px; display: block; font-size: 17px !important; }
  header.mf-open nav { display: flex !important; }
  header > div { height: auto !important; min-height: 64px; padding-top: 10px !important; padding-bottom: 10px !important; }
  header > div > div:last-child a:first-child { display: none !important; } /* hide secondary nav CTA on phones */
  table { font-size: 14px !important; }
}

/* Form feedback */
.mf-note { padding: 14px 16px; border-radius: 10px; font-size: 14px; font-weight: 600; }
.mf-note.ok { background: #E6F6EE; color: #0F7A48; }
.mf-note.err { background: #FDECEC; color: #A32020; }
button[type="submit"][disabled] { opacity: .6; cursor: progress; }
