*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: "Inter", serif;
}
body{
    font-family: "Inter", serif;
}
.container{
    max-width: 1524px;
}

#dropdownMenu3, #dropdownMenu4 {
    min-width: fit-content!important;
}

a{
    text-decoration: none;
}
.cmn-heading{
    color: #000;
    font-size: 44px;
    line-height: 60px;
    font-weight: 700;
}
.com-btn {
    border: 2px solid #EB631E;
    font-size: 22px;
    font-weight: 700;
    min-width: 246px;
    height: 60px;
    color: #fff;
    background-color: #EB631E;
    border-radius: 100vh;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin: auto;
}
.com-btn:hover{
    background-color: #fff;
    color: #EB631E !important;
}

/* Header start */
.mainheader{
    padding: 25px 0;
}
.mainheader nav.navbar {
    position: relative;
    z-index: 9;
}
.mainheader {
    background-image: url('../images/headerbg.webp');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 0px 0;
}
.navbar-brand img{
    max-width: 180px;
}
header .navbar-nav .nav-item{
    margin-left: 14px;
}
header .navbar-nav a {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}
header .navbar-nav a.nav-link.active {
    color: rgb(235 98 31);
}
.navbar .container-fluid {
    padding: 0;
}
.mainheader .navbar-expand-lg .navbar-nav {
    align-items: center;
}
.login-signupbtn > a {
    border: 2px solid #EB631E;
    border-radius: 100vh;
    background-color: #fff;
    color: #EB631E !important;
    height: 56px;
    line-height: 34px;
    padding: 10px 21px !important;
    display: inline-block;
}
.login-signupbtn a:hover{
    background-color: #EB631E;
    color: #fff !important;
}
.last-callbtn a.nav-link.com-btn {
    color: #fff;
}

.modal-header .btn-close {
    background-color: #f5f5f5;
    border-radius: 100vh;
    opacity: 1;
    font-size: 16px;
    width: 26px;
    height: 26px;
}
.modal-header .btn-close:hover{
    background-color: #EB631E;
    color: #fff;
}
.login-popup-form .modal-header {
    border: none;
    position: absolute;
    right: 0;
    z-index: 10;
}
.login-popup-form .login-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #fff;
    border-radius: 30px;
    padding: 47px 5px 10px 40px;
    text-align: center;
    max-width: 470px;
}
  
  .login-popup-form .form-container {
    width: 100%;
  }
  
  .login-popup-form .input-container {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
  }
  
  .login-popup-form select, .login-popup-form input {
    border: 1px solid #ccc;
    border-radius: 100vh;
    padding: 12px 7px 12px 10px;
    font-size: 14px;
    width: 80px;
}
.login-popup-form select:focus-visible, .login-popup-form input:focus-visible {
    outline-color: #eb641e;
}
  .login-popup-form input {
    flex: 1;
  }
  
  .login-popup-form button {
    background-color: #EB631E;
    color: #fff;
    border: none;
    padding: 12px 10px;
    font-size: 16px;
    cursor: pointer;
    margin-bottom: 10px;
    width: 100%;
    border-radius: 100vh;
    font-weight: 500;
}
  
  .login-popup-form button:hover {
    background-color: #d75413;
  }
  
  .login-popup-form .info-text {
    font-size: 14px;
    color: #000000;
    margin: 10px auto 23px;
    padding: 0px 26px;
}
  
  .login-popup-form .illustration-container {
    margin: 20px 0;
  }
  .login-popup-form  footer {
    background-color: #f5f5f5;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 10px;
}
  .login-popup-form footer p {
    font-size: 14px;
    color: #000;
    margin-bottom: 0;
    max-width: 340px;
  }
  
  .login-popup-form footer a {
    color: #f1661a;
    text-decoration: none;
    font-size: 14px !important;
    font-weight: 400;
}
  .login-right-sec img {
    max-width: 330px;
}
.login-signupbtn .modal-dialog {
    max-width: 830px;
    position: relative;
    z-index: 999;
}
.login-form {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    position: relative;
}
.form-container-inner {
    background-color: #f5f5f5;
    padding: 20px;
    border-radius: 10px;
    margin-bottom: 50px;
}
.login-right-sec {
    margin-bottom: -1px;
    position: absolute;
    right: 0px;
    bottom: 1px;
}
.login-popup-form  .modal-body {
    padding: 0;
}
.modal-backdrop.show {
    z-index: 1;
}
.fourdigit-otp h6 {
    font-weight: 700;
    font-size: 18px;
}
.fourdigit-otp p.sentotp {
    font-weight: 500;
    margin-bottom: 6px;
    font-size: 14px;
}
.fourdigit-otp p.sentotpagain {
    font-weight: 500;
    margin-bottom: 20px;
    color: #EB631E;
    font-size: 15px;
}
/* Header END */

/* Banner start */
/* .banner{
  background: url("../images/banner-bg.webp") no-repeat center;
  background-size: cover;
   padding: 120px 0 220px;
   margin-top: -110px;
} */
.banner {
    background-size: contain;
    padding: 94px 0 220px;
    margin-top: -88px;
    background: linear-gradient(85deg, #fff 0%, #FFB996 100%);
    position: relative;
}

.banner-desk {
    position: absolute;
    right: 0;
    top: 0px;
    max-width: 280px;
}
.banner-left {
    position: relative;
    z-index: 1;
}
.banner-left h1{
    font-size: 36px;
    font-weight: 700;
    line-height: 70px;

    margin-bottom: 20px;
    /* border-right: 2px solid #007bff; */
    white-space: nowrap;
    overflow: hidden;
    width: 0;
    animation: typing 4s steps(31, end) infinite, blink 0.6s step-end infinite;
    animation-delay: 0s, 7s;

}
.banner-left p{
    font-size: 27px;
    font-weight: 500;
    line-height: 32px;
    max-width: 570px;
}

@keyframes typing {
    from {
        width: 0;
    }
    to {
        width: 31ch; /* Reveal the full width of the text */
    }
}

@keyframes blink {
    from, to {
        border-color: transparent;
    }
    50% {
        border-color: #007bff;
    }
}

/* Banner end */

/* booking form */
.booking-form-home {
    margin-top: -200px;
    position: relative;
}
.booking-form .nav-tabs {
    gap: 10px;
    border: 0;
}
.booking-form button.nav-link {
    color: #000;
    font-size: 16px;
    font-weight: 500;
    min-width: 140px;
    padding: 9px 10px;
    background: #fff;
    border-radius: 100vh;
    border: 0;
}
.booking-form button.nav-link.active{
    color: #fff;
    background: #EB631E;
}
.booking-form button.nav-link.active img{
    filter: invert(1);
}
.booking-form .tab-content button.nav-link, .review-left .nav-tabs button.nav-link{
    color: #000;
    font-size: 16px;
    font-weight: 500;
    min-width: 140px;
    padding: 9px 10px;
    background-color: #f5f5f5;
    border-radius: 100vh;
    border: 1px solid #f5f5f5;
}
.booking-form .tab-content button.nav-link.active, .review-left .nav-tabs button.nav-link.active{
    border-color: #EB631E;
    color: #EB631E;
    background-color: #FFEFE6;
}
p.discover {
    margin-bottom: 0;
    margin-left: auto;
    font-size: 22px;
    font-weight: 700;
}
.booking-form .tab-content .nav-pills{
    gap: 10px;
    align-items: center;
}
form.form-booking {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.search-flight {
    margin-bottom: -60px;
    text-align: center;
    flex-basis: 100%;
}
 .search-flight button{
    border: 2px solid #EB631E !important;
    min-width: 230px;
    max-width: max-content;
    background: #EB631E;
    border: 1px solid #EB631E;
    font-size: 20px;
    border-radius: 100vh;
    padding: 12px;
    margin-top: -10px;
    font-weight: 700;
} 
.search-flight button:hover{
    background-color: #fff;
    color: #EB631E !important;
}
.search-flight button:active {
    color: #eb641e !important;
    background-color: #ffffff !important;

}
.booking-form .form-check-input:checked {
    background-color: #eb621f;
    border-color: #eb621f;
}
.booking-form .form-check-input:focus {
    border-color: #eb621f;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgb(255 233 222);
}
.form-booking .form-control:focus {
    box-shadow: none;
}
form.form-booking .form-inputs {
    /* flex-basis: 19.2%; */
    flex-basis: 24.3%;
    border: 1px solid #E2E2E2;
    padding: 10px;
    border-radius: 16px;
    background-color: #FDFDFD;
    position: relative;
}
img.switch-img {
    position: absolute;
    right: -29px;
    top: 50%;
    transform: translateY(-50%);
    max-width: 50px;
    z-index: 1;
}
form.form-booking .form-inputs  p{
    margin-bottom: 0;
    font-size: 10px;
}
form.form-booking .form-inputs .form-control{
    border: 0;
    padding: 0;
    background-color: inherit;
}
.form-inputs  label {
    font-size: 17px;
    color: #8A8A8A;
}
.booking-form .main-tab {
    margin-top: 20px;
    padding: 20px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 0 5px 0 #e6e6e6;
}
.booking-form .form-title {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
}
.booking-form .dropdown-menu {
    padding: 15px;
    width: 300px;
}
.booking-form .dropdown-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* margin-bottom: 6px; */
}
.passenger-counting {
    padding: 6px;
    background-color: #f5f5f5;
    border-radius: 8px;
}
.booking-form .dropdown-item span {
    font-size: 13px;
    color: #8a8a8a;
}
.passenger-counter {
    padding: 4px;
    font-size: 16px !important;
    color: #000 !important;
    min-width: 32px;
    display: inline-block;
    text-align: center;
}
.passenger-counting .btn {
    border-radius: 100vh;
}
.passenger-counting .plus-btn {
    border-color: #eb631e;
    color: #eb631e;
}
.passenger-counting .minus-btn{
    border-color: #8a8a8a;
    color: #000;
}
.passenger-counting .btn:hover {
    background-color: #eb641e;
    color: #fff;
    border-color: #fff;
}
.booking-form .dropdown-item span strong {
    display: block;
    font-size: 16px;
    color: #000;
}
.booking-form .class-options button {
    background-color: #f5f5f5;
    border: none;
    color: #000;
    padding: 8px 14px;
    border-radius: 100vh;
}
.dropdown-item.class-options {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 6px;
    margin-top: 14px;
}

#travelDropdownMenu {
    display: none;
    position: absolute;
    background-color: #ffffff;
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 15px;
    width: 360px;
    z-index: 1000;
    right: 0;
}
#travellerModal #travelDropdownMenu {
    display: block;
    width: 100%;
    border-radius: 0 0 8px 8px;
}
    #travellerModal   .modal-header {
        border: 0;
    }
    #travellerModal .modal-body {
        padding: 0px;
        border-radius: 0 !important;
    }
    #travellerModal .modal-content {
        border-radius: 15px 15px 0 0;
    } 

.booking-form .class-options button.active {
    background-color: #eb641e;
    color: #fff;
}
button.travellermodalbtn{
    display: none;
}
#travelDropdownMenu.show {
    display: block;
}
.passenger-cate label {
    color: #8A8A8A;
}
/* booking form end */

/* Exclusive offers start */
.offers{
    padding: 70px 0;
}
.offers-tab{
    margin-bottom: 44px;
}
.offers-tab .nav {
    gap: 14px;
    margin: 30px 0 50px;
    border: 0;
}
.offers-tab .nav-link{
    font-size: 20px;
    font-weight: 500;
    color: #000;
    border-color: #f5f5f5;
    background-color: #f5f5f5;
    min-width: 149px;
    min-height: 45px;
    max-height: 45px;
    border-radius: 100vh;
}
.offers-tab .nav-link.active{
    color: #EB631E;
    border-color: #EB631E;
    background-color: #FFEFE6;
}
.offers-img img{
    width: 100%;
}
/* Exclusive offers end*/

/* Top Flight Routes Start */
.flight-routes{
    padding: 50px 0;
}
.flight-inner {
    display: flex;
    align-items: center;
    gap: 20px;
    background-color: #fff;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 0 5px 2px #f0f0f0;
}
.flight-right h6 span {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 4px;
}
.flight-right h6 {
    display: flex;
    align-items: center;
}
.flight-right h6 img{
  margin: 0 6px;
}
.flight-col .col-lg-4{
    margin-bottom: 20px;
}
.flight-info-con h6{
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 8px;
}
.flight-info-con p{
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    margin-bottom: 0px;
}
.flight-right p {
    margin-bottom: 0;
    color: #EB631E;
    font-size: 20px;
    font-weight: 500;
}
.flight-info {
    margin-top: 30px;
}
.flight-info-img img {
    max-width: 91px;
}
.flight-info-inner {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px;
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0 0 5px 2px #f0f0f0;
}
.flight-info-con h6 {
    font-size: 26px;
    font-weight: 600;
}
.flight-info-con p {
    font-size: 20px;
    margin-bottom: 0;
    font-weight: 500;
    line-height: 30px;
}
.flight-info-con p a{
    color: #EB631E;
}
.flight-info-con p.limit-width{
    max-width: 460px;
}
.flight-col {
    margin-top: 40px;
}
/* Top Flight Routes End */

/* tourist attraction Start */
.attractions{
    padding: 50px 0;
    background-color: #fff;
}
.attraction-col {
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
    gap: 20.5px;
    justify-content: space-between;
}
.all-attractions {
    position: relative;
}
.all-attractions img{
    border-radius: 20px;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.all-attractions h3 {
    font-size: 24px;
    font-weight: 700;
    line-height: 30px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 6px;
    color: #fff;
}
.all-attractions:first-child, .all-attractions:nth-child(6){
flex-basis: 18%;
}
.all-attractions:nth-child(2), .all-attractions:nth-child(8){
    flex-basis: 12%;
}
.all-attractions:nth-child(3), .all-attractions:nth-child(9){
    flex-basis: 16%;
}
.all-attractions:nth-child(4), .all-attractions:nth-child(7){
    flex-basis: 27%;
}
.all-attractions:nth-child(5), .all-attractions:last-child{
    flex-basis: 20%;
}
/* tourist attraction end */

/* Why book Start  */
.whybook{
    padding: 40px 0 70px;
}
.whybook-col-in {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 20px;
    padding: 16px;
}
.whybook-first{
    background-color: #C8DEF6;
}
.whybook-second{
    background-color: #FCEDCC;
}
.whybook-third{
    background-color: #F1E9F8;
}
.whybook-fourth{
    background-color: #FFF3E7;
}
.whybook-con h4 {
    font-size: 24px;
    font-weight: 700;
}
.whybook-con p {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 0;
}
.whybook-col{
    margin-bottom: 50px;
    margin-top: 50px;
}
.whybook-con {
    flex-basis: 70%;
}
.whybook-img {
    flex-basis: 30%;
}
.whybook-img img {
    width: 100%;
    max-width: 70px;
}
.whybook-img {
    text-align: right;
}
/* Why book End */

/* packages start */
.packages-content{
    background-color: #FDFDFD;
    border: 1px solid #E2E2E2;
    padding: 40px 30px 20px;
    border-radius: 16px;
}
.packages-content h2{
    margin-bottom: 24px;
    font-size: 30px;
}
.packages-content p{
font-size: 20px;
font-weight: 500;
color: #444;
}
/* packages End */

/* Popular routes Start */
section.popular-routes {
    padding: 50px 0;
    background-color: #f5f5f5;
}
.routes-inner h2{
font-size: 34px;
font-weight: 700;
margin-bottom: 20px;
}
.routes-col-inner {
    border: 1px solid #E2E2E2;
    border-radius: 20px;
    padding: 20px;
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    background-color: #fff;
}
.routes-col {
    padding-top: 12px;
}
.routesleft{
    flex-basis: 20%;
}
.routesright{
    flex-basis: 80%;
}
.routes-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
span.routesfrom, span.routesto {
    font-size: 26px;
    font-weight: 600;
}
.routes-mid {
    display: flex;
    justify-content: space-between;
    color: #8A8A8A;
}
.routes-last {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
}
.routes-last-left span{
    font-size: 18px;
    font-weight: 500;
}
.routes-last-left span:nth-child(2){
    padding: 0 10px;
}
.routes-last-right span{
    background-color: #EB631E;
    border-radius: 100vh;
    padding: 4px 24px;
    font-size: 24px;
    font-weight: 700;
    color: #fff;
}
.routes-top img {
    width: 100%;
    max-width: 220px;
    padding: 0 14px;
}
/* Popular routes End */

/* reviews start */
.reviews{
    background-color: #F5F5F5;
    padding: 50px 0;
}
div#reviews {
    margin-top: 44px;
}
.reviews-inner h2 {
    font-size: 44px;
    font-weight: 700;
    line-height: 60px;
}
.reviews-inner p.top-para {
    font-size: 25px;
    font-weight: 400;
    color: #8A8A8A;
}
.reviews p.top-para strong {
    font-size: 35px;
    font-weight: 700;
    color: #000;
}
.reviews p.top-para i{
    color: #FAB02D;
}
.reviews-all {
    padding: 30px 30px 1px;
    border-radius: 20px;
    background: #fff;
}
.reviewer {
    display: flex;
    align-items: center;
    gap: 20px;
}
.reviewer img{
    max-width: 72px;
    border-radius: 100vh;
}
.reviewer  h5 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 3px;
}
.reviewer p{
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 0;
    color: #474A57;
}
.review-quote p {
    font-size: 18px;
    font-weight: 400;
    color: #18191F;
    margin-top: 20px;
    min-height: 108px;
    margin-bottom: 0;
}
.review-star i.fa-star{
    color: #FAB02D;
    margin-right: 3px;
}
.review-star {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
    display: block;
}
.reviews button.owl-dot.active span {
    background: #EB631E !important;
}
.reviews .owl-theme .owl-dots .owl-dot span {
    width: 15px;
    height: 15px;
}
.reviews-inner {
    position: relative;
}
.reviews .owl-nav {
    position: absolute;
    right: 0px;
    top: -135px;
}
.reviews button.owl-prev {
    background: #fff !important;
    width: 58px;
    height: 58px;
    border-radius: 100vh !important;
    font-size: 20px !important;
}
.reviews button.owl-prev i{
    color: #18191F;
}
.reviews button.owl-next {
    background: #EB631E  !important;
    width: 58px;
    height: 58px;
    border-radius: 100vh !important;
   
    font-size: 20px !important;
}
.reviews button.owl-next i{
    color: #fff;
}
.reviews .owl-stage-outer {
    margin-bottom: 50px;
}
.quote-img img {
    max-width: 86px;
}
/* reviews end */
/* footer start */
footer{
    background-color: #F3EAE6;
}
.footer-firstsec{
    padding: 50px;
    border-bottom: 1px solid #c5c5c5;
}
.footer-firstsec p{
    font-size: 17px;
    line-height: 30px;
    font-weight: 500;
}
.footer-logo {
    margin-bottom: 20px;
    max-width: 170px;
}
.footer-all h2 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 22px;
    text-transform: uppercase;
}
.footer-all li a{
    font-size: 17px;
    font-weight: 500;
    color: #000;
    line-height: 30px;
}
.footer-all ul{
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
.last-footer-col h5{
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0px;
}
.last-footer-col ul {
    display: flex;
    gap: 14px;
}
.last-footer-col p a {
    color: #000;
    font-size: 17px;
    font-weight: 500;
}
.last-footer-col li a{
    width: 42px;
    height: 42px;
    background-color: #EB631E;
    border-radius: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.last-footer-col li a i{
    color: #fff;
    font-size: 22px;
}
.footer-secondsec p{
  margin-bottom: 30px;
}
.footer-secondsec {
    padding: 50px 0 20px;
}
.sec-footer-col{
    padding-left: 50px;
}
.footer-thirdsec {
    background-color: #fff;
    padding: 30px 0 14px;
}
.footer-thirdsec h4{
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px;
}
.footer-thirdsec ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    gap: 10px;
    padding-left: 0;
    max-width: 540px;
}
.footer-fourthsec {
    background-color: #fff;
    padding: 14px 0;
    border-top: 1px solid #c5c5c5;
}
.footer-fourthsec p {
    margin-bottom: 0;
    font-size: 14px;
    line-height: 28px;
    font-weight: 500;
    color: #2A3552;
}




/* Search Flight Page CSS start */


/* Main filter section styling */
.searchflight-page {
    background-color: #F5F5F5;
    padding: 10px 0 70px;
    position: relative;
}
.searchflight-page .booking-form .main-tab {
    margin-top: 13px;
    padding: 12px 20px;
}
.searchflight-page  .booking-form .tab-content .nav-pills {
    margin-bottom: 7px !important;
}
.searchflight-page  form.form-booking .form-inputs {
    margin-bottom: 2px !important;
}
.searchflight-page .search-flight button {
    margin-top: -16px;
}
.searchflight-page .searching-flights {
    margin-top: 42px;
}
.searchflight-page section.booking-form .container, .searchflight-page .searching-flights .container {
    max-width: 100%;
    padding: 0;
}
.searchflight-page > .container {
    position: relative;
}
.searchflight-tabs > li.nav-item .nav-link {
    border: 0 !important;
    border-radius: 100vh 0 0 100vh;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 600;
    color: #000;
    position: relative;
}
.searchflight-tabs > li.nav-item .nav-link.active {
    background-color: #FFEFE6;
    color: #EB631E;
}

.searchflight-tabs {
    position: absolute;
    right: 16px;
    border: 1px solid #C0C0C0;
    border-radius: 100vh;
    background: #fff;
}
span.tabbing-counting {
    display: inline-block;
    min-width: 32px;
    font-size: 14px;
    background: #F5F5F5;
    line-height: 32px;
    border-radius: 100vh;
    font-weight: 600;
    margin-right: 4px;
}
.searchflight-tabs > li.nav-item .nav-link.active span.tabbing-counting {
    color: #000;
}
.searchflight-tabs .nav-item:not(:last-child) .nav-link::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -13px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 22px 0 22px 16px;
    border-color: transparent transparent transparent #fff;
    z-index: 0;
}
.searchflight-tabs .nav-item:not(:last-child) .nav-link::before {
    content: '';
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 0 24px 18px;
    border-color: transparent transparent transparent #c0c0c0;
    z-index: 0;
}
.searchflight-tabs li.nav-item:not(:last-child) {
    padding-right: 15px;
}
.searchflight-tabs .nav-item:not(:last-child) .nav-link.active::before {
    border-color: transparent transparent transparent #EB631E;
}
.searchflight-tabs .nav-item:not(:last-child) .nav-link.active::after {
    border-color: transparent transparent transparent #FFEFE6;
}
.searchflight-tabs li.nav-item:last-child .nav-link {
    border-radius: 0 100vh 100vh 0;
}
.search-filters {   
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
  }
  
  .search-filters h3 {
    margin: 0;
    font-size: 22px;
    padding-bottom: 10px;
    font-weight: 600;
    margin-bottom: 6px;
}
  
  .search-filters .filter-group {
    margin-bottom: 20px;
    background-color: #F5F5F5;
    padding: 14px;
    border-radius: 6px;
}
  
  .search-filters .filter-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    margin-bottom: 10px;
  }
  
  .search-filters .reset-btn {
    background: #FFEFE6;
    border: 1px solid #f27900;
    color: #f27900;
    border-radius: 100vh;
    padding: 2px 10px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
}
.search-filters label {
    display: block;
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
    display: flex;
    gap: 10px;
}
.search-filters input[type="checkbox"] {
    height: 24px;
    width: 24px;
    accent-color: #EB631E;
}

  .search-filters input[type="range"] {
    width: 100%;
  }
  
  .search-filters .price-values,   .search-filters .duration-values {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    margin-top: 5px;
  }
  
  .search-filters .time-buttons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
}
.search-filters  .time-slot {
    text-align: center;
    background: #f3f3f3;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 8px 2px;
    cursor: pointer;
}
 .time-slot.selected{
    background: #fff;
    box-shadow: 0 0 5px #787878;
}

.time-buttons span {
    font-size: 12px;
    line-height: 11px !important;
    display: block;
    margin-top: 7px;
    color: #8A8A8A;
}

/* .search-filters .time-slot:hover {
background: #fff;
color: #fff;
}

.time-slot-active {
background: #fff!important;
} */

  .filter-airport-time h3 {
    font-size: 15px;
    font-weight: 400;
    margin-top: 18px;
    padding-bottom: 0;
    margin-bottom: 14px;
}
.duration-section  h3 {
    font-size: 15px;
    font-weight: 400;
    margin-top: 18px;
    padding-bottom: 0;
    margin-bottom: 14px;
}
.filter-group input[type='range'] {
    border-radius: 100vh;
    accent-color: #EB631E;
  }


  .filter-group input[type='range']::-webkit-slider-runnable-track {
    height: 12px;
    margin-top: -5px;


  }
/* .duration-section input[type='range'] {
    overflow: hidden;
    -webkit-appearance: none;
    background-color: #ddd;
  }
  
  .duration-section input[type='range']::-webkit-slider-runnable-track {
    height: 4px;
    -webkit-appearance: none;
    color: #EB631E;
    margin-top: -1px;
  }
  
  .duration-section input[type='range']::-webkit-slider-thumb {
    width: 16px;
    height: 16px;
  -webkit-appearance: none;
    cursor: ew-resize;
    background: #1eeb85;
    box-shadow: -80px 0 0 80px #EB631E;
  } */
  

/* Container styling */
.searching-flights {
    margin-top: 60px;
}
.searching-flights .date-selector {
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 3px 10px;
    background-color: #f9f9f9;
    overflow: hidden;
    width: 100%;
    margin: auto;
  }
  
  /* Arrow buttons */
  .searching-flights .arrow {
    background: #fff;
    font-size: 24px;
    color: #333;
    cursor: pointer;
    border: 1px solid #E2E2E2;
    border-radius: 100vh;
    min-height: 34px;
    height: 34px;
    min-width: 34px;
    display: inline-block;
}
  .searching-flights .arrow i {
    font-size: 17px;
    position: relative;
    top: -4px;
}
.date-item .price {
    color: #3BB247;
    font-size: 16px;
}
  .searching-flights .arrow:disabled {
    color: #ccc;
    cursor: not-allowed;
  }
  
  /* Date list container */
  .searching-flights .date-list {
    display: flex;
    gap: 10px;
    overflow-x: hidden;
    scroll-behavior: smooth;
    flex-grow: 1;
    padding: 5px 0;
    margin: 0 10px;
  }
  
  /* Date item styling */
  .searching-flights .date-item {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 6px 5px;
    text-align: center;
    min-width: 130px;
    cursor: pointer;
    transition: all 0.3s ease;
  }
  
  .searching-flights .date-item span {
    display: block;
    font-weight: 600;
  }
  
  .searching-flights .flight-price .price {
    color: #000;
    font-weight: 700;
    font-size: 22px;
}
  .searching-flights .date-item.active {
    border: 1px solid #f27900;
    background-color: #fff7ec;
    color: #f27900;
    font-weight: bold;
    transition: all 0.3s ease;
  }
  
  
  .searching-flights .date-item:hover {
    background: #f3f3f3;
  }
  

  /* General Styles */
  .flight-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
    margin: 8px 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
  
  .flight-details {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  
  /* Airline Info Section */
  .airline-info {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 35%;
  }
  
  .airline-logo {
    width: 50px;
    height: 50px;
    border-radius: 8px;
  }
  
  .airline-name {
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #333;
  }
  
  .flight-number {
    display: block;
    font-size: 13px;
    color: hsl(0, 0%, 54%);
    margin: 4px 0;
}
  
.flight-details-link {
    font-size: 14px;
    color: #f27900;
    text-decoration: none;
    line-height: 20px !important;
    display: inline-block;
}
  
  .flight-details-link:hover {
    text-decoration: underline;
  }
  
  /* Timing Section */
  .flight-timing {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 35%;
  }
  
  .departure-time,
  .arrival-time {
    font-size: 18px;
    font-weight: bold;
    color: #333;
  }
  
  .flight-duration {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
  }
  .flight-duration img {
    max-width: 150px;
}
  
  .duration {
    font-size: 14px;
    color: #666;
  }
  
  .non-stop {
    font-size: 12px;
    color: #999;
  }
  
  /* Price Section */
  .flight-price {
    text-align: right;
    width: 20%;
  }
  
  .price {
    display: block;
    font-size: 20px;
    font-weight: bold;
    color: #333;
  }
  
  .discount {
    display: block;
    font-size: 12px;
    color: #3BB247;
}
  
  /* Book Button */
  .book-btn {
    padding: 8px 15px;
    font-size: 14px;
    font-weight: bold;
    background-color: #EB631E;
    color: #fff;
    border: none;
    border-radius: 100vh;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s ease;
    width: 90px;
}
  
  .book-btn:hover {
    background-color: #d86400;
  }
  

/* Search Flight Page CSS start */



/* review detail page css start */
.reviewdetails .searchflight-tabs {
    position: static;
    border: 1px solid #C0C0C0;
    border-radius: 100vh;
    background: #fff;
    margin: auto;
    width: fit-content;
    margin-bottom: 30px;
}
.review-left {
    background-color: #fff;
    border: 1px solid #E2E2E2;
    padding: 20px;
    border-radius: 16px;
}
.review-left .accordion-item {
    margin-bottom: 20px;
    border: 0;
}
.accordion-button {
    border: 0 !important;
    background-color: #F5F5F5;
    border-radius: 6px;
    font-size: 20px;
    color: #000000 !important;
    font-weight: 500;
}
.review-left .nav-tabs {
    border: 0;
}
.review-left .accordion-body {
    padding: 30px 0 1px 0;
}
.review-left .accordion-body .nav-item:not(:last-child){
margin-right: 10px;
}
.review-left .airline-info {
    width: 40%;
}
.review-left .flight-timing {
    width: 70%;
    justify-content: space-between;
}
.review-left span.depart-city, .review-left .arrived-city {
    font-size: 13px;
    font-weight: 400;
    color: #8A8A8A;
}
.review-left span.arrival-time {
    text-align: right;
}
.review-left .departure-time, .review-left .arrival-time {
    line-height: 20px;
}
.review-left .flight-duration img {
    max-width: 100%;
}
.review-left .flight-duration {
    gap: 0px;
}
.review-left .accordion-button:not(.collapsed) {
    background-color: #f5f5f5;
    box-shadow: none;
}
.review-left  .accordion-button:focus {
    box-shadow: 0 0 0 0.25rem rgb(235 100 30 / 77%);
}
.review-left .layover-bg{
background: linear-gradient(to right, #fff 0%, #FFEFE6 50%, #fff 100%);
padding: 4px;
text-align: center;
}
.review-left .layover-bg span{
    font-size: 14px;
    color: #EB631E;
}
.review-left  .flight-card {
    display: block;
}
.free-date {
    background-color: #C8DEF6;
    border-radius: 10px;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.free-date-left {
    display: flex;
    align-items: center;
    gap: 6px;
}
.free-date-left p {
    margin-bottom: 0;
}
.free-date-right {
    text-align: right;
}
.free-date-right span {
    background-color: #EB631E;
    color: #fff;
    padding: 2px 14px;
    border-radius: 100vh;
    margin-top: 6px;
    display: inline-block;
    font-weight: 500;
}
.free-date-left h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 4px;
}
.free-date-left p {
    margin-bottom: 0;
    font-size: 13px;
}
.free-date-left p a {
    color: #EB631E;
    font-weight: 500;
}
.free-date-right input {
    width: 20px;
    height: 20px;
}
.free-date.easefly {
    background-color: #F1E9F8;
}
.hassle-free h4, .secure-trip h4 {
    font-size: 20px;
    font-weight: 500;
}
.hassle-free p {
    font-size: 16px;
    color: #8A8A8A;
}
.protect-trip {
    background-color: #F5F5F5;
    padding: 13px 20px;
    border-radius: 10px;
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.secure-trip {
    margin-top: 24px;
}
.protect-trip  p {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 0;
    line-height: 18px;
    text-align: right;
}
.protect-inner {
    display: flex;
    align-items: center;
    gap: 20px;
}
.protect-inner p span{
    font-size: 13px;
    color: #8A8A8A;
}
.add-btn {
    background-color: #FFEFE6;
    color: #EB631E;
    border: 1px solid #EB631E;
    padding: 1px 24px;
    border-radius: 100vh;
    font-weight: 500;
}
.other-offers {
    border: 1px solid #E2E2E2;
    border-radius: 16px;
    margin-top: 20px;
    padding: 15px;
}
.other-top-offers {
    display: flex;
    align-items: center;
    gap: 15px;
}
.other-offer-inner {
    display: flex;
    align-items: center;
    gap: 10px;
}
.other-offer-inner p {
    font-size: 14px;
    color: #8A8A8A;
    margin-bottom: 0;
}
.digit-div {
    border-top: 1px solid #D9D9D9;
    margin-top: 20px;
    padding-top: 20px;
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 8px;
}
.digit-div p {
    color: #8A8A8A;
    font-size: 14px;
    margin-bottom: 0;
}
.continue-booking.text-center {
    padding: 26px 0 20px;
}
.continue-booking.skip-btn {
    display: flex;
    align-items: center;
    justify-content: center;
} 
a.skip-btn-a {
    border: 2px solid #EB631E;
    background-color: #FFEFE6;
    color: #EB631E;
    border-radius: 100vh;
    min-width: 210px;
    font-size: 18px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}
.skip-btn a.com-btn {
    margin: 0;
}
.price-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    background-color: #F5F5F5;
    border-radius: 10px;
}
.price-summary {
    background-color: #fff;
    padding: 12px;
    border-radius: 16px;
    border: 1px solid #E2E2E2;
}
.price-heading h3 {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 0;
}
.counting-passenger {
    display: flex;
    align-items: center;
    gap: 7px;
}
.all-type-passengers span {
    font-size: 13px;
}
.fare-explain {
    padding: 14px 0;
    border-bottom: 1px solid #D9D9D9;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.fare-explain h6 {
    font-size: 15px;
    color: #8a8a8a;
    font-weight: 400;
    margin-bottom: 0;
}
.fare-explain p {
    font-size: 15px;
    margin-bottom: 0;
    font-weight: 500;
}
span.green-text {
    color: #3BB247;
}
.fare-explain.grand-total{
    border-bottom: 0;
    padding-bottom: 0;
}
.fare-explain.grand-total h6, .fare-explain.grand-total p {
    font-size: 18px;
    font-weight: 600;
    color: #EB631E;
}
.promo-code .price-heading {
    padding: 13px 12px;
}
.promo-inputgroup input {
    border: 1px dotted #D0D0D0;
    border-radius: 6px 10px;
    line-height: 30px;
    padding: 6px;
    /* max-width: 177px; */
    font-size: 14px;
    font-weight: 600;
    color: #000;
}
.promo-inputgroup input::placeholder{
    color: #000;
}
.promo-inputgroup {
    display: flex;
    gap: 10px;
    align-items: center;
}
.promo-inputgroup button {
    background-color: #FFEFE6;
    border: 1px solid #EB631E;
    color: #EB631E;
    font-size: 12px;
    padding: 12px 10px;
    border-radius: 10px;
}
.promo-code p.congrats {
    font-size: 12px;
    color: #3BB247;
    font-weight: 500;
    margin-top: 14px;
}
.green-booknow {
    border: 1px solid #3BB247;
    border-radius: 10px;
    padding: 13px 12px;
    background-color: #E9FFEB;
}
.green-inputbtn button {
    background-color: #3BB247;
    border: 0;
    color: #fff;
    border-radius: 100vh;
    padding: 3px 12px;
    font-size: 14px;
}
.green-inputbtn {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.green-inputbtn input{
    width: 20px;
    height: 20px;
    appearance: none; /* Remove default styling */
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 1px solid #3BB247 !important;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    position: relative;
}
.green-inputbtn input:checked {
    border-color: 1px solid #3BB247; 
     
      background-color: #3BB247;
      
}
.green-inputbtn input::before{
    width: 18px;
    height: 18px;
    border-radius: 100vh;
    position: absolute;
    content: '';
    border: 1px solid #fff;

} 
.green-booknow p {
    font-size: 12px;
    color: #505050;
    margin-bottom: 0;
    margin-top: 7px;
}
.green-booknow p {
    margin-bottom: 0;
    margin-top: 7px;
    font-size: 12px;
}

.baggage-heading {
    background-color: #F5F5F5;
    padding: 12px 10px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    margin-top: 20px;
}
.baggage-heading p {
    margin-bottom: 0;
    color: #8A8A8A;
    font-size: 15px;
}
.baggage-airline-name, .baggage-info-left {
    flex-basis: 40%;
}
.checkin-baggage, .cabin-baggage, .baggage-info-center, .baggage-info-right {
    flex-basis: 30%;
    text-align: center;
}
.baggage-info-inner {
    display: flex;
    align-items: center;
    border: 1px solid #E2E2E2;
    border-radius: 10px;
    padding: 10px 15px;
    margin-top: 10px;
}
.baggage-info-inner  .flight-number {
    margin: 0px 0;
}
.baggage-info-center p , .baggage-info-right p{
    font-weight: 600;
    margin-bottom: 0;
}
.baggage-info-left span.saver {
    color: #EB631E;
    background-color: #f5f5f5;
    font-size: 13px;
    padding: 3px 12px;
    border-radius: 100vh;
}
.fare-rules{
    background-color: #F5F5F5;
    padding: 12px 10px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    margin-top: 20px;
}
.fare-rules-timeframe, .farerules-left{
    flex-basis: 70%;
}
.fare-airline-fees, .fare-oxigo-fees, .farerules-center, .farerules-right{
    flex-basis: 15%;
}
.fare-rules-timeframe > p, .fare-airline-fees > p, .fare-oxigo-fees > p {
    font-weight: 500;
    font-size: 15px;
    margin-bottom: 0;
}
.fare-rules p span {
    font-size: 13px;
    color: #8A8A8A;
}
.farerules-info {
    border: 1px solid #E2E2E2;
    border-radius: 10px;
    padding: 10px 15px;
    margin-top: 10px;
}
.farerules-inner {
    display: flex;
    align-items: center;
}
.farerules-inner p {
    margin-bottom: 0;
}
.farerules-inner:first-child {
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.farerules-left p {
    font-size: 13px;
    color: #8A8A8A;
}
.farerules-center p, .farerules-right p{
    font-size: 13px;
    font-weight: 500;
}

form.passenger-details-form {
    border: 1px solid #E2E2E2;
    padding: 15px;
    border-radius: 10px;
}
.passenger-details-in {
    border: 1px solid #E2E2E2;
    padding: 15px;
    border-radius: 10px;
    margin-bottom: 10px;
}
.passenger-details h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 2px;
}
.passenger-details p {
    font-size: 13px;
    color: #8A8A8A;
    margin-bottom: 10px;
}
.adults-age-gap {
    background-color: #F5F5F5;
    padding: 10px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 16px;
}
.passenger-full-name label {
    color: #8a8a8a;
    font-size: 12px;
}
.passenger-full-name label span {
    color: #EB631E;
}
.passenger-full-name input, .passenger-full-name select{
    color: #000;
    font-weight: 500;
    font-size: 14px;
    border: 1px solid #E2E2E2;
    line-height: 30px;
}
.passenger-full-name input::placeholder{
    color: #8A8A8A;
}
.passenger-details-in p.important {
    font-size: 14px;
    font-weight: 500;
}
.passenger-details-in p.important span{
    color: #EB631E;
}
.gstsection h4{
    margin-bottom: 10px;
}
.gstsection p{
    margin-bottom: 2px;
}
.payment-div h3 {
    font-size: 22px;
    color: #8A8A8A;
}
.payment-inner {
    border: 1px solid #E2E2E2;
    border-radius: 10px;
    padding: 14px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.payment-left {
    display: flex;
    align-items: center;
    gap: 10px;
}
.payment-left img {
    max-width: 35px;
}
.payment-left h4 {
    font-size: 18px;
    margin-bottom: 0;
}
.payment-left p {
    color: #8A8A8A;
    font-size: 13px;
    margin-bottom: 0;
}
.payment-right {
    display: flex;
    gap: 10px;
}
.payment-method img {
    margin-right: 4px;
}
p.payment-policy {
    font-size: 14px;
    color: #000;
    font-weight: 500;
    max-width: 700px;
    margin-bottom: 0;
}
p.payment-policy a{
    color: #EB631E;
}
.payment-radio input{
    width: 20px;
    height: 20px;
    appearance: none; /* Remove default styling */
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 1px solid #8A8A8A !important;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    position: relative;
}
.payment-radio input:checked {
    border-color: 1px solid #3BB247; 
     
      background-color: #3BB247;
      
}
.payment-radio input::before{
    width: 18px;
    height: 18px;
    border-radius: 100vh;
    position: absolute;
    content: '';
    border: 1px solid #fff;

} 

/* review detail page css end */


/* privacy policy page start */
.privacy-banner {
    background-image: url("../images/privacy-policy-banner.webp");
    padding: 40px 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.privacy-content{
    background-color: #F5F5F5;
    padding: 30px 0 40px;
}
.privacy-banner h1 {
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    padding: 80px 0;
    color: #fff;
    border: 1px double #ffffff54;
    margin-bottom: 0;
}
.privacy-banner-inner {
    border: 1px double #ffffff54;
    padding: 10px;
}
.privacy-content-in {
    background-color: #fff;
    border: 1px solid #e2e2e2;
    padding: 20px;
    border-radius: 10px;
}
.privacy-content-in h2 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 20px;
}
.privacy-content-in h5 {
    font-size: 16px;
}
.privacy-content-in p, .privacy-content-in li {
    font-size: 15px;
    font-weight: 400;
    color: #444;
}
.privacy-content-in ul li{
list-style-type: disc;
}
.privacy-content-in ol > li{
    font-weight: 500;
    color: #000;
    }
    .privacy-content-in ol > li:not(:first-child) {
        margin-top: 20px;
    }
.privacy-content-in h3 {
    font-size: 18px;
    margin-top: 22px;
}
.privacy-content-in h3 + p {
 margin-bottom: 2px;
}
.privacy-content-in ol p {
    margin-bottom: 4px;
}
h3.last-contact-div {
    margin-bottom: 40px;
}
h3.last-contact-div + h6 a {
    color: #EB631E;
    font-size: 22px;
    font-weight: 700;
}
.last-oxigo-links p{
    margin-bottom: 4px;
}
h3.last-contact-div + h6 {
    margin-bottom: 4px;
}
.last-oxigo-links a {
    color: #EB631E;
}
.last-oxigo-links {
    margin-bottom: 20px;
}

.disclaimer .privacy-banner {
    background-image: url("../images/disclaimer-banner.webp");
    padding: 40px 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.privacy-policy.disclaimer ol {
    padding-left: 16px;
}
.privacy-policy.disclaimer ol li{
    color: #444;
}
.privacy-policy.disclaimer ol li strong{
    color: #000;
}
.terms-condition ol{
    list-style: none;
}
/* privacy policy page end */

/* contact us page css start */
section.contact-page {
    background: linear-gradient(85deg, #fff 0%, #FFB996 100%);
    position: relative;
}
.contact-inner{
    position: relative;
    height: 400px;
    display: flex;
    align-items: center;
}
.contact-inner h1{
    font-size: 44px;
    font-weight: 700;
}
.contact-left p {
    font-size: 20px;
    margin-bottom: 6px;
    font-weight: 400;
}
.contact-img {
    position: absolute;
    right: 120px;
    bottom: -57px;
    max-width: 500px;
}
.contact-detail {
    background-color: #F5F5F5;
    padding: 100px 0px 50px;
}
.contact-page-div {
    background-color: #fff;
    padding: 15px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 16px;
}
.contact-page-div img {
    max-width: 70px;
}
.contact-page-div h6 {
    font-weight: 600;
    margin-bottom: 4px;
}
.contact-page-div p {
    font-weight: 400;
    margin-bottom: 0;
}
.contact-page-div p a{
    color: #EB631E;
}
.contact-top h2 {
    text-align: center;
    font-size: 30px;
    font-weight: 700;
}
.contact-top p {
    color: #8A8A8A;
    text-align: center;
    font-weight: 400;
}
.contact-map{
    background-color: #f5f5f5;
    padding-bottom: 70px;
}
.mapinner{
    background-color: #fff;
    padding: 15px;
    border-radius: 10px;
}
/* contact us page css end */


/* About us page start */
.about-us-oxigo{
    padding: 70px 0;
}
.about-us-left img {
    width: 100%;
}
.about-us-right{
    padding-left: 20px;
    padding-right: 10px;
}
.about-us-right h2, .vision-right h2, .whychoose-head h2{
    font-size: 34px;
    font-weight: 700;
}
.about-us-right p, .vision-right p, .whychoose-head p {
    color: #444444;
    margin-bottom: 0;
}
.vision-inner{
    background-color: #F1E9F8;
    border-radius: 16px;
    padding: 15px;
}
.vision-right{
    padding: 10px 15px 10px 30px; 
}
.about-us-oxigo .row, .vision .row {
    align-items: center;
}
.whychoose-head {
    text-align: center;
    max-width: 850px;
    margin: auto;
    margin-bottom: 40px;
}
.whychoose-head {
    text-align: center;
}
.whychoose-head h2{
    margin-bottom: 14px;
}
.blue-greyish{
    background-color: #C8DEF6;
}
.skin-brownish{
    background-color: #FFF3E7;
}
.pink-brownish{
    background-color: #F1E9F8;
}
.whychoose {
    padding: 80px 0;
}
.whychoose-inner {
    text-align: center;
    padding: 20px;
    border-radius: 16px;
    height: 100%;
}
.whychoose-inner img{
    max-width: 110px;
}
.whychoose-inner h5 {
    font-weight: 600;
    margin-top: 16px;
    font-size: 20px;
}
.whychoose-inner p {
    font-weight: 400;
    font-size: 14px;
}
/* About us page end */



/* seat arrangment css start */
.legroom {
    padding: 15px;
    border: 1px solid #e2e2e2;
    border-radius: 16px;
    display: flex;
    align-items: center;
}
.legroom-inner h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 2px;
}
.legroom-inner p {
    font-size: 14px;
    font-weight: 400;
    color: #8A8A8A;
    margin-bottom: 0;
}
.legroom-inner {
    margin-left: 10px;
}
.onward-top, .onward-left {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.seat-arrang .onward-left{
    justify-content: flex-start;
}
.pricing-color {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 10px;
}
.color {
    display: flex;
    align-items: center;
}
span.seat-content {
    color: #8A8A8A;
    font-size: 14px;
}
span.seat-color {
    height: 22px;
    width: 22px;
    background-color: #000;
    display: inline-block;
    margin-right: 4px;
}
.green-seat .seat-color {
    background-color: #DAF1E8;
}
.sky-seat .seat-color {
    background-color: #DEE7F8;
}
.grey-seat .seat-color {
    background-color: #9DB6E6;
}
.yellow-seat .seat-color {
    background-color: #FFE2AE;
}
.violet-seat .seat-color {
    background-color: #985289;
}
.black-seat .seat-color {
    background-color: #471D36;
}
.onward-left p, .onward-left h6 {
    margin-bottom: 0;
}
.onward-left h6 {
    font-weight: 700;
    font-size: 18px;
}
.onward-left p {
    padding-left: 20px;
}
.onward-left p span {
    color: #8A8A8A;
    font-size: 14px;
}
.onward-left p i {
    color: #8A8A8A;
    margin: 0 10px;
}
.onward-bottom {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}
.onward-left-right {
    background-color: #FFEFE6;
    border: 1px solid #EB631E;
    padding: 10px;
    border-radius: 10px;
    flex-basis: 13%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
}
.onward-mid {
    border: 1px solid #E2E2E2;
    border-radius: 10px;
    padding: 10px;
    flex-basis: 28%;
}
.onward-mid{
    display: flex;
    align-items: center;
    gap: 10px;
}
.onward-bottom p {
    margin-bottom: 4px;
}
.onward-mid-div p {
    font-size: 12px;
    color: #8A8A8A;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.onward-left-right p {
    font-size: 14px;
    color: #8A8A8A;
}
.last-onward-right p, .last-onward-right h6{
    color: #EB631E;
}
.onward-right p {
    margin-bottom: 0;
}
/* seat arrangment css start */

.aircraft {
	 position: relative;
	 margin: 80px auto;
	 background: #fff;
	 transform: scale(0.8);
}
 .aircraft-body {
	 display: flex;
	 flex-direction: column;
	 justify-content: space-between;
	 position: relative;
	 min-width: min-content;
	 margin: auto;
	 border: 2px solid #c5c5c7;
	 min-height: 280px;
	 border-right: none;
	 border-left: none;
	 padding: 10px;
	 background: #fff;
	 left: 202px;
}
 .aircraft-body .top-left-exists {
	 position: absolute;
	 left: -42px;
	 top: -35px;
}
 .aircraft-body .top-right-exists {
	 position: absolute;
	 right: -42px;
	 top: -35px;
}
 .aircraft-body .bottom-right-exists {
	 position: absolute;
	 transform: rotate(180deg);
	 right: -42px;
	 bottom: -35px;
}
 .aircraft-body .bottom-left-exists {
	 position: absolute;
	 transform: rotate(180deg);
	 left: -42px;
	 bottom: -35px;
}
 .aircraft-body .seats {
	 display: flex;
	 flex-direction: row;
	 justify-content: space-between;
	 align-items: center;
}
 .aircraft-body .seats:first-child {
	 margin-bottom: 20px;
}
 .aircraft-body .seats-triple {
	 margin-right: 20px;
}
 .aircraft-body .seats-triple::before {
	 content: attr(data-line);
	 position: relative;
	 text-align: center;
	 font-family: tahoma;
	 left: 15px;
	 font-size: 12px;
}
 .aircraft-body .seats-triple.first-line .seat::after {
	 left: -25px;
}
 .aircraft-body .seats-triple.last-line .seat::after {
	 right: -52px;
}
 .aircraft-body .seat {
	 cursor: pointer;
	 border: solid 1px #88857c;
	 width: 39px;
	 height: 33px;
	 border-radius: 4px;
	 padding: 1px;
	 margin-top: 6px;
}
 .aircraft-body .seat.active {
	 background: #ffe2ae;
}
 .aircraft-body .seat.empty {
	 background: #e6e7e9;
}
 .aircraft-body .seat::before {
	 content: "";
	 display: block;
	 width: 30px;
	 height: 26px;
	 border: solid 1px #88857c;
	 margin: 2px -2px;
	 border-left: none;
	 border-radius: 0 5px 5px 0;
}
 .aircraft-body .seat::after {
	 position: relative;
	 content: attr(data-letter);
	 font-family: tahoma;
	 top: -25px;
}
 .aircraft .exists {
	 display: flex;
	 justify-content: space-evenly;
	 align-items: bottom;
	 position: relative;
	 left: -280px;
}
 .aircraft-top-wing {
	 position: absolute;
	 width: 250px;
	 height: 200px;
	 top: -202px;
	 left: 50%;
}
 .aircraft-top-wing .exists {
	 top: 170px;
}
 .aircraft-top-wing::before {
	 content: "";
	 position: absolute;
	 bottom: -2px;
	 width: 250px;
	 height: 200px;
	 border: 2px solid #c5c5c7;
	 z-index: -1;
	 border-bottom-left-radius: 30px;
	 border-right: none;
	 border-top: none;
}
 .aircraft-top-wing::after {
	 content: "";
	 position: absolute;
	 width: 250px;
	 height: 200px;
	 border: 2px solid #c5c5c7;
	 border-bottom-right-radius: 60px;
	 border-top: none;
	 border-left: none;
	 transform: skew(-35deg);
	 left: -500px;
	 bottom: -2px;
}
 .aircraft-bottom-wing {
	 position: absolute;
	 width: 250px;
	 height: 200px;
	 bottom: -202px;
	 left: 50%;
}
 .aircraft-bottom-wing .exists {
	 top: 5px;
	 transform: rotate(180deg);
}
 .aircraft-bottom-wing::before {
	 content: "";
	 position: absolute;
	 top: -2px;
	 width: 250px;
	 height: 200px;
	 border: 2px solid #c5c5c7;
	 z-index: -1;
	 border-top-left-radius: 30px;
	 border-right: none;
	 border-bottom: none;
}
 .aircraft-bottom-wing::after {
	 content: "";
	 position: absolute;
	 width: 250px;
	 height: 200px;
	 border: 2px solid #c5c5c7;
	 border-top-right-radius: 60px;
	 border-bottom: none;
	 border-left: none;
	 transform: skew(35deg);
	 left: -500px;
	 bottom: 0px;
}
 .aircraft-head {
	 position: absolute;
	 height: 310px;
	 width: 330px;
	 margin: auto;
	 overflow: hidden;
	 top: -2px;
	 left: -326px;
}
 .aircraft-head-body {
	 position: absolute;
	 height: 300px;
	 width: 548px;
	 padding-left: 115px;
	 border-radius: 50%;
	 right: -245px;
	 border: 2px solid #c5c5c7;
}
 .aircraft-head-body .windows {
	 position: absolute;
	 top: 70px;
	 left: 50px;
}
 .aircraft-head-body .front-lavatory {
	 position: absolute;
	 bottom: 15px;
	 left: 220px;
}
 .aircraft-tail {
	 position: absolute;
	 height: 323px;
	 width: 700px;
	 margin: auto;
	 overflow: hidden;
	 top: -3px;
	 right: -320px;
	 padding-left: 121px;
	 z-index: -1;
}
 .aircraft-tail-body {
	 position: absolute;
	 height: 302px;
	 width: 548px;
	 padding-left: 135px;
	 border-radius: 50%;
	 border: 2px solid #c5c5c7;
}
 .aircraft-tail-body .back-lavatory {
	 width: 40px;
	 height: 98%;
	 display: flex;
	 justify-content: space-around;
	 flex-direction: column;
	 margin-left: 250px;
}

.plane-seats {
    overflow-x: auto;
}
 
.blur-div {
    background-color: #e9e9e9!important;
}

#departure-oneway, #return-oneway {
    background-color: inherit;
}

#return-day-dialog {
    font-size: 12.5px;
    font-weight: 500;
    font-style: oblique;
    color: #54a400 !important;
}

.ui-autocomplete {
    background-color: #f9f9f9!important;
}

.ui-autocomplete li {
    font-size: 0.95rem;
    padding: 0px!important;
}

.ui-autocomplete li div {
    padding: 2px 1em 2px 0.5em!important;
}

/* Calendar Styles */
.calendar-wrapper {
    position: absolute;
    top: 100%;
    left: 0;
    width: 760px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    display: none;
    z-index: 1000;
}

.calendar-wrapper.active {
    display: block;
}

.calendar-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    position: relative;
}

.calendar-navigation button {
    background: none;
    border: none;
    padding: 8px;
    cursor: pointer;
    color: #333;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
    z-index: 2;
}

.calendar-navigation button:hover {
    color: #0066cc;
}

.current-month {
    font-weight: 500;
    font-size: 16px;
    color: #333;
    display: flex;
    justify-content: space-around;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    padding: 0;
    text-align: center;
}

.current-month span {
    flex: 1;
    text-align: center;
}

@media (max-width: 768px) {
    .current-month {
        position: relative;
        justify-content: space-between;
        padding: 0 20px;
    }
}

.calendar-months {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

.calendar-month {
    flex: 1;
    min-width: 320px;
    max-width: 360px;
}

.calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    text-align: center;
}

.calendar-grid .weekday {
    font-weight: 500;
    color: #666;
    padding: 8px;
    font-size: 14px;
    margin-bottom: 5px;
}

.calendar-grid .day {
    padding: 8px 4px;
    cursor: pointer;
    width: 40px;
    height: 52px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 2px auto;
    transition: all 0.2s;
    position: relative;
    font-size: 14px;
    color: #333;
    border-radius: 4px;
}

.calendar-grid .day .day-price {
    font-size: 12px;
    color: #00FF00 !important; /* Verde brillante para los precios */
    margin-top: 2px;
    font-weight: 500;
}

.calendar-grid .day.disabled .day-price {
    color: #ccc;
}

.calendar-grid .day.selected .day-price {
    color: white !important; /* Texto blanco para mejor contraste en días seleccionados */
}

.calendar-grid .day::after {
    content: "--";
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 8px;
    color: #ccc;
    letter-spacing: -1px;
}

.calendar-grid .day:hover:not(.disabled) {
    background-color: #f0f7ff;
}

.calendar-grid .day.selected {
    background-color: #00FF00 !important; /* Verde brillante para días seleccionados */
    color: white !important;
    border-radius: 8px !important;
}

.calendar-grid .day.in-range {
    background-color: rgba(0, 255, 0, 0.2) !important; /* Verde claro transparente para el rango */
    border-radius: 0 !important;
}

.calendar-grid .day.today {
    color: #0066ff;
    font-weight: 600;
}

.calendar-grid .day.disabled {
    color: #ccc;
    cursor: not-allowed;
}

.calendar-grid .day.disabled::after {
    opacity: 0.5;
}

.calendar-grid .day.selected::after {
    color: #fff;
}

@media (max-width: 840px) {
    .calendar-wrapper {
        width: 95%;
        left: 50%;
        transform: translateX(-50%);
    }
}

@media (max-width: 768px) {
    .calendar-wrapper {
        width: calc(100vw - 32px);
        padding: 16px;
        position: fixed;
        bottom: 0;
        left: 0;
        top: auto;
        transform: none;
        border-radius: 16px 16px 0 0;
        margin: 0;
    }

    .calendar-months {
        flex-direction: column;
        gap: 24px;
    }

    .calendar-month {
        width: 100%;
        max-width: none;
    }

    .calendar-grid {
        gap: 4px;
    }
}

@media (max-width: 480px) {
    .calendar-wrapper {
        padding: 12px;
    }

    .calendar-months {
        gap: 16px;
    }

    .calendar-grid .day {
        width: 35px;
        height: 35px;
        font-size: 13px;
    }
}

/* Posicionamiento específico para el calendario de return */
.form-inputs-return .calendar-wrapper {
    right: 0;
    left: auto;
}

@media (max-width: 840px) {
    .calendar-wrapper {
        width: 95%;
        left: 50%;
        transform: translateX(-50%);
    }
    
    .form-inputs-return .calendar-wrapper {
        right: auto;
    }
}

@media (max-width: 768px) {
    .calendar-wrapper {
        width: calc(100vw - 32px);
        padding: 16px;
        position: fixed;
        bottom: 0;
        left: 0;
        top: auto;
        transform: none;
        border-radius: 16px 16px 0 0;
        margin: 0;
    }

    .form-inputs-return .calendar-wrapper {
        left: 0;
        right: auto;
    }
}

@media (max-width: 768px) {
    .calendar-wrapper {
        width: 100%;
        padding: 0;
        position: fixed;
        bottom: 0;
        left: 0;
        top: 0;
        transform: none;
        border-radius: 0;
        margin: 0;
        background: #fff;
        height: 100vh;
        z-index: 1050;
        display: flex;
        flex-direction: column;
    }

    .calendar-navigation {
        padding: 16px;
        border-bottom: 1px solid #eee;
        margin-bottom: 0;
        position: relative;
    }

    .calendar-navigation button {
        font-size: 24px;
        color: #000;
    }

    .calendar-navigation button.prev-month {
        position: absolute;
        left: 16px;
    }

    .current-month {
        position: relative;
        text-align: center;
        font-size: 18px;
        font-weight: 600;
        color: #000;
        display: block;
    }

    .current-month span {
        display: none;
    }

    .current-month::before {
        content: 'Select Departure Date';
        display: block;
        font-size: 20px;
        font-weight: 600;
        margin-bottom: 8px;
    }

    .calendar-months {
        flex-direction: column;
        gap: 0;
        overflow-y: auto;
        flex: 1;
        padding: 0 16px;
    }

    .calendar-month {
        width: 100%;
        max-width: none;
        padding: 0;
        margin-top: 16px;
    }

    .calendar-grid {
        gap: 0;
    }

    .calendar-grid .weekday {
        font-weight: 400;
        color: #666;
        padding: 8px;
        font-size: 14px;
    }

    .calendar-grid .day {
        width: 100%;
        height: 45px;
        font-size: 16px;
        border-radius: 0;
        color: #000;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin: 0;
        position: relative;
    }

    .calendar-grid .day.selected {
        background-color: #007AFF;
        color: white;
        border-radius: 8px;
    }

    .calendar-grid .day::after {
        content: "--";
        bottom: 2px;
        color: #ccc;
    }

    .calendar-grid .day.disabled {
        color: #ccc;
    }

    /* Botones inferiores */
    .calendar-footer {
        padding: 16px;
        border-top: 1px solid #eee;
        display: flex;
        gap: 12px;
        background: #fff;
    }

    .calendar-footer button {
        flex: 1;
        padding: 12px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 500;
        border: none;
    }

    .calendar-footer .clear-btn {
        background: #FFE5E5;
        color: #FF3B30;
    }

    .calendar-footer .done-btn {
        background: #FF9500;
        color: white;
    }
}

@media (max-width: 768px) {
    .calendar-wrapper {
        display: none;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        transform: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        z-index: 9999 !important;
        overflow-y: auto !important;
    }

    .calendar-wrapper.active {
        display: flex !important;
        flex-direction: column !important;
    }

    .calendar-navigation {
        padding: 16px !important;
        border-bottom: 1px solid #eee !important;
        margin-bottom: 0 !important;
        position: sticky !important;
        top: 0 !important;
        background: #fff !important;
        z-index: 2 !important;
    }

    .calendar-navigation button {
        font-size: 24px !important;
        color: #000 !important;
    }

    .calendar-navigation button.prev-month {
        position: absolute !important;
        left: 16px !important;
    }

    .current-month {
        text-align: center !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        color: #000 !important;
        position: relative !important;
        padding: 0 !important;
        display: block !important;
    }

    .current-month span {
        display: block !important;
        padding: 0 4px !important;
        text-align: center !important;
        font-size: 16px !important;
    }
    
    .current-month span:nth-child(2) {
        font-size: 14px !important;
        color: #666 !important;
        margin-top: 4px !important;
    }

    .current-month::before {
        display: none !important;
    }

    .calendar-wrapper[data-calendar-type="Return"] .current-month::before {
        display: none !important;
    }

    .calendar-months {
        flex-direction: column !important;
        gap: 0 !important;
        overflow-y: auto !important;
        flex: 1 !important;
        padding: 16px !important;
    }

    .calendar-month {
        width: 100% !important;
        max-width: none !important;
        padding: 0 !important;
        margin-top: 16px !important;
    }

    .calendar-grid {
        gap: 0 !important;
        grid-template-columns: repeat(7, 1fr) !important;
    }

    .calendar-grid .weekday {
        font-weight: 400 !important;
        color: #666 !important;
        padding: 8px !important;
        font-size: 14px !important;
    }

    .calendar-grid .day {
        width: auto !important;
        height: 45px !important;
        font-size: 16px !important;
        border-radius: 0 !important;
        color: #000 !important;
        margin: 0 !important;
        padding: 4px !important;
    }

    .calendar-grid .day.selected {
        background-color: #007AFF !important;
        color: white !important;
        border-radius: 8px !important;
    }

    .calendar-grid .day::after {
        content: "--" !important;
        bottom: 2px !important;
        color: #ccc !important;
    }

    .calendar-grid .day.disabled {
        color: #ccc !important;
    }

    .calendar-footer {
        padding: 16px !important;
        border-top: 1px solid #eee !important;
        display: flex !important;
        gap: 12px !important;
        background: #fff !important;
        position: sticky !important;
        bottom: 0 !important;
        z-index: 2 !important;
    }

    .calendar-footer button {
        flex: 1 !important;
        padding: 12px !important;
        border-radius: 8px !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        border: none !important;
        cursor: pointer !important;
    }

    .calendar-footer .clear-btn {
        background: #FFE5E5 !important;
        color: #FF3B30 !important;
    }

    .calendar-footer .done-btn {
        background: #FF9500 !important;
        color: white !important;
    }
}

.calendar-footer {
    display: none;
}

@media (max-width: 768px) {
    .calendar-footer {
        display: flex;
        justify-content: space-between;
        padding: 16px;
        background: #fff;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    }

    .calendar-footer button {
        padding: 12px 24px;
        border-radius: 25px;
        border: none;
        font-weight: 500;
        font-size: 16px;
        width: 48%;
    }

    .calendar-footer .clear-btn {
        background: #f4f4f4;
        color: #333;
    }

    .calendar-footer .done-btn {
        background: #1a73e8;
        color: white;
    }
}

@media (max-width: 768px) {
    .calendar-wrapper {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #fff;
        z-index: 1000;
        display: none;
        padding-bottom: 80px; /* Espacio para los botones */
        overflow-y: auto;
    }

    .calendar-wrapper.active {
        display: block;
    }

    .calendar-navigation {
        position: sticky;
        top: 0;
        background: #fff;
        padding: 16px;
        border-bottom: 1px solid #e0e0e0;
        z-index: 2;
    }

    .calendar-months {
        padding: 16px;
        display: flex;
        flex-direction: column;
        gap: 24px;
        margin-bottom: 60px;
    }

    .calendar-month {
        width: 100%;
    }

    .calendar-grid {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        gap: 8px;
    }

    .calendar-grid .weekday {
        text-align: center;
        font-weight: 500;
        color: #70757a;
        padding: 8px 0;
    }

    .calendar-grid .day {
        aspect-ratio: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        cursor: pointer;
        position: relative;
        font-size: 14px;
    }

    .calendar-footer {
        display: flex;
        justify-content: space-between;
        padding: 16px;
        background: #fff;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
        z-index: 2;
    }

    .calendar-footer button {
        padding: 12px 24px;
        border-radius: 25px;
        border: none;
        font-weight: 500;
        font-size: 16px;
        width: 48%;
    }

    .calendar-footer .clear-btn {
        background: #f4f4f4;
        color: #333;
    }

    .calendar-footer .done-btn {
        background: #1a73e8;
        color: white;
    }
}

/* Versión desktop - ocultar footer */
.calendar-footer {
    display: none;
}

/* Resto de estilos del calendario */
.calendar-wrapper {
    position: absolute;
    top: 100%;
    left: 0;
    width: 760px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    display: none;
    z-index: 1000;
}

.calendar-wrapper.active {
    display: block;
}

.calendar-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
}

.calendar-months {
    display: flex;
    gap: 24px;
    padding: 0 16px 16px;
}

.calendar-month {
    flex: 1;
}

.calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 8px;
}

@media (max-width: 768px) {
    .close-calendar {
        position: absolute;
        top: 16px;
        right: 16px;
        width: 28px;
        height: 28px;
        background: #f4f4f4;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        border: none;
        cursor: pointer;
        font-size: 16px;
        color: #333;
        z-index: 3;
        font-weight: bold;
    }
}

/* Ocultar el botón de cerrar en escritorio */
.close-calendar {
    display: none;
}

// ... existing code ...
@media (max-width: 768px) {
    .calendar-wrapper {
        width: 100%;
        padding: 0;
        position: fixed;
        bottom: 0;
        left: 0;
        top: 0;
        transform: translateY(100%);
        transition: transform 0.3s ease-in-out;
        border-radius: 0;
        margin: 0;
        background: #fff;
        height: 100vh;
        z-index: 1050;
        display: flex;
        flex-direction: column;
    }

    .calendar-wrapper.active {
        display: block;
    }

    .calendar-wrapper.mobile-active {
        transform: translateY(0);
    }

    .calendar-navigation {
        padding: 16px;
        border-bottom: 1px solid #eee;
        margin-bottom: 0;
        position: relative;
    }

    .calendar-navigation button {
        font-size: 24px;
        color: #000;
    }

    .calendar-navigation button.prev-month {
        position: absolute;
        left: 16px;
    }

    .current-month {
        position: relative;
        text-align: center;
        font-size: 18px;
        font-weight: 600;
        color: #000;
        display: block;
    }

    .current-month span {
        display: none;
    }

    /* Título dinámico según el atributo data-calendar-type */
    .current-month::before {
        content: 'Select Departure Date';
        display: block;
        font-size: 20px;
        font-weight: 600;
        margin-bottom: 8px;
    }

    /* Cambiar el texto si es un calendario de regreso */
    .calendar-wrapper[data-calendar-type="Return"] .current-month::before {
        content: 'Select Return Date';
    }
}

/* Estilos para los atajos de selección rápida */
.calendar-shortcuts {
    display: none;
}

.shortcut-btn {
    display: none;
}

/* Estilos para la navegación por meses */
.calendar-shortcuts.months-navigation {
    display: none;
}

.month-btn {
    display: none;
}

.month-btn.current-month-btn {
    display: none;
}

@media (max-width: 768px) {
    .calendar-shortcuts.months-navigation {
        display: none;
    }
    
    .month-btn {
        display: none;
    }
}

@media (min-width: 769px) {
    .month-btn {
        display: none;
    }
}

.close-calendar {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 30px;
    height: 30px;
    background-color: transparent;
    border: none;
    font-size: 18px;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    z-index: 10;
    display: none; /* Oculto por defecto en PC */
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.2s ease;
}

.close-calendar:hover {
    background-color: #f1f1f1;
    color: #333;
}

@media (max-width: 768px) {
    .close-calendar {
        display: flex; /* Visible solo en móvil */
        top: 14px;
        right: 14px;
        width: 36px;
        height: 36px;
        font-size: 20px;
        background-color: #f5f5f5;
        border-radius: 50%;
        box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    }
    
    .close-calendar:active {
        background-color: #e5e5e5;
    }
}

@media (max-width: 768px) {
    /* ... existing code ... */
    
    .calendar-months {
        flex-direction: column !important;
        gap: 24px !important; /* Espacio uniforme entre meses */
        overflow-y: auto !important;
        flex: 1 !important;
        padding: 16px !important;
    }

    .calendar-month {
        width: 100% !important;
        max-width: none !important;
        padding: 0 !important;
        margin: 0 !important; /* Eliminar margen superior para consistencia */
    }
    
    /* Título para cada mes para mantener consistencia */
    .calendar-month::before {
        content: attr(data-month-title);
        display: block !important;
        text-align: center !important;
        font-weight: 600 !important;
        font-size: 16px !important;
        margin-bottom: 8px !important;
        color: #333 !important;
    }

    .calendar-grid {
        gap: 0 !important;
        grid-template-columns: repeat(7, 1fr) !important;
        width: 100% !important;
    }

    .calendar-grid .weekday {
        font-weight: 400 !important;
        color: #666 !important;
        padding: 8px 4px !important; /* Padding uniforme */
        font-size: 14px !important;
        text-align: center !important;
    }

    .calendar-grid .day {
        width: auto !important;
        height: 45px !important;
        font-size: 16px !important;
        border-radius: 4px !important; /* Bordes redondeados uniformes */
        color: #000 !important;
        margin: 0 !important;
        padding: 4px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

@media (max-width: 768px) {
    /* ... existing code ... */
    
    .calendar-navigation button.next-month {
        position: absolute !important;
        right: 50px !important; /* Alejado de la derecha para no interferir con el botón de cierre */
    }
}

.calendar-wrapper {
    /* Estilos existentes */
    background-color: #f8f5f2 !important; /* Beige suave que complementa el verde pastel */
}

.calendar-month {
    background-color: #f8f5f2 !important; /* Beige suave que complementa el verde pastel */
}

.calendar-navigation {
    background-color: #f8f5f2 !important; /* Beige suave que complementa el verde pastel */
}

.calendar-footer {
    background-color: #f8f5f2 !important; /* Beige suave que complementa el verde pastel */
}

/* Estilo para el precio mostrado bajo cada día */
.calendar-grid .day .day-price {
    font-size: 12px;
    color: #4ca350 !important; /* Verde más oscuro para mejor legibilidad */
    margin-top: 2px;
    font-weight: 500;
}

/* Estilo para días seleccionados - forma circular */
.calendar-grid .day.selected {
    background-color: #c2ffc3 !important; /* Verde pastel para días seleccionados */
    color: #333333 !important; /* Texto oscuro para mejor contraste */
    border-radius: 50% !important; /* Forma circular */
    width: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: auto !important;
}

/* Estilo para el rango entre días seleccionados - forma circular */
.calendar-grid .day.in-range {
    background-color: rgba(194, 255, 195, 0.4) !important; /* Verde pastel transparente para el rango */
    border-radius: 50% !important; /* Forma circular */
    width: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: auto !important;
}

/* Ajuste para la información de precio */
.calendar-grid .day.selected .day-price,
.calendar-grid .day.in-range .day-price {
    position: absolute !important;
    bottom: 2px !important;
    font-size: 10px !important;
}

/* Versión móvil */
@media (max-width: 768px) {
    .calendar-grid .day.selected {
        border-radius: 50% !important; /* Forma circular */
        width: 48px !important;
        height: 48px !important;
        margin: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    .calendar-grid .day.in-range {
        border-radius: 50% !important; /* Forma circular */
        width: 48px !important;
        height: 48px !important;
        margin: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    .calendar-grid .day.selected .day-price,
    .calendar-grid .day.in-range .day-price {
        position: absolute !important;
        bottom: 1px !important;
        font-size: 9px !important;
    }
}

/* Estilo para el día actual (today) - forma circular con color negro pero sin borde */
.calendar-grid .day.today {
    color: #000000 !important; /* Negro oscuro */
    font-weight: 600 !important;
    border: none !important; /* Sin borde */
    border-radius: 50% !important; /* Forma circular */
    width: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: auto !important;
}

/* Versión móvil del día actual */
@media (max-width: 768px) {
    .calendar-grid .day.today {
        border-radius: 50% !important; /* Forma circular */
        width: 48px !important;
        height: 48px !important;
        margin: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: none !important; /* Sin borde */
    }
}

/* Mejoras para la disposición de días en versión móvil */
@media (max-width: 768px) {
    /* Mejora general del calendario */
    .calendar-months {
        padding: 16px 8px !important;
        gap: 30px !important; /* Mayor espacio entre meses */
    }
    
    /* Mejora del contenedor de cada mes */
    .calendar-month {
        margin-bottom: 10px !important;
        padding: 8px !important;
        background-color: rgba(248, 245, 242, 0.6) !important; /* Fondo sutil para separar meses */
        border-radius: 12px !important;
    }
    
    /* Mejora de título de cada mes */
    .calendar-month::before {
        margin: 8px 0 16px !important;
        font-size: 18px !important;
        color: #333333 !important;
        font-weight: 600 !important;
    }
    
    /* Mejora de la cuadrícula de días */
    .calendar-grid {
        gap: 8px !important; /* Espacio uniforme entre días */
        margin: 0 auto !important;
        max-width: 100% !important;
    }
    
    /* Mejora de los días de la semana */
    .calendar-grid .weekday {
        padding: 8px 0 !important;
        font-size: 14px !important;
        font-weight: 500 !important;
    }
    
    /* Mejora de los días */
    .calendar-grid .day {
        width: 42px !important;
        height: 42px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 15px !important;
        position: relative !important;
    }
    
    /* Mejora de los precios en los días */
    .calendar-grid .day .day-price {
        position: absolute !important;
        bottom: 2px !important;
        font-size: 10px !important;
        line-height: 1 !important;
    }
    
    /* Ajustes para días seleccionados */
    .calendar-grid .day.selected {
        width: 42px !important; /* Tamaño consistente */
        height: 42px !important;
    }
    
    /* Ajustes para días en el rango */
    .calendar-grid .day.in-range {
        width: 42px !important; /* Tamaño consistente */
        height: 42px !important;
    }
    
    /* Ajustes para el día actual */
    .calendar-grid .day.today {
        width: 42px !important; /* Tamaño consistente */
        height: 42px !important;
    }
}

/* Ajuste de posición para los botones de navegación en móvil */
@media (max-width: 768px) {
    /* Mover el botón prev-month (flecha izquierda) más a la derecha */
    .calendar-navigation button.prev-month {
        position: absolute !important;
        left: 50px !important; /* Aumentado para mejor simetría con next-month */
    }
    
    /* Asegurar que el botón next-month mantiene su posición */
    .calendar-navigation button.next-month {
        position: absolute !important;
        right: 50px !important;
    }
}

/* Ajuste del color de fondo del botón de cierre (x) en móvil */
@media (max-width: 768px) {
    /* Cambiar el fondo del botón de cierre para que coincida con el fondo del calendario */
    .close-calendar {
        background-color: #f8f5f2 !important; /* Color beige que coincide con el fondo del calendario */
        color: #333 !important;
        box-shadow: none !important;
        border: 1px solid #e0e0e0 !important; /* Borde sutil para definir el botón */
    }
    
    .close-calendar:active {
        background-color: #f0ece9 !important; /* Versión ligeramente más oscura para el estado activo */
    }
}

/* Cambio de color del botón Done a verde */
@media (max-width: 768px) {
    /* Estilo para el botón Done */
    .calendar-footer .done-btn {
        background-color: #4ca350 !important; /* Verde que complementa el verde pastel usado en fechas seleccionadas */
        color: white !important;
        border: none !important;
        font-weight: 600 !important;
        transition: background-color 0.2s ease !important;
    }
    
    /* Estado hover del botón Done */
    .calendar-footer .done-btn:hover {
        background-color: #3f8c42 !important; /* Versión más oscura para hover */
    }
    
    /* Estado activo del botón Done */
    .calendar-footer .done-btn:active {
        background-color: #367939 !important; /* Versión aún más oscura para cuando se presiona */
    }
}

/* Color negro para los precios en días seleccionados */
.calendar-grid .day.selected .day-price {
    color: #000000 !important; /* Negro para precios en días seleccionados */
    font-weight: 600 !important;
}

/* Versión móvil - color negro para precios en días seleccionados */
@media (max-width: 768px) {
    .calendar-grid .day.selected .day-price {
        color: #000000 !important;
        font-weight: 600 !important;
        position: absolute !important;
        bottom: 1px !important;
        font-size: 9px !important;
    }
}

/* 
 * IMPORTANTE - Cambio de comportamiento en versión móvil:
 * El calendario no debe cerrarse automáticamente al seleccionar un día.
 * El usuario debe hacer clic en el botón "Done" para confirmar su selección.
 * Este cambio requiere modificar el archivo js/script.js para:
 * 1. Remover el código que cierra el calendario automáticamente (líneas ~320-328)
 * 2. Asegurar que solo el botón "Done" ejecute el cierre del calendario
 */

/* Destacar más el botón Done en móvil para indicar que es necesario pulsarlo */
@media (max-width: 768px) {
    .calendar-footer .done-btn {
        animation: subtle-pulse 2s infinite !important;
        box-shadow: 0 0 5px rgba(76, 163, 80, 0.5) !important;
        font-size: 17px !important;margin-bottom: 54px;
    }
    
    @keyframes subtle-pulse {
        0% { transform: scale(1); }
        50% { transform: scale(1.05); }
        100% { transform: scale(1); }
    }
}
.calendar-wrapper {
    right: 0;
    left: auto;
    /* left: auto; */
}