
/* Local accessibility, performance and responsive safeguards */
html, body { max-width: 100%; overflow-x: hidden; }
html { font-family: Arial, Helvetica, sans-serif; }
body { overflow-wrap: anywhere; }
img, svg, video, canvas { max-width: 100%; height: auto; }
button, input, select, textarea { max-width: 100%; }
.non-clickable-contact { cursor: default !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
section { box-sizing: border-box; }
main > section { padding-top: clamp(3.5rem, 7vw, 7rem); padding-bottom: clamp(3.5rem, 7vw, 7rem); }
@media (max-width: 768px) {
  h1, h2, h3, .section-title, .section-subtitle { text-align: center !important; }
  h1 { font-size: clamp(2rem, 10vw, 3rem) !important; line-height: 1.1 !important; }
  h2 { font-size: clamp(1.65rem, 8vw, 2.35rem) !important; line-height: 1.15 !important; }
  h3 { font-size: clamp(1.25rem, 6vw, 1.7rem) !important; }
  main > section { padding-top: 3.75rem; padding-bottom: 3.75rem; }
  [class*="container"], [class*="wrapper"] { max-width: 100%; }
  [class*="grid"], [class*="cards"], [class*="columns"], .footer-content { grid-template-columns: 1fr !important; }
  .footer-column, .footer-contact-item, .footer-nav, .footer-list { align-items: center; text-align: center; }
  form { width: 100% !important; }
  .form-contact-container {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .form-card {
    width: 100%;
    padding: clamp(1.25rem, 6vw, 2rem) !important;
  }
  .contact-form-element,
  .form-grid,
  .form-group {
    min-width: 0;
  }
  .form-input,
  .form-select,
  .form-textarea {
    display: block;
    width: 100%;
    min-width: 0;
  }
  .form-checkbox-label {
    min-width: 0;
  }
  .kontakt-thq-form-checkbox-elm {
    flex: 0 0 18px;
  }
}
@media (max-width: 480px) {
  main > section { padding-left: 1rem !important; padding-right: 1rem !important; }
  button, [class*="button"], [class*="btn"] { white-space: normal; min-height: 44px; }
}
