/* ==============================================
   SEA TRIPS PAGE RESPONSIVE FIXES
   ============================================== */

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
  /* Hide legacy header on mobile - use modern header */
  .legacy-header {
    display: none !important;
  }
  
  body {
    padding-top: 0 !important; /* Remove padding since using modern header */
  }
  
  /* Hero Section - Better mobile video */
  .hero {
    height: 100vh !important;
    min-height: 100vh !important;
  }
  
  .hero video {
    min-height: 100vh !important;
    height: 100vh !important;
  }
  
  .hero h1 {
    font-size: clamp(28px, 8vw, 48px) !important;
  }
  
  .hero p {
    font-size: clamp(14px, 4vw, 18px) !important;
  }
  
  /* Section Padding - Reduce for mobile */
  section {
    padding: 60px 20px !important;
    margin: 0 0 30px !important;
  }
  
  /* Selector Section - Mobile layout */
  .selector-section {
    padding: 30px 20px !important;
    margin: 20px 15px !important;
  }
  
  .selector-section h3 {
    font-size: 20px !important;
    margin-bottom: 20px !important;
  }
  
  .selector-grid {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }
  
  .selector-grid select {
    padding: 15px !important;
    font-size: 16px !important; /* Prevent zoom on iOS */
  }
  
  /* Tours Grid - Mobile optimization */
  .tours {
    grid-template-columns: 1fr !important;
    gap: 25px !important;
  }
  
  .tour {
    border-radius: 15px !important;
  }
  
  .tour img {
    height: 200px !important;
  }
  
  .tour-content {
    padding: 25px 20px !important;
  }
  
  .tour h3 {
    font-size: 18px !important;
  }
  
  .tour .city {
    font-size: 11px !important;
  }
  
  .tour p {
    font-size: 14px !important;
  }
  
  .tour .price {
    font-size: 20px !important;
  }
  
  .tour-badges {
    gap: 6px !important;
  }
  
  .tour-badge {
    font-size: 10px !important;
    padding: 4px 8px !important;
  }
  
  .tour-cta {
    padding: 12px 20px !important;
    font-size: 14px !important;
  }
  
  /* Section Title - Mobile */
  .section-title {
    font-size: 28px !important;
    margin-bottom: 40px !important;
  }
  
  /* CTA Section - Mobile */
  .cta p {
    font-size: 16px !important;
    margin: 20px auto 30px !important;
  }
  
  .main-btn {
    padding: 14px 25px !important;
    font-size: 14px !important;
  }
  
  /* Legacy Footer - Mobile */
  .legacy-footer {
    padding: 40px 15px !important;
  }
  
  .legacy-footer .socials a {
    font-size: 24px !important;
    margin: 0 12px !important;
  }
}

/* Tablet (769px - 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
  /* Hide legacy header on tablet */
  .legacy-header {
    display: none !important;
  }
  
  body {
    padding-top: 0 !important;
  }
  
  /* Section Padding - Tablet adjustments */
  section {
    padding: 80px 40px !important;
  }
  
  /* Selector Section - Tablet layout */
  .selector-section {
    padding: 40px 30px !important;
    margin: 0 auto 30px !important;
  }
  
  .selector-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
  }
  
  /* Tours Grid - Tablet optimization */
  .tours {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 30px !important;
  }
  
  .tour img {
    height: 220px !important;
  }
  
  .tour-content {
    padding: 30px 25px !important;
  }
  
  .tour h3 {
    font-size: 20px !important;
  }
  
  /* Section Title - Tablet */
  .section-title {
    font-size: 32px !important;
  }
}

/* Small Mobile (max-width: 480px) */
@media (max-width: 480px) {
  /* Even smaller adjustments */
  .selector-section {
    margin: 20px 10px !important;
    padding: 25px 15px !important;
  }
  
  .tours {
    gap: 20px !important;
  }
  
  .tour img {
    height: 180px !important;
  }
  
  .tour-content {
    padding: 20px 15px !important;
  }
  
  .tour h3 {
    font-size: 16px !important;
  }
  
  .tour p {
    font-size: 13px !important;
  }
  
  .tour .price {
    font-size: 18px !important;
  }
  
  .section-title {
    font-size: 24px !important;
  }
  
  .main-btn {
    padding: 12px 20px !important;
    font-size: 13px !important;
  }
}

/* Large Desktop (min-width: 1200px) */
@media (min-width: 1200px) {
  /* Ensure proper spacing on large screens */
  .selector-section {
    max-width: 1000px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  .tours {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Prevent horizontal overflow */
@media (max-width: 768px) {
  section,
  .selector-section,
  .tours,
  .tour {
    overflow-x: hidden !important;
  }
  
  .tour img {
    max-width: 100% !important;
  }
  
  .selector-grid select {
    max-width: 100% !important;
  }
}
