
/* Responsive and accessibility safeguards; original desktop styles remain authoritative. */
*, *::before, *::after { box-sizing: border-box; }
html { max-width: 100%; scroll-behavior: smooth; }
body { max-width: 100%; }
img, video, iframe { max-width: 100%; }
img { height: auto; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 2px solid currentColor; outline-offset: 3px;
}
@media (max-width: 767px) {
  h1 { font-size: clamp(2rem, 8vw, 3.2rem); overflow-wrap: anywhere; }
  h2 { overflow-wrap: anywhere; }
  p, li, a { overflow-wrap: anywhere; }
  .kt-footer-nav { display:flex; flex-wrap:wrap; gap: .75rem 1rem; }
  table { display:block; max-width:100%; overflow-x:auto; }
  input, textarea, select { max-width:100%; }
}
