/*
   LehConnect Premium Travel Booking Responsive CSS
   Contains all media queries for responsive layouts.
*/

/* Ultra-wide Screens (1920px and above) */
@media (min-width: 1920px) {
  .container {
    max-width: 1720px !important;
  }
}

/* MakeMyTrip Grid & Card Responsiveness */
@media (max-width: 1200px) {
  .leh-tab-nav-bar {
    max-width: 100%;
    border-radius: 10px;
    padding: 8px 10px;
  }
  .leh-tab-nav-bar-link {
    font-size: 0.72rem;
    padding: 4px 6px;
  }
  .leh-tab-icon-circle {
    width: 36px;
    height: 36px;
    font-size: 1.1rem;
  }
  .leh-input-grid {
    grid-template-columns: 1.1fr 1.1fr 1fr 1fr 1fr;
  }
}

/* Tablets & Small Laptops (992px) */
@media (max-width: 992px) {
  .leh-hero-section {
    padding: 3rem 0 8rem 0;
  }
  .leh-booking-container {
    margin-top: -100px;
  }
  .leh-input-grid {
    grid-template-columns: 1fr 1fr !important;
    border-radius: 8px;
  }
  .leh-input-card-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  /* Hide swappers on mobile/tablet */
  .leh-swap-btn, .leh-swap-btn-card {
    display: none !important;
  }
  .leh-input-col {
    border-right: none !important;
    border-bottom: 1px solid var(--gray-200);
    padding: 1rem 1.25rem !important;
  }
  .leh-input-col:nth-child(even) {
    border-left: 1px solid var(--gray-200);
  }
  .leh-input-col:last-child {
    border-bottom: none;
  }
  .leh-why-book {
    grid-template-columns: 1fr 1fr;
  }
}

/* Tablets (768px) */
@media (max-width: 768px) {
  .leh-hero-title {
    font-size: 1.8rem;
  }
  .leh-hero-subtitle {
    font-size: 0.95rem;
  }
  .leh-why-book {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .gallery-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 150px 150px 150px;
  }
  .gallery-item-1 {
    grid-column: 1 / 3;
    grid-row: 1 / 2;
  }
  .dashboard-layout {
    flex-direction: column;
  }
  .dashboard-sidebar {
    width: 100%;
  }
}

/* Mobiles (576px) */
@media (max-width: 576px) {
  .leh-input-grid {
    grid-template-columns: 1fr !important;
  }
  .leh-input-card-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .leh-input-card {
    min-height: 90px !important;
    padding: 0.75rem 1rem !important;
  }
  .leh-input-col {
    border-left: none !important;
    border-bottom: 1px solid var(--gray-200) !important;
  }
  .leh-input-col:last-child {
    border-bottom: none !important;
  }
  .leh-booking-card {
    padding: 2rem 1.25rem 3.5rem 1.25rem !important;
  }
  .leh-tab-nav-bar {
    top: -15px;
    border-radius: 8px;
    padding: 6px;
  }
  .leh-tab-nav-bar-link {
    font-size: 0.65rem;
    padding: 2px;
  }
  .leh-tab-icon-circle {
    width: 32px;
    height: 32px;
    font-size: 1rem;
    margin-bottom: 3px;
  }
  .leh-search-btn-floating {
    width: 90% !important;
    padding: 0.85rem 1.5rem !important;
    font-size: 1.1rem;
  }
  .leh-undercard-row {
    justify-content: center !important;
    gap: 0.5rem;
  }
  .leh-toggle-pill {
    padding: 6px 14px;
    font-size: 0.78rem;
  }
  .leh-offers-container {
    padding: 1rem !important;
    margin-bottom: 2rem !important;
  }
  .leh-offers-carousel-item {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  .leh-offer-card {
    height: auto !important;
    min-height: 140px !important;
  }
}

/* About Page Timeline Responsiveness */
@media (max-width: 768px) {
  .leh-about-timeline::after {
    left: 31px !important;
  }
  .leh-about-timeline-item {
    width: 100% !important;
    padding-left: 70px !important;
    padding-right: 25px !important;
    text-align: left !important;
  }
  .leh-about-timeline-item::after {
    left: 23px !important;
  }
  .leh-about-timeline-item.right {
    left: 0% !important;
  }
  .leh-about-timeline-item.left {
    left: 0% !important;
    text-align: left !important;
  }
}
