/**
 * Import Design Variables
 * This file contains all design tokens (spacing, colors, typography, etc.)
 */

/* Search form styles are linked directly from general/index.php to avoid CSS @import chains. */

/* ============================================
   Home Page Styles - Extracted from theme_style_backup_before_clean.css
   ============================================ */

/* Header and Logo Styles */
.logo {
  background-size: cover;
  object-fit: cover;
  width: 17vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  bottom: var(--spacing-1);
}
.container{padding:0}
.logo img {
  transition: var(--transition-all);
}

/* Top Margin Section */
.fromtopmargin {
  float: left;
  width: var(--width-full);
}

/* Search Area — in document flow so hero banner grows with the form */
.srchinarea {
  padding-bottom: var(--spacing-0);
  padding-top: var(--spacing-0);
  position: relative;
  top: 0;
  width: 100%;
}

/* Caption Group */
.captngrp {
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-5);
  text-align: left;
  margin-top: var(--spacing-2);
  max-width: var(--width-full);
}

/* Big Caption Styles */
#big1.bigcaption {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
  margin-bottom: var(--spacing-2);
}

.bigcaption {
  color: var(--color-white);
  display: block;
  font-size: var(--font-size-5xl);
  overflow: hidden;
  text-align: center;
  letter-spacing: var(--letter-spacing-normal);
  font-weight: var(--font-weight-normal);
}

.bigCaptionMain {
  font-family: var(--font-family-heading);
  font-size: var(--font-size-6xl);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-none);
  color: #D4AF37; /* Custom color - keep as is */
  margin-top: var(--spacing-0);
}

/* Small Caption Styles */
#desc.smalcaptn {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  line-height: var(--line-height-normal);
  margin: var(--spacing-0) auto;
  font-family: var(--font-family-base);
  margin-top: var(--spacing-5);
}

.smalcaptn {
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-white);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-normal);
  overflow: hidden;
  text-align: left;
}

.smalcaptn2 {
  font-size: var(--font-size-4xl);
  color: var(--color-white);
  text-align: center;
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
}

.hero-caption-single {
  white-space: nowrap;
}

.hero-caption-single .hero-caption-text {
  display: inline-block;
}

@media (max-width: 767px) {
  .hero-caption-single {
    white-space: normal;
    font-size: clamp(1.125rem, 5vw, 1.5rem);
  }
}

/* Search Form Container */
.secndblak {margin-top: 15px;
    float: left;
    width: var(--width-full);
    border-radius: 10px;
    position: relative;
    border: var(--border-width-none);
    background: #fff;
    padding: 0 10px;
}

.commonNavTabCls{

    margin: var(--spacing-0) auto;
    justify-content: start;
    display: flex;
}

/* Hide mobile dropdown on desktop */
.mobile-tab-dropdown {
    display: none;
}

/* Tab Navigation */
.nav-tabs.tabstab {display: flex !important;
  position: relative;
  border: none;
  background: none;
  padding: var(--spacing-2) var(--spacing-0);
  border-radius: var(--border-radius-md);
  gap: var(--spacing-2);
  z-index: 9;
}

.nav-tabs.tabstab>li {
  margin: var(--spacing-0) var(--spacing-0);
}

.nav-tabs.tabstab>li:first-child a {
  border-radius: 50px;
}

.nav-tabs.tabstab>li:last-child a {
  border-radius: 50px;
}

.nav-tabs.tabstab>li>a {
  float: left;
  border-radius: 50px;
  background: #fff;
  border: var(--border-width-none);
  color: var(--color-text-primary);
  font-size: 14px;
  text-decoration: none;
  margin: var(--spacing-0);
  font-weight: var(--font-weight-semibold);
  padding: var(--spacing-1) var(--spacing-3);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-1);
  cursor: pointer;
}

.nav-tabs.tabstab>li>a label{
  cursor: pointer;
}

.nav-tabs.tabstab li a.active,
.nav-tabs.tabstab>li>a:focus {
  background:#E31D3B!important;
  background-size: 200% 200% !important;
  border-radius: 50px;
  outline: var(--border-width-none) !important;
  border-bottom: var(--border-width-none);
  color: var(--color-white) !important;
  /* box-shadow: 0 4px 12px var(--shadow-blue-default) !important; */
  transition: all 0.3s ease;
}

.nav-tabs.tabstab li a.active:hover,
.nav-tabs.tabstab>li>a:focus:hover {
  background-position: right center !important;
  box-shadow: 0 6px 20px var(--shadow-blue-hover) !important;
  transform: translateY(-1px);
}


.nav-tabs.tabstab li.active span {
  border: var(--border-width-none);
}

.nav-tabs.tabstab>li span {
  transition: var(--transition-all);
  position: relative;
}



/* ============================================
   MOBILE APP-LIKE RESPONSIVE STYLES
   ============================================ */

/* Mobile: 767px and below */
@media (max-width: 767px) {

  .hero-slider-wrapper .hero-slider, .hero-slider-wrapper .hero-slide, .hero-slider-wrapper .hero-slide-bg, .hero-slider-wrapper .hero-overlay {
        height: 100%;
        min-height: 100%;
        background-size: cover;
    }
  .home-feature-bar {
    display: block !important;
  }

  /* Search Form Container - Mobile App Style */
  .searcharea {
    padding: var(--spacing-4) var(--spacing-3);
  }

  .secndblak {
    border-radius: var(--border-radius-2xl);
    padding: var(--spacing-4);
    padding-top: var(--spacing-4) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    background: linear-gradient(to bottom, var(--gradient-section-top) 0%, var(--gradient-section-mid) 50%, var(--gradient-section-bottom) 100%) !important;
    overflow-x: visible !important;
    position: relative;
  }

  /* Bubble Animation Container - Mobile Only */
  .secndblak::before,
  .secndblak::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
    opacity: 0.5;
    filter: blur(2px);
  }

  /* First Bubble - Purple/Pink */
  .secndblak::before {
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, rgba(102, 126, 234, 0.4), rgba(118, 75, 162, 0.3));
    top: 15%;
    left: 8%;
    animation: bubbleFloat1 12s ease-in-out infinite;
    box-shadow: 
      /* Bubble 3 - Blue */
      200px 150px 0 60px rgba(79, 172, 254, 0.25),
      /* Bubble 4 - Purple */
      350px -80px 0 45px rgba(102, 126, 234, 0.3),
      /* Bubble 5 - Pink */
      500px 200px 0 50px rgba(240, 147, 251, 0.25),
      /* Bubble 6 - Small Purple */
      150px 300px 0 35px rgba(118, 75, 162, 0.3),
      /* Bubble 7 - Medium Blue */
      400px 100px 0 40px rgba(79, 172, 254, 0.2);
  }

  /* Second Bubble - Pink/Orange */
  .secndblak::after {
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, rgba(240, 147, 251, 0.35), rgba(245, 87, 108, 0.25));
    bottom: 10%;
    right: 12%;
    animation: bubbleFloat2 15s ease-in-out infinite;
    box-shadow: 
      /* Bubble 8 - Orange */
      -180px -120px 0 55px rgba(245, 87, 108, 0.3),
      /* Bubble 9 - Pink */
      -350px 80px 0 50px rgba(240, 147, 251, 0.28),
      /* Bubble 10 - Coral */
      -200px -200px 0 45px rgba(245, 87, 108, 0.25),
      /* Bubble 11 - Small Pink */
      -450px -50px 0 38px rgba(240, 147, 251, 0.3),
      /* Bubble 12 - Medium Orange */
      -300px 150px 0 42px rgba(245, 87, 108, 0.22),
      /* Bubble 13 - Large Purple */
      -100px -150px 0 65px rgba(118, 75, 162, 0.25);
  }

  /* Ensure form content is above bubbles */
  .secndblak > * {
    position: relative;
    z-index: 1;
  }

  /* Bubble Animation Keyframes - Mobile Only */
  @keyframes bubbleFloat1 {
    0% {
      transform: translate(0, 0) scale(1) rotate(0deg);
      opacity: 0.4;
    }
    25% {
      transform: translate(40px, -50px) scale(1.2) rotate(90deg);
      opacity: 0.6;
    }
    50% {
      transform: translate(-30px, -80px) scale(0.8) rotate(180deg);
      opacity: 0.5;
    }
    75% {
      transform: translate(60px, -40px) scale(1.1) rotate(270deg);
      opacity: 0.6;
    }
    100% {
      transform: translate(0, 0) scale(1) rotate(360deg);
      opacity: 0.4;
    }
  }

  @keyframes bubbleFloat2 {
    0% {
      transform: translate(0, 0) scale(1) rotate(0deg);
      opacity: 0.3;
    }
    20% {
      transform: translate(-60px, 60px) scale(1.3) rotate(-90deg);
      opacity: 0.5;
    }
    40% {
      transform: translate(40px, -50px) scale(0.7) rotate(-180deg);
      opacity: 0.4;
    }
    60% {
      transform: translate(50px, 30px) scale(1.1) rotate(-270deg);
      opacity: 0.5;
    }
    80% {
      transform: translate(-40px, -20px) scale(0.9) rotate(-360deg);
      opacity: 0.4;
    }
    100% {
      transform: translate(0, 0) scale(1) rotate(0deg);
      opacity: 0.3;
    }
  }

  /* Ensure parent containers don't clip tabs */
  .allformst,
  .srchinarea,
  .searcharea {
    overflow-x: visible !important;
  }

  /* Mobile module tabs — horizontal scroll instead of dropdown */
  .commonNavTabCls {
    position: relative !important;
    top: var(--spacing-0) !important;
    margin: var(--spacing-3) auto var(--spacing-2) !important;
    width: 100% !important;
    display: block !important;
    overflow: visible;
    padding: 0 var(--spacing-3);
    box-sizing: border-box;
  }

  .mobile-tab-dropdown {
    display: none !important;
  }

  .commonNavTabCls .nav-tabs.tabstab,
  .commonNavTabCls .nav-tabs.tabstab.d-flex {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    margin: 0;
    padding: var(--spacing-1) 0 var(--spacing-2);
    gap: var(--spacing-2);
    border: none;
    background: transparent;
  }

  .commonNavTabCls .nav-tabs.tabstab > li,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item {
    margin: 0;
    float: none;
    display: block;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link {
    float: none !important;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-2);
    white-space: normal;
    text-align: center;
    border-radius: var(--border-radius-lg) !important;
    padding: var(--spacing-3) var(--spacing-2);
    min-height: 92px;
    height: 100%;
    background: light-dark(var(--color-white), var(--color-bg-secondary));
    border: 1px solid light-dark(rgba(0, 0, 0, 0.08), rgba(255, 255, 255, 0.12));
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.95),
      inset 0 -1px 2px rgba(15, 23, 42, 0.035);
    transition: transform 0.22s ease, box-shadow 0.25s ease, border-color 0.22s ease;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a .iconcmn,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link .iconcmn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: auto;
    height: auto;
    min-width: 36px;
    min-height: 36px;
    position: static;
    margin: 0;
    padding: 0;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a .iconcmn .tmx-icon,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link .iconcmn .tmx-icon {
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a .iconcmn .material-icons,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link .iconcmn .material-icons {
    font-size: 36px;
    line-height: 1;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > span,
  .commonNavTabCls .nav-tabs.tabstab > li > a label,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link label {
    position: static;
    display: block;
    width: 100%;
    margin: 0;
    line-height: 1.25;
    font-size: 13px;
    font-weight: var(--font-weight-semibold, 600);
    white-space: normal;
    word-break: break-word;
  }

  /* Mobile home — entrance + interaction animations */
  @keyframes homeMobileFadeUp {
    from {
      opacity: 0;
      transform: translateY(14px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes homeMobileIconPop {
    0% {
      transform: scale(1);
    }

    45% {
      transform: scale(1.1);
    }

    100% {
      transform: scale(1);
    }
  }

  @keyframes homeMobileSheetIn {
    from {
      opacity: 0;
      transform: translateY(100%);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes homeMobileSparkle {
    0%,
    100% {
      transform: scale(1) rotate(0deg);
    }

    50% {
      transform: scale(1.08) rotate(6deg);
    }
  }

  .commonNavTabCls .nav-tabs.tabstab > li,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item {
    animation: homeMobileFadeUp 0.48s cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  .commonNavTabCls .nav-tabs.tabstab > :nth-child(1) { animation-delay: 0.05s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(2) { animation-delay: 0.1s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(3) { animation-delay: 0.15s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(4) { animation-delay: 0.2s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(5) { animation-delay: 0.25s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(6) { animation-delay: 0.3s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(7) { animation-delay: 0.35s; }
  .commonNavTabCls .nav-tabs.tabstab > :nth-child(8) { animation-delay: 0.4s; }

  .commonNavTabCls .nav-tabs.tabstab > li > a:active:not(.active),
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link:active:not(.active) {
    transform: scale(0.96);
    box-shadow:
      inset 0 1px 2px rgba(15, 23, 42, 0.06),
      inset 0 0 0 1px rgba(15, 23, 42, 0.04);
  }

  .commonNavTabCls .nav-tabs.tabstab li a.active,
  .commonNavTabCls .nav-tabs.tabstab > li > a.active,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link.active {
    transform: scale(1.02);
    border-color: transparent !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.22),
      inset 0 -1px 0 rgba(0, 0, 0, 0.05),
      0 3px 8px rgba(0, 140, 255, 0.14) !important;
  }

  .commonNavTabCls .nav-tabs.tabstab li a.active:hover,
  .commonNavTabCls .nav-tabs.tabstab > li > a.active:hover,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link.active:hover {
    transform: scale(1.02);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.22),
      inset 0 -1px 0 rgba(0, 0, 0, 0.05),
      0 3px 8px rgba(0, 140, 255, 0.14) !important;
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a.active .iconcmn,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link.active .iconcmn {
    animation: homeMobileIconPop 0.38s cubic-bezier(0.22, 1, 0.36, 1);
  }

  @media (prefers-reduced-motion: reduce) {
    .commonNavTabCls .nav-tabs.tabstab > li,
    .commonNavTabCls .nav-tabs.tabstab > .nav-item,
    .commonNavTabCls .nav-tabs.tabstab > li > a.active .iconcmn,
    .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link.active .iconcmn {
      animation: none !important;
    }

    .commonNavTabCls .nav-tabs.tabstab > li > a,
    .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link {
      transition: none;
    }
  }

  /* Mobile Dropdown Button */
  .mobile-tab-selector {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: var(--spacing-4) var(--spacing-4);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-medium);
    border: 2px solid light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2));
    border-radius: var(--border-radius-lg);
    background: light-dark(var(--color-white), var(--color-bg-secondary));
    color: light-dark(#2C2C2C, var(--color-text-primary));
    cursor: pointer;
    transition: all 0.25s ease;
    min-height: 56px;
    box-sizing: border-box;
    gap: var(--spacing-2);
  }

  .mobile-tab-selector:hover {
    border-color: light-dark(rgba(0, 0, 0, 0.15), rgba(255, 255, 255, 0.3));
    background: light-dark(rgba(0, 0, 0, 0.02), rgba(255, 255, 255, 0.05));
  }

  .mobile-tab-selector:focus,
  .mobile-tab-selector:focus-visible {
    outline: none;
    border-color: var(--color-primary-primary);
    box-shadow: 0 0 0 4px rgba(240, 152, 20, 0.1);
  }

  .mobile-tab-selector:active {
    transform: scale(0.98);
  }

  .mobile-tab-selector .material-icons:first-child {
    font-size: 24px;
    color: light-dark(#4A4A4A, var(--color-text-primary));
    flex-shrink: 0;
  }

  .mobile-tab-selector .dropdown-label {
    flex: 1;
    text-align: left;
    font-weight: var(--font-weight-medium);
  }

  .mobile-tab-selector .dropdown-arrow {
    font-size: 24px;
    color: light-dark(#4A4A4A, var(--color-text-secondary));
    transition: transform 0.25s ease;
    flex-shrink: 0;
  }

  .mobile-tab-selector[aria-expanded="true"] .dropdown-arrow {
    transform: rotate(180deg);
  }

  /* Bootstrap Dropdown Menu */
  .mobile-tab-dropdown-menu {
    width: 100%;
    margin-top: var(--spacing-1);
    padding: var(--spacing-1);
    border: 2px solid light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2));
    border-radius: var(--border-radius-lg);
    background: light-dark(var(--color-white), var(--color-bg-secondary));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    max-height: 400px;
    overflow-y: auto;
  }

  .mobile-tab-dropdown-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: var(--spacing-3);
    padding: var(--spacing-3) var(--spacing-4);
    border-radius: var(--border-radius-md);
    color: light-dark(#2C2C2C, var(--color-text-primary));
    transition: all 0.2s ease;
    margin-bottom: var(--spacing-1);
  }

  .mobile-tab-dropdown-menu .dropdown-item:last-child {
    margin-bottom: 0;
  }

  .mobile-tab-dropdown-menu .dropdown-item:hover {
    background: light-dark(rgba(0, 0, 0, 0.05), rgba(255, 255, 255, 0.1));
    color: light-dark(#2C2C2C, var(--color-text-primary));
  }

  .mobile-tab-dropdown-menu .dropdown-item.active {
    background: light-dark(#F5F5F0, rgba(240, 152, 20, 0.15));
    color: light-dark(#2C2C2C, var(--color-text-primary));
    font-weight: var(--font-weight-semibold);
  }

  .mobile-tab-dropdown-menu .dropdown-item .material-icons {
    font-size: 22px;
    color: inherit;
    flex-shrink: 0;
  }

  .mobile-tab-dropdown-menu .dropdown-item span {
    flex: 1;
  }
}

/* Extra Small Mobile Devices - 480px and below */
@media (max-width: 480px) {
  /* Mobile Bootstrap Dropdown for Small Screens */
  .mobile-tab-selector {
    padding: var(--spacing-3) var(--spacing-3);
    font-size: var(--font-size-sm);
    min-height: 52px;
  }

  .mobile-tab-selector .material-icons:first-child,
  .mobile-tab-selector .dropdown-arrow {
    font-size: 20px;
  }

  .mobile-tab-dropdown-menu .dropdown-item {
    padding: var(--spacing-2) var(--spacing-3);
    font-size: var(--font-size-sm);
  }

  .mobile-tab-dropdown-menu .dropdown-item .material-icons {
    font-size: 20px;
  }
}

/* Mobile: 767px and below - Form Fields */
@media (max-width: 767px) {
  /* Form Fields - Mobile App Style */
  .lablform {
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    margin-bottom: var(--spacing-2);
    padding-left: var(--spacing-2);
  }

  .dropdown-menu.show { visibility: visible !important; z-index: 9999 !important; opacity: 1 !important; max-height: 400px !important; }

  

  /* Radio Buttons - Mobile App Style */
  .threey {
    display: flex;
    gap: var(--spacing-4);
    margin: var(--spacing-4) var(--spacing-0);
    padding: var(--spacing-3);
    background: var(--color-bg-secondary);
    border-radius: var(--border-radius-lg);
  }

  .threey label {
    font-size: var(--font-size-sm);
    padding: var(--spacing-2) var(--spacing-3);
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    cursor: pointer;
    border-radius: var(--border-radius-md);
    transition: var(--transition-all);
  }

  .threey label:hover {
    background: var(--color-bg-primary);
  }

  /* Search Button - Mobile App Style */
  .searchbtn,
  button[type="submit"],
  .submitbtn {
    width: 100%;
    min-height: 56px;
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
    padding: var(--spacing-4);
    border-radius: var(--border-radius-xl);
    box-shadow: 0 4px 12px rgba(240, 152, 20, 0.3);
    transition: var(--transition-all);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-2);
  }

  .searchbtn:active,
  button[type="submit"]:active,
  .submitbtn:active {
    transform: scale(0.98);
    box-shadow: 0 2px 8px rgba(240, 152, 20, 0.2);
  }


  /* Date Picker Fields */
  .dateinput,
  input[type="date"] {
    font-size: var(--font-size-base);
  }

  /* Dropdown Fields */
  .advncedown {
    font-size: var(--font-size-base);
  }

  /* Card-like Sections */
  .allformst,
  .tabspl {
    border-radius: var(--border-radius-2xl);
    margin: 0px !important;
  }

  /* ============================================
     MOBILE APP STYLE DATEPICKER - BOTTOM SHEET
     ============================================ */
  
  /* Datepicker Overlay/Backdrop */
  .ui-datepicker.ui-widget.ui-datepicker-multi {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    transform: translateY(0) !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 85vh !important;
    margin: 0 !important;
    border-radius: var(--border-radius-2xl) var(--border-radius-2xl) 0 0 !important;
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.2) !important;
    z-index: 10000 !important;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    animation: slideUp 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes slideUp {
    from {
      transform: translateY(100%);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

  /* Add backdrop overlay */
  body.datepicker-open::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9999;
    animation: fadeIn 0.3s ease;
  }

  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }

  /* Datepicker Container - Mobile App Style */
  div#ui-datepicker-div.ui-datepicker {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    transform: translateY(0) !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 85vh !important;
    margin: 0 !important;
    border-radius: var(--border-radius-2xl) var(--border-radius-2xl) 0 0 !important;
    border: none !important;
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.2) !important;
    z-index: 10000 !important;
    padding: var(--spacing-4) var(--spacing-4) var(--spacing-6) !important;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    animation: slideUp 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background: light-dark(var(--color-white), var(--color-bg-primary)) !important;
  }

  /* Drag Handle Indicator */
  div#ui-datepicker-div.ui-datepicker::before {
    content: '';
    position: absolute;
    top: var(--spacing-3);
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 4px;
    background: light-dark(rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0.3));
    border-radius: var(--border-radius-full);
  }

  /* Datepicker Header - Mobile App Style */
  .ui-datepicker.ui-widget .ui-datepicker-header {
    padding: var(--spacing-6) var(--spacing-0) var(--spacing-4) !important;
    margin-bottom: var(--spacing-4) !important;
    border-bottom: 1px solid light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.15)) !important;
  }

  .ui-datepicker-title {
    font-size: var(--font-size-xl) !important;
    font-weight: var(--font-weight-bold) !important;
  }

  .ui-datepicker-title .ui-datepicker-month,
  .ui-datepicker-title .ui-datepicker-year {
    font-size: var(--font-size-xl) !important;
    font-weight: var(--font-weight-bold) !important;
  }

  /* Navigation Arrows - Larger for Mobile */
  .ui-datepicker.ui-widget .ui-datepicker-prev::after,
  .ui-datepicker.ui-widget .ui-datepicker-next::after {
    width: 48px !important;
    height: 48px !important;
    font-size: 28px !important;
    background: light-dark(rgba(0, 0, 0, 0.05), rgba(255, 255, 255, 0.1)) !important;
  }

  .ui-datepicker.ui-widget .ui-datepicker-prev,
  .ui-datepicker.ui-widget .ui-datepicker-next {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
  }

  /* Calendar Grid - Mobile App Style */
  .ui-datepicker.ui-widget .ui-datepicker-calendar {
    border-spacing: var(--spacing-1) !important;
    width: 100% !important;
    margin: var(--spacing-0) auto !important;
  }

  .ui-datepicker.ui-widget .ui-datepicker-calendar th {
    width: calc(14.28% - 2px) !important;
    height: 44px !important;
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-bold) !important;
    padding: var(--spacing-2) var(--spacing-0) !important;
    color: light-dark(#666, var(--color-text-secondary)) !important;
  }

  .ui-datepicker.ui-widget td {
    height: 52px !important;
    width: calc(14.28% - 2px) !important;
    padding: var(--spacing-1) !important;
  }

  .ui-datepicker.ui-widget td a {
    min-width: 48px !important;
    min-height: 48px !important;
    font-size: var(--font-size-base) !important;
    font-weight: var(--font-weight-medium) !important;
    border-radius: var(--border-radius-full) !important;
  }

  #ui-datepicker-div .ui-state-default,
  #ui-datepicker-div .ui-widget-content .ui-state-default {
    line-height: 48px !important;
    font-size: var(--font-size-base) !important;
  }

  /* Selected Date - Mobile App Style */
  #ui-datepicker-div .ui-state-active,
  #ui-datepicker-div .ui-widget-content .ui-state-active {
    background: var(--color-info) !important;
    color: var(--color-white) !important;
    font-weight: var(--font-weight-bold) !important;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-info) 40%, transparent) !important;
    transform: none !important;
  }

  /* Today's Date - Mobile App Style */
  #ui-datepicker-div .ui-state-highlight {
    background: var(--color-info-lightest) !important;
    color: var(--color-info-dark) !important;
    font-weight: var(--font-weight-semibold) !important;
  }

  #ui-datepicker-div .ui-state-highlight::after {
    display: none;
  }

  /* Hover State - Mobile App Style */
  #ui-datepicker-div .ui-state-default:hover {
    background: var(--color-info-lightest) !important;
    color: var(--color-info-dark) !important;
    transform: none !important;
  }

  /* Month/Year Selectors - Mobile App Style */
  select.ui-datepicker-month,
  select.ui-datepicker-year {
    font-size: var(--font-size-lg) !important;
    padding: var(--spacing-2) var(--spacing-3) !important;
    min-height: 48px !important;
    border-radius: var(--border-radius-md) !important;
    background: light-dark(rgba(0, 0, 0, 0.03), rgba(255, 255, 255, 0.05)) !important;
  }

  /* Multi-Month Layout - Side by Side */
  .ui-datepicker-multi.ui-widget .ui-datepicker-group {
    border-right: 1px solid light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.15)) !important;
    padding: var(--spacing-2) !important;
  }

  .ui-datepicker-multi.ui-widget .ui-datepicker-group:last-child {
    border-right: none !important;
  }

  /* Confirm Button - Hidden */
  .datepicker-confirm-btn {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Prevent body scroll when datepicker is open */
  body.datepicker-open {
    overflow: hidden !important;
    position: fixed !important;
    width: 100% !important;
  }
}

/* Extra Small Mobile Devices - 480px and below */
@media (max-width: 480px) {
  div#ui-datepicker-div.ui-datepicker {
    max-height: 90vh !important;
    padding: var(--spacing-3) var(--spacing-3) var(--spacing-5) !important;
  }

  .ui-datepicker.ui-widget td {
    height: 48px !important;
    padding: var(--spacing-0) !important;
  }

  .ui-datepicker.ui-widget td a {
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: var(--font-size-sm) !important;
  }

  #ui-datepicker-div .ui-state-default {
    line-height: 44px !important;
    font-size: var(--font-size-sm) !important;
  }

  .ui-datepicker-title {
    font-size: var(--font-size-lg) !important;
  }

  .datepicker-confirm-btn {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
}

/* Mobile: 480px and below - Extra Small */
@media (max-width: 550px) {

  .custmflxin {
    display: flex;
    flex-direction: column;
}
  .searcharea, .srchinarea{
    padding: var(--spacing-0) var(--spacing-2);
    margin-top: var(--spacing-0);
  }

  .secndblak {
    padding: var(--spacing-3);
    border-radius: var(--border-radius-xl);
  }

  .nav-tabs.tabstab>li>a {
    padding: var(--spacing-2) var(--spacing-3);
    font-size: var(--font-size-xs);
    min-height: 40px;
  }

  .nav-tabs.tabstab>li>a label {
    font-size: var(--font-size-xs);
  }

  .iconcmn {
    width: 18px;
    height: 18px;
  }

  .iconcmn .material-icons {
    font-size: 18px;
  }

  .normalinput,
  .plcetogo input,
  input[type="text"],
  input[type="date"],
  select {
    font-size: var(--font-size-lg) !important;
    padding: var(--spacing-2) var(--spacing-3);
    width: 90% !important;
  }

  .searchbtn,
  button[type="submit"],
  .submitbtn {
    min-height: 52px;
    font-size: var(--font-size-base);
    padding: var(--spacing-3);
  }

  .threey {
    flex-direction: column;
    gap: var(--spacing-2);
  }

  .threey label {
    width: 100%;
    justify-content: center;
  }

  /* Hero Text - Mobile App Style */
  .bigCaptionMain {
    font-size: var(--font-size-3xl);
    line-height: 1.2;
    margin-bottom: var(--spacing-3);
  }

  .smalcaptn {
    font-size: var(--font-size-sm);
    line-height: 1.5;
  }

  /* Search Area Positioning - Mobile */
  .srchinarea {
    position: relative;
    top: var(--spacing-0);
    padding: var(--spacing-0) var(--spacing-2);
  }
.hotel_search_btn .searchsbmt, .hotel_search_btn .flight_search_btn{border-radius: 3px!important;}
  .searcharea {
    position: relative;
    margin-top: var(--spacing-0);
  }
}

/* Mobile: 360px and below - Smallest screens */
@media (max-width: 360px) {
  .nav-tabs.tabstab>li>a {
    padding: var(--spacing-2);
    font-size: var(--font-size-xs);
    min-height: 36px;
  }

  .nav-tabs.tabstab>li>a label {
    display: none; /* Hide labels on very small screens, show only icons */
  }

  .commonNavTabCls .nav-tabs.tabstab > li > a label,
  .commonNavTabCls .nav-tabs.tabstab > .nav-item > .nav-link label {
    display: inline-block !important;
  }

  .iconcmn {
    width: 20px;
    height: 20px;
  }

  .iconcmn .material-icons {
    font-size: 20px;
  }

  .normalinput,
  .plcetogo input,
  input[type="text"],
  input[type="date"],
  select {
    min-height: 44px;
    font-size: var(--font-size-sm);
  }

  .searchbtn,
  button[type="submit"],
  .submitbtn {
    min-height: 48px;
    font-size: var(--font-size-sm);
  }
}



/* Tab Splash */
.tabspl {
  float: left;
  width: var(--width-full);
  border-radius: var(--border-radius-2xl);
  background: var(--color-bg-primary);
  padding: var(--spacing-0);
}

.tabrow {
  float: left;
  width: var(--width-full);
  border-radius: var(--border-radius-sm);
}

/* Form Labels */
.lablform {
    color: var(--color-text-primary);
    display: block;
    font-size: var(--font-size-sm);
    padding-left: var(--spacing-3);
    font-weight: 500;
    position: relative;
    top: var(--spacing-1);
    left: var(--spacing-1);
    margin-bottom: var(--spacing-0);
}


/* Place to Go */
.plcetogo {
  position: relative;
  width: 100%;
  padding-left: var(--spacing-2);
}

.plcetogo input {
  border: var(--border-width-none) !important;
}

/* Normal Input */
.normalinput {
  border: var(--border-width-none) !important;
  color: #012169!important; /* Custom color - keep as is */
  float: left;
  font-size: var(--font-size-md) !important;
  height: 38px;
  padding: var(--spacing-0) var(--spacing-2) !important;
  font-family: var(--font-family-base);
  border-radius: var(--border-radius-lg) !important;
  width: var(--width-full);
  border-radius: var(--spacing-0);
  background: none;
  box-shadow: var(--shadow-none);
  font-weight: var(--font-weight-bold);
  -webkit-box-sizing: unset !important;
  box-sizing: border-box !important;
}

/* Remove all input focus styles */
input:focus,
input:focus-visible,
input:focus-within,
textarea:focus,
textarea:focus-visible,
textarea:focus-within,
select:focus,
select:focus-visible,
select:focus-within {
  outline: none !important;
  box-shadow: none !important;
  border-color: inherit !important;
}

/* Tab Content */
.tab-content.custmtab {
  float: left;
  width: var(--width-full);
  padding-bottom: var(--spacing-0) !important;
  border-radius: 19px; /* Custom value - keep as is */
  padding-top: var(--spacing-2);
  padding-bottom: var(--spacing-2) !important;
  z-index: 1;
  position: relative;
  overflow: visible;
}

.tab-content.custmtab .tab-pane {
  overflow: visible;
}


/* ============================================
   Home feature bar (overlaps banner / white)
   ============================================ */
.searcharea {
  position: relative;
  z-index: 5;
  width: 100%;
}

/* Search form overlays the bottom of the hero banner (desktop) */
@media (min-width: 768px) {
  .hero-slider-wrapper {
    position: relative;
    min-height: 400px;
    overflow: visible;
    box-sizing: border-box;
  }

  .hero-slider-wrapper .hero-slider,
  .hero-slider-wrapper .hero-slide,
  .hero-slider-wrapper .hero-slide-bg,
  .hero-slider-wrapper .hero-overlay {
    height: 100%;
    min-height: 100%;
  }

  .hero-slider-wrapper .hero-text-content {
    top: clamp(28px, 4vw, 56px);
  }

  .hero-slider-wrapper .hero-text-content .captngrp {
    margin-top: 0;
  }

  .hero-slider-wrapper .searcharea {
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 20px;
    width: 100%;
    float: none !important;
    z-index: 99;
    pointer-events: none;
  }

  .hero-slider-wrapper .searcharea .srchinarea,
  .hero-slider-wrapper .searcharea .allformst,
  .hero-slider-wrapper .searcharea .secndblak,
  .hero-slider-wrapper .searcharea .home-feature-bar {
    pointer-events: all;
  }

  .hero-slider-wrapper .srchinarea {
    position: relative;
    top: 0;
  }

  .hero-slider-wrapper.hero-multicity-active {
    min-height: 440px;
  }
}

.home-feature-bar {display: none;
  position: relative;
  z-index: 0;
  bottom: -52px;
  position: absolute;
  left: 0;
  right: 0;
  margin-bottom: 18px;
  padding: 0;
  background: transparent;
  pointer-events: none;
}

.home-feature-bar .container {
  pointer-events: auto;
}

.home-feature-bar__inner {
  display: flex;
  align-items: stretch;
  max-width: 920px;
  margin: 0 auto;
  background: color-mix(in srgb, var(--color-bg-primary) 94%, transparent);
  border: var(--border-width-thin) solid color-mix(in srgb, var(--color-white) 80%, var(--border-color-light));
  border-radius: var(--border-radius-full);
  box-shadow:
    0 12px 28px color-mix(in srgb, var(--color-text-primary) 10%, transparent),
    0 2px 8px color-mix(in srgb, var(--color-info) 6%, transparent);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
}

.home-feature-bar__item {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px 18px;
  text-decoration: none;
  color: inherit;
  transition: background var(--transition-fast), transform var(--transition-fast);
}

.home-feature-bar__item:not(:last-child) {
  border-right: var(--border-width-thin) solid color-mix(in srgb, var(--border-color-light) 85%, transparent);
}

.home-feature-bar__item:hover {
  background: color-mix(in srgb, var(--color-info) 5%, var(--color-bg-primary));
  text-decoration: none;
  color: inherit;
  transform: translateY(-1px);
}

.home-feature-bar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  font-size: 1.05rem;
  line-height: 1;
}

.home-feature-bar__icon .bi {
  display: block;
  line-height: 1;
}

.home-feature-bar__icon--holiday {
  background: #f5efe6;
  color: #9a6b3f;
}

.home-feature-bar__icon--pay {
  background: #e8f2fc;
  color: var(--color-info);
}

.home-feature-bar__icon--guide {
  background: #e8f6ee;
  color: var(--color-success-primary);
}

.home-feature-bar__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.home-feature-bar__title {
  font-size: 0.8125rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.home-feature-bar__desc {
  font-size: 0.6875rem;
  font-weight: var(--font-weight-normal);
  color: var(--color-text-secondary);
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.top_flight-sec {

  padding-top: var(--spacing-2);
}

@media (max-width: 991px) {

  /* .hotel_search_results .coleft {display: block !important;} */
  .home-feature-bar {
    margin-top: -28px;
    margin-bottom: 14px;
  }

  .home-feature-bar__inner {
    max-width: 100%;
    flex-direction: column;
    border-radius: var(--border-radius-xl);
  }

  .home-feature-bar__item:not(:last-child) {
    border-right: none;
    border-bottom: var(--border-width-thin) solid var(--border-color-light);
  }

  .home-feature-bar__item {
    padding: 10px 14px;
  }
}

@media (max-width: 575px) {

  .custmflxin {
    display: flex;
    flex-direction: column;
}
  .home-feature-bar {
    margin-top: -22px;
    margin-bottom: 10px;
  }

  .home-feature-bar__icon {
    width: 32px;
    height: 32px;
    font-size: 0.95rem;
    border-radius: 8px;
  }

  .home-feature-bar__title {
    font-size: 0.75rem;
  }

  .home-feature-bar__desc {
    font-size: 0.625rem;
    -webkit-line-clamp: 1;
  }
}

/* ============================================
   Offers Section
   ============================================ */
.offers_sec {
  background: var(--color-bg-primary);
  padding: var(--spacing-10) var(--spacing-0);
  padding-bottom: var(--spacing-2);
}

.offers-section-header {
  text-align: center;
  margin-bottom: var(--spacing-6);
}

.offers-section-title {
  margin: 0 0 var(--spacing-2);
  font-size: var(--font-size-4xl);
  color: #00334D;
  font-weight: var(--font-weight-bold);
}

.offers-section-subtitle {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--font-size-base);
}

.offers-filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  justify-content: center;
  margin: var(--spacing-4) 0 var(--spacing-6);
}

.offer-filter-tab {
  border: 1px solid var(--border-color-medium);
  background: var(--color-bg-primary);
  color: var(--color-text-secondary);
  padding: var(--spacing-2) var(--spacing-4);
  border-radius: var(--border-radius-md);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
}

.offer-filter-tab.active {
  background: var(--color-info);
  border-color: var(--color-info);
  color: var(--color-white);
}

.offer-card {
  border-radius: var(--border-radius-xl);
  overflow: hidden;
  position: relative;
  color: var(--color-white);
  text-align: left;
  margin-bottom: var(--spacing-7);
  transition: var(--transition-all);
  height: 175px; /* Custom value - keep as is */
}

.offer-card:hover {
  transform: translateY(calc(var(--spacing-0) - var(--spacing-1)));
  box-shadow: var(--shadow-lg);
}

.offer-content {
  position: absolute;
  left: var(--spacing-5);
  bottom: var(--spacing-0);
  z-index: var(--z-index-base);
}

.offer-img {
  width: var(--width-full);
  height: var(--height-full);
  object-fit: cover;
  border-radius: var(--border-radius-xl);
}

.offer-bg {
  position: absolute;
  top: var(--spacing-0);
  left: var(--spacing-0);
  width: var(--width-full);
  background: linear-gradient(to right, rgba(32, 58, 135, 0.801) 0%, rgba(0, 0, 0, 0) 100%);
  height: var(--height-full);
  border-radius: var(--border-radius-xl);
  opacity: var(--opacity-85);
}

.offer1 h3, .offer2 h3, .offer3 h3 {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  margin-top: var(--spacing-1);
  margin-bottom: var(--spacing-1);
}

.offer1 p, .offer2 p, .offer3 p {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
}

.discount {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-extrabold);
}

@media (max-width: 767px) {
  .custom_addon{display: none;}
  .top_flight-sec {
    padding-top: 0;
    background: var(--color-bg-primary, #fff);
  }
      .hotel-destination-section .hotel-section-head h2 {
        font-size: 20px;
    }
.commonNavTabCls {
    display: none !important;
}
  .offers_sec {
    padding: 20px 0 12px;
    background: var(--color-bg-primary, #fff);
  }

  .offers_sec .container.mobile_pad {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .offers-section-header {
    text-align: left;
    margin-bottom: 14px;
  }

  .offers-section-title {
    font-size: 1.25rem;
    line-height: 1.25;
    letter-spacing: -0.01em;
  }

  .offers-section-subtitle {
    font-size: 0.8125rem;
    line-height: 1.4;
    margin-top: 4px;
  }

  .offers-filter-tabs {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    padding: 0 0 6px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .offers-filter-tabs::-webkit-scrollbar {
    display: none;
  }

  .offer-filter-tab {
    flex: 0 0 auto;
    scroll-snap-align: start;
    white-space: nowrap;
    padding: 8px 16px;
    border-radius: 999px;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.2;
    border: 1px solid var(--border-color-light, #e5e7eb);
    background: var(--color-bg-primary, #fff);
    color: var(--color-text-secondary, #6b7280);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  }

  .offer-filter-tab.active {
    background: var(--color-info, #008cff);
    border-color: var(--color-info, #008cff);
    color: #fff;
    box-shadow: 0 4px 12px rgba(0, 140, 255, 0.28);
  }

  .offers_sec .mySwiper {
    overflow: hidden;
    padding-bottom: 30px;
    margin: 0 -2px;
  }

  .offers_sec .mySwiper .swiper-slide {
    height: auto;
  }

  .offer-card {
    height: auto;
    aspect-ratio: 16 / 9;
    min-height: 164px;
    max-height: 196px;
    margin-bottom: 0;
    text-align: left;
    border-radius: 14px;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.12);
  }

  .offer-card:hover {
    transform: none;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.12);
  }

  .offer-img {
    border-radius: 14px;
  }

  .offer-bg {
    border-radius: 14px;
    opacity: 1;
    background: linear-gradient(
      105deg,
      rgba(12, 77, 163, 0.94) 0%,
      rgba(12, 77, 163, 0.62) 38%,
      rgba(12, 77, 163, 0.18) 58%,
      rgba(0, 0, 0, 0) 78%
    );
  }

  .offer-content {
    left: 16px;
    right: 42%;
    bottom: 14px;
    max-width: none;
  }

  .offer1 p,
  .offer2 p,
  .offer3 p {
    font-size: 0.75rem;
    line-height: 1.25;
    margin: 0;
    opacity: 0.95;
  }

  .offer1 h3,
  .offer2 h3,
  .offer3 h3 {
    font-size: 1.375rem;
    line-height: 1.15;
    margin: 4px 0;
  }

  .discount {
    font-size: 1.5rem;
    line-height: 1.1;
    letter-spacing: -0.02em;
  }

  .offer-content p:last-child {
    margin-top: 4px;
    font-size: 0.8125rem;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .offers_sec .mySwiper .swiper-pagination {
    bottom: 6px !important;
    line-height: 0;
  }

  .offers_sec .mySwiper .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0 3px !important;
    background: #d1d5db !important;
    opacity: 1;
    transition: width 0.25s ease, background-color 0.25s ease;
  }

  .offers_sec .mySwiper .swiper-pagination-bullet-active {
    width: 18px;
    border-radius: 999px;
    background: var(--color-primary-primary, #f09814) !important;
    transform: none;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .offer-card {
    height: 220px;
  }

  .discount {
    font-size: var(--font-size-3xl);
  }
}

@media (prefers-reduced-motion: reduce) {
  .offer-filter-tab,
  .offers_sec .mySwiper .swiper-pagination-bullet {
    transition: none;
  }
}

/* ============================================
   Popular Hotels Section - Modern Hotel Cards Design
   ============================================ */
.popular-hotels-section {
  position: relative;
  padding: var(--spacing-14) var(--spacing-0);
  background: var(--color-bg-primary);
}

/* Featured top destinations — full-bleed image, bottom gradient, carousel (flyin-style) */
.popular-hotels-section--featured {
  padding-bottom: var(--spacing-16);
}

.popular-hotels-section--featured .popular-header.popular-header--lined {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  margin-bottom: var(--spacing-10);
  width: 100%;
}

.section-title-lined {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-4);
  width: 100%;
  max-width: 960px;
  margin: var(--spacing-0) auto var(--spacing-2);
  font-family: var(--font-family-heading);
  font-size: clamp(var(--font-size-xl), 2.5vw, var(--font-size-3xl));
  font-weight: var(--font-weight-bold);
  color: var(--color-info-dark);
  line-height: var(--line-height-tight);
}

.section-title-lined::before,
.section-title-lined::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--border-color-light);
  min-width: var(--spacing-8);
}

.popular-header--lined .subtitle {
  margin-top: var(--spacing-0);
  color: var(--color-text-secondary);
  font-size: var(--font-size-base);
}

.featured-hotels-carousel-wrap {
  position: relative;
  padding: var(--spacing-0) var(--spacing-0);
}

.featured-hotels-swiper {
  overflow: hidden;
  border-radius: var(--border-radius-lg);
}

.featured-hotels-swiper .swiper-slide {
  height: auto;
}

.featured-hotels-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 44px;
  height: 44px;
  border-radius: var(--border-radius-full);
  border: var(--border-width-thin) solid var(--border-color-light);
  background: var(--color-bg-primary);
  color: var(--color-info);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-all);
}

.featured-hotels-nav:hover {
  background: var(--color-info-lightest);
  border-color: var(--color-info);
  color: var(--color-info-dark);
}

.featured-hotels-nav .material-icons {
  font-size: 28px;
}

.featured-hotels-prev {
  left: var(--spacing-0);
}

.featured-hotels-next {
  right: var(--spacing-0);
}

.featured-hotel-card {
  position: relative;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  min-height: 340px;
  cursor: pointer;
  box-shadow: var(--shadow-md);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  background: var(--color-bg-secondary);
}

.featured-hotel-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lg);
}

.featured-hotel-card__media {
  position: absolute;
  inset: var(--spacing-0);
  z-index: 0;
}

.featured-hotel-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.featured-hotel-card:hover .featured-hotel-card__media img {
  transform: scale(1.06);
}

.featured-hotel-card__gradient {
  position: absolute;
  inset: var(--spacing-0);
  background: linear-gradient(
    to top,
    color-mix(in srgb, var(--color-black) 88%, transparent) 0%,
    color-mix(in srgb, var(--color-info) 45%, transparent) 42%,
    transparent 68%
  );
  z-index: 1;
}

.featured-hotel-card__ribbon {
  position: absolute;
  top: var(--spacing-3);
  left: var(--spacing-3);
  z-index: 2;
  padding: var(--spacing-1) var(--spacing-3);
  font-size: 10px;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-text-inverse);
  background: linear-gradient(135deg, var(--color-success-primary) 0%, var(--color-success-midtone) 100%);
  border-radius: var(--border-radius-sm);
  box-shadow: var(--shadow-sm);
  max-width: calc(100% - var(--spacing-6));
}

.featured-hotel-card__content {
  position: absolute;
  left: var(--spacing-0);
  right: var(--spacing-0);
  bottom: var(--spacing-0);
  z-index: 2;
  padding: var(--spacing-6) var(--spacing-4) var(--spacing-5);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-1);
}

.featured-hotel-card__title {
  margin: var(--spacing-0);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  line-height: var(--line-height-snug);
  text-shadow: 0 1px 2px color-mix(in srgb, var(--color-text-primary) 35%, transparent);
}

.featured-hotel-card__stars {
  display: flex;
  align-items: center;
  gap: 2px;
  margin: var(--spacing-1) var(--spacing-0);
}

.featured-hotel-card__star {
  font-size: 18px !important;
  width: 18px;
  height: 18px;
  color: var(--color-primary-midtone);
}

.featured-hotel-card__star--empty {
  opacity: 0.55;
}

.featured-hotel-card__location {
  margin: var(--spacing-0);
  font-size: var(--font-size-sm);
  color: rgba(255, 255, 255, 0.92);
  font-weight: var(--font-weight-normal);
}

.featured-hotel-card__book-pill {
  align-self: center;
  margin-top: var(--spacing-3);
  padding: var(--spacing-2) var(--spacing-6);
  border-radius: var(--border-radius-md);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-extrabold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-primary);
  background: linear-gradient(135deg, var(--color-primary-midtone) 0%, var(--color-primary-primary) 100%);
  box-shadow: 0 4px 14px color-mix(in srgb, var(--color-primary-primary) 35%, transparent);
}

.featured-hotel-card--promo .featured-hotel-card__content {
  padding-bottom: var(--spacing-6);
}

@media (max-width: 767px) {
  .popular-hotels-section--featured {
    padding: 24px 0 20px;
  }

  .popular-hotels-section--featured .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .popular-hotels-section--featured .popular-header.popular-header--lined {
    align-items: flex-start;
    text-align: left;
    margin-bottom: 14px;
  }

  .section-title-lined {
    font-size: 1.25rem;
    line-height: 1.25;
    justify-content: flex-start;
    max-width: none;
    margin-bottom: 4px;
    letter-spacing: -0.01em;
    color: var(--color-text-primary, #111827);
  }

  .section-title-lined::before,
  .section-title-lined::after {
    display: none;
  }

  .popular-header--lined .subtitle {
    font-size: 0.8125rem;
    line-height: 1.4;
    text-align: left;
  }

  .featured-hotels-carousel-wrap {
    padding: 0 0 28px;
  }

  .featured-hotels-nav {
    display: none !important;
  }

  .featured-hotels-swiper {
    overflow: hidden;
    border-radius: 0;
  }

  .featured-hotel-card {
    min-height: 0;
    aspect-ratio: 4 / 3;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.12);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }

  .featured-hotel-card:active {
    transform: scale(0.985);
  }

  .featured-hotel-card:hover {
    transform: none;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.12);
  }

  .featured-hotel-card__gradient {
    background: linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.35) 0%,
      rgba(0, 0, 0, 0.05) 35%,
      rgba(0, 0, 0, 0.15) 55%,
      rgba(0, 0, 0, 0.82) 100%
    );
  }

  .featured-hotel-card__ribbon {
    top: 10px;
    left: 10px;
    padding: 4px 8px;
    font-size: 0.625rem;
    border-radius: 999px;
  }

  .featured-hotel-card__content {
    padding: 14px 12px 12px;
    gap: 4px;
  }

  .featured-hotel-card__title {
    font-size: 0.9375rem;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .featured-hotel-card__stars {
    margin: 2px 0;
  }

  .featured-hotel-card__star {
    font-size: 14px !important;
    width: 14px;
    height: 14px;
  }

  .featured-hotel-card__location {
    font-size: 0.75rem;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .featured-hotel-card__book-pill {
    display: none;
  }

  .featured-hotels-pagination {
    display: block;
    bottom: 4px !important;
    line-height: 0;
  }

  .featured-hotels-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0 3px !important;
    background: #d1d5db !important;
    opacity: 1;
    transition: width 0.25s ease, background-color 0.25s ease;
  }

  .featured-hotels-pagination .swiper-pagination-bullet-active {
    width: 18px;
    border-radius: 999px;
    background: var(--color-primary-primary, #f09814) !important;
  }
}

@media (min-width: 768px) {
  .featured-hotels-pagination {
    display: none;
  }
}

/* Hide mobile slider on desktop */
.hotel-cards-slider {
  display: none;
}

/* Show desktop grid by default */
.hotel-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-6);
  margin-bottom: var(--spacing-10);
}
.swiper-pagination { bottom:0px !important;}
.mySwiper .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background:var(--color-bg-secondary) !important;
  opacity: 1;
}

.mySwiper .swiper-pagination-bullet-active {
  background: var(--color-primary-primary) !important;
  transform: scale(1.1);
}
.popular-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-10);
  flex-wrap: wrap;
  gap: var(--spacing-2);
}

.popular-header h2 {
  color: var(--color-text-primary) !important;
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  margin: var(--spacing-0);
  line-height: var(--line-height-tight);
  font-family: var(--font-family-heading);
}

.popular-header .subtitle {
  color: var(--color-text-secondary);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-normal);
  margin-top: var(--spacing-0);
  display: block;
  width: 100%;
}

.view-all {
  color: var(--color-primary-primary);
  text-decoration: none;
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-base);
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  transition: var(--transition-all);
}

.view-all:hover {
  color: var(--color-primary-midtone);
  transform: translateX(4px);
}

.view-all i {
  font-size: var(--font-size-sm);
}

/* Hotel Card (Modern Design) */
.hotel-card {
  border-radius: var(--border-radius-2xl);
  overflow: hidden;
  position: relative;
  background: var(--color-bg-primary);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 2px 8px rgba(0, 0, 0, 0.04);
  margin-bottom: var(--spacing-6);
  transition: var(--transition-all);
  display: flex;
  flex-direction: column;
}

.hotel-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 4px 16px rgba(0, 0, 0, 0.08);
}

/* Hotel Image Section */
.hotel-image {
  position: relative;
  width: 100%;
  height: 280px;
  overflow: hidden;
  background: var(--color-bg-secondary);
}

.hotel-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-all);
}

.hotel-card:hover .hotel-image img {
  transform: scale(1.05);
}

/* Badges (Top Rated, Best Sale, Discount) */
.trending-badge,
.hotel-badge {
  position: absolute;
  top: var(--spacing-3);
  left: var(--spacing-3);
  padding: var(--spacing-2) var(--spacing-4);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  z-index: 2;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.trending-badge {
  background: linear-gradient(135deg, #ffd700 0%, #ffed4e 100%);
  color: var(--color-text-primary);
}

.hotel-badge.badge-top-rated {
  background: linear-gradient(135deg, #ffd700 0%, #ffed4e 100%);
  color: var(--color-text-primary);
}

.hotel-badge.badge-best-sale {
  background: linear-gradient(135deg, #4caf50 0%, #66bb6a 100%);
  color: var(--color-text-inverse);
}

.hotel-badge.badge-discount {
  background: linear-gradient(135deg, #ff9800 0%, #ffb74d 100%);
  color: var(--color-text-inverse);
}

/* Favorite/Heart Icon */
.hotel-favorite {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: var(--border-radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  transition: var(--transition-all);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.hotel-favorite:hover {
  background: var(--color-bg-primary);
  transform: scale(1.1);
}

.hotel-favorite i {
  color: var(--color-text-secondary);
  font-size: var(--font-size-lg);
  transition: var(--transition-all);
}

.hotel-favorite:hover i,
.hotel-favorite.active i {
  color: #e91e63;
}

.hotel-favorite.active i {
  font-weight: 900;
}

/* Rating Overlay on Image */
.hotel-rating-overlay {
  position: absolute;
  bottom: var(--spacing-3);
  left: var(--spacing-3);
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(10px);
  padding: var(--spacing-2) var(--spacing-3);
  border-radius: var(--border-radius-lg);
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  z-index: 2;
}

.hotel-rating-overlay .star-icon {
  color: #ffd700;
  font-size: var(--font-size-base);
}

.hotel-rating-overlay .rating-text {
  color: var(--color-text-inverse);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
}

.hotel-rating-overlay .review-count {
  color: rgba(255, 255, 255, 0.8);
  font-size: var(--font-size-xs);
  margin-left: var(--spacing-1);
}

/* Hotel Info Box (Overlapping Card) */
.hotel-info-box {
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-xl);
  position: relative;
  margin: calc(var(--spacing-0) - var(--spacing-12)) var(--spacing-4) var(--spacing-0);
  padding: var(--spacing-5);
  padding-bottom: var(--spacing-0);
  z-index: 3;
}

.hotel-info-box h4 {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  line-height: var(--line-height-tight);
  color: var(--color-text-primary);
}

.hotel-location {
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-normal);
  margin-top: var(--spacing-1);
}

/* Star Rating */
.star-rating {
  color: #ffd700;
  font-size: var(--font-size-base);
  display: flex;
  align-items: center;
  gap: var(--spacing-1);
  margin: var(--spacing-2) var(--spacing-0);
}

.star-rating i {
  font-size: var(--font-size-sm);
}

/* Hotel Description */
.hotel-description {
  margin: var(--spacing-4) var(--spacing-4) var(--spacing-0);
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-relaxed);
  flex: 1;
}

/* Hotel Details (Duration & Guests) */
.hotel-details {
  display: flex;
  align-items: center;
  gap: var(--spacing-4);
  margin: var(--spacing-3) var(--spacing-4) var(--spacing-0);
  padding: var(--spacing-3) var(--spacing-0);
  border-top: var(--border-width-thin) var(--border-style-solid) var(--border-color-light);
}

.hotel-detail-item {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
}

.hotel-detail-item i {
  color: var(--color-primary-primary);
  font-size: var(--font-size-base);
}

/* Hotel Footer (Price & Button) */
.hotel-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-4);
  gap: var(--spacing-4);
}

.price {
  display: flex;
  flex-direction: row;
  color: var(--color-text-primary);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
}

.price small {
  color: var(--color-text-muted);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-normal);
  margin-top: var(--spacing-1);
  text-transform: lowercase;
}

.btn-details,
.hotel-book-btn {
  background: linear-gradient(135deg, var(--color-primary-primary) 0%, var(--color-primary-midtone) 100%);
  color: var(--color-text-inverse);
  border: var(--border-width-none);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-3) var(--spacing-6);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-sm);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: var(--transition-all);
  /* box-shadow: 0 4px 12px rgba(240, 152, 20, 0.3); */
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2);
  white-space: nowrap;
}

.btn-details:hover,
.hotel-book-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(240, 152, 20, 0.4);
  text-decoration: none;
  color: var(--color-text-inverse);
}

.btn-details:active,
.hotel-book-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(240, 152, 20, 0.3);
}

.btn-details::after {
  content: '→';
  font-size: var(--font-size-base);
  transition: var(--transition-all);
}

.btn-details:hover::after {
  transform: translateX(4px);
}

/* Responsive Design for Hotel Cards */
@media (max-width: 768px) {
  .popular-hotels-section {
    padding: var(--spacing-4) var(--spacing-0) !important;
    margin-top: var(--spacing-0) !important;
    margin-bottom: var(--spacing-4) !important;
    background: var(--color-bg-primary);
  }

  .popular-header {
    padding: var(--spacing-0) var(--spacing-4);
    margin-bottom: var(--spacing-4) !important;
  }

  .popular-header h2 {
    font-size: var(--font-size-2xl) !important;
    margin-bottom: var(--spacing-1) !important;
  }

  .popular-header .subtitle {
    font-size: var(--font-size-sm) !important;
  }

  /* Hide desktop grid on mobile */
  .hotel-cards-grid {
    margin-bottom: var(--spacing-0) !important;  
    overflow: auto;
  }

  /* Show mobile slider */
  .hotel-cards-slider {
    display: block !important;
    padding: var(--spacing-0) var(--spacing-4);
    margin: var(--spacing-0);
    overflow: visible;
  }

  .hotel-cards-slider .swiper-wrapper {
    display: flex;
    align-items: stretch;
  }

  .hotel-cards-slider .swiper-slide {
    width: 320px !important;
    height: auto;
    display: flex;
    flex-shrink: 0;
  }

  /* Mobile App Style Hotel Card */
  .hotel-cards-slider .hotel-card {
    width: 100%;
    height: 100%;
    margin-bottom: var(--spacing-0);
    border-radius: var(--border-radius-2xl);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.08);
    background: light-dark(var(--color-white), var(--color-bg-secondary));
    display: flex;
    flex-direction: column;
  }

  .hotel-cards-slider .hotel-image {
    height: 240px;
    border-radius: var(--border-radius-xl) var(--border-radius-xl) 0 0;
    overflow: hidden;
  }

  .hotel-cards-slider .hotel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Badge - Mobile App Style */
  .hotel-cards-slider .trending-badge,
  .hotel-cards-slider .hotel-badge {
    top: var(--spacing-2);
    left: var(--spacing-2);
    padding: var(--spacing-1) var(--spacing-3);
    font-size: 10px;
    font-weight: var(--font-weight-bold);
  }

  /* Favorite Icon - Mobile App Style */
  .hotel-cards-slider .hotel-favorite {
    top: var(--spacing-2);
    right: var(--spacing-2);
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
  }

  .hotel-cards-slider .hotel-favorite i {
    font-size: var(--font-size-base);
  }

  /* Rating Overlay - Mobile App Style */
  .hotel-cards-slider .hotel-rating-overlay {
    bottom: var(--spacing-2);
    left: var(--spacing-2);
    padding: var(--spacing-1) var(--spacing-2);
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(10px);
  }

  .hotel-cards-slider .hotel-rating-overlay .rating-text {
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-bold);
  }

  .hotel-cards-slider .hotel-rating-overlay .review-count {
    font-size: 10px;
  }

  /* Hotel Info Box - Mobile App Style */
  .hotel-cards-slider .hotel-info-box {
    margin: calc(var(--spacing-0) - var(--spacing-10)) var(--spacing-3) var(--spacing-0);
    padding: var(--spacing-4);
    background: light-dark(var(--color-white), var(--color-bg-secondary));
    border-radius: var(--border-radius-xl);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  }

  .hotel-cards-slider .hotel-info-box h4 {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-1);
    color: light-dark(#2C2C2C, var(--color-text-primary));
  }

  .hotel-cards-slider .hotel-location {
    font-size: var(--font-size-xs);
    color: light-dark(#666, var(--color-text-secondary));
    margin-top: var(--spacing-0);
  }

  .hotel-cards-slider .star-rating {
    margin: var(--spacing-1) var(--spacing-0);
  }

  .hotel-cards-slider .star-rating i {
    font-size: 16px;
    color: #ffd700;
  }

  /* Hotel Details - Mobile App Style */
  .hotel-cards-slider .hotel-details {
    margin: var(--spacing-2) var(--spacing-3) var(--spacing-0);
    padding: var(--spacing-2) var(--spacing-0);
    border-top: 1px solid light-dark(rgba(0, 0, 0, 0.08), rgba(255, 255, 255, 0.1));
    gap: var(--spacing-3);
  }

  .hotel-cards-slider .hotel-detail-item {
    font-size: var(--font-size-xs);
    gap: var(--spacing-1);
  }

  .hotel-cards-slider .hotel-detail-item i {
    font-size: 18px;
    color: var(--color-primary-primary);
  }

  /* Hotel Footer - Mobile App Style */
  .hotel-cards-slider .hotel-footer {
    padding: var(--spacing-3);
    margin-top: var(--spacing-2);
    gap: var(--spacing-2);
  }

  .hotel-cards-slider .price {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    color: light-dark(#2C2C2C, var(--color-text-primary));
  }

  .hotel-cards-slider .price small {
    font-size: 10px;
    color: light-dark(#999, var(--color-text-secondary));
  }

  .hotel-cards-slider .hotel-book-btn {
    padding: var(--spacing-2) var(--spacing-4);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-bold);
    border-radius: var(--border-radius-lg);
    white-space: nowrap;
    min-width: 100px;
  }

  /* Swiper Pagination - Mobile App Style */
  .hotel-slider-pagination {
    position: relative !important;
    margin-top: var(--spacing-4) !important;
    bottom: auto !important;
    text-align: center;
  }

  .hotel-slider-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: light-dark(rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0.3));
    opacity: 1;
    margin: 0 var(--spacing-1);
    transition: all 0.3s ease;
  }

  .hotel-slider-pagination .swiper-pagination-bullet-active {
    width: 24px;
    background: var(--color-primary-primary);
    border-radius: var(--border-radius-full);
  }

  /* Smooth scrolling for slider */
  .hotel-cards-slider {
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .hotel-cards-slider::-webkit-scrollbar {
    display: none;
  }

  /* Card hover effect for mobile */
  .hotel-cards-slider .hotel-card:active {
    transform: scale(0.98);
  }
}

/* Extra Small Mobile - 480px and below */
@media (max-width: 480px) {
  .hotel-cards-slider .swiper-slide {
    width: 300px !important;
  }

  .hotel-cards-slider .hotel-image {
    height: 220px;
  }

  .popular-header h2 {
    font-size: var(--font-size-xl) !important;
  }

  .hotel-cards-slider .hotel-info-box {
    margin: calc(var(--spacing-0) - var(--spacing-8)) var(--spacing-2) var(--spacing-0);
    padding: var(--spacing-3);
  }

  .hotel-cards-slider .hotel-info-box h4 {
    font-size: var(--font-size-base);
  }
}

/* ============================================
   Popular Destinations Section
   ============================================ */
.popular-destinations-section {
  position: relative;
  padding: var(--spacing-14) var(--spacing-0);
  background: light-dark(#FFF0EC, #0f1a2a);
  /* background-image: url('../images/layer.png'),
                    radial-gradient(circle at 20% 50%, rgba(255, 182, 193, 0.1) 0%, transparent 50%),
                    radial-gradient(circle at 80% 80%, rgba(255, 182, 193, 0.08) 0%, transparent 50%); */
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.popular-destinations-header {
  text-align: center;
  margin-bottom: var(--spacing-10);
}

.popular-destinations-header h2 {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
}

.destinations-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0);
}

.destinations-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--spacing-4);
  overflow-x: auto;
  padding: var(--spacing-2) var(--spacing-0) var(--spacing-4);
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scroll-behavior: smooth;
}

.destinations-grid::-webkit-scrollbar {
  height: 6px;
}

.destinations-grid::-webkit-scrollbar-track {
  background: var(--color-bg-secondary);
  border-radius: var(--border-radius-full);
}

.destinations-grid::-webkit-scrollbar-thumb {
  background: var(--color-text-muted);
  border-radius: var(--border-radius-full);
}

.destinations-grid::-webkit-scrollbar-thumb:hover {
  background: var(--color-text-primary);
}

.destination-card-wrapper {
  flex: 0 0 auto;
  width: 260px;
  min-width: 260px;
}

/* Destination Card */
.destination-card {
  position: relative;
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-xl);
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: var(--transition-all);
  cursor: pointer;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.destination-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border: 2px solid #2196F3;
}

.destination-image {
  width: 100%;
  height: 150px;
  overflow: hidden;
  background: var(--color-bg-secondary);
}

.destination-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-all);
}

.destination-card:hover .destination-image img {
  transform: scale(1.05);
}

.destination-content {
  padding: var(--spacing-4) var(--spacing-4) var(--spacing-8);
  flex: 1;
  display: flex;
  flex-direction: column;
  height: auto;
  position: relative;
}

.destination-name {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-1);
  line-height: var(--line-height-tight);
}

.destination-hotels {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  margin: var(--spacing-0);
  font-weight: var(--font-weight-normal);
}

.destination-link {
  position: absolute;
  bottom: var(--spacing-4);
  right: var(--spacing-4);
  width: 36px;
  height: 36px;
  background: var(--color-bg-primary);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: var(--border-radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-primary);
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: var(--transition-all);
  z-index: 2;
}

.destination-link i {
  font-size: 18px;
  transition: var(--transition-all);
}

.destination-link:hover {
  background: var(--color-text-primary);
  color: var(--color-text-inverse);
  border-color: var(--color-text-primary);
}

.destination-link:hover i {
  transform: translateX(2px);
}

/* Call to Action Card */
.destination-cta-card {
  background: linear-gradient(135deg, #ff9800 0%, #ff6f00 100%);
  border-radius: var(--border-radius-xl);
  padding: var(--spacing-6) var(--spacing-5);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  box-shadow: 0 2px 8px rgba(255, 152, 0, 0.2);
  transition: var(--transition-all);
}

.destination-cta-card:hover {
  box-shadow: 0 4px 16px rgba(255, 152, 0, 0.3);
}

.cta-title {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-inverse);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-6);
  line-height: var(--line-height-relaxed);
}

.cta-button {
  background: var(--color-text-primary);
  color: var(--color-text-inverse);
  border: var(--border-width-none);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-3) var(--spacing-5);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2);
  transition: var(--transition-all);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.cta-button:hover {
  background: rgba(0, 0, 0, 0.9);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
  color: var(--color-text-inverse);
  text-decoration: none;
}

.cta-button i {
  font-size: var(--font-size-base);
  transition: var(--transition-all);
}

.cta-button:hover i {
  transform: translateX(3px);
}

/* Responsive Design for Popular Destinations */
@media (max-width: 991px) {
  .destination-card-wrapper {
    width: 250px;
    min-width: 250px;
  }
  
  .destination-image {
    height: 150px;
  }
  
  .destination-cta-card {
    min-height: 280px;
    padding: var(--spacing-5) var(--spacing-4);
  }
  
  .cta-title {
    font-size: var(--font-size-lg);
  }
}

@media (max-width: 768px) {
  .popular-destinations-section {
    padding: var(--spacing-8) var(--spacing-0);
  }
  
  .popular-destinations-header h2 {
    font-size: var(--font-size-2xl);
  }
  
  .destinations-subtitle {
    font-size: var(--font-size-sm);
  }
  
  .destination-card-wrapper {
    width: 260px;
    min-width: 260px;
  }
  
  .destination-image {
    height: 180px;
  }
  
  .destination-content {
    padding: var(--spacing-3) var(--spacing-3) var(--spacing-6);
  }
  
  .destination-name {
    font-size: var(--font-size-base);
  }
  
  .destination-link {
    width: 32px;
    height: 32px;
    bottom: var(--spacing-3);
    right: var(--spacing-3);
  }
  
  .destination-link i {
    font-size: 16px;
  }
  
  .destination-cta-card {
    min-height: 240px;
    padding: var(--spacing-4) var(--spacing-3);
  }
  
  .cta-title {
    font-size: var(--font-size-base);
    margin-bottom: var(--spacing-4);
  }
  
  .cta-button {
    padding: var(--spacing-2) var(--spacing-4);
    font-size: var(--font-size-xs);
  }
}

@media (max-width: 576px) {
  .destination-card-wrapper {
    width: 85%;
    min-width: 85%;
  }
}

/* ============================================
   Main Awards Section
   ============================================ */
.main_awards {
  background: #fff2eb; /* Custom color - keep as is */
  padding-top: var(--spacing-7);
  padding-bottom: var(--spacing-2);
}

.page_head_h3 {
  text-align: center;
  margin: var(--spacing-0);
  margin-bottom: var(--spacing-10);
  font-size: var(--font-size-4xl);
  line-height: var(--line-height-none);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-primary);
  font-family: var(--font-family-heading);
}

.partners {
  display: flex;
  gap: var(--spacing-12);
  flex-wrap: wrap;
  justify-content: center;
  width: var(--width-full);
}

.partner img {
  max-width: 130px; /* Custom value - keep as is */
  max-height: 75px; /* Custom value - keep as is */
}

.partner span {
  margin-top: var(--spacing-2);
  color: var(--color-text-primary);
  font-size: 0.9em; /* Custom value - keep as is */
}

/* ============================================
   Why Choose Section
   ============================================ */
.why_choose {
  padding: var(--spacing-10) var(--spacing-0) var(--spacing-12);
  background: var(--color-bg-primary);
  float: left;
  width: var(--width-full);
  position: relative;
  overflow: hidden;
  z-index: var(--z-index-base);
}

.choose_us_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-12);
}

.choose_us_left {
  flex: 1;
}

.choose_us_left img {
  width: var(--width-full);
  height: var(--height-full);
  object-fit: cover;
}

.choose_us_right {
  flex: 1;
  text-align: left;
}

.choose_us_right h3 {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-7);
  color: var(--color-text-primary);
}

.choose_widget {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-6);
}

.widget_icon {
  flex-shrink: var(--spacing-0);
}

.widget_icon img {
  width: var(--size-lg);
  height: var(--size-lg);
}

.widget_desc h5 {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--spacing-1);
  color: var(--color-text-primary);
}

.widget_desc p {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
}

/* ============================================
   Curated Travel Package Section
   ============================================ */
.curated_trvl_pckg {
  padding: var(--spacing-10) var(--spacing-0) var(--spacing-10);
  background-size: cover;
  position: relative;
  background-color: var(--color-bg-primary);
}

.hdng {
  text-align: center;
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-medium);
  text-transform: capitalize;
}

.hdng h3 {
  color: var(--color-text-primary);
  font-family: var(--font-family-heading);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-normal);
  position: relative;
  top: var(--spacing-1);
}

.carousel-container {
  position: relative;
  max-width: var(--width-full);
  overflow: visible;
}

.carousel {
  height: 650px !important; /* Custom value - keep as is */
  perspective: 254px !important; /* Custom value - keep as is */
  overflow-y: clip;
}

.carousel-item {
  cursor: grab !important;
  width: 400px !important; /* Custom value - keep as is */
  opacity: var(--opacity-100) !important;
  height: auto !important;
}

.carousel-item img {
  width: var(--width-full) !important;
  box-shadow: var(--shadow-md);
  border-radius: var(--border-radius-2xl);
  height: 560px; /* Custom value - keep as is */
}

.carousel-arrow {
  position: absolute;
  bottom: -145px; /* Custom value - keep as is */
  transform: translateY(-50%);
  background-color: var(--color-primary-primary);
  color: light-dark(var(--color-black), var(--color-text-primary));
  font-size: var(--font-size-2xl);
  padding: var(--spacing-0);
  border-radius: var(--border-radius-circle);
  cursor: pointer;
  z-index: var(--z-index-base);
  width: var(--size-xl);
  height: var(--size-xl);
  line-height: var(--size-xl);
  text-align: center;
  user-select: none;
}

.carousel-arrow.left {
  right: var(--spacing-10);
}

.carousel-arrow.right {
  right: calc(var(--spacing-0) - var(--spacing-7));
}

.carousel-arrow i {
  position: relative;
  top: var(--spacing-2);
  color: var(--color-white);
  font-weight: var(--font-weight-thin);
}

.curated_trip_btm {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: var(--z-index-base);
}

.curated_trip_btm h3 {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-primary);
  font-family: var(--font-family-heading);
  text-align: center;
}

.curated_trip_btm a {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  text-align: center;
  display: block;
  padding: var(--spacing-2);
  border: var(--border-width-thin) var(--border-style-solid) #3b800d; /* Custom color - keep as is */
  width: 15%; /* Custom percentage - keep as is */
  border-radius: var(--spacing-12);
  background-color: #3b800d; /* Custom color - keep as is */
}

/* ============================================
   Trending Holiday Destinations Section
   ============================================ */
.trending-holiday-section {
  position: relative;
  padding: var(--spacing-14) var(--spacing-0);
  background: light-dark(#FFF0EC, #0f1a2a);
  float: left;
  width: var(--width-full);
}

.trending-holiday-header {
  text-align: center;
  margin-bottom: var(--spacing-10);
}

.trending-holiday-header h2 {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
}

.holiday-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0);
}

.holiday-packages-slider {
  position: relative;
  padding: var(--spacing-2) var(--spacing-0);
  overflow: hidden;
}

.holiday-packages-slider .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.holiday-packages-slider .swiper-slide {
  height: auto;
  display: flex;
  align-items: stretch;
}

.holiday-packages-slider .swiper-slide .holiday-card-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
}

/* Swiper Navigation Buttons */
.holiday-packages-slider .swiper-button-next,
.holiday-packages-slider .swiper-button-prev {
  width: 48px;
  height: 48px;
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-full);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: var(--transition-all);
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-primary);
}

.holiday-packages-slider .swiper-button-next {
  right: 24px;
}

.holiday-packages-slider .swiper-button-prev {
  left: 24px;
}

.holiday-packages-slider .swiper-button-next::after,
.holiday-packages-slider .swiper-button-prev::after {
  display: none;
}

.holiday-packages-slider .swiper-button-next i,
.holiday-packages-slider .swiper-button-prev i {
  font-size: var(--font-size-2xl);
  line-height: 1;
  color: var(--color-text-primary);
}

.holiday-packages-slider .swiper-button-next:hover,
.holiday-packages-slider .swiper-button-prev:hover {
  background: var(--color-primary-primary);
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(240, 152, 20, 0.3);
}

.holiday-packages-slider .swiper-button-next:hover i,
.holiday-packages-slider .swiper-button-prev:hover i {
  color: var(--color-text-inverse);
}

.holiday-packages-slider .swiper-button-disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}

.holiday-card-wrapper {
  padding: var(--spacing-2);
}

.holiday-card {
  position: relative;
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-2xl);
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: var(--transition-all);
  cursor: pointer;
  height: 100%;
  width:100%;
  display: flex;
  flex-direction: column;
}

.holiday-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 4px 16px rgba(0, 0, 0, 0.08);
}

.holiday-image {
  position: relative;
  width: 100%;
  height: 280px;
  overflow: hidden;
  background: var(--color-bg-secondary);
}

.holiday-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-all);
}

.holiday-card:hover .holiday-image img {
  transform: scale(1.1);
}

.holiday-overlay {
  position: absolute;
  top: var(--spacing-3);
  left: var(--spacing-3);
  z-index: 2;
}

.holiday-image-caption {
  display: none;
}

.holiday-card-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

.holiday-card-link:hover,
.holiday-card-link:focus {
  text-decoration: none;
  color: inherit;
}

.holiday-badge {
  background: linear-gradient(135deg, #ff9800 0%, #ff6f00 100%);
  color: var(--color-text-inverse);
  padding: var(--spacing-2) var(--spacing-4);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.holiday-content {
  padding: var(--spacing-5);
  flex: 1;
  display: flex;
  flex-direction: column;
}

.holiday-location {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
  margin-bottom: var(--spacing-2);
}

.holiday-location i {
  font-size: var(--font-size-base);
  color: var(--color-primary-primary);
}

.holiday-title {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-3);
  line-height: var(--line-height-tight);
}

.holiday-duration {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
  margin-bottom: var(--spacing-4);
}

.holiday-duration i {
  font-size: var(--font-size-base);
  color: var(--color-primary-primary);
}

.holiday-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding-top: var(--spacing-4);
  border-top: var(--border-width-thin) var(--border-style-solid) var(--border-color-light);
  gap: var(--spacing-4);
}

.holiday-price {
  display: flex;
  flex-direction: column;
}

.price-label {
  font-size: var(--font-size-xs);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
}

.price-amount {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  line-height: var(--line-height-tight);
}

.holiday-view-btn {
  background: linear-gradient(135deg, var(--color-primary-primary) 0%, var(--color-primary-midtone) 100%);
  color: var(--color-text-inverse);
  border: var(--border-width-none);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-3) var(--spacing-5);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2);
  transition: var(--transition-all);
  box-shadow: 0 4px 12px rgba(240, 152, 20, 0.3);
  white-space: nowrap;
}

.holiday-view-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(240, 152, 20, 0.4);
  color: var(--color-text-inverse);
  text-decoration: none;
}

.holiday-view-btn i {
  font-size: var(--font-size-base);
  transition: var(--transition-all);
}

.holiday-view-btn:hover i {
  transform: translateX(4px);
}

.holiday-view-all {
  text-align: center;
  margin-top: var(--spacing-8);
}

.view-all-packages-btn {
  background: var(--color-bg-primary);
  color: var(--color-primary-primary);
  border: 2px solid var(--color-primary-primary);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-4) var(--spacing-8);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2);
  transition: var(--transition-all);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.view-all-packages-btn:hover {
  background: var(--color-primary-primary);
  color: var(--color-text-inverse);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(240, 152, 20, 0.3);
  text-decoration: none;
}

.view-all-packages-btn i {
  font-size: var(--font-size-lg);
  transition: var(--transition-all);
}

.view-all-packages-btn:hover i {
  transform: translateX(4px);
}

/* Responsive Design for Trending Holiday Section */
@media (max-width: 991px) {
  .holiday-packages-slider .swiper-button-prev {
    left: -12px !important;
  }
  
  .holiday-packages-slider .swiper-button-next {
    right: -12px !important;
  }
  
  .holiday-packages-slider .swiper-button-prev,
  .holiday-packages-slider .swiper-button-next {
    width: 40px;
    height: 40px;
  }
  
  .holiday-image {
    height: 240px;
  }
}

@media (max-width: 768px) {
  .trending-holiday-section {
    padding: var(--spacing-8) var(--spacing-0);
  }
  
  .trending-holiday-header h2 {
    font-size: var(--font-size-2xl);
  }
  
  .holiday-subtitle {
    font-size: var(--font-size-sm);
  }
  
  .holiday-packages-slider .swiper-button-prev {
    left: 0 !important;
  }
  
  .holiday-packages-slider .swiper-button-next {
    right: 0 !important;
  }
  
  .holiday-packages-slider .swiper-button-prev,
  .holiday-packages-slider .swiper-button-next {
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9) !important;
  }
  
  .holiday-packages-slider .swiper-button-prev i,
  .holiday-packages-slider .swiper-button-next i {
    font-size: var(--font-size-xl) !important;
  }
  
  .holiday-image {
    height: 220px;
  }
  
  .holiday-footer {
    flex-direction: column;
    align-items: stretch;
    gap: var(--spacing-3);
  }
  
  .holiday-price {
    text-align: center;
  }
  
  .holiday-view-btn {
    width: 100%;
    justify-content: center;
  }
  
  .view-all-packages-btn {
    padding: var(--spacing-3) var(--spacing-6);
    font-size: var(--font-size-sm);
  }
}

/* ============================================
   Where We Go Section
   ============================================ */
.whereWeGoSec {
  background: url(../images/exploreTravelOptionBG.jpg) no-repeat center center;
  background-size: cover;
  height: 480px; /* Custom value - keep as is */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: var(--spacing-2) var(--spacing-5);
}

/* ============================================
   Why Travel With Us Section
   ============================================ */
.why-travel-section {
  padding: var(--spacing-16) var(--spacing-0);
  background: var(--color-bg-primary);
}

.why-travel-header {
  text-align: center;
  margin-bottom: var(--spacing-12);
}

.why-travel-title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
}

.why-travel-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0);
}

.why-travel-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-6);
  max-width: 100%;
  margin: var(--spacing-0) auto;
  padding: var(--spacing-0) var(--spacing-4);
}

.why-travel-card {
  background: var(--color-white);
  border-radius: var(--border-radius-xl);
  padding: var(--spacing-8) var(--spacing-6);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: var(--transition-all);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}

.why-travel-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transform: translateY(-4px);
}

/* Card Background Colors - Matching exact pastel colors from design */
.card-best-price {
  background: #E0F7F4;
}

.card-24-7 {
  background: #FCE7F3;
}

.card-satisfaction {
  background: #DBEAFE;
}

.card-easy-booking {
  background: #F3E8FF;
}

.why-travel-icon-wrapper {
  margin-bottom: var(--spacing-4);
}

.why-travel-icon {
  width: 72px;
  height: 72px;
  background: var(--color-white);
  border-radius: var(--border-radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: var(--transition-all);
}

.why-travel-card:hover .why-travel-icon {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.why-travel-icon i {
  font-size: 36px;
  line-height: 1;
}

/* Icon Colors - Matching exact colors from design */
.card-best-price .why-travel-icon i {
  color: #F59E0B; /* Golden/Amber */
}

.card-24-7 .why-travel-icon i {
  color: #EF4444; /* Red */
}

.card-satisfaction .why-travel-icon i {
  color: #3B82F6; /* Blue */
}

.card-easy-booking .why-travel-icon i {
  color: #10B981; /* Green/Emerald */
}

.why-travel-card-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: #1F2937;
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-3);
  font-family: var(--font-family-heading);
}

.why-travel-card-desc {
  font-size: var(--font-size-sm);
  color: #6B7280;
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-6);
  flex: 1;
}

.why-travel-link {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-1);
  color: #1F2937;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  text-decoration: none;
  transition: var(--transition-all);
  margin-top: auto;
}

.why-travel-link:hover {
  color: var(--color-primary-primary);
  gap: var(--spacing-2);
}

.why-travel-link i {
  font-size: var(--font-size-base);
  transition: var(--transition-all);
  vertical-align: middle;
}

.why-travel-link:hover i {
  transform: translateX(4px);
}

.whereWeGoSec-content {
  background-color: rgba(0, 0, 0, 0.25); /* Custom rgba - keep as is */
  backdrop-filter: blur(12px); /* Custom value - keep as is */
  border-radius: var(--border-radius-xl);
  text-align: center;
  color: var(--color-white);
  max-width: 800px; /* Custom value - keep as is */
  width: var(--width-full);
  padding: var(--spacing-12) var(--spacing-7);
  box-shadow: var(--shadow-lg);
}

.whereWeGoSec-title {
  font-family: var(--font-family-heading);
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  margin-bottom: var(--spacing-5);
}

.whereWeGoSec-para {
  font-family: var(--font-family-base);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-light);
  color: var(--color-white);
  margin-bottom: var(--spacing-7);
}

.BtnExplore {
  background-color: #2c9a36; /* Custom color - keep as is */
  color: var(--color-white);
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-base);
  padding: var(--spacing-3) var(--spacing-7);
  border-radius: var(--spacing-6);
  border: var(--border-width-none);
  transition: background-color var(--transition-slow);
}

.BtnExplore:hover {
  background-color: #24812b; /* Custom color - keep as is */
  color: var(--color-white);
}

/* ============================================
   Top Airline Partner Section
   ============================================ */
.airline-partner-section {
  padding: var(--spacing-5) var(--spacing-0) var(--spacing-10);
  /* background: var(--color-bg-airline-section); */
  position: relative;
  float: left;
  width: var(--width-full);
  display: none;
}

.airline-partner-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover, cover, cover;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: center, center, center;
  opacity: 0.7;
  pointer-events: none;
}

.airline-partner-header {
  text-align: center;
  margin-bottom: var(--spacing-12);
  position: relative;
  z-index: 1;
}

.airline-partner-title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
}

.airline-partner-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-primary);
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0);
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.airline-partner-slider {
  position: relative;
  padding: var(--spacing-4) var(--spacing-0);
  overflow: visible;
}

.airline-partner-slider .swiper-wrapper {
  align-items: center;
}

.airline-partner-slider .swiper-slide {
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.airline-partner-card {
  background: var(--color-bg-primary);
  backdrop-filter: blur(10px);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-xl);
  padding: var(--spacing-2) var(--spacing-4);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: var(--transition-all);
  cursor: pointer;
  height: 100%;
}

/* .airline-partner-card:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
} */

.airline-logo-wrapper {
  width: 100%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-2);
}

.airline-logo-fallback {
  width: 56px;
  height: 56px;
  border-radius: var(--border-radius-full);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--color-white);
  color: var(--color-info);
  border: 1px solid var(--border-color-light);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
}

.airline-logo {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  /* filter: brightness(0) invert(1);
  opacity: 0.9; */
  transition: var(--transition-all);
}

/* .airline-partner-card:hover .airline-logo {
  opacity: 1;
  filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(255, 255, 255, 0.3));
  transform: scale(1.05);
} */

.airline-name {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-primary);
  text-align: center;
  margin-top: auto;
  line-height: var(--line-height-tight);
}

/* Swiper Navigation Buttons */
.airline-partner-slider .swiper-button-next,
.airline-partner-slider .swiper-button-prev {
  width: 44px;
  height: 44px;
  background: var(--color-info);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--border-radius-full);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  transition: var(--transition-all);
  margin-top: 0;
  display: none;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-white);
}

.airline-partner-slider .swiper-button-next {
  right: 10px;
}

.airline-partner-slider .swiper-button-prev {
  left: 10px;
}

.airline-partner-slider .swiper-button-next::after,
.airline-partner-slider .swiper-button-prev::after {
  display: none;
}

.airline-partner-slider .swiper-button-next i,
.airline-partner-slider .swiper-button-prev i {
  font-size: var(--font-size-xl);
  line-height: 1;
  color: var(--color-white);
}

.airline-partner-slider .swiper-button-next:hover,
.airline-partner-slider .swiper-button-prev:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.3);
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.airline-partner-slider .swiper-button-disabled {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}

.airline-logo.is-broken {
  display: none !important;
}

@media (max-width: 767px) {
  .airline-partner-section {
    padding: 24px 0 20px;
    background: var(--color-bg-primary, #fff);
  }

  .airline-partner-section::before {
    display: none;
  }

  .airline-partner-section .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .airline-partner-header {
    text-align: left;
    margin-bottom: 14px;
  }

  .airline-partner-title {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-bottom: 4px;
    letter-spacing: -0.01em;
  }

  .airline-partner-subtitle {
    font-size: 0.8125rem;
    line-height: 1.45;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    color: var(--color-text-secondary, #6b7280);
  }

  .airline-partner-slider {
    padding: 0 0 28px;
    overflow: hidden;
  }

  .airline-partner-slider .swiper-slide {
    height: auto;
  }

  .airline-partner-card {
    min-height: 118px;
    padding: 12px 10px 10px;
    border: 1px solid var(--border-color-light, #eef0f3);
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
    background: var(--color-bg-primary, #fff);
    gap: 8px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }

  .airline-partner-card:active {
    transform: scale(0.98);
  }

  .airline-logo-wrapper {
    height: 52px;
    padding: 0;
  }

  .airline-logo {
    max-height: 44px;
    max-width: 92%;
  }

  .airline-logo-fallback,
  .airline-logo-fallback--backup {
    width: 44px;
    height: 44px;
    font-size: 1rem;
    background: var(--color-info-lightest, #eff6ff);
    color: var(--color-info, #008cff);
    border: 1px solid var(--border-color-light, #e5e7eb);
  }

  .airline-name {
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.25;
    margin-top: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.5em;
    color: var(--color-text-primary, #111827);
  }

  .airline-partner-slider .swiper-button-next,
  .airline-partner-slider .swiper-button-prev {
    display: none !important;
  }

  .airline-swiper-pagination {
    display: block;
    bottom: 4px !important;
    line-height: 0;
  }

  .airline-swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0 3px !important;
    background: #d1d5db !important;
    opacity: 1;
    transition: width 0.25s ease, background-color 0.25s ease;
  }

  .airline-swiper-pagination .swiper-pagination-bullet-active {
    width: 18px;
    border-radius: 999px;
    background: var(--color-info, #008cff) !important;
  }
}

@media (min-width: 768px) {
  .airline-swiper-pagination {
    display: none;
  }

  .airline-partner-slider .swiper-button-next,
  .airline-partner-slider .swiper-button-prev {
    display: flex;
  }
}

/* ============================================
   Frequently Asked Questions Section
   ============================================ */
.faq-section {
  padding: var(--spacing-16) var(--spacing-0);
  background: linear-gradient(135deg, light-dark(#F5F5F5, #152238) 0%, light-dark(#E8E8E8, #0f1a2a) 100%);
  position: relative;
  float: left;
  width: var(--width-full);
  overflow: hidden;
}

/* .faq-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: 
    repeating-linear-gradient(45deg, transparent, transparent 10px, light-dark(rgba(0, 0, 0, 0.03), rgba(255, 255, 255, 0.05)) 10px, light-dark(rgba(0, 0, 0, 0.03), rgba(255, 255, 255, 0.05)) 20px),
    radial-gradient(circle at 85% 20%, light-dark(rgba(33, 150, 243, 0.05), rgba(33, 150, 243, 0.1)) 0%, transparent 50%),
    radial-gradient(circle at 15% 80%, light-dark(rgba(156, 39, 176, 0.05), rgba(156, 39, 176, 0.1)) 0%, transparent 50%);
  pointer-events: none;
} */

.faq-header {
  text-align: center;
  margin-bottom: var(--spacing-8);
  position: relative;
  z-index: 1;
}

.faq-title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: light-dark(#2C3E50, var(--color-text-primary));
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-2);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
}

.faq-subtitle {
  font-size: var(--font-size-base);
  color: light-dark(#7F8C8D, var(--color-text-secondary));
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0);
}

.faq-categories {
  display: flex;
  justify-content: center;
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-10);
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

.faq-category-btn {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  padding: var(--spacing-3) var(--spacing-6);
  background: light-dark(var(--color-white), var(--color-bg-secondary));
  border: 1px solid light-dark(#E0E0E0, var(--border-color-medium));
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: light-dark(#5A5A5A, var(--color-text-primary));
  cursor: pointer;
  transition: var(--transition-all);
  font-family: var(--font-family-base);
}

.faq-category-btn:hover {
  border-color: var(--color-primary-primary);
  color: var(--color-primary-primary);
  background: light-dark(rgba(240, 152, 20, 0.05), rgba(240, 152, 20, 0.15));
}

.faq-category-btn.active {
  background: var(--color-primary-primary);
  border-color: var(--color-primary-primary);
  color: var(--color-white);
}

.faq-category-btn i {
  font-size: var(--font-size-lg);
}

.faq-content-card {
  background: light-dark(var(--color-white), var(--color-bg-primary));
  border-radius: var(--border-radius-2xl);
  padding: var(--spacing-8) var(--spacing-6);
  box-shadow: light-dark(0 4px 20px rgba(0, 0, 0, 0.08), 0 4px 20px rgba(0, 0, 0, 0.3));
  position: relative;
  z-index: 1;
  max-width: 900px;
  margin: var(--spacing-0) auto;
}

.faq-item {
  border-bottom: 1px solid light-dark(#F0F0F0, var(--border-color-light));
  padding-bottom: var(--spacing-6);
  margin-bottom: var(--spacing-6);
  transition: var(--transition-all);
}

.faq-item:last-child {
  border-bottom: none;
  margin-bottom: var(--spacing-0);
  padding-bottom: var(--spacing-0);
}

.faq-item-header {
  display: flex;
  align-items: center;
  gap: var(--spacing-4);
  cursor: pointer;
  user-select: none;
}

.faq-number {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: light-dark(#2C3E50, var(--color-text-primary));
  min-width: 50px;
  line-height: 1;
}

.faq-question {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: light-dark(#2C3E50, var(--color-text-primary));
  margin: var(--spacing-0);
  flex: 1;
  line-height: var(--line-height-relaxed);
}

.faq-toggle {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: light-dark(var(--color-white), var(--color-bg-secondary));
  border: 1px solid light-dark(#E0E0E0, var(--border-color-medium));
  border-radius: var(--border-radius-md);
  cursor: pointer;
  transition: var(--transition-all);
  flex-shrink: 0;
  padding: var(--spacing-0);
}

.faq-item.active .faq-toggle {
  background: light-dark(#2C3E50, var(--color-text-primary));
  border-color: light-dark(#2C3E50, var(--color-text-primary));
  color: var(--color-white);
}

.faq-toggle:hover {
  border-color: var(--color-primary-primary);
  background: light-dark(rgba(240, 152, 20, 0.05), rgba(240, 152, 20, 0.15));
}

.faq-item.active .faq-toggle:hover {
  background: light-dark(#1a1a1a, #3a3a3a);
  border-color: light-dark(#1a1a1a, #3a3a3a);
}

.faq-toggle i {
  font-size: var(--font-size-lg);
  color: light-dark(#2C3E50, var(--color-text-primary));
  transition: var(--transition-all);
}

.faq-item.active .faq-toggle i {
  color: var(--color-white);
}


.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
  padding: var(--spacing-0) var(--spacing-0) var(--spacing-0) 66px;
}

.faq-item.active .faq-answer {
  max-height: 500px;
  padding: var(--spacing-4) var(--spacing-0) var(--spacing-0) 66px;
}

.faq-answer p {
  font-size: var(--font-size-base);
  color: light-dark(#7F8C8D, var(--color-text-secondary));
  line-height: var(--line-height-relaxed);
  margin: var(--spacing-0);
}

/* ============================================
   Top Flight Routes Section
   ============================================ */
.topFlightRoutes {
  background-color: var(--color-bg-primary);
  padding: var(--spacing-14) var(--spacing-0);
   float: left;
  width: var(--width-full);
}

.route-sec-header {
  text-align: center;
  margin-bottom: var(--spacing-6);
  position: relative;
 
}

.route-sec-title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-3);
  font-family: var(--font-family-heading);
  line-height: var(--line-height-tight);
  letter-spacing: -0.02em;
  position: relative;
  display: inline-block;
}



.route-sec-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-normal);
  margin: var(--spacing-0) var(--spacing-0) var(--spacing-0);
  line-height: var(--line-height-relaxed);
}

/* Flight Routes Grid Layout */
.flight-routes-grid {
 display: flex;
 flex-wrap: wrap;
  gap: var(--spacing-0);
  padding: var(--spacing-4) var(--spacing-0);
}

.route-card-wrapper {
  width: 33.33%;
  padding: 5px;
}

/* Grid Card Style */
.route-card-link {
  display: block;
  text-decoration: none;
  width: 100%;
  height: 100%;
}

.route-card-grid {
  border: 2px solid light-dark(#F0F0F0, rgba(255, 255, 255, 0.08));
  border-radius: var(--border-radius-2xl);
  background: linear-gradient(135deg, 
    light-dark(#FFFFFF, rgba(255, 255, 255, 0.02)) 0%, 
    light-dark(#FAFAFA, rgba(255, 255, 255, 0.01)) 100%);
  padding: var(--spacing-2) var(--spacing-2);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04),
              0 1px 3px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-2);
  height: 100%;
  position: relative;
  cursor: pointer;
  overflow: hidden;
}

.route-card-grid::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, 
    transparent, 
    rgba(240, 152, 20, 0.05), 
    transparent);
  transition: left 0.6s ease;
}

.route-card-grid:hover::before {
  left: 100%;
}

.route-card-grid::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, 
    rgba(240, 152, 20, 0.02) 0%, 
    rgba(240, 152, 20, 0.01) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
  border-radius: var(--border-radius-2xl);
}

.route-card-grid:hover::after {
  opacity: 1;
}

.route-card-grid:hover {
  border-color: var(--color-primary-primary);
  box-shadow: 0 8px 24px rgba(240, 152, 20, 0.2),
              0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px) scale(1.01);
  background: linear-gradient(135deg, 
    light-dark(#FFFFFF, rgba(255, 255, 255, 0.05)) 0%, 
    light-dark(#FFFBF5, rgba(255, 255, 255, 0.03)) 100%);
}

.route-departure,
.route-arrival {
  flex: 1;
  display: flex;

  width: 40%;
  flex-direction: column;
  gap: var(--spacing-2);
  position: relative;
  z-index: 1;
}

.route-city {
  font-family: var(--font-family-heading);
  font-size: var(--font-size-md);
  white-space: nowrap;
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
  line-height: var(--line-height-tight);
  letter-spacing: -0.01em;
  transition: color 0.3s ease;
  position: relative;
}

.route-card-grid:hover .route-city {
  color: var(--color-primary-primary);
}

.route-airport {
  font-family: var(--font-family-base);
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: var(--font-weight-medium);
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.route-card-grid:hover .route-airport {
  opacity: 1;
}

.route-connection {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 20%;
  flex-shrink: 0;
  z-index: 1;
}

.route-line {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2px;
  height: calc(100% + 20px);
  background-image: linear-gradient(to bottom, 
    transparent 0%, 
    transparent 42%, 
    light-dark(#D0D0D0, rgba(255, 255, 255, 0.2)) 42%, 
    light-dark(#D0D0D0, rgba(255, 255, 255, 0.2)) 58%, 
    transparent 58%, 
    transparent 100%);
  background-size: 2px 14px;
  background-repeat: repeat-y;
  transition: background-image 0.3s ease;
}

.route-card-grid:hover .route-line {
  background-image: linear-gradient(to bottom, 
    transparent 0%, 
    transparent 42%, 
    rgba(240, 152, 20, 0.4) 42%, 
    rgba(240, 152, 20, 0.4) 58%, 
    transparent 58%, 
    transparent 100%);
}

.route-icon-wrapper {
  position: relative;
  z-index: 2;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, 
    rgba(240, 152, 20, 0.1) 0%, 
    rgba(240, 152, 20, 0.05) 100%);
  border: 2px solid rgba(240, 152, 20, 0.2);
  border-radius: var(--border-radius-full);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 2px 8px rgba(240, 152, 20, 0.1);
}

.route-card-grid:hover .route-icon-wrapper {
  background: linear-gradient(135deg, 
    var(--color-primary-primary) 0%, 
    var(--color-primary-midtone) 100%);
  border-color: var(--color-primary-primary);
  transform: scale(1.1) rotate(5deg);
  box-shadow: 0 4px 16px rgba(240, 152, 20, 0.3);
}

.route-airplane-icon {
  font-size: var(--font-size-2xl);
  color: var(--color-primary-primary);
  transform: rotate(90deg);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  filter: drop-shadow(0 2px 4px rgba(240, 152, 20, 0.2));
}

.route-card-grid:hover .route-airplane-icon {
  color: var(--color-white);
  transform: rotate(90deg) scale(1.1);
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}

.btn-destination {
  font-family: var(--font-family-base);
  display: inline-block;
  border: var(--border-width-thin) var(--border-style-solid) var(--border-color-medium);
  border-radius: var(--border-radius-full);
  padding: var(--spacing-2) var(--spacing-4);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-secondary);
  background: light-dark(#F8F9FA, var(--color-bg-secondary));
  transition: var(--transition-all);
  white-space: nowrap;
  cursor: pointer;
}

.btn-destination:hover {
  background: var(--color-primary-primary);
  color: var(--color-text-inverse);
  border-color: var(--color-primary-primary);
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 2px 8px rgba(240, 152, 20, 0.3);
}


/* ============================================
   Responsive Styles
   ============================================ */
@media (max-width: 991px) {
  .flight-routes-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-4);
  }
}

@media (max-width: 767px) {
  .footer-services-list li { padding-left: var(--spacing-0);
}
 .footer-top-section .row {
    margin-right: 0!important;
}
#flight_form .smalway .direct-flight-nav-item .special-fare-text {
    color: #222 !important;
}
#flight_form .trvlhdr-optn, #flight_form .flightSearchNavigation-f {
    /* padding: 5px; */
}
#flight_form .smalway .direct-flight-nav-item .special-fare-box 
{ border: 1px solid rgb(21 21 21 / 90%) !important;}
    .car_form .date_time_picker {
        flex-direction: row;
        gap: var(--spacing-3);
    }
    .searchsbmt{border-radius: 7px!important;}
.whereWeGoSec-title {
    font-size: var(--font-size-4xl);
  }
  .tab-content.custmtab { background: #f5f5f5 !important;
    /* z-index: 0 !important; */
    box-shadow: none !important;
    padding: 10px !important;}
  .whereWeGoSec-para {
    font-size: var(--font-size-sm);
  }
  .whereWeGoSec-content {
    padding: var(--spacing-7) var(--spacing-5);
  }
  .hotel-image img {
    height: 220px; /* Custom value - keep as is */
  }
  
  .why-travel-section {
    padding: var(--spacing-12) var(--spacing-0);
  }
  
  .why-travel-title {
    font-size: var(--font-size-3xl);
  }
  
  .why-travel-subtitle {
    font-size: var(--font-size-sm);
  }
  
  .why-travel-cards {
    grid-template-columns: 1fr;
    gap: var(--spacing-5);
    padding: var(--spacing-0) var(--spacing-4);
  }
  
  .why-travel-card {
    padding: var(--spacing-6) var(--spacing-5);
  }
  
  .why-travel-icon {
    width: 70px;
    height: 70px;
  }
  
  .why-travel-icon i {
    font-size: 36px;
  }
  
  .why-travel-card-title {
    font-size: var(--font-size-lg);
  }
  
  .holiday-packages-slider .swiper-button-next,
  .holiday-packages-slider .swiper-button-prev,
  .flight-routes-slider .swiper-button-next,
  .flight-routes-slider .swiper-button-prev {
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9) !important;
  }
  
  .holiday-packages-slider .swiper-button-next,
  .flight-routes-slider .swiper-button-next {
    right: 0 !important;
  }
  
  .holiday-packages-slider .swiper-button-prev,
  .flight-routes-slider .swiper-button-prev {
    left: 0 !important;
  }
  
  .holiday-packages-slider .swiper-button-next i,
  .holiday-packages-slider .swiper-button-prev i,
  .route-sec-title {
    font-size: var(--font-size-3xl);
  }
  
  .route-sec-title::after {
    width: 50px;
    height: 3px;
  }
  
  .why-travel-section {
    padding: var(--spacing-12) var(--spacing-0);
  }
  
  .why-travel-title {
    font-size: var(--font-size-3xl);
  }
  
  .why-travel-subtitle {
    font-size: var(--font-size-sm);
  }
  
  .why-travel-cards {
    grid-template-columns: 1fr;
    gap: var(--spacing-5);
    padding: var(--spacing-0) var(--spacing-4);
  }
  
  .why-travel-card {
    padding: var(--spacing-6) var(--spacing-5);
  }
  
  .why-travel-icon {
    width: 70px;
    height: 70px;
  }
  
  .why-travel-icon i {
    font-size: 36px;
  }
  
  .why-travel-card-title {
    font-size: var(--font-size-lg);
  }
}

@media (max-width: 480px) {
  .whereWeGoSec-title {
    font-size: var(--font-size-3xl);
  }
}

/* ============================================
   Why Travel Feature Strip (UI refresh)
   ============================================ */
.why-travel-section {
  padding: var(--spacing-8) var(--spacing-0) var(--spacing-10);
  background: var(--color-bg-primary);
}

.why-travel-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: var(--color-bg-primary);
  border: 1px solid var(--border-color-light);
  border-radius: 10px;
  overflow: hidden;
}

.why-travel-feature {
  border: 0;
  border-right: 1px solid var(--border-color-light);
  background: transparent;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.why-travel-feature:last-child {
  border-right: 0;
}



.why-travel-icon-wrap {
  flex: 0 0 auto;
}

.why-travel-feature .why-travel-icon {
  width: 46px;
  height: 46px;
  border-radius: 50%;
 background: #e31d3b;
    border: 2px solid #e31d3b;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
}

.why-travel-feature .why-travel-icon i {
  font-size: 22px;
  color: #fff;
}

.why-travel-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.why-travel-feature .why-travel-card-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
  color: var(--color-text-primary);
  font-weight: 700;
}

.why-travel-feature .why-travel-card-desc {
  margin: 3px 0 0;
  font-size: 15px;
  line-height: 1.35;
  color: var(--color-text-secondary);
}

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

  .why-travel-feature {
    border-right: 0;
    border-bottom: 1px solid #e5e7eb;
  }

  .why-travel-feature:nth-child(odd) {
    border-right: 1px solid #e5e7eb;
  }

  .why-travel-feature:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}

@media (max-width: 576px) {
  .why-travel-strip {
    grid-template-columns: 1fr;
  }

  .why-travel-feature,
  .why-travel-feature:nth-child(odd) {
    border-right: 0;
  }

  .why-travel-feature:not(:last-child) {
    border-bottom: 1px solid #e5e7eb;
  }

  .why-travel-feature:last-child {
    border-bottom: 0;
  }
}

/* ============================================
   Top Flight Routes (Static premium refresh)
   ============================================ */
.topFlightRoutes {
  position: relative;
  background: var(--color-bg-light-blue);
  overflow: hidden;
}

.topFlightRoutes::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='360' viewBox='0 0 900 360'%3E%3Cg fill='%230393f2' fill-opacity='0.07'%3E%3Cpath d='M78 145l24-18 40 6 28-12 18 10 30-6 14 14-14 20-32 6-24-8-26 10-34-4z'/%3E%3Cpath d='M260 120l38-14 50 4 36-12 44 12 16 22-22 14-32-2-30 8-18 20-38-6-40-18z'/%3E%3Cpath d='M470 128l30-8 46 8 22-10 30 8 12 20-20 18-38 2-20 14-42-4-24-16z'/%3E%3Cpath d='M620 150l34-12 52 8 34-10 42 14 12 20-22 12-30 0-34 10-36-6-20-12z'/%3E%3Cpath d='M300 220l26-10 30 4 26-8 24 8 8 18-16 10-24 2-20 10-30-4-16-14z'/%3E%3Cpath d='M560 222l30-10 34 8 28-10 22 12 6 18-14 10-22 2-22 10-30-6-22-14z'/%3E%3C/g%3E%3C/svg%3E");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.6;
  pointer-events: none;
}

.topFlightRoutes .container {
  position: relative;
  z-index: 1;
}

.flight-routes-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding: var(--spacing-5) var(--spacing-0) var(--spacing-0);
}

.route-card-wrapper {
  width: auto;
  padding: 0;
}

.route-card-grid,
.route-card-grid:hover {
  border: 1px solid var(--border-color-light);
  border-radius: 14px;
  background: var(--color-bg-primary);
  box-shadow: var(--shadow-md);
  transform: none;
}

.route-card-grid {
  transition: none;
  display: flex;
  align-items: center;
  gap: 14px;
}

.route-card-grid::before,
.route-card-grid::after {
  content: none;
}

.route-card-media {
  width: 74px;
  min-width: 74px;
  height: 74px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--border-color-light);
  background: var(--color-bg-tertiary);
}

.route-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.route-card-main {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-2);
}

.route-city,
.route-card-grid:hover .route-city {
  color: var(--color-text-primary);
}

.route-airport,
.route-card-grid:hover .route-airport {
  opacity: 1;
}

.route-line,
.route-card-grid:hover .route-line {
  background-image: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 42%,
    color-mix(in srgb, var(--color-info) 35%, transparent) 42%,
    color-mix(in srgb, var(--color-info) 35%, transparent) 58%,
    transparent 58%,
    transparent 100%
  );
}

.route-icon-wrapper,
.route-card-grid:hover .route-icon-wrapper {
  width: 44px;
  height: 44px;
  background: var(--color-info-lightest);
  border: 1px solid var(--border-color-light);
  box-shadow: none;
  transform: none;
}

.route-airplane-icon,
.route-card-grid:hover .route-airplane-icon {
  color: var(--color-info);
  transform: rotate(90deg);
  filter: none;
}

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

.route-airport-code {
  display: none;
}

.route-card-media img[src=""],
.route-card-media img:not([src]) {
  opacity: 0;
}

@media (max-width: 767px) {
  .topFlightRoutes {
    padding: 24px 0 20px;
  }

  .topFlightRoutes .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .route-sec-header {
    text-align: left;
    margin-bottom: 14px;
  }

  .route-sec-title {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-bottom: 4px;
    letter-spacing: -0.01em;
  }

  .route-sec-subtitle {
    font-size: 0.8125rem;
    line-height: 1.4;
  }

  .flight-routes-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 0;
  }

  .route-card-grid {
    padding: 12px;
    gap: 12px;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }

  .route-card-media {
    width: 52px;
    min-width: 52px;
    height: 52px;
    border-radius: 10px;
    flex-shrink: 0;
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
  }

  .route-card-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr);
    align-items: center;
    gap: 6px;
  }

  .route-departure,
  .route-arrival {
    width: auto;
    flex: initial;
    min-width: 0;
    gap: 2px;
  }

  .route-arrival {
    text-align: right;
  }

  .route-city {
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }

  .route-airport {
    font-size: 0.6875rem;
    line-height: 1.3;
  }

  .route-airport-name {
    display: none;
  }

  .route-airport-code {
    display: block;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--color-text-muted, #9ca3af);
    text-transform: uppercase;
  }

  .route-connection {
    position: relative;
    min-width: 44px;
    width: 44px;
    height: 36px;
    flex-shrink: 0;
  }

  .route-line {
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 2px;
    background-image: linear-gradient(
      to right,
      transparent 0%,
      transparent 8%,
      color-mix(in srgb, var(--color-info) 40%, transparent) 8%,
      color-mix(in srgb, var(--color-info) 40%, transparent) 92%,
      transparent 92%,
      transparent 100%
    );
    background-size: 6px 2px;
    background-repeat: repeat-x;
  }

  .route-icon-wrapper,
  .route-card-grid:hover .route-icon-wrapper {
    width: 32px;
    height: 32px;
    margin: 0 auto;
  }

  .route-airplane-icon,
  .route-card-grid:hover .route-airplane-icon {
    font-size: 1rem;
    transform: rotate(90deg);
  }

  .route-card-wrapper {
    animation: homeMobileFadeUp 0.42s cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  .route-card-wrapper:nth-child(1) { animation-delay: 0.04s; }
  .route-card-wrapper:nth-child(2) { animation-delay: 0.08s; }
  .route-card-wrapper:nth-child(3) { animation-delay: 0.12s; }
  .route-card-wrapper:nth-child(4) { animation-delay: 0.16s; }
  .route-card-wrapper:nth-child(5) { animation-delay: 0.2s; }
  .route-card-wrapper:nth-child(6) { animation-delay: 0.24s; }

  .route-card-link:active .route-card-grid {
    transform: scale(0.985);
    box-shadow: 0 1px 6px rgba(15, 23, 42, 0.08);
  }
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
  .route-card-wrapper {
    animation: none !important;
  }

  .route-card-link:active .route-card-grid {
    transform: none;
  }
}

/* ============================================
   Trending Holiday (Static clean refresh)
   ============================================ */
.trending-holiday-section {
  background: var(--color-bg-primary);
  padding: var(--spacing-12) var(--spacing-0);
}

.trending-holiday-header {
  margin-bottom: var(--spacing-8);
}

.trending-holiday-header h2 {
  color: var(--color-text-primary);
}

.holiday-subtitle {
  color: var(--color-text-secondary);
}

.holiday-card {
  background: var(--color-bg-primary);
  border: 1px solid var(--border-color-light);
  border-radius: 14px;
  box-shadow: var(--shadow-md);
  transition: none;
  cursor: default;
}

.holiday-card:hover {
  transform: none;
  box-shadow: var(--shadow-md);
}

.holiday-image {
  height: 220px;
}

.holiday-image img,
.holiday-card:hover .holiday-image img {
  transform: none;
  transition: none;
}

.holiday-badge {
  background: var(--color-info);
  color: var(--color-white);
  box-shadow: none;
}

.holiday-duration i {
  color: var(--color-info);
}

.holiday-footer {
  border-top: 1px solid var(--border-color-light);
}

.holiday-view-btn {
  background: var(--color-primary-primary);
  color: var(--color-white);
  box-shadow: none;
  transition: none;
}

.holiday-view-btn:hover {
  transform: none;
  box-shadow: none;
  color: var(--color-white);
  text-decoration: none;
}

.holiday-view-btn i,
.holiday-view-btn:hover i {
  transform: none;
  transition: none;
}

.holiday-packages-slider .swiper-button-next,
.holiday-packages-slider .swiper-button-prev {
  background: var(--color-bg-primary);
  border: 1px solid var(--border-color-light);
  box-shadow: none;
  transition: none;
}

.holiday-packages-slider .swiper-button-next:hover,
.holiday-packages-slider .swiper-button-prev:hover {
  background: var(--color-bg-primary);
  transform: translateY(-50%);
  box-shadow: none;
}

.holiday-packages-slider .swiper-button-next i,
.holiday-packages-slider .swiper-button-prev i,
.holiday-packages-slider .swiper-button-next:hover i,
.holiday-packages-slider .swiper-button-prev:hover i {
  color: var(--color-info);
}

@media (max-width: 767px) {
  .trending-holiday-section {
    padding: 24px 0 20px;
  }

  .trending-holiday-section .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .trending-holiday-header {
    text-align: left;
    margin-bottom: 14px;
  }

  .trending-holiday-header h2 {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-bottom: 4px;
  }

  .holiday-subtitle {
    font-size: 0.8125rem;
    line-height: 1.4;
  }

  .holiday-card-wrapper {
    padding: 0;
  }

  .holiday-card {
    border: none;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.12);
    border-radius: 14px;
    overflow: hidden;
  }

  .holiday-card-link:active .holiday-card {
    transform: scale(0.985);
  }

  .holiday-image {
    height: auto;
    aspect-ratio: 4 / 3;
    min-height: 220px;
  }

  .holiday-overlay {
    inset: 0;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 12px;
    background: linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.42) 0%,
      rgba(0, 0, 0, 0.08) 38%,
      rgba(0, 0, 0, 0.12) 58%,
      rgba(0, 0, 0, 0.78) 100%
    );
  }

  .holiday-badge {
    align-self: flex-start;
    padding: 4px 10px;
    font-size: 0.625rem;
    border-radius: 999px;
  }

  .holiday-image-caption {
    display: block;
    margin-top: auto;
    padding-top: 8px;
  }

  .holiday-image-caption .holiday-title {
    margin: 0 0 6px;
    color: #fff;
    font-size: 1rem;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
  }

  .holiday-price-overlay {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .holiday-price-overlay .price-label {
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }

  .holiday-price-overlay .price-amount {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.1;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
  }

  .holiday-content {
    display: none !important;
  }

  .holiday-packages-slider {
    padding: 0 0 28px;
    overflow: hidden;
  }

  .holiday-packages-slider .swiper-button-next,
  .holiday-packages-slider .swiper-button-prev {
    display: flex !important;
    width: 34px;
    height: 34px;
    top: 42%;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid var(--border-color-light, #e5e7eb);
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.12) !important;
    z-index: 3;
  }

  .holiday-packages-slider .swiper-button-prev {
    left: 4px !important;
  }

  .holiday-packages-slider .swiper-button-next {
    right: 4px !important;
  }

  .holiday-packages-slider .swiper-button-next:hover,
  .holiday-packages-slider .swiper-button-prev:hover {
    background: #fff !important;
    transform: translateY(-50%) scale(1.04);
  }

  .holiday-packages-slider .swiper-button-next i,
  .holiday-packages-slider .swiper-button-prev i {
    font-size: 1.25rem !important;
    color: var(--color-info, #008cff) !important;
  }

  .holiday-swiper-pagination {
    display: block;
    bottom: 4px !important;
    line-height: 0;
  }

  .holiday-swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0 3px !important;
    background: #d1d5db !important;
    opacity: 1;
    transition: width 0.25s ease, background-color 0.25s ease;
  }

  .holiday-swiper-pagination .swiper-pagination-bullet-active {
    width: 18px;
    border-radius: 999px;
    background: var(--color-primary-primary, #f09814) !important;
  }
}

@media (min-width: 768px) {
  .holiday-swiper-pagination {
    display: none;
  }
}

/* ============================================
   FAQ visual refresh (design system)
   ============================================ */
.faq-section {
  background: #f8f9fa;
}

.faq-header {
  margin-bottom: var(--spacing-9);
}

.faq-title {
  color: var(--color-text-primary);
}

.faq-subtitle {
  color: var(--color-text-secondary);
}

.faq-categories {
  gap: 10px;
  margin-bottom: var(--spacing-8);
}

.faq-category-btn {
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid var(--border-color-medium);
  background: var(--color-bg-primary);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-semibold);
}

.faq-category-btn i {
  font-size: 16px;
  color: var(--color-info);
}

.faq-category-btn:hover {
  border-color: var(--color-info);
  background: var(--color-info-lightest);
  color: var(--color-info-dark);
}

.faq-category-btn.active {
    background: #e31d3b;
    border-color: 1px solid #e31d3b;
    color: var(--color-white);
}

.faq-category-btn.active i {
  color: var(--color-white);
}

.faq-content-card {
  border: 1px solid var(--border-color-light);
  border-radius: 16px;
  box-shadow: var(--shadow-lg);
}

.faq-item {
  border-bottom: 1px solid var(--border-color-light);
  padding-bottom: var(--spacing-5);
  margin-bottom: var(--spacing-5);
}

.faq-number {
  color: var(--color-info);
  font-size: var(--font-size-2xl);
  min-width: 40px;
}

.faq-question {
  font-size: var(--font-size-base);
  line-height: 1.45;
}

.faq-toggle {
  border-radius: 10px;
  border-color: var(--border-color-medium);
}

.faq-item.active .faq-toggle {
  background: var(--color-info);
  border-color: var(--color-info);
}

.faq-toggle i {
  color: var(--color-info);
}

.faq-item.active .faq-toggle i {
  color: var(--color-white);
}

@media (max-width: 767px) {
  .faq-section {
    padding: 24px 0 28px;
    background: var(--color-bg-light-blue, #f0f7ff);
  }

  .faq-section .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .faq-header {
    text-align: left;
    margin-bottom: 14px;
  }

  .faq-title {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-bottom: 4px;
    letter-spacing: -0.01em;
  }

  .faq-subtitle {
    font-size: 0.8125rem;
    line-height: 1.45;
  }

  .faq-categories {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 8px;
    margin-bottom: 14px;
    padding: 0 0 6px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .faq-categories::-webkit-scrollbar {
    display: none;
  }

  .faq-category-btn {
    flex: 0 0 auto;
    scroll-snap-align: start;
    white-space: nowrap;
    padding: 8px 14px;
    font-size: 0.8125rem;
    gap: 6px;
    border-radius: 999px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  }

  .faq-category-btn i {
    font-size: 1rem;
  }

  .faq-content-card {
    max-width: none;
    margin: 0;
    padding: 12px 14px;
    border-radius: 14px;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.08);
    border: 1px solid var(--border-color-light, #e5e7eb);
  }

  .faq-item {
    padding-bottom: 12px;
    margin-bottom: 12px;
  }

  .faq-item-header {
    gap: 10px;
    align-items: flex-start;
  }

  .faq-number {
    display: none;
  }

  .faq-question {
    font-size: 0.875rem;
    line-height: 1.4;
    padding-right: 4px;
  }

  .faq-toggle {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 1px;
  }

  .faq-toggle i {
    font-size: 1.125rem;
  }

  .faq-answer,
  .faq-item.active .faq-answer {
    padding: 0 !important;
    max-height: 0;
  }

  .faq-item.active .faq-answer {
    max-height: 800px;
    padding-top: 10px !important;
  }

  .faq-answer p {
    font-size: 0.8125rem;
    line-height: 1.55;
    margin: 0;
    color: var(--color-text-secondary, #6b7280);
  }

  .faq-empty {
    font-size: 0.875rem;
    text-align: center;
    color: var(--color-text-secondary, #6b7280);
    padding: 12px 0;
  }
}
/* ================================
   TRUST / BENEFIT SECTION
================================ */

.three_notesecn .trust-section {
    width: 100%;
    padding: 18px 0;
   background: #f8f9fa;
}

.three_notesecn .trust-card {
    min-height: 80px;
    background: #092b6f;
    border-radius: 10px;
    display: flex;
    align-items: center;
    padding: 10px 18px;
    box-shadow: 0 5px 12px rgba(0, 0, 0, 0.18);
    transition: all 0.3s ease;
}

.three_notesecn .trust-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
}


/* ICON */

.three_notesecn .trust-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    margin-right: 11px;
    font-size: 20px;
    padding: 2px;
}

.three_notesecn .trust-icon span {
    line-height: 1;    padding: 4px;
}


/* Individual icon backgrounds */

.three_notesecn .icon-shield {
    background: #df6c62;
}

.three_notesecn .icon-confirm {
    background: #f5d27c;
}

.three_notesecn .icon-support {
    background: #7bb78a;
}


/* CONTENT */

.three_notesecn .trust-content {
    min-width: 0;
}

.three_notesecn .trust-content h5 {
    margin: 0 0 2px;

    color: #ffffff;

    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
}

.three_notesecn .trust-content p {
    margin: 7px 0 0 0;
    color: rgb(255 255 255 / 66%);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
}


/* ================================
   RESPONSIVE
================================ */

@media (max-width: 991px) {

   .three_notesecn .trust-card {
        min-height: 70px;
    }

}

@media (max-width: 767px) {

   .three_notesecn .trust-section {
        padding: 12px;
    }

   .three_notesecn .trust-section .container-fluid {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

   .three_notesecn .trust-card {
        min-height: 68px;
        padding: 9px 14px;
        border-radius: 14px;
    }

    .three_notesecn .trust-icon {
        width: 36px;
        height: 36px;
        min-width: 36px;
        margin-right: 10px;
    }

    .three_notesecn .trust-content h5 {
        font-size: 14px;
    }

    .three_notesecn .trust-content p {
        font-size: 10px;
    }
}
/*****************************************************************/
/* =====================================================
   TOP FLIGHT ROUTES
===================================================== */

.top-flight-routes {
    width: 100%;
    padding: 35px 0 42px;
    background: #ffffff;
}


/* =====================================================
   SECTION HEADER
===================================================== */
/* =====================================================
   TOP FLIGHT ROUTES - SECTION HEADER
===================================================== */

.top-flight-routes .flight-section-head {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.top-flight-routes .flight-heading {
    margin: 0;
    text-align: center;
}

.top-flight-routes .flight-heading h2 {
    margin: 0 0 5px;
    color: #00334D;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
}

.top-flight-routes .flight-heading p {
    margin: 0;
    color: #718096;
    font-size: 16px;
    font-weight: 400;
}


/* =====================================================
   TOP RIGHT ARROWS
===================================================== */

.top-flight-routes .flight-slider-arrows {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.top-flight-routes .flight-slider-prev, .top-flight-routes .flight-slider-next {
    position: static !important;
    width: 36px;
    height: 36px;
    min-width: 36px;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #012169;
    border-radius: 50%;
    background: #012169;
    color: #fff;
    font-size: 17px;
    line-height: 1;
    box-shadow: none;
    transform: none !important;
    cursor: pointer;
    transition: all 0.2s ease;
}

.top-flight-routes .flight-slider-prev:hover,
.top-flight-routes .flight-slider-next:hover {
    background: #c8102e;
    color: #ffffff;
    border-color: #c8102e;
}

.top-flight-routes .flight-slider-prev i,
.top-flight-routes .flight-slider-next i {
    font-size: 16px;
}


/* =====================================================
   SLIDER
===================================================== */

.top-flight-routes .flight-slider-wrapper {
    width: 100%;
    position: relative;
}

.top-flight-routes #top_flight_routes_swiper {
    width: 100%;
    overflow: hidden;
}

.top-flight-routes #top_flight_routes_swiper .swiper-slide {
    height: auto;
}


/* =====================================================
   FLIGHT CARD
===================================================== */

.top-flight-routes .flight-card {
    width: 100%;
    height: auto;

    padding: 13px 13px 11px;

    background: #ffffff;
    border: 1px solid #dfe3e8;
    border-radius: 13px;

    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.03);

    transition: all 0.25s ease;
}

.top-flight-routes .flight-card:hover {
    transform: translateY(-2px);
    border-color: #d5dae0;
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.07);
}


/* =====================================================
   TOP ROUTE
===================================================== */

.top-flight-routes .flight-top {
    width: 100%;
    display: flex;
    align-items: center;
}


/* =====================================================
   AIRLINE LOGO
===================================================== */

.top-flight-routes .airline-logo {
    width: 42px;
    height: 42px;
    min-width: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #ffffff;
    border: 1px solid #e0e4e8;
    border-radius: 7px;

    overflow: hidden;
}

.top-flight-routes .airline-logo img {
    width: 32px;
    height: 29px;
    object-fit: contain;
}


/* =====================================================
   ROUTE
===================================================== */

.top-flight-routes .flight-route {
    flex: 1;
    min-width: 0;

    display: flex;
    align-items: center;

    margin-left: 17px;
}


/* =====================================================
   CITY
===================================================== */

.top-flight-routes .city {
    color: #063653;
    font-size: 19px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}


/* =====================================================
   DURATION
===================================================== */

.top-flight-routes .duration {
    flex: 1;
    min-width: 45px;

    display: flex;
    align-items: center;

    margin: 0 10px;
}

.top-flight-routes .duration-line {
    flex: 1;
    height: 1px;
    background: #ed2942;
}

.top-flight-routes .duration-time {
    margin: 0 7px;

    color: #ed2942;
    font-size: 10px;
    font-weight: 500;
    line-height: 1;

    white-space: nowrap;
}


/* =====================================================
   FLIGHT DETAILS
===================================================== */

.top-flight-routes .flight-info {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 10px;
}

.top-flight-routes .flight-details {
    display: flex;
    align-items: center;

    color: #737d8c;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;

    white-space: nowrap;
}

.top-flight-routes .red-dot {
    width: 7px;
    height: 7px;
    min-width: 7px;

    margin-right: 6px;

    background: #ed2942;
    border-radius: 50%;
}

.top-flight-routes .bullet {
    margin: 0 5px;
    color: #8a93a0;
}

.top-flight-routes .direct {
    color: #7d8795;
    font-size: 12px;
    font-weight: 400;
    white-space: nowrap;
}


/* =====================================================
   BOTTOM
===================================================== */

.top-flight-routes .flight-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 20px;
}


/* =====================================================
   PRICE
===================================================== */

.top-flight-routes .price {
    display: flex;
    align-items: baseline;
}

.top-flight-routes .price span {
    margin-left: 3px;
    color: #7c8695;
    font-size: 12px;
    font-weight: 400;
    margin-top: 5px;
}

.top-flight-routes .price span {
    margin-left: 3px;

    color: #7c8695;
    font-size: 11px;
    font-weight: 400;
}


/* =====================================================
   BOOK NOW
===================================================== */

.top-flight-routes .book-now {
    min-width: 91px;
    height: 31px;

    padding: 0 15px;

    border: 0;
    border-radius: 20px;

    background: #ed1d3b;
    color: #ffffff;

    font-size: 13px;
    font-weight: 600;
    line-height: 25px;

    cursor: pointer;
    transition: all 0.2s ease;
}

.top-flight-routes .book-now:hover {
    background:#E31D3B!important;
    color: #ffffff;
}


/* =====================================================
   PAGINATION
===================================================== */

.top-flight-routes .flight-slider-pagination {
    position: relative;
    margin-top: 17px;
    text-align: center;
}

.top-flight-routes .flight-slider-pagination .swiper-pagination-bullet {
    width: 7px;
    height: 7px;

    margin: 0 4px !important;

    background: #cbd1d8;
    opacity: 1;
}

.top-flight-routes .flight-slider-pagination .swiper-pagination-bullet-active {
    width: 20px;
    border-radius: 10px;
    background: #ed1d3b;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .top-flight-routes .flight-heading h2 {
        font-size: 28px;
    }

    .top-flight-routes .flight-card {
        height: 132px;
    }

    .top-flight-routes .city {
        font-size: 17px;
    }

    .top-flight-routes .flight-details {
        font-size: 10px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .top-flight-routes {
        padding: 28px 0 35px;
    }

    .top-flight-routes .flight-section-head {
        align-items: center;
        margin-bottom: 19px;
    }

    .top-flight-routes .flight-heading h2 {
        font-size: 25px;
    }

    .top-flight-routes .flight-heading p {
        font-size: 11px;
    }

    .top-flight-routes .flight-slider-arrows {
        gap: 7px;
    }

    .top-flight-routes .flight-slider-prev,
    .top-flight-routes .flight-slider-next {
        width: 34px;
        height: 34px;
        min-width: 34px;
    }

    .top-flight-routes .flight-slider-prev i,
    .top-flight-routes .flight-slider-next i {
        font-size: 14px;
    }

    .top-flight-routes .flight-card {
        height: 132px;
        padding: 13px;
    }

    .top-flight-routes .airline-logo {
        width: 42px;
        height: 42px;
        min-width: 42px;
    }

    .top-flight-routes .airline-logo img {
        width: 32px;
        height: 29px;
    }

    .top-flight-routes .flight-route {
        margin-left: 10px;
    }

    .top-flight-routes .city {
        font-size: 16px;
    }

    .top-flight-routes .duration {
        margin: 0 6px;
    }

    .top-flight-routes .duration-time {
        margin: 0 4px;
        font-size: 8px;
    }

    .top-flight-routes .flight-details {
        font-size: 10px;
    }

    .top-flight-routes .direct {
        font-size: 10px;
    }

    .top-flight-routes .price strong {
        font-size: 20px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .top-flight-routes .flight-section-head {
        position: relative;
        display: block;
    }

    .top-flight-routes .flight-heading {
        padding-right: 82px;
    }

    .top-flight-routes .flight-slider-arrows {
        position: absolute;
        top: 0;
        right: 0;
    }

    .top-flight-routes .flight-heading h2 {
        font-size: 22px;
    }

    .top-flight-routes .flight-heading p {
        font-size: 10px;
    }

    .top-flight-routes .flight-card {
        height: 130px;
    }

    .top-flight-routes .city {
        font-size: 14px;
    }

    .top-flight-routes .flight-route {
        margin-left: 8px;
    }

    .top-flight-routes .duration {
        margin: 0 4px;
    }

    .top-flight-routes .duration-time {
        margin: 0 3px;
        font-size: 8px;
    }

    .top-flight-routes .flight-details {
        font-size: 8px;
    }

    .top-flight-routes .direct {
        font-size: 8px;
    }

    .top-flight-routes .book-now {
        min-width: 80px;
        height: 24px;
        padding: 0 12px;
        font-size: 9px;
        line-height: 24px;
    }

}
/* ************************************************************ */

        .best-cars-section {
            width: 100%;

            padding: 15px 0 40px;

            overflow: hidden;
        }


        /* =========================================
           HEADING
        ========================================= */

       .best-cars-section .cars-heading {
            text-align: center;

            margin-bottom: 45px;
        }

       .best-cars-section .cars-heading h2 {
            margin: 0;

            color: #00334D;

            font-size: 32px;

            font-weight: 700;
        }

       .best-cars-section .cars-heading p {
            margin: 5px 0 0;

            color: #7b8799;

            font-size: 14px;
        }


        /* =========================================
           SLIDER WRAPPER
        ========================================= */

       .best-cars-section .best-cars-slider-wrapper {
            position: relative;

            width: 100%;
        }


       .best-cars-section .best-cars-swiper {
            width: 100%;

            overflow: hidden;
        }


       .best-cars-section .best-cars-swiper .swiper-slide {
            height: auto;
        }


        /* =========================================
           SLIDER ARROWS
           
           TOP RIGHT
        ========================================= */

       .best-cars-section .cars-navigation {
            position: absolute;

            right: 0;

            top: -45px;

            display: flex;

            align-items: center;

            gap: 8px;

            z-index: 20;
        }


       .best-cars-section .best-cars-prev,
       .best-cars-section .best-cars-next {
            width: 34px;
            height: 34px;

            padding: 0;

            border: 0;

            border-radius: 50%;

            background: #012169;

            color: #ffffff;

            display: flex;

            align-items: center;
            justify-content: center;

            font-size: 15px;

            cursor: pointer;

            box-shadow:
                0 2px 7px rgba(0, 0, 0, 0.20);

            transition: all 0.25s ease;
        }


        .best-cars-section .best-cars-prev:hover,
        .best-cars-section .best-cars-next:hover {
            background: #ed1738;
        }


        /* =========================================
           CAR CARD
        ========================================= */

       .best-cars-section .car-card {
            width: 100%;

            height: auto;

            overflow: hidden;

            border-radius: 12px;

            background: #ffffff;

            box-shadow:
                0 2px 7px rgba(0, 0, 0, 0.14);

            transition:
                transform 0.3s ease,
                box-shadow 0.3s ease;
        }


       .best-cars-section .car-card:hover {
            transform: translateY(-4px);

            box-shadow:
                0 8px 20px rgba(0, 0, 0, 0.18);
        }


        /* =========================================
           IMAGE
        ========================================= */

        .best-cars-section .car-image {
            position: relative;

            width: 100%;

            height: 190px;

            overflow: hidden;

            background: #e9edf2;
        }


       .best-cars-section .car-image img {
            width: 100%;
            height: 100%;

            display: block;

            object-fit: cover;
        }
.car-card .hotel-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(4, 30, 65, 0) 20%, rgb(4 30 65 / 0%) 35%, rgb(3 34 76 / 29%) 72%, rgb(2 38 91 / 69%) 100%);
}
.car-features .feature span

 {
    font-size: 12px;
    letter-spacing: 0.7px;
}
        /* =========================================
           HEART
        ========================================= */

       .best-cars-section .favorite-btn {
            position: absolute;

            top: 10px;
            right: 10px;
            display: none;
            width: 29px;
            height: 29px;

            padding: 0;

            border: 1px solid #ffffff;

            border-radius: 50%;

            background: rgba(60, 70, 80, 0.38);

            color: #ffffff;

            /* display: flex; */

            align-items: center;
            justify-content: center;

            font-size: 13px;

            cursor: pointer;

            z-index: 5;
        }


       .best-cars-section .favorite-btn:hover {
            background: #ed1738;

            border-color: #ed1738;
        }


        /* =========================================
           BLUE CONTENT
        ========================================= */
.best-cars-section .car-content {
    position: relative;
    width: 100%;
    height: 230px;
    padding: 8px 12px;
    color: #ffffff;
    background: linear-gradient(180deg, #012169d9 0%, #012169 35%, #012169 68%, #012169 100%);
}

        /* =========================================
           TITLE
        ========================================= */
.best-cars-section .car-title {
    width: 100%;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin: 10px 0 5px;
}


       .best-cars-section .car-title h3 {
            margin: 0;

            color: #ffffff;

            font-size: 25px;

            line-height: 27px;

            font-weight: 500;

            white-space: nowrap;
        }


       .best-cars-section .car-title span {
            min-width: 0;

            color: #ffffff;

            font-size: 13px;

            line-height: 18px;

            white-space: nowrap;

            overflow: hidden;

            text-overflow: ellipsis;
        }


        /* =========================================
           FEATURE + RATING AREA
        ========================================= */

       .best-cars-section .feature-rating-row {
            position: relative;

            width: 100%;
        }


       .best-cars-section .car-features {
            padding-right: 55px;    padding-top: 15px;
        }


       .best-cars-section .feature {
            display: flex;

            align-items: center;

            height: 19px;

            color: #ffffff;

            font-size: 11.5px;

            line-height: 19px;

            white-space: nowrap;
        }


       .best-cars-section .feature-dot {
            width: 6px;
            height: 6px;

            min-width: 6px;

            margin-right: 6px;

            border-radius: 50%;

            background: #ff1744;
        }


        /* =========================================
           RATING
           
           IMPORTANT:
           Rating is NOT with Book Now.
           It is aligned beside the features.
        ========================================= */

       .best-cars-section .rating {
            position: absolute;

            right: 1px;

            top: 16px;

            display: flex;

            align-items: center;

            gap: 5px;

            color: #ffffff;
        }


        .best-cars-section .rating i {
            color: #ffffff;

            font-size: 18px;
        }


       .best-cars-section .rating span {
            color: #ffffff;

            font-size: 17px;

            line-height: 20px;

            font-weight: 500;
        }


        /* =========================================
           BOTTOM ROW
           
           PRICE LEFT
           BOOK NOW RIGHT
        ========================================= */

       .best-cars-section .car-bottom {
            position: absolute;

            left: 12px;
            right: 12px;

            bottom: 9px;

            display: flex;

            align-items: flex-end;

            justify-content: space-between;
        }


        /* =========================================
           PRICE
        ========================================= */

       .best-cars-section .price-area {
            display: flex;

            flex-direction: column;

            align-items: flex-start;
        }


       .best-cars-section .from-text {
            color: #ffffff;
          margin-bottom: 3px;
            font-size: 11px;

            line-height: 13px;
        }


       .best-cars-section .price {
            color: #ffffff;

            font-size: 20px;

            line-height: 21px;

            font-weight: 700;
        }


  .best-cars-section .price small {
    font-size: 16px;
    font-weight: 400;
    margin-left: 2px;
}

        /* =========================================
           BOOK NOW
        ========================================= */
.best-cars-section .book-btn {
    max-width: 100px;
    height: 30px;
    padding: 15px;
    padding: 0 14px;
    border: 1px solid #ffffff5c;
    border-radius: 20px;
    background: #E31D3B!important;
    color: #ffffff;
    font-size: 14px;
    line-height: 26px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.25s ease;
}

       .best-cars-section .book-btn:hover {
            background: #c90025;

            transform: scale(1.03);
        }


        /* =========================================
           TABLET
        ========================================= */

        @media (max-width: 991px) {

          .best-cars-section  .cars-heading {
                margin-bottom: 45px;
            }


           .best-cars-section .car-card {
                height: 320px;
            }


           .best-cars-section .car-image {
                height: 194px;
            }


           .best-cars-section .car-content {
                height: 126px;
            }


           .best-cars-section .cars-navigation {
                right: 5px;
            }

        }


        /* =========================================
           MOBILE
        ========================================= */

        @media (max-width: 575px) {

           .best-cars-section .best-cars-section {
                padding: 12px 8px 30px;
            }


           .best-cars-section .cars-heading {
                margin-bottom: 45px;
            }


           .best-cars-section .cars-heading h2 {
                font-size: 28px;
            }


           .best-cars-section .cars-heading p {
                font-size: 12px;

                padding: 0 10px;
            }


           .best-cars-section .cars-navigation {
                right: 0;

                top: -40px;
            }


           .best-cars-section .best-cars-prev,
           .best-cars-section .best-cars-next {
                width: 32px;
                height: 32px;

                font-size: 14px;
            }


           .best-cars-section .car-card {
                height: 320px;
            }


           .best-cars-section .car-image {
                height: 194px;
            }


          .best-cars-section  .car-title h3 {
                font-size: 23px;
            }


           .best-cars-section .car-title span {
                font-size: 12px;
            }


           .best-cars-section .feature {
                font-size: 11px;
            }


           .best-cars-section .rating {
                top: 16px;
            }


           .best-cars-section .rating i {
                font-size: 17px;a
            }


           .best-cars-section .rating span {
                font-size: 16px;
            }

        }
        /* ********************************************************** */
 
    /* **************************************************** */
    .testimonial-section {
    padding: 55px 0 65px;
    background: #f8f9fa;
    overflow: hidden;
}

/* Header */
.testimonial-section  .testimonial-header {
    position: relative;
    margin-bottom: 28px;
}

.testimonial-section  .testimonial-title {
    text-align: center;
    color: #00334D;
    font-size: 32px;
    font-weight: 700;
    margin: 0;
}

/* Navigation */
.testimonial-section  .testimonial-navigation {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 8px;
}

.testimonial-section  .testimonial-arrow {
    width: 38px;
    height: 38px;
    border: 1px solid #d9e0e4;
    border-radius: 50%;
    background: #012169;
    color:#fff!important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.testimonial-section  .testimonial-arrow:hover {
  background: #e31d3b;
    color: #fff;
    border-color: #e31d3b;
}

/* Card */
.testimonial-section  .testimonial-card {
    background: #fff;
    border: 1px solid #e0e4e7;
    border-radius: 14px;
    padding: 20px;
    min-height: 184px;
}

/* Top */
.testimonial-section  .testimonial-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.testimonial-section  .stars {
    color: #ed1b3b;
    font-size: 21px;
    letter-spacing: 2px;
}

.testimonial-section .verified {
    border: 1px solid #16c76b;
    color: #16b960;
    font-weight: 600;
    font-size: 12px;
    border-radius: 20px;
    padding: 5px 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.testimonial-section  .verified i {
    font-size: 9px;
}

/* Text */
.testimonial-section  .testimonial-text {
    color: #6c7787;
    font-size: 14px;
    line-height: 1.65;
    margin: 0;
    min-height: 93px;
}

/* Divider */
.testimonial-section  .testimonial-divider {
    border-top: 1px solid #e5e8eb;
    margin: 10px 0 12px;
}

/* User */
.testimonial-section  .testimonial-user {
    display: flex;
    align-items: center;
    gap: 11px;
}

.testimonial-section  .testimonial-avatar {
    width: 33px;
    height: 33px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    flex-shrink: 0;
}

.testimonial-section  .avatar-yellow {
    background: #ffc107;
}

.testimonial-section  .avatar-blue {
    background: #dce5e8;
}

.testimonial-section  .avatar-red {
    background: #f05a42;
}

.testimonial-section  .testimonial-user h6 {
    color: #123f58;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 2px;
}

.testimonial-section  .testimonial-user span {
    color: #8b929c;
    font-size: 13px;
}


/* Tablet */
@media (max-width: 991.98px) {

    .testimonial-title {
        font-size: 28px;
    }

}


/* Mobile */
@media (max-width: 575.98px) {

    .testimonial-section  .testimonial-section {
        padding: 40px 0 50px;
    }

    .testimonial-section  .testimonial-header {
        margin-bottom: 65px;
    }

    .testimonial-section  .testimonial-title {
        font-size: 25px;
    }

    .testimonial-section  .testimonial-navigation {
        top: auto;
        bottom: -50px;
        right: 0;
        transform: none;
    }

}
/* ************************************************************** */
.footer-newsletter-col {
    padding: var(--spacing-0) var(--spacing-4);
    margin-top: 25px;
}
/* ****************************************************************** */
.hotel-destination-section {
    padding: 35px 0 38px;
    background: #fff;
    overflow: hidden;
}


/* =========================
   SECTION HEADING
========================= */

.hotel-destination-section .hotel-section-head {
    position: relative;
    margin-bottom: 22px;
}

.hotel-destination-section .hotel-section-head h2 {
    margin: 0 0 5px;
    color: #00334D;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}

.hotel-destination-section .hotel-section-head p {
    margin: 0;
    color: #7a8495;
    font-size: 14px;
    line-height: 1.5;
}


/* =========================
   SLIDER NAVIGATION
========================= */

.hotel-destination-section .hotel-slider-navigation {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 7px;
}

.hotel-destination-section .hotel-slider-btn {
    width: 36px;
    height: 36px;
    border: 1px solid #dce2e6;
    border-radius: 50%;
    background:  #012169;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .3s ease;
}
.hotel-destination-section .hotel-slider-btn:hover {
    background: #e31d3b;
    color: #fff;
    border-color: #e31d3b;
}
/* =========================
   HOTEL CARD
========================= */

.hotel-destination-section .hotel-destination-card {
    position: relative;
    height: 298px;
    overflow: hidden;
    border-radius: 13px;
    background: transparent;
}

.hotel-destination-section .hotel-card-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}

.hotel-destination-section .hotel-destination-card:hover .hotel-card-img {
    transform: scale(1.05);
}


/* Dark gradient at bottom */

.hotel-destination-section .hotel-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(4, 30, 65, 0) 20%,
        rgba(4, 30, 65, .15) 35%,
        rgba(3, 34, 76, .90) 72%,
        rgba(2, 38, 91, 1) 100%
    );
}


/* =========================
   WISHLIST
========================= */

.hotel-destination-section .hotel-wishlist {
    position: absolute;
    top: 12px;
    right: 11px;
display: none;
    width: 27px;
    height: 27px;

    border: 1px solid rgba(255,255,255,.8);
    border-radius: 50%;

    background: rgba(255,255,255,.10);
    color: #fff;

    /* display: flex; */
    align-items: center;
    justify-content: center;

    font-size: 14px;
    cursor: pointer;

    backdrop-filter: blur(2px);
}

.hotel-destination-section .hotel-wishlist:hover {
    background: #fff;
    color: #ef233c;
}


/* =========================
   CONTENT
========================= */

.hotel-destination-section .hotel-card-content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;

    padding: 0 13px 12px;

    color: #fff;
}


/* Hotel title */

.hotel-destination-section .hotel-info h3 {
    margin: 0 0 2px;
    color: #fff;
    font-size: 21px;
    text-shadow: 2px 2px 4px #222 !important;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.hotel-destination-section .hotel-location {
    margin: 0 0 9px;
    color: #ffffffd4;
    font-size: 13px;
    text-shadow: 2px 2px 4px #222 !important;
    letter-spacing: 0.8px;
    font-weight: 500;
}


/* Category */

.hotel-destination-section .hotel-category {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-size: 12px;
    text-shadow: 2px 2px 4px #222 !important;
    margin-bottom: 10px;
    letter-spacing: 0.9px;
}

.hotel-destination-section .hotel-category span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
    background: #f52345;
}


/* =========================
   BOTTOM
========================= */

.hotel-destination-section .hotel-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}


/* Price */

.hotel-destination-section .hotel-price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    column-gap: 3px;
    line-height: 1;
}

.hotel-destination-section .hotel-price small {
    width: 100%;
    display: block;

    margin-bottom: 5px;

    color: #fff;
    font-size: 12px;
}

.hotel-destination-section .hotel-price strong {
    color: #fff;
    font-size: 17px;
    font-weight: 600;
}

.hotel-destination-section .hotel-price em {
    color: #fff;
    font-size: 12px;
    font-style: normal;
}


/* =========================
   RATING + BUTTON
========================= */

.hotel-destination-section .hotel-rating {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

.hotel-destination-section .hotel-rating > span {
    color: #fff;
    font-size: 11px;
}

.hotel-destination-section .hotel-rating i {
    font-size: 13px;
    margin-right: 3px;
}
.hotel-destination-section .hotel-book-btn {
    width: 100%;
    padding: 15px;
    max-width: 100px;
    height: 30px;
    border: 1px solid #ffffff5c;
    border-radius: 15px;
    background:#E31D3B!important;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all .3s ease;
}
.hotel-destination-section .hotel-book-btn:hover {
    background: #fff !important;
    color: #ed1b3b;
}

/* =========================
   TABLET
========================= */

@media (max-width: 991px) {

   .hotel-destination-section .hotel-section-head h2 {
        font-size: 27px;
    }

    .hotel-destination-section .hotel-destination-card {
        height: 295px;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 575px) {

    .hotel-destination-section .hotel-destination-section {
        padding: 30px 0;
    }

    .hotel-destination-section .hotel-section-head {
        margin-bottom: 65px;
    }

    .hotel-destination-section .hotel-section-head h2 {
        font-size: 24px;
    }

    .hotel-destination-section .hotel-section-head p {
        font-size: 11px;
    }

    .hotel-destination-section .hotel-slider-navigation {
        top: auto;
        bottom: -50px;
        right: 0;
        transform: none;
    }

    .hotel-destination-section .hotel-destination-card {
        height: 300px;
    }

}
.hotel-destination-section .hotel-destination-card img{
    width: 100%;
    object-fit: cover;height: 100%;
}
/* *********************************************************** */
.topline_flights {
    /* display: none; */
    width: 100%;
    padding: 30px 0;
}
.top_carspart { display: block;
    width: 100%;
    padding: 30px 0;
}
.footer-contact-col p {
    font-size: 14px;opacity: 0.8;
}
.three_notesecn {
    padding: 30px 0 0;
    width: 100%;
    display: block;background: #f8f9fa;
}
.people_saying {
    background: #f8f9fa;
}
.airline-partner-header h2 {
    font-family: var(--font-family-heading);
    color: #00334D;
    font-weight: 600;
}
.car-route {
    display: flex;
    justify-content: space-between;
    width: 100%;
    gap: 40px;
    border-bottom: 1px solid #ffffff91;
}
.car-route .bi-arrow-right {
    background: #fff;
    border-radius: 50px;
    width: 25px;
    color: #e31d3b;
    padding: 0px 3px;margin-bottom: 10px;
}
span.car-city {
    font-style: italic;
    font-size: 14px;
    line-height: 17px;
    white-space: pre-wrap;
}
.nsm7Bb-HzV7m-LgbsSe .nsm7Bb-HzV7m-LgbsSe-BPrWId {
    -webkit-flex-grow: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    font-family: Google Sans, arial, sans-serif;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
    line-height: 0px;
    position: relative!important;
    top: -9px!important;
    left: 0!important;
}

 .cms_content_header h1{
    font-size: 21px!important;
    font-weight: 600;
    margin-top: 15px;
}