@media (max-width: 1024px) {
  .header .nav {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    position: relative !important;
  }

  .header .logo {
    display: inline-flex !important;
    align-items: center !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    overflow: visible !important;
    white-space: nowrap !important;
    font-size: clamp(15px, 4.4vw, 19px) !important;
    letter-spacing: -0.35px !important;
  }

  .header .logo::before {
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
    margin-right: 7px !important;
  }

  .header .logo span {
    display: inline !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }

  .header .mobile-toggle {
    display: block !important;
    flex: 0 0 auto !important;
    min-width: 51px !important;
    box-sizing: border-box !important;
  }

  .header .menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    max-height: calc(100dvh - 164px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 16px 24px 84px !important;
  }

  .header .menu.active {
    display: flex !important;
  }

  .header .menu > li {
    width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    flex: 0 0 auto !important;
  }

  .header .menu > li > a,
  .header .menu .btn {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  .header .dropdown {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    padding: 0 0 8px 16px !important;
  }

  .header .dropdown a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
  }
}

@media (min-width: 1025px) and (max-width: 1500px) {
  .header .nav {
    width: 96% !important;
    max-width: none !important;
    min-width: 0 !important;
    gap: clamp(10px, 1.25vw, 20px) !important;
  }

  .header .logo {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    font-size: clamp(18px, 1.55vw, 24px) !important;
  }

  .header .logo::before {
    flex-basis: 34px !important;
    width: 34px !important;
    height: 34px !important;
    margin-right: 7px !important;
  }

  .header .menu {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    justify-content: flex-end !important;
    gap: clamp(8px, 0.9vw, 14px) !important;
  }

  .header .menu li {
    min-width: 0 !important;
    font-size: clamp(12px, 1vw, 14px) !important;
  }

  .header .menu .btn {
    min-width: 0 !important;
    padding: 12px clamp(14px, 1.3vw, 18px) !important;
    font-size: clamp(12px, 1vw, 14px) !important;
  }
}
