/* =========================================================
   RESPONSIVE FIXES FOR HEAVEN HOLIDAYS
   ========================================================= */

/* =========================================================
   TABLET & SMALL LAPTOP FIXES (992px - 1250px)
   ========================================================= */

@media (min-width: 992px) and (max-width: 1250px) {
  /* Container adjustments */
  .container {
    max-width: 960px;
  }

  /* Navigation - Fix overflow on tight screens (992-1010px) */
  @media (min-width: 992px) and (max-width: 1010px) {
    /* Hide phone number completely to prevent overflow */
    .nav-right-info {
      display: none !important;
    }
    
    /* Reduce navigation link spacing */
    .navbar-nav {
      gap: 1rem !important;
    }
    
    /* Reduce nav link font size slightly */
    .nav-link {
      font-size: 0.9rem;
    }
    
    /* Reduce button padding */
    .navbar-nav .btn {
      padding: 8px 20px !important;
      font-size: 0.9rem;
    }
  }

  /* Hero Section */
  .hero-title {
    font-size: 3.5rem;
  }
  
  .hero-description {
    font-size: 16px;
  }

  /* Section Headings */
  .section-main-heading {
    font-size: 2.2rem;
  }

  /* Navigation */
  .nav-link {
    font-size: 0.95rem;
  }

  /* Reduce padding on sections */
  .section-padding {
    padding: 70px 0;
  }

  /* Tour Cards - Better fit */
  .tour-card-body h4 {
    font-size: 1.15rem;
  }

  /* Planning Cards - Adjust grid */
  .planning-card {
    padding: 1.2rem !important;
  }

  .planning-card h5 {
    font-size: 1.05rem;
  }

  /* Airport Service Cards */
  .airport-service-showcase {
    padding: 28px;
  }

  .showcase-title {
    font-size: 1.8rem;
  }

  /* Destinations Grid */
  .destinations-grid {
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  }

  /* Feature Items */
  .feature-item {
    padding: 16px 18px;
  }

  /* Buttons - Slightly smaller */
  .btn {
    font-size: 15px;
  }

  /* Reduce decorative circle sizes and reposition */
  .twm-img-bg-circle1-wrap {
    width: 500px;
    height: 500px;
    top: 15%;
    right: -100px;
  }

  .twm-img-bg-circle2-wrap {
    width: 400px;
    height: 400px;
    top: 45%;
    right: -80px;
  }

  .twm-img-bg-circle3-wrap {
    width: 300px;
    height: 300px;
    top: 70%;
    right: -60px;
  }

  /* Butterfly positioning for tablet */
  .deco-butterfly {
    width: 110px;
    top: 25%;
    right: 30%;
  }

  /* Adjust overlay margins */
  .hero-overlay {
    left: 30px;
    right: 30px;
  }

  .trans-nav,
  .trans-nav.scrolled {
    margin-left: 30px;
    margin-right: 30px;
  }

  /* Journey Section */
  .journey-badge {
    font-size: 0.9rem;
    padding: 10px 16px !important;
  }

  /* Highlight Cards */
  .highlight-card {
    padding: 1.8rem;
  }

  .highlight-icon {
    width: 55px;
    height: 55px;
  }

  /* CTA Section */
  .cta-description {
    font-size: 0.95rem;
  }

  /* Location Cards */
  .pro-location-card {
    padding: 1.2rem;
  }

  .location-title {
    font-size: 1.15rem;
  }

  /* Testimonial Cards */
  .testimonial-card {
    padding: 1.5rem;
  }

  /* Image Wrapper */
  .main-image-wrapper {
    padding: 0.5rem !important;
  }

  /* Expert Box */
  .expert-box h5 {
    font-size: 1.05rem;
  }

  /* Icon Boxes */
  .icon-box {
    width: 55px;
    height: 55px;
  }

  /* Badge Sizes */
  .section-badge {
    font-size: 0.85rem;
    padding: 7px 15px;
  }

  /* Owl Carousel Navigation */
  .owl-nav button.owl-prev,
  .owl-nav button.owl-next {
    width: 45px;
    height: 45px;
  }

  /* Footer Logo */
  .footer-logo {
    max-height: 90px;
  }

  /* Reduce row gaps slightly */
  .row.g-4 {
    --bs-gutter-x: 1.2rem;
  }

  .row.g-5 {
    --bs-gutter-x: 1.5rem;
  }
}

/* Logo Responsive */
@media (max-width: 991px) {
  .logo-img {
    height: 60px;
  }
}

@media (max-width: 576px) {
  .logo-img {
    height: 50px;
  }
  .logo-text-top {
    font-size: 20px;
  }
  .logo-text-bottom {
    font-size: 12px;
  }
}

/* Decorative Elements Responsive Positioning */
@media (max-width: 991px) {
  /* Hide circles on tablet and below for cleaner look */
  .twm-img-bg-circle-area {
    display: none;
  }
  
  /* Keep butterfly visible but reposition */
  .deco-butterfly {
    width: 90px;
    top: 20%;
    right: 10%;
    z-index: 6;
  }
  
  /* Hide chameleon on tablet and below */
  .deco-chameleon {
    display: none;
  }
}

@media (max-width: 768px) {
  /* Smaller butterfly on mobile landscape */
  .deco-butterfly {
    width: 70px;
    top: 15%;
    right: 8%;
  }
}

@media (max-width: 576px) {
  /* Hide butterfly on small mobile for cleaner hero */
  .deco-butterfly {
    display: none;
  }
}

/* Tour Cards Responsive */
@media (max-width: 991px) {
  .tour-card {
    margin-bottom: 20px;
  }
}

@media (max-width: 576px) {
  .tour-card-body h4 {
    font-size: 1.1rem;
  }
  .tour-card-body p {
    font-size: 0.9rem;
  }
}

/* About Page - Planning Cards */
@media (max-width: 991px) {
  .planning-card {
    margin-bottom: 15px;
  }
}

@media (max-width: 576px) {
  .planning-card h5 {
    font-size: 1rem;
  }
  .planning-card .small {
    font-size: 0.85rem;
  }
}

/* Journey Section Responsive */
@media (max-width: 768px) {
  .journey-badge {
    font-size: 0.85rem;
    padding: 8px 12px !important;
  }
  .journey-wrapper .row {
    justify-content: center;
  }
}

/* Buttons Responsive */
@media (max-width: 576px) {
  .btn {
    font-size: 14px;
    padding: 10px 20px;
  }
  .btn-lg {
    font-size: 15px;
    padding: 12px 24px;
  }
}

/* Container Padding on Mobile */
@media (max-width: 576px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* Slider Dots Responsive */
@media (max-width: 576px) {
  .slider-dots {
    margin-top: 2rem !important;
  }
  .dot {
    width: 10px;
    height: 10px;
  }
}

/* Feature Items Responsive */
@media (max-width: 768px) {
  .feature-item {
    margin-bottom: 15px;
  }
}

/* Destinations Grid Responsive */
@media (max-width: 768px) {
  .destinations-grid {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 10px;
  }
  .dest-chip {
    font-size: 0.85rem;
    padding: 10px 12px;
  }
}

/* Airport Service Cards */
@media (max-width: 991px) {
  .airport-service-showcase {
    padding: 24px;
  }
}

@media (max-width: 768px) {
  .airport-service-showcase {
    padding: 20px;
  }
  .showcase-title {
    font-size: 1.6rem;
  }
}

@media (max-width: 576px) {
  .airport-service-showcase {
    padding: 16px;
  }
  .showcase-title {
    font-size: 1.4rem;
  }
  .locations-matrix {
    grid-template-columns: 1fr;
  }
}

/* Pricing Cards Responsive */
@media (max-width: 768px) {
  .highlight-card {
    margin-bottom: 20px;
  }
}

/* Contact Form Responsive */
@media (max-width: 576px) {
  .form-control,
  .form-select {
    font-size: 14px;
  }
}

/* Testimonial Cards */
@media (max-width: 991px) {
  .testimonial-card {
    margin-bottom: 20px;
  }
}

/* Image Responsive */
@media (max-width: 768px) {
  .img-hover-creative,
  .main-image-wrapper {
    margin-bottom: 30px;
  }
}

/* Expert Box Responsive */
@media (max-width: 576px) {
  .expert-box h5 {
    font-size: 1rem;
  }
  .expert-box small {
    font-size: 0.8rem;
  }
}

/* Badge Responsive */
@media (max-width: 576px) {
  .section-badge,
  .hero-badge {
    font-size: 0.75rem;
    padding: 8px 14px;
  }
}

/* Text Alignment on Mobile */
@media (max-width: 768px) {
  .text-center-mobile {
    text-align: center !important;
  }
}

/* Spacing Utilities for Mobile */
@media (max-width: 768px) {
  .mb-mobile-4 {
    margin-bottom: 1.5rem !important;
  }
  .mt-mobile-4 {
    margin-top: 1.5rem !important;
  }
}

/* Owl Carousel Navigation Responsive */
@media (max-width: 768px) {
  .owl-nav {
    top: -60px;
  }
  .owl-nav button.owl-prev,
  .owl-nav button.owl-next {
    width: 40px;
    height: 40px;
    font-size: 16px !important;
  }
}

/* Professional Pickup Section */
@media (max-width: 768px) {
  .pro-location-card {
    margin-bottom: 15px;
  }
  .location-title {
    font-size: 1.1rem;
  }
}

/* Custom Package Highlight */
@media (max-width: 768px) {
  .highlight-icon {
    width: 50px;
    height: 50px;
    font-size: 1.3rem;
  }
  .highlight-text {
    font-size: 0.95rem;
  }
}

/* CTA Section Responsive */
@media (max-width: 768px) {
  .cta-content-area {
    text-align: center;
    margin-top: 30px;
  }
  .cta-action-buttons {
    justify-content: center;
  }
}

/* Footer Responsive - Already handled in main CSS */

/* Sticky Icons - Already handled in main CSS */

/* Tour Packages Page - Service Cards */
@media (max-width: 768px) {
  .service-card {
    margin-bottom: 20px;
  }
}

/* FAQ Section */
@media (max-width: 768px) {
  .accordion-button {
    font-size: 0.95rem;
    padding: 12px 15px;
  }
  .accordion-body {
    font-size: 0.9rem;
  }
}

/* Glassmorphism Cards on Mobile */
@media (max-width: 768px) {
  .glassmorphism-card {
    backdrop-filter: blur(8px);
  }
}

/* Row Gaps on Mobile */
@media (max-width: 768px) {
  .row.g-4 {
    --bs-gutter-y: 2rem;
  }
  .row.g-5 {
    --bs-gutter-y: 2.5rem;
  }
}
