@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Sora:wght@100..800&display=swap');

*,
::after,
::before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

a {
    text-decoration: none;
}

li {
    list-style: none;
}

h1,
h2 {
    font-size: 2rem;
    font-weight: 600;
}

h1>span,
h2>span {
    color: #cf713d;
}

h3 {
    font-size: 1.5rem;
    font-weight: 700;
}

h6 {
    color: #3e4455;
    font-weight: 700;
}


img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

body {
    font-family: "Sora", sans-serif;
    background-color: #ECF3F9;
}

/* Navbar Top */

.navbar-top {
    border-bottom: 1px solid #e1e1e1;
}

.navbar-top a {
    color: #000;
    font-size: 14px;
}

/* Main Navbar */

.menu-item {
    padding: 0 0.5rem;
}

.menu-link {
    display: block;
    color: #000;
    width: max-content;
    font-weight: 600;
    padding: 1.5rem 0;
    transition: all 0.5s ease-in-out;
}

.sub-menu {
    padding-left: 0;
    transition: all .4s;
    background-color: #FFF;
    z-index: 11111;
    display: none;
}

.menu-item-has-children.active>.sub-menu {
    display: block;
    animation: fadeIn 1s ease;
}

.menu-item-has-children {
    position: relative;
}

.sub-menu>.menu-item-has-children>.menu-link::after {
    border-top: .3em solid transparent;
    border-right: 0;
    border-bottom: .3em solid transparent;
    border-left: .3em solid;
    margin-left: 5em;
    position: absolute;
    right: 1.5rem;
    top: 1.4rem;
}

.menu-item-has-children>.menu-link::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

/* Navbar Toggler */

.navbar-toggler:focus {
    box-shadow: none;
}

.navbar.navbar-expand-lg img {
    max-width: 150px;
    width: 100%;
}

.bx.bx-grid,
.bx.bx-grid-circle-diagonal-right {
    font-size: 1.5rem;
}

/* Main Slider */

.prevMainArrowBtn,
.nextMainArrowBtn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    min-width: 40px;
    max-width: 40px;
    height: 40px;
    z-index: 3;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.4s;
    color: #FFF;
    font-size: 1.3rem;
}

.nextMainArrowBtn {
    left: unset;
    right: 20px;
}

.slide-caption {
    position: absolute;
    top: 0;
    /* left: 70px; */
    width: 100%;
    z-index: 2;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFF;
}

.slide-caption h5 {
    color: #FFF;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.2;
    margin-bottom: 10px;
    font-family: 'Outfit', serif;
}

.slide-caption p {
    display: none;
}

/* Show more button */

#welcome-content label {
    background-color: #293b5f;
    padding: 15px 0px;
    color: #FFF;
    width: 9em;
    margin: 15px auto;
    cursor: pointer;
    text-align: center;
    font-weight: 700;
}

.welcome-checkbox {
    order: 2;
}

.welcome-description {
    order: 1;
    text-align: center;
    max-height: 10em;
    overflow: hidden;
    transition: max-height 400ms linear;
    will-change: max-height;
}

#welcome-content input[type="checkbox"]:checked~.welcome-description {
    max-height: 80em;
}

#welcome-content input[type="checkbox"] {
    display: none;
}

#welcome-content label::after {
    content: "Show More";
}

#welcome-content input[type="checkbox"]:checked+label::after {
    content: "Show Less";
}

/* Destination */

.destination-item {
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.destination-image img {
    transition: .5s;
}

.destination-item:hover .destination-image img {
    -webkit-filter: brightness(70%);
    transform: scale(1.1);
}

.destination-info {
    position: absolute;
    padding-left: 25px;
    bottom: -35px;
    z-index: 99;
    color: #FFF;
    transition: all .3s;
}

.destination-info a {
    color: #FFF;
}

.destination-item:hover .destination-info {
    bottom: 0;
}

.destination-info p {
    font-weight: 600;
}

/* Packages */

.package-intro p {
    line-height: 28px;
}

.package .card-header,
.package .card-footer {
    background-color: #FFF;
}

.package-img img {
    transition: all ease 0.4s;
}

.package-img:hover img {
    transform: scale(1.05);
}

.package-title a {
    font-size: 1.25rem;
    color: #3e4455;
    font-weight: 700;
    transition: all 0.4s;
}

.package-title a:hover {
    color: #cf713d;
}

.checked {
    color: #cf713d;
}

.normal-separate {
    display: inline-block;
    width: 5px;
    height: 10px;
    margin: 0 5px;
    background-color: #ced2d9;
}

.label {
    padding: 3px 12px;
    font-weight: 500;
    border-radius: 5px;
    font-size: 0.7125rem;
}

.duration {
    color: #3e4455;
    font-weight: 600;
}

.price {
    color: #3e4455;
    font-weight: 700;
}

/* ----- Swiper arrow and pagination --------- */

.swiper-content-bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(15, 15, 15, .5);
    transition: .5s;
}

.arrow {
    display: flex;
    align-items: center;
    display: none;
}

.prevArrowBtn,
.nextArrowBtn {
    z-index: 1000;
    border: 2px solid #3e4455;
    color: #3e4455;
    text-align: center;
    cursor: pointer;
    display: block;
    width: 2.75rem;
    height: 2.75rem;
    line-height: 2.625rem;
}

.nextArrowBtn {
    margin-left: 10px;
}

.counter {
    color: #cf713d;
    font-size: 3rem;
    font-weight: 600;
}

.count-num {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.count-num.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Blog */

#blog h6 {
    font-size: 1.125rem;
    font-weight: 400;
    margin-bottom: 0;
}

#blog .card-header,
#blog .card-footer {
    cursor: pointer;
    color: #3e4455;
}

.blog-img img {
    cursor: pointer;
    transition: all ease 0.4s;
}

.blog-img:hover img {
    transform: scale(1.05);
}

/* Footer */

footer {
    background-color: #2c2c2c;
}

footer img {
    width: 200px;
    height: auto;
}

.footer-nav a,
.copyright {
    color: #FFF;
}

.footer-nav li:not(:last-child) {
    margin-right: 0.5rem;
    border-right: 3px solid #DDD;
    padding-right: 0.7rem;
}

.social-icons li a {
    height: 3rem;
    width: 3rem;
    justify-content: center;
    align-items: center;
    display: flex;
    background-color: #FFF;
    color: rgba(5, 18, 20, 0.7);
}

.social-item:not(:last-child) {
    margin-right: 0.5rem;
}

/* Header Sticky */

nav.header-sticky {
    left: 0px;
    right: 0px;
    z-index: 2000;
    top: 0;
    position: fixed;
    background-color: #000;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

nav.header-sticky .menu-link {
    color: #000;
}

nav.header-sticky .sub-menu .menu-link {
    color: #000;
}

nav.header-sticky .bx-grid {
    color: #FFF;
}

/* For Single Package Page */


.btn {
    margin: 10px 0;
    padding: 15px 45px;
    color: #FFF;
    font-weight: 600;
    line-height: 20px;
    border-radius: 0;
}

.book-now-btn {
    background-color: #cf713d;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.book-now-btn:hover {
    background-color: #cf713d;
}

.enquiry-btn {
    border: 1px solid hsl(0 0% 80%);
}

.enquiry-btn:hover {
    border: 1px solid hsl(0 0% 80%);
    background-color: transparent;
}

.fact-icon i {
    color: #000;
    display: inline-block;
    font-size: 1.5rem;
}

.fact-info,
.fact-title {
    font-size: 15px;
}

#itinerary a[data-bs-toggle="collapse"]::after {
    border: solid;
    border-width: 0 .075rem .075rem 0;
    content: "";
    display: inline-block;
    padding: 2px;
    position: absolute;
    right: 0;
    top: 1.4rem;
    transform: rotate(-135deg);
    transition: all .2s ease-out;
}

#itinerary a[data-bs-toggle="collapse"].collapsed::after {
    transform: rotate(45deg);
    transition: all .2s ease-out;
}

#itinerary .card {
    background-color: #ECF3F9;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border-top: 0;
    border-left: 0;
    border-right: 0;
}

#itinerary .card:last-child {
    border-bottom: 0;
}

#itinerary .card-header {
    background-color: #ECF3F9;
}

#itinerary .card-title a {
    color: #000;
}

.trip-facts {
    padding: 40px;
    border: 1px solid hsl(0 0% 80%);
    border-radius: 20px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
    row-gap: 30px;
}

.trip-facts li {
    gap: 15px;
    align-items: center;
}

.includes li,
.highlights-wrap li {
    position: relative;
    font-weight: 400;
    line-height: 28px;
    margin-bottom: 16px;
}

.includes li::before,
.highlights-wrap li::before {
    position: absolute;
    content: url("data:image/svg+xml,<svg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M15.5071 10.5245C15.8 10.2316 15.8 9.75674 15.5071 9.46384C15.2142 9.17095 14.7393 9.17095 14.4464 9.46384L10.9649 12.9454L9.55359 11.5341C9.2607 11.2412 8.78582 11.2412 8.49293 11.5341C8.20004 11.827 8.20004 12.3019 8.49294 12.5947L10.4346 14.5364C10.7275 14.8293 11.2023 14.8292 11.4952 14.5364L15.5071 10.5245Z' fill='%23805af5'/><path fill-rule='evenodd' clip-rule='evenodd' d='M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM3.5 12C3.5 7.30558 7.30558 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C7.30558 20.5 3.5 16.6944 3.5 12Z' fill='%23805af5'/></svg>");
    width: 20px;
    height: 20px;
    left: -30px;
    top: 5px;
}

.excludes li {
    position: relative;
    font-weight: 400;
    line-height: 28px;
    margin-bottom: 16px;
}

.excludes li::before {
    position: absolute;
    content: url("data:image/svg+xml,<svg  viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M8.78362 8.78412C8.49073 9.07702 8.49073 9.55189 8.78362 9.84478L10.9388 12L8.78362 14.1552C8.49073 14.4481 8.49073 14.923 8.78362 15.2159C9.07652 15.5088 9.55139 15.5088 9.84428 15.2159L11.9995 13.0607L14.1546 15.2158C14.4475 15.5087 14.9224 15.5087 15.2153 15.2158C15.5082 14.9229 15.5082 14.448 15.2153 14.1551L13.0602 12L15.2153 9.84485C15.5082 9.55196 15.5082 9.07708 15.2153 8.78419C14.9224 8.4913 14.4475 8.4913 14.1546 8.78419L11.9995 10.9393L9.84428 8.78412C9.55139 8.49123 9.07652 8.49123 8.78362 8.78412Z' fill='%23FF3927'/><path fill-rule='evenodd' clip-rule='evenodd' d='M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM3.5 12C3.5 7.30558 7.30558 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C7.30558 20.5 3.5 16.6944 3.5 12Z' fill='%23FF3927'/></svg>");
    width: 20px;
    height: 20px;
    left: -30px;
    top: 5px;
}

.package-itinerary h5 {
    font-size: 1rem;
    color: #000;
    position: relative;
}

.book-box {
    background-color: #F2F2FF;
    position: sticky;
    z-index: 1020;
}

.book-box .list-group-item {
    background-color: transparent;
}

.price-area span {
    color:#110F0F;
    font-size: 32px;
    font-weight: 600;
}

.price-area span del {
    color: #525252;
    font-size: 25px;
}

.price-area span sub {
    color: #525252;
    font-size: 16px;
    font-weight: 500;
    bottom: 0;
}

.book-box li {
    font-size: 14px;
}

.price-batch {
    display: flex;
    justify-content: end;
}

.price-batch span {
    color: #FFF;
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    padding: 6px 15px;
    background-color: #cf713d;
    display: block;
    border-radius: 100px;
}

.modal {
    --bs-modal-width: 700px;
    --bs-modal-padding: 2rem;
}

.toast {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1111;
    margin: 1.25rem !important;
}



.navbar {
    background-color: #ECF3F9;
}

.contact-info li {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.contact-item i {
    display: inline-block;
    font-size: 1.5rem;
    margin-right: 30px;
}

.form-control {
    background-color: #FFF;
    padding: 0 30px;
    border-radius: 0;
    line-height: 45px;
}

.form-control:focus {
    outline: none;
    box-shadow: 0 0 0 0 rgba(255, 255, 255);
    background-color: #FFF;
    color: #000;
    border-color: var(--bs-border-color);
}

#about-us {
    position: relative;
    padding: 150px 0;
    background: #000;
}

#about-us .subtitle::before {
    top: 7px;
    background-color: #FFF;
}

.hello-btn {
    display: inline-flex;
    align-items: center;
    background-color: #cf713d;
    padding: 15px 30px;
}

.hello-btn i {
    font-size: 22px;
}

.hello-btn:hover {
    background-color: #cf713d;
}

/* For Screen Size Greater Than 992px */

@media (min-width: 992px) {

    nav.header-sticky .menu-link {
        color: #FFF;
    }

    .sub-menu {
        position: absolute;
        width: 260px;
        min-width: 260px;
    }

    .sub-menu .sub-menu {
        left: 100%;
        top: 0px;
    }

    .menu-item-has-children:hover>.sub-menu {
        display: block;
        animation: fadeIn 1s ease;
    }

    .book-box.active {
        position: fixed;
        top: 120px;
        width: 407px;
    }

    .border-right {
        border-right: 3px solid #3e4455;
    }

    .trip-facts {
        grid-template-columns: repeat(3, 1fr);
        gap: 60px;
    }

    .prevMainArrowBtn,
    .nextMainArrowBtn {
        min-width: 60px;
        max-width: 60px;
        height: 60px;
        font-size: 2rem;
        left: 90px;
    }

    .nextMainArrowBtn {
        left: unset;
        right: 90px;
    }

    .slide-caption h5 {
        font-size: 4rem;
    }

    .slide-caption p {
        display: block;
    }
}

@keyframes fadeIn {

    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}


.package-itinerary {
    border: 1px solid hsl(0 0% 80%);
    border-radius: 20px;
    padding: 40px 30px;
}

.package-itinerary .card:not(:last-child) {
    border-bottom: 1px solid hsl(0 0% 80%);
}


/* Form Wizard -- Multi Form */
.active .bs-stepper-circle {
    background-color: #0103a7;
    color: #FFF;
}

.bs-stepper-circle {
    background: #fff;
    color: #000;
}

.stepper-label {
    font-size: .9rem;
    color: #555;
}

label.error {
    color: #d33;
    font-size: .85rem;
    margin-top: .25rem;
    display: block;
}

.line.done,
.bs-stepper-line.done {
    background-color: #cf713d !important;
}

/*  Subtitle */

.subtitle::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 35px;
    height: 3px;
    background-color: #3e4455;
}

.subtitle {
    position: relative;
    color: #3e4455;
    font-weight: 800;
    letter-spacing: 3px;
    padding-left: 55px;
    font-size: 14px;
}