/* Stable mobile viewport: vertical page movement only, without accidental layout zoom. */
html {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  overscroll-behavior-x: none;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  overscroll-behavior-x: none;
  touch-action: pan-y pinch-zoom;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

main,
header,
footer,
nav,
section,
form,
.wrap,
.shell,
.card,
.panel {
  min-width: 0;
}

input,
textarea,
select,
button {
  max-width: 100%;
}

@media (max-width: 760px) {
  input,
  textarea,
  select {
    font-size: 16px;
  }
}
