@media (max-width: 900px) {
  .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-banner {
    min-height: 300px;
    padding: 90px 20px 50px;
  }

  .hero-banner h1 {
    font-size: 40px;
  }

  .hero-banner .hero-subtitle {
    font-size: 17px;
  }

  .brand-logo {
    height: 55px;
    max-height: 55px;
  }

  .tour-region-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .grid {
    grid-template-columns: 1fr;
  }

  .footer-inner {
    grid-template-columns: 1fr;
  }

  .hero-banner--home {
    min-height: 80vh !important;
    height: 80vh !important;
  }

  .hero-banner-video {
    object-position: center;
  }

  .hero-banner .hero-content {
    padding: 0 20px;
  }
  
  .hero-banner h1 {
    font-size: 32px;
    margin-bottom: 10px;
  }

  .brand-logo {
    height: 60px !important;
    max-height: 60px !important;
  }

  .main-header {
    padding: 15px 0 !important;
    background: rgba(0,0,0,0.5) !important;
    backdrop-filter: blur(10px);
  }

  .tour-region-grid {
    grid-template-columns: 1fr;
  }

  .tour-region-header h2 {
    font-size: 24px;
  }
}