@font-face {
    font-family: 'Almarai';
    src: url('fonts/Almarai-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Biryani';
    src: url('fonts/Biryani-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Heebo';
    src: url('fonts/Heebo-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Baloo Bhaijaan 2';
    src: url('fonts/BalooBhaijaan2-Regular.ttf') format('truetype');
}

.destinations {
    background: #ffffff;
}


nav.navbar.navbar-inverse.navbar-fixed-top {
    transition: all .5s;
    background-color: transparent;
    background-repeat: no-repeat;
}

body.scrolled nav.navbar.navbar-inverse.navbar-fixed-top {
    background-color: #005FAB;
}

body.scrolled nav.navbar.navbar-inverse.navbar-fixed-top .navig-head{
    margin-left: 15% !important;
    padding: 0 !important;
}

body.scrolled img[src*="/images/logo2.png"] {
    background-image: none;
    padding: 0;
}

.navbar-inverse .navbar-brand {
    color: #ffffff;
    font-family: Almarai;
    font-size: 24px;
    vertical-align: middle;
}

.navbar-brand img {
    display: inline;
    margin-right: 5px;
    vertical-align: sub;
}

.flight-home {
    overflow: visible;
}

.text-vertical-center {
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.destinations {
    padding-top: 100px;
}

.booking-form {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.booking-title {
    height: 100%;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    align-items: center;
    padding-bottom: 50px;
}

    .booking-title .header-title {
        font-weight: 600;
        margin: 0 auto;
        color: #FFFFFF;
        text-shadow: 0px 4px 4px rgb(0 0 0 / 25%);
        font-size: 59px;
        line-height: calc(6vh);
        display: flex;
        flex-direction: column;
        align-items: center;
        font-family:'Baloo Bhaijaan 2';
    }

/* 1) Base: mobile‐first flow under the nav */
.header {
    position: relative;
    background: url(../images/BookSmart24-Landing-Page-Background.png) no-repeat center center;
    background-size: contain;
    height: 87%;
    overflow: hidden;
    /* always reserve your nav’s height here */
    padding-top: 70px; /* ← replace “70px” with your real menu height */
}

    .header .header-content {
        /* normal document flow, so it never overlaps the transparent menu */
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        /* center and width-tune */
        margin: 0 auto;
        width: 80%;
        color: #fff;
        padding-bottom: 20px; /* extra breathing room at bottom */
    }

        .header .header-content h1 {
            margin-bottom: 0.5em;
            font-size: 34px;
        }

        .header .header-content h2 {
            margin-top: 1em;
            margin-bottom: 0.25em;
        }

        .header .header-content p {
            line-height: 1.5;
        }

/* very small phones */
@media (min-width: 480px) {
    .header .header-content {
        width: 80%;
    }
}

/* tablets */
@media (min-width: 768px) {
    .header .header-content {
        position: absolute;
        top: 40%;
        left: 10%;
        transform: translateY(-50%);
        width: 60%;
        margin: 0; /* reset the auto-margins */
        padding-bottom: 0;
    }
}

/* small desktops */
@media (min-width: 1024px) {
    .header .header-content {
        position: absolute;
        top: 45%;
        left: 10%;
        transform: translateY(-50%);
        width: 50%;
        margin: 0; /* reset the auto-margins */
        padding-bottom: 0;
    }
}

/* 2) Only on really large screens do we go back to the “hero” absolute layout */
@media (min-width: 1300px) {
    .header {
        padding-top: 0; /* no need to reserve nav when it's part of the hero */
    }

        .header .header-content {
            /* restore your original hero positioning */
            position: absolute;
            top: 45%;
            left: 10%;
            transform: translateY(-50%);
            width: 45%;
            margin: 0; /* reset the auto-margins */
            padding-bottom: 0;
        }
}

@media (max-height: 800px) {
    .header {
        padding-top: 0; /* no need to reserve nav when it's part of the hero */
    }

        .header .header-content {
            /* restore your original hero positioning */
            position: absolute;
            bottom: 10%;
            left: 10%;
            transform: translateY(-50%);
            width: 50%;
            margin: 0; /* reset the auto-margins */
            padding-bottom: 0;
            height: fit-content;
        }
}


img[src*="/images/logo2.png"] {
    background-image: url("/images/logo2.png");
    background-size: contain;
    background-repeat: no-repeat;
    padding: 48px 0 0 0;
}

@media screen and (min-height: 780px) {
    .booking-title .header-title {
        line-height: 55px;
    }
}

#homePageOpacityController {
    background: #11B0EB !important;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    border-radius: 0px 10px 10px 10px;
}

.flight-search-details {
    color: #C4C4C4;
    height: auto;
}

#exTab1 .nav-pills > li.active > a:after,
#exTab1 .tab-content .radio-type li a:before {
    display: none !important;
}

#exTab1 .super-tab {
    padding: 0;
    z-index: 1;
    position: relative;
}

#exTab1 .nav-pills > li > a:hover {
    opacity: 1;
}

.multi-city-tab ul.desti li {
    height: 48px;
    color: #333333;
    font-family: Heebo;
    background: none;
    border-radius: initial;
}

    .multi-city-tab ul.desti li input {
        height: 48px;
        border: 2px solid #E9E7E7;
        color: #333333;
        font-family: Heebo;
    }

@media screen and (min-width: 768px) and (max-width: 1024px) {
    .multi-city-tab ul.desti input {
        font-size: 18px !important;
        height: 48px !important;
    }
}

.SearchString-es {
    font-size: 18px !important;
    padding-left: 12px !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    .SearchString-es {
        padding-left: 12px !important;
    }
}

.pr-0 {
    padding-right: 0;
}

.pl-0 {
    padding-left: 0;
}

.position-relative {
    position: relative;
}

.img-arrow {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    background: #ffffff;
}

.pad-right {
    max-width: 250px;
}

    .pad-right p:first-child {
        color: #0FB0EB;
        font-size: 18px;
        font-weight: 600;
        font-family: 'Baloo Bhaijaan 2';
        font-size: 22px;
    }

    .pad-right p:nth-child(2) {
        color: #000;
        font-size: 16px;
    }

#redefining-section, #smartchoice-section, #booksmart-video-section {
    margin-bottom: 50px;
}

    #smartchoice-section{
        margin-bottom: 0;
    }

#booksmart-video-section {
    display: flex;
    justify-content: center;
    padding: 0 20px;
}

#smartchoice-section p, #revolutionizing-section p {
    font-size: 18px;
    margin: 15px 0 15px 0;
    max-width: 856px;
}

h1, h2 {
    font-weight: 600;
    color: #11B0EB;
    font-family: 'Baloo Bhaijaan 2';
    font-weight: 600;
    color: #11B0EB;
    font-family: 'Baloo Bhaijaan 2';
}

h1 {
    font-size: 48px;
}

h2 {
    font-size: 24px;
    margin-bottom: 30px;
}

.booksmart-video-embed {
    width: 100%;
    max-width: 504px;
}

    .booksmart-video-embed iframe {
        display: block;
        width: 100%;
        height: 660px;
        border: 0;
        border-radius: 13px;
    }


#home-ilustation {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 1096px;
    height: 550px;
    margin-bottom: 10px;
}

#loading-animation {
    object-fit: cover;
    width: 100%;
    height: 100%
}

#revolutionizing-section {
    margin-bottom: 50px;
}

#train-landscape {
    background-image: url(../images/train-landscape.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 11px;
    position: relative;
    width: 1320px;
    height: 451px;
    padding: 40px 20px 20px 40px;
}

.spinner-border {
    border-color: #fff !important;
    border-right-color: transparent !important;
}

.spinner-searcher-home {
    right: 20px !important;
    top: 15% !important;
}

#domesticTab {
    position: relative;
}

#two-way-tab, #one-way-tab {
    padding: 10px 31px !important;
    margin-right: 0 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #fff !important;
    border-radius: 11px 11px 0 0 !important;
}


.search-form-row {
    width: 100%;
    padding: 0;
    display: flex;
    gap: 10px;
    justify-content: space-between
}

.search-button {
    background-color: #ffffffb0;
    width: 37px;
    height: 37px;
    border-radius: 4px;
    border: 1px solid #11B0EB;
}

#SearchStringTwo, input#ToDestinationTwo, #SearchString, input#ToDestination {
    border: 1px solid #fff;
    border-radius: 4px;
    width: 95%;
    height: 36px;
    padding-left: 10px !important;
    color: #000000;
    background-color: #fff;
    font-size: 18px;
}

#pickup1,
#return1 {
    width: 47%;
}

#pickup1,
#return1,
#single {
    background: #ffffff;
    color: #000000;
}

#return1 {
    border-left: none !important;
}

.button-passanger {
    color: #333333;
}

    .button-passanger.button-passanger-flight-home {
        top: 14px;
        left: 20px;
    }

#exTab1 {
    max-width: 870px;
}

    #exTab1 .super-tab a {
        padding-right: 40px !important;
    }

    #exTab1 .tab-content {
        padding: 0 20px 20px 40px;
        height: auto;
        min-height: 160px;
        border-radius: 0 11px 11px 11px;
    }

        #exTab1 .tab-content select {
            border-radius: inherit;
        }

        #exTab1 .tab-content .nav {
        }

            #exTab1 .tab-content .nav li {
                padding-bottom: 5px;
            }

                #exTab1 .tab-content .nav li a {
                    color: #525252;
                    background-color: inherit;
                    font-size: 16px;
                }

            #exTab1 .tab-content .nav.tab-type li.active {
                border-bottom: 2px solid #2EAAD7;
            }

            #exTab1 .tab-content .nav li.active a {
                color: #2EAAD7;
            }

    #exTab1 .nav-pills > li:last-child.active > a {
        background-color: inherit;
    }

    #exTab1 .tab-content .nav-pills.tab-type li.active a:after {
        border-top: 5px solid #2EAAD7;
        border-left: 3px solid transparent;
        border-right: 3px solid transparent;
        bottom: -12px;
        left: 50px;
    }

    #exTab1 .tab-content .border-hr {
        border-bottom: 2px solid #cccccc;
        margin: 0;
        margin-top: -2px;
    }



    #exTab1 .tab-content .radio-type {
    }


        #exTab1 .tab-content .radio-type li {
            position: relative;
        }

            #exTab1 .tab-content .radio-type li a {
                font-family: Heebo;
                font-size: 14px;
                background: #E5E5E5;
                border-radius: 30px;
                padding: 5px 20px;
                margin-right: 15px;
            }

            #exTab1 .tab-content .radio-type li.active a {
                font-size: 14px;
            }

            #exTab1 .tab-content .radio-type li.active a {
                color: #ffffff;
                background: #2EAAD7;
            }

            #exTab1 .tab-content .radio-type li a:before {
                content: "";
                display: inline-block;
                width: 20px;
                height: 20px;
                border: 1px solid #2EAAD7;
                border-radius: 50%;
                position: absolute;
                top: 50%;
                left: 0;
                opacity: 1;
                transition: all 0.3s;
                transform: translate(0, -50%);
            }

            #exTab1 .tab-content .radio-type li a:after {
                content: "";
                display: inline-block;
                width: 10px;
                height: 10px;
                border: 1px solid #2EAAD7;
                background: #2EAAD7;
                border-radius: 50%;
                position: absolute;
                left: 5px;
                top: 50%;
                opacity: 0;
                transition: all 0.3s;
                transform: translate(0, -50%);
            }

            #exTab1 .tab-content .radio-type li.active a:after {
                opacity: 1;
            }


.flight-search-details label {
    font-weight: normal;
}

.paxes {
    margin-bottom: 0;
}

    .paxes .lable-class .label-class {
        width: auto;
    }

.text-white {
    color: #ffffff !important;
}

.info-infant {
    color: #2EAAD7;
}

.book-btn {
    color: #ffffff;
    padding: 5px 10px;
    background: #6fc230;
    border-radius: 10px !important;
    width: 100%;
    height: 40px;
    float: right;
    border: none;
    box-shadow: 5px 5px 5px rgb(0 0 0 / 9%);
    font-weight: 700;
}

    .book-btn:hover, .book-btn:focus {
        outline: none;
        opacity: .8;
    }


.form-control::placeholder {
    color: #B5B5B5;
}

#SearchStringFrom,
#SearchStringTwo,
#ToDestination,
#ToDestinationTwo,
#pickup1,
#return1,
#single {
    font-size: 18px !important;
    height: 36px;
    margin: 0;
}

#single {
    width: 95%;
}

.ToDestination-es,
.ToDestination-de,
.ToDestination-pt,
.ToDestination-en {
    padding-left: 28px !important;
}

.myClass li div {
    background: #2EAAD7 !important;
}

.multi-city-tab {
    margin: 0;
}

    .multi-city-tab ul.value img {
        background: #c2c2c2;
    }

.newhome #carouselHeaderHome {
    top: 0;
}

.newhome .carousel-indicators {
    bottom: 10px;
}

.newhome .taglines {
    bottom: 0;
    left: 0;
    padding: 15px 0px;
}

.taglines {
    position: relative;
    height: 117px;
    background-color: #fff;
    color: black;
    margin-bottom: 40px;
}

::placeholder, #SearchString::placeholder, #SearchStringTwo::placeholder, #ToDestination::placeholder, #ToDestinationTwo::placeholder {
    color: #B5B5B5 !important;
    font-weight: normal !important;
    font-size: 18px;
}

:-ms-input-placeholder {
    color: #B5B5B5 !important;
    font-weight: normal !important;
}

#multiCityText input {
    width: 100%;
    background: rgba(0,0,0,0.1);
    border: 1px solid #c2c2c2;
    color: #000000;
}

#multiCityText .removeicon {
    height: 29px;
    background: #c2c2c2;
}

.trainSearchSection {
    position: relative !important;
    display: inline-block !important;
    margin-top: 250px !important;
}

.adultRow {
}

#adult-1, #adult-3, #adult-5, #adult-7, #adult-9 {
    padding-left: 0px !important;
}

#adult-2, #adult-4, #adult-6, #adult-8 {
    float: right !important;
}

.childrenRow {
}

#children-1, #children-3, #children-5, #children-7, #children-9 {
    padding-left: 0px !important;
}

#children-2, #children-4, #children-6, #children-8 {
    float: right !important;
}

@media screen and (max-width: 1280px) {
    .searcher {
        padding-left: 120px;
        padding-right: 130px;
    }

        .searcher #exTab1 .tab-content .flight-search-details .first-inputs input {
            height: 38px;
            font-size: 14px !important;
        }

        .searcher .img-arrow img {
            height: 32px;
        }

        .searcher #exTab1 .tab-content .radio-type li a {
            font-size: 12px;
        }

        .searcher .book-btn {
            font-size: 12px;
            height: 30px;
        }

        .searcher .button-passanger {
            top: 7px;
        }

        .searcher #exTab1 .tab-content {
            min-height: 0;
        }

        .searcher #exTab1 .nav-pills > li.active > a, .nav-pills > li.active > a:focus, .nav-pills > li.active > a:hover {
            font-size: 12px;
        }

        .searcher h4 {
            font-size: 12px;
        }
}

.pro-home .home-contact-email {
    display: inline-block;
    margin-top: 24px;
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
}

    .pro-home .home-contact-email:hover,
    .pro-home .home-contact-email:focus {
        color: #fff;
        text-decoration: underline;
    }

.pro-home #home-ilustation {
    width: 100%;
    max-width: 1096px;
    height: auto;
    aspect-ratio: 1096 / 550;
}

@media screen and (min-width: 768px) and (max-width: 1279px) {
    .pro-home #footerid {
        height: auto;
    }

        .pro-home #footerid .footer-main {
            align-items: flex-start;
            height: auto !important;
            min-height: 240px;
            padding: 30px 20px;
            gap: clamp(24px, 4vw, 40px) !important;
        }

        .pro-home #footerid .footer-brand {
            flex: 0 0 240px;
            width: 240px !important;
            height: auto !important;
            margin-top: 0 !important;
            gap: 24px !important;
        }

        .pro-home #footerid .footer-logo {
            width: 100% !important;
            max-width: 240px;
            height: auto !important;
        }

        .pro-home #footerid .footer-social {
            justify-content: center;
            width: 100%;
            margin: 0;
            padding: 0;
            gap: 6px !important;
        }

        .pro-home #footerid .footer-links {
            display: grid !important;
            flex: 1 1 0;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            align-items: start !important;
            min-width: 0;
            margin-top: 20px !important;
            gap: 20px;
        }

            .pro-home #footerid .footer-links .ulContainer {
                justify-content: flex-start;
                width: auto;
                min-width: 0;
            }

            .pro-home #footerid .footer-links ul {
                margin: 0;
                padding: 0;
            }
}

/* Responsive investor landing page. Scoped to PRO so desktop and search pages keep their layout. */
@media screen and (max-width: 767px) {
    .pro-home {
        overflow-x: hidden;
    }

    .pro-home .header {
        height: auto;
        min-height: 0;
        padding: 70px 0 48px;
        background-position: center;
        background-size: cover;
        overflow: hidden;
    }

        .pro-home .header .header-content {
            position: relative;
            top: auto;
            right: auto;
            bottom: auto;
            left: auto;
            width: calc(100% - 40px);
            max-width: 540px;
            height: auto;
            margin: 0 auto;
            padding: 0;
            transform: none;
        }

            .pro-home .header .header-content h1 {
                margin: 0 0 20px;
                font-size: clamp(30px, 9vw, 38px);
                line-height: 1.08;
            }

            .pro-home .header .header-content h2 {
                margin: 24px 0 8px;
                font-size: clamp(22px, 6.5vw, 26px);
                line-height: 1.15;
            }

            .pro-home .header .header-content p {
                margin-bottom: 0;
                font-size: 16px;
                line-height: 1.5;
            }

            .pro-home .header .header-content > img {
                width: auto;
                max-width: 100%;
                height: auto !important;
                margin-left: 0 !important;
            }

            .pro-home .header .home-contact-email {
                max-width: 100%;
                font-size: 16px;
                overflow-wrap: anywhere;
            }

    .pro-home #redefining-section,
    .pro-home #smartchoice-section,
    .pro-home #revolutionizing-section,
    .pro-home #booksmart-video-section {
        margin-bottom: 36px;
    }

    .pro-home #redefining-section {
        margin-top: 24px;
    }

    .pro-home .redefining-content {
        width: 100%;
        padding: 0 16px;
    }

    .pro-home #train-landscape {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-width: 0;
        min-height: 430px;
        height: auto;
        padding: 28px 20px;
        gap: 18px;
        background-position: center;
    }

        .pro-home #train-landscape .redefining-title {
            width: auto !important;
            margin-bottom: auto;
            font-size: clamp(34px, 10vw, 46px) !important;
            line-height: 1.08;
        }

        .pro-home #train-landscape .redefining-description {
            position: static !important;
            width: auto !important;
            font-size: 18px !important;
            line-height: 1.45;
        }

    .pro-home #smartchoice-section .container,
    .pro-home #revolutionizing-section .container {
        width: 100%;
        padding-right: 20px;
        padding-left: 20px;
    }

    .pro-home #smartchoice-section h1 {
        font-size: clamp(34px, 10vw, 40px);
        line-height: 1.1;
        text-align: center;
    }

    .pro-home #smartchoice-section h2,
    .pro-home #revolutionizing-section h2 {
        margin-bottom: 20px;
        font-size: 22px;
        line-height: 1.25;
    }

    .pro-home #smartchoice-section p,
    .pro-home #revolutionizing-section p {
        max-width: 100%;
        font-size: 16px;
        line-height: 1.55;
    }

    .pro-home #home-ilustation {
        width: 100%;
        max-width: 1096px;
        height: auto;
        aspect-ratio: 1096 / 550;
        margin: 0 auto 24px;
        overflow: hidden;
    }

    .pro-home #loading-animation {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .pro-home #booksmart-video-section {
        display: block;
        padding: 0 16px;
    }

    .pro-home .booksmart-video-embed iframe {
        height: clamp(620px, calc(506px + 30vw), 660px);
    }

    .pro-home nav.navbar.navbar-inverse.navbar-fixed-top {
        height: 81px;
        min-height: 81px;
        background-color: #005FAB;
    }

        .pro-home nav .navig-head {
            height: 81px;
            margin-right: 16px !important;
            margin-left: 16px !important;
            padding: 0 !important;
        }

        .pro-home nav .navig-head > .row,
        .pro-home nav .navig-head > .row > div,
        .pro-home nav .navbar-header {
            height: 100%;
        }

        .pro-home nav .navbar-header {
            align-items: center;
        }

        .pro-home nav .navbar-brand {
            display: flex;
            align-items: center;
            height: 81px;
            padding: 0;
        }

            .pro-home nav .navbar-brand img {
                width: 190px !important;
                max-width: calc(100vw - 110px);
                height: 48px !important;
                padding-top: 48px;
                object-fit: contain;
                object-position: left center;
            }

        .pro-home nav .responsive-menu {
            top: 0;
            right: 0;
            left: 0;
            display: flex !important;
            align-items: center;
            justify-content: flex-end;
            height: 81px;
            padding: 0 16px 0 0;
            pointer-events: none;
        }

            .pro-home nav .responsive-menu > a,
            .pro-home nav .responsive-menu .respon-drop {
                pointer-events: auto;
            }

            .pro-home nav .responsive-menu > a {
                display: flex;
                float: none;
                align-items: center;
                justify-content: center;
                width: 44px;
                height: 44px;
                margin-right: 0;
            }

            .pro-home nav .responsive-menu a .fa {
                color: #fff;
                font-size: 22px;
            }

            .pro-home nav .responsive-menu .respon-drop {
                top: 81px !important;
            }

    .pro-home #footerid {
        height: auto;
        padding: 0;
    }

        .pro-home #footerid .footer-main {
            flex-direction: column;
            align-items: center;
            height: auto !important;
            padding: 32px 20px;
            gap: 28px !important;
        }

        .pro-home #footerid .footer-brand {
            width: 100% !important;
            height: auto !important;
            margin-top: 0 !important;
            gap: 18px !important;
        }

        .pro-home #footerid .footer-logo {
            width: min(240px, 80vw) !important;
            height: auto !important;
        }

        .pro-home #footerid .footer-social {
            justify-content: center;
            margin: 0;
            gap: 12px !important;
        }

        .pro-home #footerid .footer-links {
            display: grid !important;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            align-items: start !important;
            width: 100%;
            margin-top: 0 !important;
            gap: 24px 16px;
        }

            .pro-home #footerid .footer-links .ulContainer {
                justify-content: flex-start;
                align-items: flex-start;
                width: auto;
            }

                .pro-home #footerid .footer-links .ulContainer:last-child {
                    grid-column: 1 / -1;
                }

            .pro-home #footerid .footer-links ul {
                margin: 0;
                gap: 12px;
            }

            .pro-home #footerid .footer-links a {
                font-size: 16px;
            }

        .pro-home #footerid .footer-copyright {
            height: auto !important;
            min-height: 84px;
            padding: 18px 20px;
        }

    .pro-home #cookieModal .modal-body .row {
        flex-direction: column;
        gap: 14px;
    }

    .pro-home #cookieModal .cookie-text,
    .pro-home #cookieModal .cookie-buttons {
        width: 100%;
        text-align: center !important;
    }
}
