html {
  overflow-x: hidden;
}

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

@media (max-width: 768px) {
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  header {
    max-width: 100%;
  }

  .navbar {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }

  .logo {
    min-width: 0;
    flex: 1 1 auto;
  }

  .logo img {
    display: block;
    width: min(62vw, 220px);
    height: auto;
    max-width: 100%;
  }

  .menu-toggle {
    display: block;
    margin-left: auto;
    flex: 0 0 auto;
  }

  .nav-links {
    display: none !important;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    gap: 0;
    margin: 10px 0 0;
    padding: 0;
    text-align: center;
  }

  .nav-links.active {
    display: flex !important;
  }

  .nav-links li,
  .nav-links li.dropdown {
    width: 100%;
  }

  .dropdown-menu {
    position: static;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    transform: none;
  }

  main,
  section,
  footer,
  .container,
  .topbar,
  .card,
  .pricing,
  .map-container {
    max-width: 100%;
    box-sizing: border-box;
  }

  section,
  main {
    overflow-wrap: anywhere;
  }

  table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

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

  iframe {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .navbar {
    padding: 8px 12px;
  }

  h1 {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}
