/* Shared responsive and low-cost rendering safeguards. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; overflow-x: clip; }
body { overflow-wrap: break-word; }
img, svg, video, canvas, iframe { max-width: 100%; }
img, video { height: auto; }
button, a, input, select, textarea { touch-action: manipulation; }

@media (max-width: 720px) {
  input, select, textarea { font-size: 16px; }
  [style*="background-attachment: fixed"] { background-attachment: scroll !important; }
}

@media (hover: none), (pointer: coarse) {
  a:hover, button:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
