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

html, body {
  max-width: 100%;
  overflow-x: hidden;
}

@media (max-width: 1023px) {
  [data-site-header] {
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }

  [data-site-header] .header-inner {
    height: 4.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }

  [data-site-header] .header-logo {
    flex: 1 1 auto;
    min-width: 0;
    margin-inline-end: 0;
    overflow: hidden;
  }

  [data-site-header] .header-logo img {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
  }

  [data-site-header] .header-brand-name {
    font-size: 1.05rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  [data-site-header] .header-nav {
    display: none !important;
  }

  [data-site-header] .header-actions {
    flex: 0 0 auto;
    gap: 0.4rem;
  }

  [data-site-header] .header-lang {
    padding: 0.4rem 0.65rem;
  }

  [data-site-header] [data-nav-toggle] {
    width: 2.5rem;
    height: 2.5rem;
  }

  [data-site-header].is-transparent {
    background: rgba(11, 11, 11, 0.55);
    backdrop-filter: blur(12px);
  }

  [data-search-dropdown] {
    width: min(100vw - 2.5rem, 24rem) !important;
    left: 0;
    right: 0;
  }

  .scroll-bounce {
    display: none;
  }
}

@media (max-width: 639px) {
  .px-8 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }

  .text-4xl {
    font-size: 1.6rem !important;
    line-height: 1.25 !important;
  }

  [data-site-header] .header-brand-name {
    display: none;
  }

  [data-hero] .hero-badge,
  [data-hero] .inline-flex.items-center.gap-2.px-4 {
    max-width: calc(100vw - 2.5rem);
  }

  [data-hero-search] {
    padding: 0.85rem 1rem !important;
    gap: 0.75rem !important;
    border-radius: 1.25rem !important;
  }

  [data-hero-search] .w-12 {
    width: 2.5rem;
    height: 2.5rem;
  }

  [data-hero-search] .w-10 {
    display: none;
  }

  [data-hero-search] .text-lg {
    font-size: 0.95rem !important;
  }

  [data-hero-cities] {
    gap: 0.45rem !important;
    padding-inline: 0.25rem;
  }

  [data-hero-cities] a {
    padding: 0.4rem 0.75rem;
    font-size: 0.75rem;
  }

  [data-hero-stats] {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 0.85rem 0.75rem !important;
    width: 100%;
    max-width: 22rem;
    margin-top: 2rem !important;
  }

  [data-hero-stats] > div {
    min-width: 0;
  }

  [data-hero-stats] .text-2xl {
    font-size: 1.25rem !important;
  }

  [data-section-head] {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }

  [data-login] h1 {
    font-size: 1.6rem !important;
  }
}

@media (max-width: 400px) {
  [data-site-header] .header-login {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border-radius: 9999px;
  }

  [data-site-header] .header-login-text {
    display: none;
  }

  [data-site-header] .header-login-icon {
    display: inline-block;
  }

  [data-site-header] .header-lang {
    padding: 0.4rem 0.55rem;
    font-size: 0.65rem;
  }
}
