.btn_yellow, .btn_green:hover:not(:disabled){border:1px solid var(--gradient)}
.btn_yellow:focus:not(:disabled) {
    background: var(--maincolor);
    background: var(--gradient);
    color: var(--maincolortxtalt);
}
.modal-content {
    color: #000;
}
.FlightAside .h234 {
    aspect-ratio: 29 / 32;
    height: auto;
    max-height: max-content;
}

.shimmer {
   
    border-radius: 4px;
    background: linear-gradient(90deg, #e2e8f0 0%, #f8fafc 50%, #e2e8f0 100%);
    background-size: 200% 100%;
    /* Animation for all browsers */
    animation: shimmer 2s ease-in-out infinite;
    -webkit-animation: shimmer 1s ease-in-out infinite; /* Safari/iOS */
}

@keyframes shimmer {
    0% {
        background-position: 0% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

@-webkit-keyframes shimmer {
    0% {
        background-position: 0% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.shimmer {
    transform: translateZ(0); /* enables GPU rendering */
    -webkit-transform: translateZ(0);
    will-change: background-position;
}

.modalradius{border-radius:8px!important;}

.visalogo { height: 26px;}
a{outline: none;}
.travelNav{padding-block:7px;}
﻿.boxshadow{filter:none;}
.whitebox, .onlydeskwhitebox, .whitebox2{box-shadow: 0px 2px 16px 0px rgba(0, 0, 0, 0.04);
}
﻿.form-label{font-size:12px; color:#4A4A4A;}
.logininput{border-radius:4px; font-size:16px; padding:8px; border:1px solid #E0E0E0; background-color:#fff!important;}
.logininput:focus, .form-select:focus{border-color:var(--maincolor); box-shadow:unset; }
.subheading{font-size:16px; font-weight:600;}
.form-select{font-size:14px;}
input:-webkit-autofill,
select:-webkit-autofill,
textarea:-webkit-autofill {
    box-shadow: 0 0 0 1000px #ffffff inset; /* White background */
    -webkit-text-fill-color: #000000; /* Black text */
    transition: background-color 5000s ease-in-out 0s;
}
.profilenav{color:#000; cursor:pointer;}
.Roomimgpopup img{height:480px;}
.validateCardSubmitBtn {
    background: var(--gradient);
    color: var(--maincolortxt);
    border: transparent;
    font-size: 16px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-inline: auto;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    padding: 0.6rem;
}
.validateCardSubmitBtn.disablled, .validateCardSubmitBtn:hover.disablled {
    background: var(--altcolor);
    color: var(--maincolortxt);
    cursor: default;
}
.validateCardSubmitBtn:hover{
    color: var(--maincolortxt);
}
.card-bin-input:focus {
    box-shadow: unset;
}
.heroText {
    font-size: clamp(28px, 2vw + 1rem, 48px);
    font-weight: 600;
    line-height: 140%;
}
.heroSubText {
    font-size: clamp(16px, 2vw + 1rem, 20px);
    color: #2F2F2F;
    font-weight: 300;
    line-height: 150%;
}
.header-border{border-bottom:1px solid #E0E0E0 !important;}
.secondaryLogo{max-height:20px;}
.infoModify{background:var(--bodybg);}
.font-48 {
    font-size: clamp(28px, 2vw + 1rem, 48px);
}
.fw-500{font-weight:500;}
.fw-500-imp{font-weight:500!important;}
.lh-140{line-height:140%;}
.blackLight{color:#2F2F2F;}


.container-xxl {
    width: 90% !important;
    max-width: 1920px;
}
.closeend {
    inset-inline-end: 1rem;
    inset-block-start: 1rem;
}

.card-bin-input {
    border-radius: 4px;
    width: 45px;
    height: 45px;
    -webkit-text-security: disc;
}

.herobg {
    background: linear-gradient(180deg, rgba(21, 52, 204, 0) 0%, rgba(21, 52, 204, 0.05) 100%);
}
.heroimg{width:100%; min-height:400px; height:48vh; object-fit:cover;}
.hotelSearchform, .flightSearchForm, .fhSearchform, .packageSearchForm{height:180px; min-height:30vh;}
.ghost-heading {
    font-size: clamp(24px, 2vw + 1rem, 36px);
}
.ghost-text {
    font-size: 20px;
    color: #fff;
}
.newform {
    margin-top: -261px;
}
.frombox_share label{font-size:14px; font-weight:500; color:#2F2F2F;}
.newforminpt, .newfrmselect{font-size:14px; font-weight:400;}
.ui-menu .ui-menu-item:not(:last-child){border-bottom:1px solid #E0E0E0;}
.itemWrapper{padding:10px 6px !important;}

.card-img-top {
    border-radius: 8px;
    aspect-ratio:29/32;
    background: #f7f7f7 url(../../../images/imagesDesktop/imageloader.svg) center center no-repeat;
    object-fit:cover;
}
.galmheight, .galheight, #roomImgSwiperPop {
    background: #f7f7f7 url(../../../images/imagesDesktop/imageloader.svg) center center no-repeat;
}
.flatpickr-calendar {
    box-shadow: 0px 2px 16px 0px #0000001F;
}

.pass_form {
   top:74px;
}
.PopUpModal .modal-content {
    border-radius: 12px;
}

.offer-badge {
    position: absolute;
    top: .5rem;
    left: .5rem;
    background: rgba(255, 255, 255, 0.9);
    color: #000;
    font-size: 0.8rem;
    font-weight: 400;
    padding: 4px 10px;
    border-radius: 4px;
    font-style: italic;
}
.hotel-rating{margin-bottom:.5rem;}
.hotel-rating i {
    color: transparent;
    font-size: 18px;
}
.hotel-rating i.active {
    color: #ffc107;
}
.destination-card {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    border-radius: 12px;
    min-height: 100%;
    background: #f7f7f7 url(../../../images/imagesDesktop/imageloader.svg) center center no-repeat;
}

    .destination-card img {
        border-radius:8px;
        object-fit: cover;
        width: 100%;
       
    }
.ratio-15x8 {
    aspect-ratio: 15/8;
}
.ratio-5x4 {
    aspect-ratio: 5/4;
}

.destination-overlay {
    position: absolute;
    height: 70px;
    left: 0%;
    right: 0%;
    bottom: 0;
    background: linear-gradient(1deg, #232222, transparent);
}

.destinationtag{
    margin: 0;
    color: #fff;
    font-weight: 500;
    position: absolute;
    font-size: 20px;
    bottom: 1rem;
    inset-inline-start: 1rem;
}
.plusminusinput a, .plusminusinput button{background:transparent; color:var(--maincolor); font-size:28px; opacity:.1;}
.swlbtn, .swrbtn {
    height: 85.2%;
    width: 5rem;
    position: absolute;
    z-index: 10;
    opacity: .9;
    top: 0;
    align-items:center;
    justify-content:center; 
    display:flex;

}
.swlbtn {
    inset-inline-start: 0;
    border-radius:10px 0 0 10px;
}
.swrbtn {
    inset-inline-end: 0;
    border-radius: 0 12px 12px 0;
}
.swlbtn:hover {
    background: linear-gradient(270deg,rgba(217, 215, 215, 0) 0%, rgba(0, 0, 0, 1) 90%);
}
.swrbtn:hover {
    background: linear-gradient(90deg,rgba(217, 215, 215, 0) 0%, rgba(0, 0, 0, 1) 90%);
}
.swipericon{width:40px; height:40px;}
.card-body{width:100%;}
.modiflabel {
    color: #6E6E6E !important;
    font-weight: 400 !important;
}
.mapbox img{height:130px; min-height:130px;}
.sortinginpt{color:var(--maincolor);}
.sortlist li.active:after{inset-inline-start:8px;}
.sortlist li{padding:10px  10px 10px 2rem;}
.sortlist li.active:after{background:transparent; color:var(--maincolor);}
.searchDestination>span{position: absolute; left: 12px; top: 9px;}
.mapbox::before{border:0; background:none;}
.searchDestination input{background:#fff; border:1px solid #E0E0E0;}
.accordion-collapse.collapse {
    transition: height 0.35s ease, opacity 0.35s ease;
    opacity: 0;
}

.accordion-collapse.collapse.show {
    opacity: 1;
}

.accordion-button:not(.collapsed) {
    color: #000; 
    background-color: transparent;
    box-shadow:none;
    outline:0;
}



.cust_accordionItem{margin-top:.8rem; border-radius:4px; border:1px solid #e9e9e9 !important; box-shadow:none;}
.cust_accordionItem > .accordion-button{padding:.8rem;}
.accordion-button:focus{border:0; box-shadow:none;}
.cust_accordionItem > .collapse.show{border-top:1px solid #e9e9e9;}
.customcheck label::before, .customcheck label::after{width:20px; height:20px; border-radius:3px;}
.link{color:var(--maincolor); text-decoration:underline; cursor:pointer;}
.propertyRating input[type="checkbox"] + label::before{background:transparent;}
.propertyRating span{font-weight:normal;}
.propertyRating span svg {width:10px; height:10px;}
.visacheck{width:18px; height:18px; border-radius:4px;}
.visacheck:focus {box-shadow:none;}
.propertyRating input[type="checkbox"]:checked + label::after, .propertyRating input[type="checkbox"] + label::before{border-radius: 4px;}
.propertyRating label::after, .propertyRating label::before { height: 40px; width: 50px;}
.propertyRating span{inset-inline:auto;}
.ui-slider .ui-slider-handle {  box-shadow: 0px 7px 14px rgba(0, 0, 0, 0.1), 0px 2px 14px rgba(0, 0, 0, 0.1);}
.ui-widget.ui-widget-content {width: 95%;}
.mapbox::before{border-radius:6px; }
.mapbox a{color:#000;}
.sortlist {
    padding-inline-end: .5rem;
    padding-inline-start: 0;
    inset-inline-end: 1rem;
    inset-inline-start: inherit;
    padding-block-end: 1rem;
    border-radius: 6px;
    border-top: 0;
    box-shadow: 0px 2px 16px 0px #0000001F;
    width: 80%;
}
.sortlist li {padding: 10px 10px 0 2rem;}
.sortlist li:not(:last-child) { border-bottom: none;}
.scrollbar{padding-inline-end:1rem;}
.hotelSearchImg{height: 270px; width:260px; max-height:270px; aspect-ratio:270/260; border-radius:var(--radius16);}
.btnm { padding: 5px 15px; font-size: 16px; font-weight:500;}
.border-bottom{border-bottom-color:#e0e0e0;}
.tnc_checkbox > label::before { top: 3px !important;}
.tnc_checkbox > label::after { top: 2px !important;}



/*retuls page*/

.visadealtag {
    display: inline-flex;
    align-items: center;
    border-radius: 6px;
    background: #fff;
    color: #086225;
    background: #F4FAF6;
    font-size: 14px;
    position: relative;
    font-weight: 500;
    margin-top: 6px;
    padding: 0 4px 0 12px;
}
    .visadealtag.lock {
        background: #FDF4F3;
        color: #a91204;
    }
.visaexclusivetag {
    font-size: 14px;
    background: #F9F9F9;
    font-weight: 500;
    color: var(--maincolor);
    padding: 4px 10px 4px;
    border-radius: 4px 0 4px 0;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}
.visadealstag{padding:8px 10px; display:inline-flex; align-items:center; position:relative; cursor:pointer;}
.visadealstag:not(:last-of-type):after{content:'|'; position:absolute; right:-3px; color:#1B843D; font-weight:500; font-size:18px;}
.lock .visadealstag:not(:last-of-type):after{color:#DA4639;}
.dealstip{position:relative; z-index:10;display:inline-flex;align-items:self-end;}
.dealstip:hover .visatooltip, .visadealstag:hover .visatooltip { display: block;}

.taglock {
    color: #DA4639;
    border-radius: 4px;
    padding: 2px 8px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.visatooltip {
    position: absolute;
    inset-inline-end: 0;
    bottom: 36px;
    font-size: 14px;
    text-align: left;
    font-size: 13px;
    display: none;
    width: 255px;
    color: #000;
    font-weight: 400;
    padding: 10px;
    border-radius: 4px;
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 1px 4px rgba(12, 12, 13, 0.1), 0px 1px 4px rgba(12, 12, 13, 0.05);
}
.visacardtip {
    margin-right: -140px !important;
    bottom: -17px;
    width: 175px;
    inset-inline-end: -44px;
    text-align: center;
}
.exccardtip{bottom: 19px; inset-inline-end:-117px; text-align:center;}

.visacardtip:after{border-width:8px; border-style:solid; border-color:transparent #ffffff  transparent transparent; content:''; position:absolute; inset-inline-start:-16px; inset-block-end: 18px;}
.visacardtip:before{border-width:8px; border-style:solid; border-color:transparent #e0e0e0 transparent transparent; content:''; position:absolute; inset-inline-start: -18px; inset-block-end: 18px;}

.noch_bt:after {
    border-width: 8px;
    border-style: solid;
    border-color: #ffffff transparent transparent;
    content: '';
    position: absolute;
    inset-inline-end: 45%;
    inset-block-end: -15px;
}
.noch_bt:before {
    border-width: 8px;
    border-style: solid;
    border-color: #e0e0e0 transparent transparent;
    content: '';
    position: absolute;
    inset-inline-end: 45%;
    inset-block-end: -16px;
}

.hr, .devideLine{background: #E0E0E0;}
.devideLine{margin-block:38px;}
.border-bottom-color{border-bottom-color:#e0e0e0;}
.imgpopbg {
    background: rgba(0,0,0,.5);
    backdrop-filter: blur(6px)
}
.closepop, .closepop:hover  {color: #000;}
.tpbadge{border-color:#e0e0e0;}
.ulwsvg li { margin-bottom: 9px;}
.mainbadge, .tpbadge{font-size:14px; border-color:#4b4b4b; border-radius:4px;}
.selectRoomTab {margin-top: 1rem;}
.hotelAmenities span{top:0;}
.selectBtns{border-width:1px;font-size: 16px; font-weight: 500;}
.iti{width:100%;}
.moreImage {
    font-size: 18px;
    white-space: nowrap;
}
#Hotelimgpopup .owl-nav button.owl-next, #Hotelimgpopup .owl-nav button.owl-prev, .owl-nav button.owl-next, .owl-nav button.owl-prev {
    font-size: 40px !important;
    position: absolute;
    z-index: 100;
    top: 45%;
    color: #fff !important;
    background: rgba(0, 0, 0, .5) !important;
    width: 30px;
    height: 30px;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#Hotelimgpopup .owl-nav button.owl-next span, #Hotelimgpopup .owl-nav button.owl-prev span{position:relative; top:-5px;}

.owl-nav button.owl-next span, .owl-nav button.owl-prev span {
    position: relative;
    top: -5px;
}

.amenities-overflow {
    max-height: 390px; 
}
.loginmodal{padding:1rem; position:relative;}
.downarrow{background:transparent; inset-block-start:0; inset-inline-end:0;position:absolute; font-weight:400 !important; line-height:30px; font-size:38px!important;}
.hotelDownArrow { inset-block-start:.8rem; inset-inline-end: .5rem;}
.headeroffer {
    display: flex;
    align-items: center;
    padding: 8px;
    gap: 12px;
    background: linear-gradient(90deg, rgba(20, 52, 203, 0.1) 0%, rgba(20, 52, 203, 0) 100%);
    font-size: 12px;
    font-weight: 500;
    color: var(--maincolor);
    border-radius: 4px;
    transition: opacity 0.6s ease-in-out;
    opacity: 1;
}
.headeroffer.fade-out {
    opacity: 0;
}

.searchbtn{font-weight:500;}
.cookiespopup{border:0;border-radius: 6px;}
.pricerow span {
    font-size:16px;
}
.pricerow {
    padding-bottom: .8rem;

}
.guestBreadcrumb{padding:1rem 0;} 
.selected.btn_yellow{background:var(--maincolorbg); }
.offertag{inset-block-start:5px; inset-inline-start:1rem;}
.tpmCurrencyDetail{font-weight:500;}
.inputField{padding: 8px; border: 1px solid #e6e6e6; min-height: 42px; border-radius:4px; }
.guestBreadcrumb .gsNumber{line-height:18px;}
.promolink{cursor:pointer;}
.btnm {padding-block:12px;
}
.hotelimg{width:100%; border-radius:4px; height:210px; object-fit:cover;}
.border-lg-start{border-inline-start:1px solid #e6e6e6;}
.cl_lgrey{color:#6c757d;}
.text-gray, .cl_dgrey {
    color: #2F2F2F;
}
.text-green{color:#066600;}
.error_msg {
    color: #db0303;
}
.mapHotelImg{border-radius: 4px; height:210px;}
.bigcheck input[type="checkbox"] + label::before{border-radius: 4px;}
.visaiconbtn svg{stroke:var(--maincolor);}
.visaiconbtn:hover svg{stroke:var(--maincolortxt);}
.hotelAmenities{border-radius:4px;}


.flightTab a {color: #2F2F2F; width:216px; padding-block:10px;}
.flightTab a.active, .flightTab a:hover{font-weight:500;}
.mybookingTb {padding: 16px 0px 0px 0px;}
.bookingIdSrch{margin-top:-10px;}
.bookingIdSrch .form-control {border-radius: 4px; border: 1px solid #E0E0E0; padding-block: 8px;font-size:14px}
.bookingIdSrch .form-control-feedback{top:7px;}
.BoxMinHeight{max-height:initial;}
.tripFlight {height: 272px;}

.box_aside{border:0;}
.text-pinkDark{color:#4B4B4B;}
.text-graylight {color: #4B4B4B;}
.bookingconf, .bookingconf:hover {background-color: #EFF1FB; color: #1434CB;}
.bookingcancel, .bookingcancel:hover {background-color: #FDF4F3; color: #DA4639;}
.bookingcomplete, .bookingcomplete:hover {background-color: transparent; color: #000000;}
.offerStrip{color:#1B843D; background-color:#F4FAF6; border-radius:6px; padding: 8px 16px;}
.rating_star .fa.active, .rstar .fa.active, .hotelname > .fa-star {color: #FCC014;}
.profileMenu ul{border-radius:6px; top: 37px; right: -14px; border:0;}
.Languages{border-radius:var(--radius16); border:0; top:46px;}
.Languages li h6, .profileMenu ul li small{color:#333;}
.requestbox{border-radius:6px; background:#fff; border:1px solid #e6e6e6; margin: .3rem 1rem;}
.radiusfull, .warning, .info {
    border-radius: 6px;

}
.popoverflow{padding-inline-end:1rem;}
.tripcard:not(:last-child){border-bottom:1px solid #e9e9e9; padding-bottom:1.3rem !important;}
.formcity2, .formdate2, .formpax2{flex-basis:27%;}
#hCityClearBtn {
    position: absolute;
    right: 0.8rem;
    cursor: pointer;
    display: none;
}
.price-tag{border-radius:var(--radius16);}
#Hotelimgpopup .item img{border-radius:var(--radius16);}
.otpResendBtn.disabled{pointer-events:none;font-weight:400;opacity:.6;}
.bg_grey{background:var(--bodybg);}
.warning { border-radius: 6px;}
.visaExcl { border-radius: 5px 0 0 0;}

.uid_hCity, .uid_hCityM, .uid_fOrigin, .uid_fDestination, .uid_undefined {
    border-radius: 0 0 6px 6px;
}
.tpmAutocomplete {
    box-shadow: 0px 2px 16px 0px rgba(0, 0, 0, 0.04);
}
.searchDestination input:focus{background:#fff;}


.skeleton-item {
    animation: skeleton-pulse 1.5s ease-in-out infinite;
}

.skeleton-box {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: skeleton-loading 1.5s infinite;
    border-radius: 4px;
}
.newformmainbox {
    display: grid;
    grid-template-columns: 1fr; /* mobile: one column */
}
.bigcheck input[type="checkbox"]:checked + label::after{border-radius:4px;}
#Hotelimgpopup .swiper-slide img, #RoomimageGallery .swiper-slide img {
    width: 100%;
    height: 83vh;
    object-fit: cover; /* maintains aspect ratio, fills the slide */
    border-radius: 6px;
}
.fflag{box-shadow:0 0 10px rgba(0, 0, 0, 0.1)}
.fslbtn, .hslbtn, .fsrbtn, .hsrbtn{top:48%;}
.custom-tooltip {
    position: absolute;
    background: #fff;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    box-shadow: 0px 1px 4px rgba(12, 12, 13, 0.1), 0px 1px 4px rgba(12, 12, 13, 0.05);
    padding: 10px;
    width: 300px;
    z-index: 9999;
    color: #000;
    cursor: pointer;
    display: none;
}

.custom-tooltip p {
    margin-bottom: 6px;
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .minHeignt38{min-height:auto;}
    .infoModify{border-bottom:1px solid #e0e0e0;}
    .filterbtn {
        padding: 6px 10px;
        height:auto;
        border-color: var(--maincolor);
        color: var(--maincolor) !important;
    }
    .filterbtn .filtericon{stroke:var(--maincolor)}
    .border-lg-start {
        border-inline-start: 0;
    }
    .headeroffer{margin-top:10px;}
    .frombox_share {
        border-bottom: 1px solid #e0e0e0;
    }
    .container-xxl {
            width: 98% !important;
        }

        .font-16 {
            font-size: 14px;
        }

        .heroimg {
            height: 35vh;
        }

        .font-48 {
            font-size: 36px;
        }

        .ghost-heading {
            font-size: 30px;
        }

        .hotelSearchform, .flightSearchForm, .fhSearchform, .packageSearchForm {
            min-height: 20vh;
        }

    .formcity, .formdate, .formpax {
        border-bottom: 1px solid #e6e6e6;
    }
    .formpax2{border-right:0;}
    .roomResultPopupMain{height:230px;}
    .flightTab a{width:135px;}


    }
.roomimgpop:has(.imgunavlbl), .roomimgpop:has(.amenityUnavlbl) {
    max-width: 50vw;
}


/* Tablet: 3 columns layout */
@media (min-width: 768px) {
    .newformmainbox {
        grid-template-columns: repeat(3, 1fr);
    }

        /* Make last div span full row */
        .newformmainbox .flex-grow-1 {
            grid-column: span 3;
        }
}

/* Desktop: 4 columns layout */
@media (min-width: 1024px) {
    .newformmainbox {
        grid-template-columns: repeat(4, 1fr);
    }

        /* On desktop, last div takes only 1 column */
        .newformmainbox .flex-grow-1 {
            grid-column: span 1;
        }
}
