body {
    font-family: "IBM Plex Sans", sans-serif;
}



h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "IBM Plex Sans", sans-serif;
    font-weight: 600;

}

@media screen and (max-width:1100px) {
    .container {

        width: 97% !important;
    }
}

:root {
    --cvs-charcoal: #1B1A18;
    --cvs-ink: #241F1A;
    --cvs-ink-soft: #2E2820;
    --cvs-orange: #E07A2C;
    --cvs-orange-deep: #C4611B;
    --cvs-gold: #D9A441;
    --cvs-sand: #F3E9D8;
    --cvs-cream: #FBF6EC;
    --cvs-white: #FFFFFF;
    --cvs-text-soft: #6B6255;
    --cvs-line: rgba(27, 26, 24, 0.09);

    --cvs-grad-warm: linear-gradient(135deg, var(--cvs-orange) 0%, var(--cvs-gold) 100%);
    --cvs-grad-dark: linear-gradient(160deg, #201B16 0%, #14110E 100%);

    --cvs-font-display: 'Fraunces', serif;
    --cvs-font-body: 'Plus Jakarta Sans', sans-serif;
    --cvs-font-mono: 'DM Mono', monospace;

    --cvs-radius-lg: 28px;
    --cvs-radius-md: 18px;
    --cvs-radius-sm: 12px;
    --cvs-shadow-soft: 0 20px 50px -20px rgba(27, 20, 10, 0.25);
    --cvs-shadow-deep: 0 30px 70px -25px rgba(15, 10, 5, 0.45);
    --cvs-header-h: 84px;
}


/* HEADER */
.trv-header {
    background: transparent;
    padding: 25px 0 15px;

}

.nav {
    padding: 0px;
    background: #ffffff;
    border-radius: 10px;
    position: relative;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding-right: 10px;
}

.trv-logo {
    padding: 10px;
}

/* .trv-logo{
  display:flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  font-size:22px;
  font-weight:700;
  color:#000;
  position: absolute;
  top: -40px;
  left: -15px;
  border-radius: 50%;
  border: 3px solid #fff;
} */
.trv-logo span span {
    color: #ff5722;
}

.trv-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 18px;
}

.trv-menu li {
    position: relative;
}

.trv-menu a {
    text-decoration: none;
    color: #222;
    font-weight: 400;
    font-size: 16px;
}

/* Sticky scroll header */
.trv-header.sticky {
    width: 100%;
    left: 0;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    padding: 0px 0;
    /* thoda chhota padding scroll pe */
    z-index: 9999;
}

.listing-header .trv-header {
    width: 100%;
    left: 0;
    background: #fff5e9;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    padding: 10px 0;
    /* thoda chhota padding scroll pe */
    z-index: 9999;
}

.listing-header .trv-header .trv-logo {
    display: none;
}

.listing-header .trv-header .nav {

    background: transparent;
    justify-content: space-between;

}

.listing-header .trv-header .nav .contact-details {
    display: none;
}

.listing-header .trv-header .mobile-sticky-logo {
    display: block;
}


/* Dropdown */
.trv-menu .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: .3s;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    padding: 15px;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .12);
}

.trv-menu .dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Hamburger */
.trv-hamburger {
    font-size: 28px;
    background: none;
    border: none;
}

/* MOBILE MENU */
.trv-mobile-menu {
    position: fixed;
    top: 0;
    left: -100%;
    width: 320px;
    height: 100%;
    background: #fff5e9;
    z-index: 9999;
    transition: .4s;
    padding: 20px;
    overflow-y: auto;
}

.trv-mobile-menu.active {
    left: 0;
}

.trv-mobile-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.wishlist {
    margin: 20px 0;
    padding: 15px;
    background: #f6f6f6;
    border-radius: 12px;
    display: flex;
    justify-content: space-between;
}

.mobile-nav {
    list-style: none;
    padding: 0;
}

.mobile-nav li {
    border-bottom: 1px solid #eee;
}

.mobile-nav a {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    text-decoration: none;
    color: #222;
}

.sub-menu {
    display: none;
    padding-left: 15px;
}

.menu-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .5);
    display: none;
    z-index: 9998;
}

.menu-overlay.active {
    display: block;
}


/* Arrow icon */
.dropdown-icon {
    margin-left: 5px;
    transition: transform 0.3s ease;
    font-size: 0.7em;
    /* arrow thoda chhota kar diya */
}

/* Rotate up when dropdown is open */
.dropdown.show>a .dropdown-icon {
    transform: rotate(180deg);
}

.dropdown-toggle::after {
    display: none;
}

.dropdown-menu {
    border-radius: 0px !important;
    border-top: 2px solid #0e60aa;
    min-width: 250px;
}

.dropdown-item {
    padding-left: 0px;
    transition: all ease 0.4s;

}

.dropdown-item:hover {
    color: #ec3237;
    padding-left: 5px;
    background-color: #f0f0f0;
}



#openMenu i {
    color: #de8733;
}

#closeMenu {
    background-color: transparent;
    color: #de8733;
}

.has-sub a span {
    color: #0e60aa;
    font-weight: 700;
}

.has-sub a:focus span {
    color: #ff5722;
}

.container {
    max-width: 1300px;
    width: 92%;
}

.contact-details {
    display: flex;
    gap: 15px;
    justify-content: flex-end;
}

.call-menu p {
    margin-bottom: 10px;
    font-size: 14px;
    color: #222;
}

.call-menu p a {
    text-decoration: none;
    color: #3c3c3c;
}

.call-menu p span {
    margin-right: 6px;
}

.menu-list {
    padding: 10px 0px;
}

.btn-header-enquiry {
    height: 100%;
    background-color: #f78e1e;
    color: #030303;
    font-weight: 500;
    display: flex;
    align-items: center;
    padding: 15px;
}

.btn-header-enquiry:hover {
    background-color: #f4aa1f;
    color: #000;
}

/* BANNER */
.banner {
    position: relative;

    overflow: hidden;
}

/* IMAGE */
.banner-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* TEXT */
.banner-content {
    position: absolute;
    bottom: 80px;
    left: 5%;
    /* transform: translateY(-50%); */
    z-index: 2;
}

/* BIG HEADING */
.banner-content h1 {
    font-size: 90px;
    font-weight: 800;
    color: #ffffff;
    text-shadow: 1px 1px 3px #000;
}

/* SUBTEXT */
.banner-content p {
    font-size: 28px;
    color: #000;
    background: rgba(255, 255, 255, 0.8);
    display: inline-block;
    padding: 6px 15px;
    margin-top: 10px;
}

/* MOBILE FIX */
@media (max-width: 768px) {
    .banner {
        height: 400px;
    }

    .banner-content h1 {
        font-size: 40px;
    }

    .banner-content p {
        font-size: 16px;
    }

    .btn-header-enquiry {
        display: none;
    }
}


/* =========================================
   SAMARTH HOSPITALITY
   COMPLETELY NEW ABOUT DESIGN
========================================= */

.smh-about-section {
    position: relative;
    padding: 60px 0 60px;
    background: #f8fafc;
    overflow: hidden;
}


/* Background detail */

.smh-about-section::before {
    content: "";
    position: absolute;
    width: 480px;
    height: 480px;
    border: 1px solid rgba(229, 57, 53, .08);
    border-radius: 50%;
    right: -250px;
    top: -170px;
}

.smh-about-section::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    background: rgba(229, 57, 53, .035);
    border-radius: 50%;
    left: -150px;
    bottom: -150px;
}


/* =========================================
   LEFT CONTENT
========================================= */

.smh-about-content {
    position: relative;
    z-index: 2;
    padding-right: 45px;
}


/* Kicker */

.smh-about-kicker {
    display: flex;
    align-items: center;
    gap: 9px;

    color: #f78e1e;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;

    margin-bottom: 18px;
}

.smh-about-kicker span {
    display: inline-block;
    width: 32px;
    height: 2px;
    background: #e53935;
}


/* Heading */

.smh-about-title {
    margin: 0 0 20px;

    color: #0b1b2b;

    font-size: 40px;
    line-height: 1.12;
    font-weight: 500;
}

.smh-about-title strong {
    color: #f78e1e;
    font-weight: 700;
}


/* Description */

.smh-about-description {


    margin: 0 0 30px;

    color: #151515;

    font-size: 14px;
    line-height: 1.7;
}

.more-content {


    margin: 20px 0 0px;

    color: #151515;

    font-size: 14px;
    line-height: 1.7;
}

/* Bottom */

.smh-about-bottom {
    display: flex;
    align-items: center;
    gap: 28px;
}


/* Button */

.smh-about-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 12px 19px;

    background: #0b1b2b;
    color: #fff;

    text-decoration: none;

    font-size: 12px;
    font-weight: 600;

    border-radius: 4px;

    transition: .3s ease;
}

.smh-about-btn i {
    font-size: 11px;
    transition: .3s ease;
}

.smh-about-btn:hover {
    background: #f78e1e;
    color: #fff;
}

.smh-about-btn:hover i {
    transform: translateX(4px);
}


/* Approval */

.smh-about-approved {
    display: flex;
    align-items: center;
    gap: 10px;
}

.smh-about-approved>i {
    width: 38px;
    height: 38px;

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

    border: 1px solid #f78e1e;
    border-radius: 50%;

    color: #f78e1e;
    font-size: 15px;
}

.smh-about-approved div {
    display: flex;
    flex-direction: column;
}

.smh-about-approved strong {
    color: #0b1b2b;
    font-size: 14px;
    font-weight: 700;
}

.smh-about-approved span {
    color: #858585;
    font-size: 9px;
    margin-top: 2px;
}


/* =========================================
   RIGHT VISUAL
========================================= */

.smh-about-visual {
    position: relative;

    width: 360px;
    height: 360px;

    margin: auto;

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


/* Outer Circle */

.smh-about-circle {
    position: absolute;

    width: 300px;
    height: 300px;

    border-radius: 50%;

    border: 1px solid rgba(229, 57, 53, .22);
}

.smh-about-circle::before {
    content: "";

    position: absolute;

    inset: 22px;

    border-radius: 50%;

    border: 1px dashed rgba(11, 27, 43, .18);
}


/* Award */

.smh-about-award {
    position: relative;
    z-index: 2;

    width: 205px;
    height: 205px;

    border-radius: 50%;

    background: #fff;

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

    text-align: center;

    box-shadow:
        0 20px 50px rgba(11, 27, 43, .12);
}


.smh-award-icon {
    width: 48px;
    height: 48px;

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

    margin-bottom: 9px;

    background: #e53935;
    color: #fff;

    border-radius: 50%;

    font-size: 20px;
}


.smh-about-award span {
    color: #777;

    font-size: 8px;
    letter-spacing: 1.5px;
    font-weight: 600;
}

.smh-about-award h4 {
    margin: 4px 0;

    color: #0b1b2b;

    font-size: 22px;
    font-weight: 800;
    letter-spacing: 1px;
}

.smh-about-award small {
    color: #e53935;

    font-size: 9px;
    letter-spacing: 2px;
    font-weight: 700;
}


/* Experience badge */

.smh-about-year {
    position: absolute;

    right: 0;
    bottom: 28px;

    z-index: 4;

    min-width: 125px;

    padding: 12px 15px;

    background: #0b1b2b;
    color: #fff;

    display: flex;
    align-items: center;
    gap: 9px;

    border-radius: 5px;

    box-shadow: 0 12px 25px rgba(11, 27, 43, .18);
}

.smh-about-year strong {
    color: #e53935;

    font-size: 27px;
    line-height: 1;
}

.smh-about-year span {
    font-size: 8px;
    line-height: 1.4;
    letter-spacing: .7px;
    font-weight: 600;
}


/* =========================================
   STATISTICS
========================================= */

.smh-about-stats {
    position: relative;
    z-index: 5;

    margin-top: 65px;

    padding: 25px 35px;

    background: #fff;

    border: 1px solid #e9edf1;

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

    box-shadow: 0 12px 35px rgba(11, 27, 43, .06);
}


/* Stat */

.smh-stat-item {
    display: flex;
    flex-direction: column;
    gap: 7px;

    min-width: 150px;
}


.smh-stat-item strong {
    color: #0b1b2b;

    font-size: 27px;
    line-height: 1;

    font-weight: 750;
}


.smh-stat-item span {
    display: flex;
    align-items: center;
    gap: 6px;

    color: #777;

    font-size: 10px;
    text-transform: uppercase;

    letter-spacing: .7px;
    font-weight: 600;
}


.smh-stat-item span i {
    color: #e53935;
    font-size: 10px;
}


/* Divider */

.smh-stat-divider {
    width: 1px;
    height: 42px;

    background: #e5e7ea;
}


/* =========================================
   HOVER
========================================= */

.smh-stat-item {
    transition: .3s ease;
}

.smh-stat-item:hover {
    transform: translateY(-3px);
}

.smh-stat-item:hover strong {
    color: #e53935;
}


/* =========================================
   TABLET
========================================= */

@media(max-width:991px) {

    .smh-about-section {
        padding: 65px 0;
    }

    .smh-about-content {
        padding-right: 0;
    }

    .smh-about-title {
        font-size: 38px;
    }

    .smh-about-visual {
        margin-top: 45px;
    }

    .smh-about-stats {
        margin-top: 45px;
        flex-wrap: wrap;
        gap: 25px;
    }

    .smh-stat-divider {
        display: none;
    }

    .smh-stat-item {
        width: 42%;
    }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:575px) {

    .smh-about-section {
        padding: 50px 0;
    }

    .smh-about-kicker {
        font-size: 9px;
        letter-spacing: 1.3px;
    }

    .smh-about-kicker span {
        width: 22px;
    }

    .smh-about-title {
        font-size: 29px;
        line-height: 1.15;
    }

    .smh-about-description {
        font-size: 12px;
        line-height: 1.75;
    }

    .smh-about-bottom {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
    }

    .smh-about-approved {
        gap: 8px;
    }

    .smh-about-approved span {
        font-size: 10px;
    }

    .smh-about-visual {
        width: 280px;
        height: 280px;
        margin-top: 45px;
    }

    .smh-about-circle {
        width: 235px;
        height: 235px;
    }

    .smh-about-circle::before {
        inset: 17px;
    }

    .smh-about-award {
        width: 165px;
        height: 165px;
    }

    .smh-award-icon {
        width: 39px;
        height: 39px;
        font-size: 16px;
        margin-bottom: 6px;
    }

    .smh-about-award h4 {
        font-size: 18px;
    }

    .smh-about-award span {
        font-size: 6.5px;
    }

    .smh-about-award small {
        font-size: 7px;
    }

    .smh-about-year {
        right: -5px;
        bottom: 12px;
        min-width: 105px;
        padding: 9px 11px;
    }

    .smh-about-year strong {
        font-size: 22px;
    }

    .smh-about-year span {
        font-size: 7px;
    }

    .smh-about-stats {
        margin-top: 40px;
        padding: 20px 18px;
        gap: 22px 10px;
    }

    .smh-stat-item {
        width: 48%;
        min-width: 0;
    }

    .smh-stat-item strong {
        font-size: 21px;
    }

    .smh-stat-item span {
        font-size: 8px;
        letter-spacing: .3px;
    }

}

.trv-header.sticky {
    background-color: #fff;
    padding: 0px 0px;
}

.trv-header.sticky .nav {
    background: transparent;
    justify-content: space-between;
}

.trv-header.sticky .trv-logo img {
    width: 120px;
}

.trv-header.sticky .contact-details {
    display: none;
}

/* =========================================
   SAMARTH DESTINATIONS
========================================= */

.shv-dest-section {
    background: var(--cvs-cream);
    padding: 65px 0;
}


/* Heading */

.shv-dest-heading {
    max-width: 850px;
    margin: 0 auto 38px;
}

.shv-dest-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #f78e1e;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.shv-dest-label::before,
.shv-dest-label::after {
    content: "";
    width: 22px;
    height: 1px;
    background: #e53935;
}


.shv-dest-title {
    margin: 0 0 12px;
    color: #0b1b2b;
    font-size: 36px;
    line-height: 1.2;
    font-weight: 700;
}


.shv-dest-description {
    max-width: 780px;
    margin: 0 auto;
    color: #626262;
    font-size: 13px;
    line-height: 1.8;
}


/* Grid */

.shv-dest-grid {
    row-gap: 28px;
}


/* Card */

.shv-dest-card {
    height: 100%;
    text-align: center;
    transition: .35s ease;
    position: relative;
}

.shv-dest-card a {
    display: block;
    color: inherit;
    text-decoration: none;
}


/* Image */

.shv-dest-image {
    position: relative;
    width: 100%;
    aspect-ratio: 1/1.08;
    overflow: hidden;
    border-radius: 8px;
    background: #eee;
    box-shadow: 0 7px 22px rgba(11, 27, 43, .08);
}


.shv-dest-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: .5s ease;
}


/* Overlay */

.shv-dest-overlay {
    position: absolute;
    inset: 0;
    z-index: 11;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 12px;
    opacity: 0;
    transition: .35s ease;
}


.shv-dest-overlay span {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f78e1e;
    color: #fff;
    font-size: 11px;
    transform: translateY(10px);
    transition: .35s ease;
    z-index: 11;
}


/* Content */

.shv-dest-content {
    padding-top: 12px;
    position: absolute;
    bottom: 0;
    left: 0px;
    right: 0px;
    padding-left: 10px;
    padding-bottom: 10px;
    background: #000000;
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.7) 52%, rgba(0, 0, 0, 0) 100%);


}


.shv-dest-content h5 {
    color: #fff;
    margin: 0 0 5px;
    font-size: 15px;
    font-weight: 650;
    transition: .3s ease;
    text-align: left;
}


.shv-dest-content span {
    display: flex;
    gap: 5px;
    color: #fefefe;
    font-size: 11px;
    font-weight: 500;
    align-items: center;
}


.shv-dest-content span i {
    color: #f78e1e;
    font-size: 10px;
}


/* Hover */

.shv-dest-card:hover {
    transform: translateY(-7px);
}


.shv-dest-card:hover .shv-dest-image {
    box-shadow: 0 15px 30px rgba(11, 27, 43, .14);
}


.shv-dest-card:hover .shv-dest-image img {
    transform: scale(1.08);
}


.shv-dest-card:hover .shv-dest-overlay {
    opacity: 1;
}


.shv-dest-card:hover .shv-dest-overlay span {
    transform: translateY(0);
    z-index: 11;
}


.shv-dest-card:hover .shv-dest-content h5 {
    color: #f78e1e;
}


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

@media(max-width:991px) {

    .shv-dest-section {
        padding: 55px 0;
    }

    .shv-dest-title {
        font-size: 30px;
    }

    .shv-dest-description {
        font-size: 13px;
    }

}


@media(max-width:575px) {

    .shv-dest-section {
        padding: 45px 0;
    }

    .shv-dest-heading {
        margin-bottom: 28px;
    }

    .shv-dest-label {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .shv-dest-title {
        font-size: 25px;
    }

    .shv-dest-description {
        font-size: 12px;
        line-height: 1.7;
    }

    .shv-dest-grid {
        row-gap: 22px;
    }

    .shv-dest-image {
        aspect-ratio: 1/1.05;
        border-radius: 7px;
    }

    .shv-dest-content {
        padding-top: 9px;
    }

    .shv-dest-content h5 {
        font-size: 13px;
    }

    .shv-dest-content span {
        font-size: 10px;
    }

    .shv-dest-overlay {
        opacity: 1;
        padding: 8px;
    }

    .shv-dest-overlay span {
        width: 27px;
        height: 27px;
        font-size: 9px;
        transform: none;
    }

}


/* =====================================
   INTERNATIONAL SECTION
===================================== */

.sh-international-section {
    padding: 60px 0;
    background: #ffffff;
    overflow: hidden;
}


/* =====================================
   HEADING
===================================== */

.sh-international-label {
    display: inline-block;
    margin-bottom: 12px;

    color: #f78e1e;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 2px;
}


.sh-international-heading h2 {
    margin: 0 0 15px;

    color: #0b1b2b;

    font-size: 42px;
    line-height: 1.15;
    font-weight: 500;
}


.sh-international-heading h2 span {
    color: #f78e1e;
    font-weight: 700;
}


.sh-international-heading p {
    max-width: 520px;

    margin: 0;

    color: #666;

    font-size: 13px;
    line-height: 1.8;
}


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

.sh-international-top {
    height: 100%;

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

    gap: 25px;
}


.sh-international-top>span {
    color: #777;

    font-size: 11px;
    font-weight: 500;

    padding-bottom: 10px;
}


/* =====================================
   ARROWS
===================================== */

.sh-international-arrows {
    display: flex;
    gap: 8px;
}


.sh-international-arrows button {
    width: 42px;
    height: 42px;

    border: 1px solid #dfe3e7;

    background: #fff;

    color: #0b1b2b;

    border-radius: 50%;

    cursor: pointer;

    transition: all .3s ease;
}


.sh-international-arrows button:hover {
    background: #e53935;
    border-color: #e53935;

    color: #fff;
}


/* =====================================
   CAROUSEL
===================================== */

.sh-international-carousel {
    margin-top: 35px;
}


.sh-international-carousel .owl-stage {
    display: flex;
}


.sh-international-carousel .owl-item {
    display: flex;
}


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

.sh-international-card {
    display: block;

    width: 100%;

    text-decoration: none;

    overflow: hidden;
}


.sh-international-image {
    position: relative;

    width: 100%;
    height: 300px;

    overflow: hidden;

    border-radius: 8px;

    background: #ddd;
}


.sh-international-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .6s ease;
}


/* =====================================
   OVERLAY
===================================== */

.sh-international-overlay {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 65%;

    background: linear-gradient(to top,
            rgba(11, 27, 43, .9),
            rgba(11, 27, 43, 0));
}


/* =====================================
   INFO
===================================== */

.sh-international-info {
    position: absolute;

    left: 20px;
    bottom: 20px;

    z-index: 2;
}


.sh-international-info span {
    display: block;

    margin-bottom: 4px;

    color: #ffb4b1;

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: 1px;
}


.sh-international-info h4 {
    margin: 0;

    color: #fff;

    font-size: 22px;
    font-weight: 700;
}


/* =====================================
   CARD ARROW
===================================== */

.sh-international-arrow {
    position: absolute;

    right: 18px;
    bottom: 18px;

    z-index: 3;

    width: 38px;
    height: 38px;

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

    background: #f78e1e;

    color: #fff;

    border-radius: 50%;

    font-size: 11px;

    transition: .3s ease;
}


.sh-international-card:hover .sh-international-image img {
    transform: scale(1.08);
}


.sh-international-card:hover .sh-international-arrow {
    transform: translateX(5px);
}


/* =====================================
   MOBILE
===================================== */

@media(max-width:767px) {

    .sh-international-section {
        padding: 55px 0;
    }


    .sh-international-heading h2 {
        font-size: 32px;
    }


    .sh-international-heading p {
        font-size: 12px;
    }


    .sh-international-top {
        margin-top: 25px;

        justify-content: space-between;

        align-items: center;
    }


    .sh-international-top>span {
        padding: 0;
    }


    .sh-international-carousel {
        margin-top: 25px;
    }


    .sh-international-image {
        height: 330px;
    }

}

/* ===== Section Styling ===== */
.ultraPackSectionX {
    background: #ffffff;
    padding: 30px 0 80px;
}

/* ===== Card Wrapper ===== */
.hyperCardWrapZ {
    position: relative;
    overflow: hidden;
    border-radius: 5px;
    cursor: pointer;
}

/* ===== Image Styling ===== */
.hyperCardWrapZ img {
    width: 100%;

    object-fit: cover;
    transition: transform 0.5s ease;
}

/* ===== Gradient Overlay ===== */
.hyperOverlayDarkZ {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0), transparent);
    z-index: 1;
}

/* ===== Content ===== */
.hyperCardContentZ {
    position: absolute;
    bottom: 20px;
    left: 10px;
    right: 10px;
    z-index: 2;
    color: #fff;
    text-align: center;
}

/* Title */
.hyperTitleZ {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}

/* Subtitle */
.hyperSubZ {
    font-size: 13px;

    margin-bottom: 10px;
}

/* Price */
.hyperPriceZ {
    font-size: 18px;
    font-weight: bold;
}

.hyperOldPriceZ {
    text-decoration: line-through;
    opacity: 0.6;
    margin-right: 8px;
}

/* Button */
.hyperBtnZ {
    background: #ff2d14;
    border-radius: 30px;
    padding: 8px 32px;
    border: 2px solid #fff;
    color: #fff;
    font-weight: 500;
    margin-top: 10px;
    font-size: 15px;
    transition: 0.3s;
}

.hyperBtnZ:hover {
    background: #d92310;
}

/* ===== Hover Effects ===== */
.hyperCardWrapZ:hover img {
    transform: scale(1.1);
}

.hyperCardWrapZ:hover .hyperOverlayDarkZ {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.4), transparent);
}

/* ===== Bottom Divider ===== */
.ultraDividerWrapZ {
    position: relative;
    margin-top: 40px;
}

.ultraDividerLineZ {
    height: 3px;
    background: #d63b2f;
}

/* View Button */
.ultraViewBtnZ {
    position: absolute;
    right: 0;
    top: -20px;
    background: #ffcfcf;
    padding: 12px 28px;
    font-weight: 500;
    border: none;
}

/* ===== Responsive ===== */
@media (max-width: 768px) {
    .hyperCardWrapZ img {
        height: 320px;
    }
}


/* =========================================
   ULTRA TESTIMONIAL SECTION
========================================= */

.ultraTestiWrapX {
    background: #f8f8f8;
    padding: 60px 0 60px;
    position: relative;
    overflow: hidden;
}


/* Decorative Circle */

.ultraTestiWrapX::before {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255, 77, 61, 0.12);
    border-radius: 50%;
    left: -140px;
    top: 50px;
}

.ultraTestiWrapX::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    background: rgba(255, 77, 61, 0.05);
    border-radius: 50%;
    right: -70px;
    bottom: 30px;
}


/* =========================================
   HEADING
========================================= */

.ultraMiniTitleX {
    color: #f78e1e;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 9px;
}

.ultraMainTitleX {
    color: #181818;
    font-size: 38px;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 45px;

}

.ultraMainTitleX span {
    color: #f78e1e;
    font-weight: 700;
}


/* =========================================
   CAROUSEL
========================================= */

.ultraOwlX {
    position: relative;
    z-index: 2;
}

.ultraOwlX .owl-stage {
    display: flex;
}

.ultraOwlX .owl-item {
    display: flex;
    padding: 8px;
}

.ultraOwlX .item {
    width: 100%;
}


/* =========================================
   TESTIMONIAL CARD
========================================= */

.ultraTestiCardX {
    width: 100%;
    min-height: 310px;
    background: #ffffff;
    border: 1px solid #e9e9e9;
    border-radius: 16px;
    padding: 28px;
    text-align: left;
    position: relative;
    overflow: hidden;

    display: flex;
    flex-direction: column;

    transition: all 0.35s ease;
}


/* Red top line */

.ultraTestiCardX::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: #f78e1e;

    transform: scaleX(0);
    transform-origin: left;

    transition: 0.35s ease;
}

.ultraTestiCardX:hover::before {
    transform: scaleX(1);
}


/* Hover */

.ultraTestiCardX:hover {
    transform: translateY(-8px);
    border-color: #ffddd9;
    box-shadow: 0 18px 45px rgba(25, 25, 25, 0.09);
}


/* =========================================
   QUOTE
========================================= */

.ultraQuoteX {
    position: absolute;
    right: 22px;
    top: 5px;

    font-family: Georgia, serif;
    font-size: 85px;
    line-height: 1;

    color: rgba(255, 77, 61, 0.10);
}


/* =========================================
   RATING
========================================= */

.ultraTestiTopX {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    position: relative;
    z-index: 2;
}

.ultraStarsX {
    color: #f78e1e;
    font-size: 14px;
    letter-spacing: 2px;
}

.ultraRatingX {
    background: #fff1ef;
    color: #f78e1e;
    font-size: 12px;
    font-weight: 600;

    padding: 5px 9px;
    border-radius: 20px;
}


/* =========================================
   TEXT
========================================= */

.ultraTextX {
    color: #555;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 25px;
    position: relative;
    z-index: 2;

    flex: 1;
}


/* =========================================
   USER
========================================= */

.ultraUserX {
    display: flex;
    align-items: center;
    gap: 12px;

    border-top: 1px solid #eeeeee;
    padding-top: 17px;
}

.ultraUserAvatarX {
    width: 42px;
    height: 42px;

    background: #0b1b2b;
    color: #fff;

    border-radius: 50%;

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

    font-size: 15px;
    font-weight: 600;
}

.ultraUserX h4 {
    margin: 0 0 3px;
    color: #222;
    font-size: 14px;
    font-weight: 600;
}

.ultraUserX span {
    color: #999;
    font-size: 12px;
}


/* =========================================
   CUSTOM NAVIGATION
========================================= */

.ultraNavX {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;

    margin-top: 35px;
    position: relative;
    z-index: 3;
}

.ultraNavX button {
    width: 42px;
    height: 42px;

    border: 1px solid #ddd;
    background: #fff;
    color: #222;

    border-radius: 50%;

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

    cursor: pointer;

    transition: all 0.3s ease;
}

.ultraNavX button:hover {
    background: #f78e1e;
    border-color: #f78e1e;
    color: #fff;
    transform: translateY(-2px);
}

.ultraLineX {
    width: 70px;
    height: 1px;
    background: #ddd;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width: 768px) {

    .ultraTestiWrapX {
        padding: 55px 0 45px;
    }

    .ultraMiniTitleX {
        font-size: 12px;
        margin-bottom: 8px;
    }

    .ultraMainTitleX {
        font-size: 27px;
        line-height: 1.25;
        margin-bottom: 30px;
    }

    .ultraOwlX .owl-item {
        padding: 5px;
    }

    .ultraTestiCardX {
        min-height: 290px;
        padding: 23px;
        border-radius: 13px;
    }

    .ultraQuoteX {
        font-size: 70px;
        right: 18px;
    }

    .ultraTextX {
        font-size: 13px;
        line-height: 1.7;
    }

    .ultraNavX {
        margin-top: 25px;
    }

}

/* ========================================= PREMIUM SAMARTH FOOTER ========================================= */
.samFooterX {
    background: #101820;
    color: #fff;
    position: relative;
    overflow: hidden;
    padding: 65px 0 0;
}

/* ========================================= BACKGROUND DECORATION ========================================= */
.samFooterX::before {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    border: 1px solid rgba(255, 77, 61, 0.08);
    border-radius: 50%;
    right: -220px;
    top: -220px;
}

.samFooterX::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    border-radius: 50%;
    left: -150px;
    bottom: -150px;
}

/* Glow */
.samFooterGlowX {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
}

.samGlowOneX {
    width: 180px;
    height: 180px;
    background: rgba(255, 77, 61, 0.10);
    left: -80px;
    top: 80px;
}

.samGlowTwoX {
    width: 160px;
    height: 160px;
    background: rgba(255, 77, 61, 0.06);
    right: 10%;
    bottom: 0;
}

/* ========================================= MAIN FOOTER ========================================= */
.samFooterMainX {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr 1.4fr;
    gap: 30px;
    padding-bottom: 45px;
    position: relative;
    z-index: 2;
}

/* ========================================= BRAND ========================================= */
.samFooterBrandX {
    max-width: 320px;
}

.samFooterLogoX {
    display: inline-flex;
    align-items: center;
    margin-bottom: 18px;
}

.samFooterLogoX img {
    width: 180px;
    filter: brightness(0) invert(1);
}

.samFooterBrandX p {
    color: #aeb5ba;
    font-size: 13px;
    line-height: 1.8;
    margin: 0 0 22px;
}

/* ========================================= SOCIAL ========================================= */
.samFooterSocialX {
    display: flex;
    gap: 8px;
}

.samFooterSocialX a {
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c5c9cc;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 7px;
    font-size: 13px;
    transition: 0.3s;
}

.samFooterSocialX a:hover {
    background: #f78e1e;
    border-color: #f78e1e;
    color: #fff;
    transform: translateY(-4px);
}

/* ========================================= FOOTER HEADINGS ========================================= */
.samFooterColX h4,
.samFooterContactX h4 {
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    margin: 5px 0 22px;
    position: relative;
    padding-bottom: 10px;
}

.samFooterColX h4::after,
.samFooterContactX h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 2px;
    background: #f78e1e;
}

/* ========================================= LINKS ========================================= */
.samFooterColX ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.samFooterColX li {
    margin-bottom: 11px;
}

.samFooterColX a {
    color: #9fa7ac;
    text-decoration: none;
    font-size: 14px;
    transition: 0.3s;
    position: relative;
    padding-left: 15px;
}

.samFooterColX a::before {
    content: "›";
    position: absolute;
    left: 0;
    color: #f78e1e;
    font-size: 16px;
    transition: 0.3s;
}

.samFooterColX a:hover {
    color: #fff;
    padding-left: 19px;
}

.samFooterColX a:hover::before {
    color: #f78e1e;
}

/* ========================================= CONTACT ========================================= */
.samContactItemX {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    margin-bottom: 15px;
}

.samContactIconX {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 9px;
    background: rgb(255 175 61 / 10%);
    color: #f78e1e;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    transition: 0.3s;
}

.samContactItemX:hover .samContactIconX {
    background: #f78e1e;
    color: #fff;
}

.samContactItemX small {
    display: block;
    color: #7f898f;
    font-size: 10px;
    margin-bottom: 2px;
}

.samContactItemX strong {
    display: block;
    color: #e7e9ea;
    font-size: 12px;
    font-weight: 500;
}

/* ========================================= BOTTOM BAR ========================================= */
.samFooterBottomX {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    min-height: 65px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    position: relative;
    z-index: 2;
}

.samFooterBottomX p {
    margin: 0;
    color: #7f898f;
    font-size: 11px;
}

.samFooterPoliciesX {
    display: flex;
    align-items: center;
    gap: 9px;
}

.samFooterPoliciesX a {
    color: #858e93;
    text-decoration: none;
    font-size: 11px;
    transition: 0.3s;
}

.samFooterPoliciesX a:hover {
    color: #f78e1e;
}

.samFooterPoliciesX span {
    color: #444d52;
    font-size: 10px;
}

/* ========================================= TABLET ========================================= */
@media(max-width: 991px) {
    .samFooterMainX {
        grid-template-columns: 1.4fr 1fr 1fr;
        gap: 35px;
    }

    .samFooterContactX {
        grid-column: span 3;
    }

    .samFooterContactX {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
    }

    .samFooterContactX h4 {
        grid-column: span 3;
    }
}

/* ========================================= MOBILE ========================================= */
@media(max-width: 767px) {
    .samFooterX {
        padding: 50px 0 0;
    }

    .samFooterMainX {
        grid-template-columns: 1fr 1fr;
        gap: 30px 20px;
        padding-bottom: 30px;
    }

    .samFooterBrandX {
        grid-column: span 2;
        max-width: 100%;
    }

    .samFooterColX h4,
    .samFooterContactX h4 {
        font-size: 14px;
        margin-bottom: 17px;
    }

    .samFooterContactX {
        grid-column: span 2;
        display: block;
    }

    .samContactItemX {
        margin-bottom: 12px;
    }

    .samFooterBottomX {
        padding: 18px 0;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .samFooterPoliciesX {
        flex-wrap: wrap;
        gap: 6px;
    }
}

@media(max-width: 480px) {
    .samFooterMainX {
        grid-template-columns: 1fr 1fr;
    }

    .samFooterBrandX {
        grid-column: span 2;
    }

    .samFooterBrandX p {
        font-size: 12px;
    }

    .samFooterColX a {
        font-size: 12px;
    }

    .samFooterContactX {
        grid-column: span 2;
    }

    
}

.carousel-control-next,
.carousel-control-prev {
    z-index: 11 !important;
}


.trv-header .mobile-sticky-logo {
    display: none;
}

.trv-header.sticky .mobile-sticky-logo {
    display: block;
}

.inner-banner {
    background: url(../img/about-banner.jpg);
    display: flex;
    min-height: 400px;
    background-size: cover;
    background-position: center;
    justify-content: center;
    align-items: center;
    position: relative;
}

.inner-banner-content {
    position: absolute;
    text-align: center;
    left: 0;
    right: 0;
}

.inner-banner-content h1 {
    color: #fff;
}

.inner-banner-content p {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
}

.overlay {
    position: absolute;
    background-color: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.4;
}

.breadcrumb {
    margin-bottom: 0px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #fff;

}

.breadcrumb-nav {
    background-color: #0b1b2b;
}

.breadcrumb a {
    color: #f4aa1f;
    text-decoration: none;
}

.breadcrumb-item+.breadcrumb-item::before {
    color: #fff;
}

.sh-big {
    max-width: 100%
}


.mission_vision_section {
    background: #ffffff;
}

.why_samarth_section {
    background: #d3dfef;
}

.section_badge {
    background: #ff3b30;
    color: #fff;
    padding: 8px 18px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
    display: inline-block;
    margin-bottom: 15px;
}

.section_title {
    font-size: 42px;
    font-weight: 700;
    color: #1e1e1e;
    margin-bottom: 15px;
}

.section_subtitle {
    color: #666;
    max-width: 650px;
    margin: auto;
}

.info_card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: 0.4s;
    height: 100%;
    text-align: center;
    border-top: 4px solid #ff3b30;
}

.info_card:hover {
    transform: translateY(-8px);
}

.icon_box {
    width: 70px;
    height: 70px;
    background: #ffebe9;
    color: #ff3b30;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 28px;
}

.info_card h3 {
    font-size: 28px;
    margin-bottom: 15px;
    color: #1d2b4f;
}

.info_card p {
    color: #666;
    line-height: 1.8;
}

.feature_list {
    list-style: none;
    padding: 0;
    margin-top: 30px;
}

.feature_list li {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 18px;
    margin-bottom: 18px;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
    transition: 0.4s ease;
    border-left: 4px solid #ff3b30;
}

.feature_list li:hover {
    transform: translateX(8px);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.1);
}

.feature_icon {
    min-width: 55px;
    height: 55px;
    background: #fff1ef;
    color: #ff3b30;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.feature_list h5 {
    font-size: 18px;
    font-weight: 700;
    color: #1d2b4f;
    margin-bottom: 5px;
}

.feature_list p {
    margin: 0;
    font-size: 14px;
    color: #666;
    line-height: 1.6;
}

.why_image_box img {
    border-radius: 20px;
    display: block;
    margin-left: auto;
}









.package_listing_section {
    background: #f7f8fc;
}

.package_card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    margin-bottom: 25px;
    border: 1px solid #f0f0f0;
    transition: 0.4s ease;
}

.package_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 35px rgba(0, 0, 0, 0.12);
}

.package_img_box {
    position: relative;
    height: 100%;
}

.package_img_box img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

.sale_tag {
    position: absolute;
    top: 15px;
    left: 15px;
    background: #ff3b30;
    color: #fff;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 30px;
}

.package_content {
    padding: 20px;
}

.package_badge {
    background: #fff1ef;
    color: #ff3b30;
    padding: 6px 14px;
    border-radius: 25px;
    font-size: 12px;
    font-weight: 600;
}

.package_content h3 {
    font-size: 22px;
    font-weight: 700;
    color: #1d2b4f;
    margin: 15px 0 12px;
}

.package_meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 15px;
    font-size: 14px;
    color: #2d2d2d;
}

.package_meta i {
    color: #ff3b30;
    margin-right: 6px;
}

.package_inclusions {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 18px;
}

.package_inclusions span {
    background: linear-gradient(180deg, #ed1509, #ff6060);
    padding: 8px 14px;
    border-radius: 50%;
    display: flex;
    width: 50px;
    justify-content: center;
    align-items: center;
    padding: 10px;
    height: 50px;

}

.package_inclusions div {

    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 500;
    color: #2d2d2d;
}

.package_inclusions i {
    color: #ff3b30;
    margin-right: 6px;
}

.package_content p {
    color: #666;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 0;
}

.package_price_box {
    padding: 30px 20px;
    text-align: center;
    border-left: 1px solid #eee;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.package_price_box h6 {
    font-size: 14px;
    color: #777;
    margin-bottom: 12px;
}

.old_price {
    display: block;
    text-decoration: line-through;
    color: #999;
    font-size: 18px;
}

.new_price {
    display: block;
    font-size: 25px;
    font-weight: 800;
    color: #ff3b30;
    margin-top: 5px;
}

.btn_book {
    display: block;
    background: #ff3b30;
    color: #fff;
    padding: 14px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 700;
    margin: 15px 0;
    transition: 0.3s;
}

.btn_book:hover {
    background: #e62f25;
    color: #fff;
}

.action_btns {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

.btn_call,
.btn_whatsapp {
    width: 45px;
    height: 45px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
}

.btn_call {
    background: #1d2b4f;
}

.btn_whatsapp {
    background: #25d366;
}

.btn_view {
    background: #1d2b4f;
    color: #f5f5f5;
    padding: 12px 30px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
}

.btn_view:hover {
    background-color: #f4aa1f;
    color: #000;
}

.price-box h6 {
    margin-bottom: 0px;
}

.package-box-price {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}


/* SIDEBAR */
.sidebar {
    width: 100%;
    background: #fff;
    border-radius: 18px;
    padding: 25px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

/* TITLE */
.filter-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 25px;
    color: #222;
}

/* DESTINATION */
.destination-box {
    margin-top: 30px;
}

.destination-box h3 {
    font-size: 18px;
    margin-bottom: 15px;
    color: #333;
}

.destination-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.destination-item {
    text-decoration: none;
    background: #f7f8fc;
    padding: 5px 14px;
    border-radius: 5px;
    color: #333;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: 0.3s;
    border: 1px solid transparent;
}

.destination-item:hover {
    background: #fff3eb;
    border-color: #ff3b30;
    color: #ff3b30;
    transform: translateX(5px);
}

.destination-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.circle-icon {
    width: 10px;
    height: 10px;
    background: #ff3b30;
    border-radius: 50%;
}

.arrow {
    font-size: 18px;
}

/* DURATION */
.duration-box h3 {
    font-size: 18px;
    margin-bottom: 10px;
}

.duration-select {
    width: 100%;
    padding: 8px 15px;
    border-radius: 12px;
    border: 1px solid #ddd;
    background: #f7f8fc;
    font-size: 15px;
    outline: none;
}


/* =========================
   CUSTOM PACKAGE STICKY NAV
========================= */

.ly-package-sticky-nav {

    position: sticky;

    top: 60px;
    /* HEADER HEIGHT */

    z-index: 999;

    background: #fff;

    border-bottom: 1px solid #eee;

    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);

}


/* SCROLL AREA */

.ly-package-nav-scroll {

    overflow-x: auto;

    white-space: nowrap;

    scrollbar-width: none;

}

.ly-package-nav-scroll::-webkit-scrollbar {

    display: none;

}


/* NAV */

.ly-package-sticky-nav .nav {

    flex-wrap: nowrap;
    border-radius: 0px;
    background-color: transparent;
    justify-content: flex-start;

}


/* LINKS */

.ly-package-sticky-link {

    color: #222;

    font-size: 15px;

    font-weight: 600;

    padding: 20px 18px;

    position: relative;

    transition: 0.3s;

    text-decoration: none;

    display: flex;

    align-items: center;

}


/* ICON */

.ly-package-sticky-link i {

    margin-right: 8px;

    font-size: 14px;

}


/* HOVER */

.ly-package-sticky-link:hover {

    color: #dc3545;

}


/* ACTIVE */

.ly-package-sticky-link.active {

    color: #dc3545;

}


/* ACTIVE LINE */

.ly-package-sticky-link.active::after {

    content: '';

    position: absolute;

    left: 0;

    bottom: 0;

    width: 100%;

    height: 3px;

    background: #dc3545;

    border-radius: 30px;

}


/* =========================
   PACKAGE HERO SECTION
========================= */

.ly-package-hero {

    background: #fff;

    padding: 30px 0px;

    border-radius: 18px;

    margin-top: 10px;

}


/* META */

.ly-package-meta {

    display: flex;

    gap: 12px;

    flex-wrap: wrap;

    margin-bottom: 15px;

}


/* META ITEM */

.ly-package-meta-item {

    background: #fff0f1;

    color: #dc3545;

    padding: 8px 14px;

    border-radius: 40px;

    font-size: 13px;

    font-weight: 500;

    display: flex;

    align-items: center;

    gap: 7px;

}


/* TITLE */

.ly-package-title {

    font-size: 30px;

    font-weight: 600;

    line-height: 1.4;

    margin-bottom: 25px;

    color: #222;

}


/* FEATURES */

.ly-package-features {

    display: flex;

    gap: 20px;

    flex-wrap: wrap;

    margin-bottom: 30px;

}


/* FEATURE ITEM */

.ly-package-feature {

    display: flex;

    align-items: center;

    gap: 10px;

}


/* ICON */

.ly-feature-icon {

    width: 42px;

    height: 42px;

    background: #dc3545;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #fff;

    font-size: 15px;

}


/* TEXT */

.ly-feature-text h6 {

    margin: 0;

    font-size: 15px;

    font-weight: 600;

    color: #222;

}

.ly-feature-text p {

    margin: 0;

    font-size: 13px;

    color: #777;

}


/* IMAGE */

.ly-package-image {

    border-radius: 18px;

    overflow: hidden;

}


.ly-package-image img {

    width: 100%;

    height: 420px;

    object-fit: cover;

    display: block;

}


/* MOBILE */

@media(max-width:768px) {

    .ly-package-title {

        font-size: 24px;

    }

    .ly-package-image img {

        height: 260px;

    }

}


.ly-tour-overview-box {

    background: #fff;

    border-radius: 18px;

    margin-top: 30px;

}


/* TITLE */

.ly-tour-overview-title {

    font-size: 28px;

    font-weight: 600;

    margin-bottom: 20px;

    color: #222;

    display: flex;

    align-items: center;

    gap: 12px;

}


/* ICON */

.ly-tour-overview-title i {

    color: #dc3545;

    font-size: 24px;

}


/* CONTENT */

.ly-tour-overview-content {

    color: #555;

    line-height: 1.9;

    font-size: 15px;

    margin: 0;

}


/* MOBILE */

@media(max-width:768px) {

    .ly-tour-overview-box {

        padding: 0px;

    }

    .ly-tour-overview-title {

        font-size: 24px;

    }

}

/* ===== RED TOUR PRICE BOX ===== */

.redtour-pricebox {
    width: 100%;
    border-radius: 14px;
    overflow: hidden;
    background: #eeeeee;
    border: 1px solid #f1caca;
    box-shadow: 0 10px 30px rgba(180, 0, 0, 0.10);
    font-family: Arial, sans-serif;
}

/* TOP AREA */
.redtour-top {
    padding: 28px 24px;
    background: linear-gradient(135deg, #fff5f5, #ffe9e9);
}

.redtour-label {
    display: block;
    font-size: 14px;
    color: #202020;
    margin-bottom: 12px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

.redtour-price-wrap {
    display: flex;
    align-items: baseline;
    gap: 3px;
    flex-wrap: wrap;
}

.redtour-currency {
    font-size: 28px;
    font-weight: 700;
    color: #ec3237;
}

.redtour-price {
    font-size: 48px;
    font-weight: 700;
    line-height: 1;
    color: #1f1f1f;
}

.redtour-person {
    font-size: 16px;
    color: #7a3d3d;
    font-weight: 600;
    margin-left: 6px;
}

/* MIDDLE AREA */
.redtour-middle {
    background: #8b0000;
    color: #fff;
    padding: 24px;
    text-align: center;
    font-size: 15px;
    line-height: 1.7;
}

.redtour-btn {
    width: 100%;
    margin-top: 22px;
    border: none;
    background: linear-gradient(135deg, #ff4d4d, #d10000);
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    padding: 16px 20px;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 18px rgba(255, 77, 77, 0.35);
}

.redtour-btn:hover {
    transform: translateY(-2px);
    background: linear-gradient(135deg, #ff6666, #b30000);
}

/* BOTTOM AREA */
.redtour-bottom {
    background: #990101;
    color: #fff;
    padding: 14px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    flex-wrap: wrap;
    gap: 10px;
}

.redtour-bottom a {
    color: #ffd6d6;
    text-decoration: underline;
    transition: 0.3s;
}

.redtour-bottom a:hover {
    color: #ffffff;
}


/* =========================
   TOURFLOW ITINERARY DESIGN
========================= */

.tourflow-itinerary {
    width: 100%;
    background: #fff;
    border-radius: 18px;
    padding: 10px 0;
    font-family: Arial, sans-serif;
}

/* ITEM */
.tourflow-item {
    display: flex;
    gap: 15px;
    position: relative;
    padding: 20px 0;
}

/* LEFT SIDE */
.tourflow-left {
    width: 90px;
    text-align: center;
    position: relative;
    flex-shrink: 0;
}

.tourflow-day {
    display: inline-block;
    background: linear-gradient(135deg, #c40000, #ff4d4d);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 16px;
    border-radius: 30px;
    position: relative;
    z-index: 2;
    box-shadow: 0 6px 15px rgba(196, 0, 0, 0.2);
}

.tourflow-line {
    position: absolute;
    top: 50px;
    left: 50%;
    width: 3px;
    height: calc(100% + 10px);
    background: linear-gradient(to bottom, #ffb3b3, #ffdede);
    transform: translateX(-50%);
    border-radius: 20px;
}

/* CONTENT BOX */
.tourflow-content {
    flex: 1;
    background: #fff7f7;
    border: 1px solid #ffd2d2;
    border-radius: 15px;
    padding: 15px 15px;
    transition: 0.3s ease;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.04);
}

.tourflow-content:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(196, 0, 0, 0.08);
}

/* HEADER */
.tourflow-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
}

.tourflow-header h4 {
    margin: 0;
    font-size: 20px;
    color: #2b2b2b;
    font-weight: 700;
    line-height: 1.4;
}

/* TOGGLE BUTTON */
.tourflow-toggle {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    border: none;
    background: linear-gradient(135deg, #c40000, #ff5c5c);
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s ease;
    flex-shrink: 0;
}

.tourflow-toggle:hover {
    transform: rotate(90deg);
}

/* BODY */
.tourflow-body {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px dashed #e7b0b0;
}

.tourflow-body ul {
    margin: 0;
    padding-left: 22px;
}

.tourflow-body ul li {
    margin-bottom: 12px;
    color: #444;
    font-size: 16px;
    line-height: 1.7;
}

/* ACTIVE ITEM */
.tourflow-item.active .tourflow-content {
    background: #fff;
    border-color: #ffb1b1;
}

/* RESPONSIVE */
@media(max-width:768px) {

    .tourflow-item {
        gap: 8px;
    }

    .tourflow-left {
        width: 50px;
    }

    .tourflow-day {
        font-size: 13px;
        padding: 8px 12px;
    }

    .tourflow-header h4 {
        font-size: 18px;
    }

    .tourflow-content {
        padding: 18px;
    }

    .tourflow-toggle {
        width: 36px;
        height: 36px;
        font-size: 18px;
    }

    .ly-tour-box {
        padding: 25px 0px !important;
    }
}

/* ADD THIS ALSO IN CSS */

.tourflow-body {
    display: none;
}

.tourflow-item.active .tourflow-body {
    display: block;
}


/* =========================
   SMOOTH SCROLL OFFSET
========================= */

/* 100px top stop */
/* .ly-scroll-section{
    scroll-margin-top: 150px;
} */



.ly-tour-box {
    background: #fff;
    padding: 25px;
    border-radius: 16px;

}

/* TITLE */
.ly-tour-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* BASE LIST */
.ly-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ly-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1.6;
}

/* DOT BASE */
.ly-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

/* GREEN - INCLUSIONS */
.inclusion-list li::before {
    background: #28a745;
}

/* RED - EXCLUSIONS */
.exclusion-list li::before {
    background: #dc3545;
}

/* ICON COLORS */
.inclusion-box .ly-tour-title i {
    color: #28a745;
}

.exclusion-box .ly-tour-title i {
    color: #dc3545;
}



.ly-enquiry-box {
    background: #fff;
    border-radius: 18px;
    padding: 25px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    position: sticky;
    top: 120px;
    margin-top: 40px;
}

.ly-enquiry-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #222;
}

.ly-enquiry-title i {
    color: #dc3545;
}

.ly-form-group {
    margin-bottom: 12px;
}

.ly-form-group input,
.ly-form-group textarea {
    width: 100%;
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 14px;
    outline: none;
    background: #fafafa;
    transition: 0.3s;
}

/* focus */
.ly-form-group input:focus,
.ly-form-group textarea:focus {
    border-color: #dc3545;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}

.ly-enquiry-btn {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #dc3545, #ff5c5c);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

.ly-enquiry-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(220, 53, 69, 0.25);
}

/* SECTION */
.ly-related-section {
    padding: 40px 0;
}

/* TAG */
.ly-related-tag {
    display: inline-block;
    background: #fff1f1;
    color: #dc3545;
    padding: 7px 16px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 10px;
}

/* TITLE */
.ly-related-title {
    font-size: 32px;
    font-weight: 700;
    margin: 0;
    color: #222;
}

/* NAV BUTTONS */
.ly-related-nav {
    display: flex;
    gap: 10px;
}

.ly-related-nav button {
    width: 42px;
    height: 42px;
    border: none;
    border-radius: 50%;
    background: #dc3545;
    color: #fff;
    transition: 0.3s;
}

.ly-related-nav button:hover {
    background: #b91d2b;
}

/* CARD */
.ly-related-card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid #f1f1f1;
    transition: 0.3s;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.05);
}

.ly-related-card:hover {
    transform: translateY(-5px);
}

/* IMAGE */
.ly-related-img {
    overflow: hidden;
}

.ly-related-img img {
    width: 100%;

    object-fit: cover;
    transition: 0.4s;
}

.ly-related-card:hover img {
    transform: scale(1.08);
}

/* CONTENT */
.ly-related-content {
    padding: 20px;
}

.ly-related-badge {
    display: inline-block;
    background: #fff3f3;
    color: #dc3545;
    padding: 6px 14px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 12px;
}

.ly-related-content h3 {
    font-size: 22px;
    margin-bottom: 15px;
    color: #222;
}

/* META */
.ly-related-meta {
    display: flex;
    justify-content: space-between;
    margin-bottom: 18px;
    font-size: 14px;
    color: #555;
}

.ly-related-meta i {
    color: #dc3545;
    margin-right: 5px;
}

/* BOTTOM */
.ly-related-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ly-related-bottom small {
    color: #777;
}

.ly-related-bottom h4 {
    margin: 0;
    color: #dc3545;
    font-size: 24px;
    font-weight: 700;
}

/* BUTTON */
.ly-related-btn {
    background: linear-gradient(135deg, #dc3545, #ff5c5c);
    color: #fff;
    padding: 10px 18px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: 0.3s;
}

.ly-related-btn:hover {
    background: #b91d2b;
    color: #fff;
}

.dtx-contact-wrapper {
    width: 100%;
    padding: 70px 70px;
    position: relative;
}

.dtx-contact-wrapper::before {
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #efcfc9;
    position: absolute;
    left: 55px;
    top: 45px;
}

.dtx-contact-container {
    max-width: 1180px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 60px;
    align-items: flex-start;
}

/* LEFT SIDE */

.dtx-contact-left {
    padding-top: 30px;
}

.dtx-contact-title {
    font-size: 34px;
    line-height: 1.25;
    font-weight: 800;
    color: #07152f;
    margin-bottom: 18px;
}

.dtx-contact-subtitle {
    font-size: 18px;
    font-weight: 700;
    color: #07152f;
    margin-bottom: 14px;
}

.dtx-contact-description {
    font-size: 15px;
    line-height: 1.8;
    color: #5f6978;
    max-width: 700px;
    margin-bottom: 35px;
}

/* INFO */

.dtx-contact-info {
    border-top: 1px solid #dde3ea;
    padding: 22px 0;
    display: flex;
    align-items: center;
    gap: 16px;
}

.dtx-contact-icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #edf1f5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ec3237;
    font-size: 15px;
}

.dtx-contact-info small {
    display: block;
    font-size: 13px;
    color: #697487;
    margin-bottom: 4px;
}

.dtx-contact-info strong {
    font-size: 17px;
    color: #1f3150;
    font-weight: 700;
}

/* FORM */

.dtx-contact-form {
    background: #fff;
    border: 1px solid #dbe2e9;
    border-radius: 10px;
    padding: 30px;
}

.dtx-form-title {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 10px;
    color: #07152f;
}

.dtx-form-text {
    font-size: 14px;
    color: #5f6978;
    margin-bottom: 24px;
}

.dtx-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.dtx-input-group {
    margin-bottom: 16px;
}

.dtx-input-group label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #20324d;
    margin-bottom: 7px;
}

.dtx-input-group label span {
    color: #f44336;
}

.dtx-input-group input,
.dtx-input-group textarea {
    width: 100%;
    border: 1px solid #d8dee7;
    border-radius: 4px;
    padding: 5px 13px;
    font-size: 14px;
    outline: none;
    transition: 0.3s;
}

.dtx-input-group input:focus,
.dtx-input-group textarea:focus {
    border-color: #e4553d;
}

.dtx-input-group textarea {
    height: 80px;
    resize: none;
}

.dtx-submit-btn {
    border: none;
    background: #ec3237;
    color: #fff;
    padding: 13px 24px;
    border-radius: 40px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
}

.dtx-submit-btn:hover {
    opacity: 0.92;
    transform: translateY(-2px);
}

/* RESPONSIVE */

@media(max-width:991px) {

    .dtx-contact-wrapper {
        padding: 60px 20px;
    }

    .dtx-contact-container {
        grid-template-columns: 1fr;
    }
}

@media(max-width:600px) {

    .dtx-form-row {
        grid-template-columns: 1fr;
    }

    .dtx-contact-title {
        font-size: 28px;
    }

    .dtx-form-title {
        font-size: 28px;
    }

    .dtx-contact-info strong {
        font-size: 15px;
    }
}

.dtx-contact-info strong a {
    text-decoration: none;
    color: #1f3150;
}


.cln-office-wrapper {

    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

/* CARD */

.cln-office-card {
    background: #fff;
    border-radius: 14px;
    padding: 28px 30px;
    border: 1px solid #eeeeee;
    transition: 0.3s ease;
}

.cln-office-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

/* TOP */

.cln-office-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
}

/* ICON */

.cln-office-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff1f1;
    color: #d62828;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

/* TITLE */

.cln-office-title {
    font-size: 21px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 3px;
}



/* ADDRESS */

/* .cln-office-address{
    
    position:relative;
}

.cln-office-address::before{
    content:"";
    position:absolute;
    left:25px;
    top:2px;
    width:1px;
    height:100%;
    background:#e5e7eb;
} */

/* LOCATION */

.cln-location-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.cln-location-row i {
    color: #d62828;
    font-size: 18px;
    margin-top: 5px;
}

/* TEXT */

.cln-location-row p {
    color: #4b5563;
    font-size: 17px;
    line-height: 1.8;
}

/* RESPONSIVE */

@media(max-width:768px) {

    .cln-office-wrapper {
        grid-template-columns: 1fr;
    }

    .cln-office-card {
        padding: 24px;
    }

    .cln-office-address {
        padding-left: 0;
    }

    .cln-office-address::before {
        display: none;
    }
}

.ultra-name h5 {
    font-size: 16px;
    margin-top: 15px;
    color: #d62828;
}


/* =========================
       GALLERY
    ========================= */

.dt-gallery-section {
    padding: 80px 0;
}

.dt-gallery-card {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    height: 260px;
    cursor: pointer;
}

.dt-gallery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s;
    display: block;
}

/* Overlay */

.dt-gallery-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    opacity: 0;
    transition: 0.4s;
}

/* Eye Button */

.dt-gallery-eye-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    width: 50px;
    height: 50px;
    border-radius: 5px;
    border: none;
    background: #f78e1e;
    color: white;
    font-size: 22px;
    z-index: 2;
    transition: 0.4s;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 25px rgba(255, 59, 48, .4);
}

.dt-gallery-card:hover img {
    transform: scale(1.08);
}

.dt-gallery-card:hover .dt-gallery-overlay {
    opacity: 1;
}

.dt-gallery-card:hover .dt-gallery-eye-btn {
    transform: translate(-50%, -50%) scale(1);
}

/* =========================
       LIGHTBOX
    ========================= */

.dt-lightbox {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.82);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
}

.dt-lightbox.active {
    display: flex;
}

/* Counter */

.dt-lightbox-counter {
    position: absolute;
    top: 18px;
    left: 20px;
    color: white;
    font-size: 15px;
    z-index: 20;
}

/* Close */

.dt-lightbox-close {
    position: absolute;
    top: 18px;
    right: 20px;
    color: white;
    font-size: 22px;
    cursor: pointer;
    z-index: 20;
}

/* Main Image */

.dt-lightbox-image {
    width: 420px;
    max-width: 90%;
    max-height: 80vh;
    object-fit: cover;
    border-radius: 4px;
    z-index: 10;
    position: relative;
}

/* Navigation Buttons */

.dt-lightbox-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border: none;
    background: rgba(255, 255, 255, 0.1);
    color: white;
    cursor: pointer;
    z-index: 20;
}

.dt-lightbox-prev {
    left: 5px;
}

.dt-lightbox-next {
    right: 5px;
}

.dt-lightbox-btn:hover {
    background: rgba(255, 255, 255, 0.2);
}

@media(max-width:768px) {

    .dt-gallery-card {
        height: 220px;
    }

    .dt-lightbox-image {
        width: 90%;
    }

}


.sidebar-wrapper {
    position: relative;
}

/* TOGGLE BUTTON */
.filter-toggle {
    display: none;
    background: #d62828;
    color: #fff;
    padding: 10px 14px;
    font-size: 15px;
    cursor: pointer;
    border-radius: 6px;
    margin-bottom: 20px;
}

/* MOBILE */
@media(max-width:768px) {

    .filter-toggle {
        display: block;
    }

    .sidebar {
        display: none;
        background: #fff;
        border: 1px solid #eee;
        padding: 15px;
    }

    .sidebar.active {
        display: block;
    }

    .package_inclusions span {
        width: 40px;
        height: 40px;
    }

    .package_inclusions {
        gap: 15px;
    }

    .package_inclusions div {
        font-size: 12px;
    }

    .package_content h3 {
        font-size: 20px;
        margin: 0px 0 12px;
    }
}


.sh-dest-card a {
    text-decoration: none;
    color: #191919;
}

.item a {
    text-decoration: none;
    color: #191919;
}

.duration-box {
    margin-bottom: 30px;
}

.duration-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

.duration-filter-list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.duration-btn {
    border: none;
    background: #f1f1f1;
    padding: 10px;
    display: block;
    width: 100%;
    border-radius: 10px;
    font-size: 15px;
    text-align: left;
    font-weight: 500;
    cursor: pointer;
    transition: 0.3s ease;
}

.duration-btn:hover {
    background: #d62828;
    color: #fff;
}

.duration-btn.active {
    background: #d62828;
    color: #fff;
}


.smh-student-tour-section {
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

.smh-student-tour-section::before {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    background: #ec3237;
    opacity: .05;
    border-radius: 50%;
    top: -120px;
    right: -100px;
}

.smh-student-tour-section::after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    background: #0b1b2b;
    opacity: .04;
    border-radius: 50%;
    bottom: -100px;
    left: -80px;
}

.smh-tour-content {
    position: relative;
    z-index: 2;
}

.smh-tour-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(236, 50, 55, 0.08);
    color: #ec3237;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 18px;
    border: 1px solid rgba(236, 50, 55, 0.15);
}

.smh-tour-title {
    color: #0b1b2b;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 20px;
}

.smh-tour-text {
    color: #555;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 16px;
}

.smh-feature-box {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 20px;
    padding: 20px;
    display: flex;
    gap: 15px;
    height: 100%;
    transition: .4s;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.04);
}

.smh-feature-box:hover {
    transform: translateY(-5px);
    border-color: #ec3237;
    box-shadow: 0 15px 35px rgba(236, 50, 55, 0.12);
}

.smh-feature-icon {
    min-width: 48px;
    height: 48px;
    border-radius: 14px;
    background: #ec3237;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 16px;
}

.smh-feature-box h6 {
    color: #0b1b2b;
    font-size: 16px;
    margin-bottom: 8px;
    font-weight: 700;
}

.smh-feature-box p {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
}

.smh-tour-card {
    background: #0b1b2b;
    border-radius: 30px;
    padding: 38px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
}

.smh-tour-card::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    background: #ec3237;
    border-radius: 50%;
    top: -90px;
    right: -90px;
    opacity: .12;
}

.smh-tour-card-top {
    position: relative;
    z-index: 2;
}

.smh-tour-card-top h3 {
    color: #fff;
    font-size: 30px;
    margin-bottom: 14px;
    font-weight: 700;
}

.smh-tour-card-top p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 28px;
}

.smh-tour-list {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    z-index: 2;
}

.smh-tour-list li {
    color: #fff;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.smh-tour-list li i {
    color: #ec3237;
    font-size: 16px;
}

.smh-tour-badge {
    margin-top: 28px;
    background: #ec3237;
    color: #fff;
    text-align: center;
    padding: 15px;
    border-radius: 16px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .4px;
    position: relative;
    z-index: 2;
}

@media(max-width:991px) {

    .smh-tour-title {
        font-size: 30px;
    }

    .smh-tour-card {
        padding: 28px;
    }

}


.smh-desert-section {
    background: #fff;
    position: relative;
    overflow: hidden;
}

.smh-desert-section::before {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    background: #ec3237;
    opacity: .04;
    border-radius: 50%;
    top: -120px;
    left: -120px;
}

.smh-desert-section::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    background: #0b1b2b;
    opacity: .04;
    border-radius: 50%;
    bottom: -120px;
    right: -120px;
}

.smh-desert-card {
    background: linear-gradient(135deg, #0b1b2b, #12283f);
    border-radius: 30px;
    padding: 40px;
    height: 100%;
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
}

.smh-desert-card::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    background: #ec3237;
    border-radius: 50%;
    top: -100px;
    right: -100px;
    opacity: .12;
}

.smh-desert-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 14px;
    margin-bottom: 22px;
    position: relative;
    z-index: 2;
}

.smh-desert-card h2 {
    color: #fff;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 18px;
    position: relative;
    z-index: 2;
}

.smh-desert-card p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
    line-height: 1.9;
    position: relative;
    z-index: 2;
}

.smh-desert-stats {
    display: flex;
    gap: 16px;
    margin-top: 30px;
    position: relative;
    z-index: 2;
}

.smh-stat-box {
    flex: 1;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 20px;
    border-radius: 18px;
    text-align: center;
}

.smh-stat-box h3 {
    color: #ec3237;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 6px;
}

.smh-stat-box span {
    color: #fff;
    font-size: 14px;
}

.smh-desert-content {
    position: relative;
    z-index: 2;
}

.smh-desert-tag {
    display: inline-block;
    background: rgba(236, 50, 55, 0.08);
    color: #ec3237;
    border: 1px solid rgba(236, 50, 55, 0.15);
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 18px;
}

.smh-desert-title {
    color: #0b1b2b;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 18px;
}

.smh-desert-text {
    color: #555;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 18px;
}

.smh-desert-feature {
    display: flex;
    gap: 15px;
    padding: 20px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid #ececec;
    transition: .4s;
    height: 100%;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.04);
}

.smh-desert-feature:hover {
    transform: translateY(-5px);
    border-color: #ec3237;
    box-shadow: 0 15px 35px rgba(236, 50, 55, 0.12);
}

.smh-desert-icon {
    min-width: 48px;
    height: 48px;
    border-radius: 14px;
    background: #ec3237;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 16px;
}

.smh-desert-feature h6 {
    color: #0b1b2b;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 8px;
}

.smh-desert-feature p {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
}

@media(max-width:991px) {

    .smh-desert-card,
    .smh-desert-content {
        padding: 0;
    }

    .smh-desert-title {
        font-size: 30px;
    }

    .smh-desert-card {
        padding: 30px;
    }

}


.smh-transport-section {
    background: #fff;
    position: relative;
    overflow: hidden;
}

.smh-transport-section::before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: #ec3237;
    opacity: .04;
    border-radius: 50%;
    top: -120px;
    right: -100px;
}

.smh-transport-head {
    max-width: 760px;
    margin: auto;
    position: relative;
    z-index: 2;
}

.smh-transport-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(236, 50, 55, 0.08);
    color: #ec3237;
    border: 1px solid rgba(236, 50, 55, 0.15);
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 18px;
}

.smh-transport-head h2 {
    color: #0b1b2b;
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 18px;
}

.smh-transport-head p {
    color: #666;
    font-size: 14px;
    line-height: 1.9;
}

.smh-transport-left {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.smh-transport-box {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 22px;
    padding: 24px;
    transition: .4s;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.04);
}

.smh-transport-box:hover,
.smh-transport-box.active {
    transform: translateX(8px);
    border-color: #ec3237;
    box-shadow: 0 15px 35px rgba(236, 50, 55, 0.10);
}

.smh-transport-icon {
    min-width: 52px;
    height: 52px;
    border-radius: 16px;
    background: #ec3237;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
}

.smh-transport-box h5 {
    color: #0b1b2b;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
}

.smh-transport-box p {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
}

.smh-transport-right {
    background: #0b1b2b;
    border-radius: 30px;
    padding: 40px;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.smh-transport-right::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    background: #ec3237;
    border-radius: 50%;
    top: -100px;
    right: -100px;
    opacity: .10;
}

.smh-transport-top {
    position: relative;
    z-index: 2;
}

.smh-transport-top h3 {
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 16px;
}

.smh-transport-top p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 28px;
}

.smh-service-feature {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 18px;
    color: #fff;
    font-size: 14px;
    transition: .4s;
    position: relative;
    z-index: 2;
}

.smh-service-feature:hover {
    background: #ec3237;
    transform: translateY(-4px);
}

.smh-service-feature i {
    font-size: 16px;
}

.smh-vehicle-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 28px;
    overflow: hidden;
    transition: .4s;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    height: 100%;
}

.smh-vehicle-card:hover {
    transform: translateY(-8px);
    border-color: #ec3237;
    box-shadow: 0 18px 40px rgba(236, 50, 55, 0.12);
}

.smh-vehicle-img {
    background: #f7f7f7;
    padding: 25px;
    text-align: center;
}

.smh-vehicle-img img {
    width: 100%;

    transition: .4s;
}

.smh-vehicle-card:hover .smh-vehicle-img img {
    transform: scale(1.05);
}

.smh-vehicle-content {
    padding: 25px;
}

.smh-vehicle-content h4 {
    color: #0b1b2b;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px;
}

.smh-vehicle-content p {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 18px;
}

/* .smh-vehicle-content ul{
    padding:0;
    margin:0;
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    gap:15px;
}

.smh-vehicle-content ul li{
    color:#0b1b2b;
    font-size:13px;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:8px;
}

.smh-vehicle-content ul li i{
    color:#ec3237;
} */

@media(max-width:991px) {

    .smh-transport-head h2 {
        font-size: 32px;
    }

    .smh-transport-right {
        padding: 30px;
    }

}

.mla-package-section {
    padding: 80px 0;
    background: #fff;
}

.mla-package-header {
    text-align: center;
    margin-bottom: 0;
}

.mla-package-header h2 {
    background: #dc3545;
    color: #fff;
    margin: 0;
    padding: 10px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 1px;
}

.mla-package-header p {
    background: #0b1b2b;
    color: #fff;
    margin: 0;
    padding: 10px;
    font-size: 18px;
}

.mla-table-wrapper {
    overflow-x: auto;
}

.mla-package-table {
    width: 100%;
    min-width: 900px;
    border-collapse: collapse;
    background: #fff;
}

.mla-package-table th {
    background: #dc3545;
    color: #fff;
    padding: 10px 10px;
    text-align: center;
    font-size: 16px;
    border: 1px solid #ddd;
}

.mla-package-table td {
    padding: 8px 8px;
    text-align: center;
    border: 1px solid #ddd;
    color: #0b1b2b;
    font-size: 15px;
}

.mla-package-table tbody tr:nth-child(even) {
    background: #f8f8f8;
}

.mla-package-table tbody tr:hover {
    background: #fff4f5;
}

@media(max-width:767px) {

    .mla-package-section {
        padding: 50px 0;
    }

    .mla-package-header h2 {
        font-size: 24px;
        padding: 14px;
    }

    .mla-package-header p {
        font-size: 14px;
        padding: 10px;
    }

    .mla-package-table td,
    .mla-package-table th {
        font-size: 13px;
        padding: 10px 8px;
    }
}


.vehicle-features {
    padding-left: 20px;
    margin-bottom: 15px;
}

.vehicle-features li {
    color: #333;
    margin-bottom: 6px;
}

.vehicle-features li::marker {
    color: #b30000;
}


.smh-vehicle-buttons {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.btn-call,
.btn-whatsapp {
    width: 48px;
    height: 48px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #fff;
    font-size: 18px;
    transition: 0.3s;
}

.btn-call {
    background: #0e4378;
}

.btn-whatsapp {
    background: #25D366;
}

.btn-book {
    flex: 1;
    height: 48px;
    background: #ec3237;
    color: #fff;
    text-decoration: none;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    transition: 0.3s;
}

.btn-call:hover,
.btn-whatsapp:hover,
.btn-book:hover {
    transform: translateY(-2px);
    color: #fff;
}


/* Floating Contact Buttons */
.smh-floating-contact {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.smh-float-call,
.smh-float-whatsapp {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #fff;
    font-size: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, .2);
    transition: all .3s ease;
}

.smh-float-call {
    background: #e53935;
}

.smh-float-whatsapp {
    background: #25D366;
}

.smh-float-call:hover,
.smh-float-whatsapp:hover {
    transform: translateY(-4px) scale(1.05);
    color: #fff;
}

/* Pulse Animation */
.smh-float-call::before,
.smh-float-whatsapp::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    z-index: -1;
}

@media(max-width:767px) {
    .smh-floating-contact {
        right: 15px;
        bottom: 15px;
    }

    .smh-float-call,
    .smh-float-whatsapp {
        width: 52px;
        height: 52px;
        font-size: 22px;
    }
}




/* terms conditions css   */


.uih-terms-banner {
    padding: 90px 0;
    background: linear-gradient(135deg, #0b1b2b, #142b44);
    color: #fff;
}

.uih-terms-badge {
    display: inline-block;
    padding: 8px 22px;
    background: #e53935;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px;
}

.uih-terms-banner h1 {
    font-size: 52px;
    font-weight: 700;
    margin-bottom: 18px;
}

.uih-terms-banner p {
    font-size: 18px;
    opacity: .9;
}

.uih-terms-section {
    padding: 60px 0;
}



.uih-terms-item {
    margin-bottom: 20px;
}




.uih-terms-item h3 {
    font-size: 20px;
    color: #0b1b2b;
    font-weight: 600;
    margin-bottom: 12px;
}

.uih-terms-item p {
    margin: 0;
    font-size: 15px;
    color: #242424;
}

@media(max-width:991px) {

    .uih-terms-banner {
        padding: 70px 0;
    }

    .uih-terms-banner h1 {
        font-size: 38px;
    }


}

@media(max-width:767px) {

    .uih-terms-item {
        display: block;
    }

    .uih-terms-number {
        margin: 0 auto 20px;
    }

    .uih-terms-banner h1 {
        font-size: 30px;
    }

    .uih-terms-banner p {
        font-size: 16px;
    }

    .uih-terms-item h3 {
        font-size: 22px;
    }

    .tc-heading h1 {
        font-size: 30px !important;
    }

}

.tc-heading h1 {
    font-weight: 700;
    margin-bottom: 40px;
    color: #e53935;
    font-size: 40px;
}


.vistaHeroNewX {
    min-height: 700px;   
    max-height: 900px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: #101820;
}

/* ========================================= BACKGROUND ========================================= */
.vistaHeroBgNewX {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.vistaHeroBgNewX img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
    animation: vistaHeroZoomNewX 14s ease-in-out infinite alternate;
}

@keyframes vistaHeroZoomNewX {
    from {
        transform: scale(1.03);
    }

    to {
        transform: scale(1.10);
    }
}

/* ========================================= DARK OVERLAY ========================================= */
.vistaHeroOverlayNewX {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(8, 15, 12, .94) 0%, rgba(8, 15, 12, .58) 38%, rgba(8, 15, 12, .30) 70%, rgba(8, 15, 12, .18) 100%);
    z-index: 1;
}

/* Bottom dark fade */
.vistaHeroNewX::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 150px;
    background: linear-gradient(transparent, rgba(8, 15, 12, .75));
    z-index: 1;
    pointer-events: none;
}

/* ========================================= LOCATION ========================================= */
.vistaHeroLocationNewX {
    position: absolute;
    top: 105px;
    right: 6%;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .82);
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 9px 15px;
    background: rgba(0, 0, 0, .24);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 100px;
    backdrop-filter: blur(8px);
}

.vistaHeroLocationNewX i {
    color: #e07a2c;
}

/* ========================================= ROW ========================================= */
.vistaHeroRowNewX {
    position: relative;
    z-index: 3;
    padding-top: 60px;
}

/* ========================================= CONTENT ========================================= */
.vistaHeroContentNewX {
    max-width: 690px;
}

.vistaHeroEyebrowNewX {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #e07a2c;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .18em;
    margin-bottom: 20px;
}

.vistaHeroEyebrowNewX span {
    width: 35px;
    height: 1px;
    background: #e07a2c;
    display: inline-block;
}

/* ========================================= TITLE ========================================= */
.vistaHeroTitleNewX {
    color: #fff;
    font-size: clamp(45px, 5.6vw, 76px);
    line-height: .98;
    font-weight: 500;
    letter-spacing: -.035em;
    margin: 0 0 24px;
}

.vistaHeroTitleNewX strong {
    display: block;
    color: #e07a2c;
    font-weight: 500;
    font-style: normal;
}

/* ========================================= DESCRIPTION ========================================= */
.vistaHeroTextNewX {
    max-width: 560px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 30px;
}

/* ========================================= BUTTONS ========================================= */
.vistaHeroButtonsNewX {
    display: flex;
    align-items: center;
    gap: 13px;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.vistaHeroBtnNewX {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    padding: 14px 22px;
    background: #e07a2c;
    color: #fff;
    border-radius: 5px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    transition: .3s;
}

.vistaHeroBtnNewX i {
    font-size: 11px;
    transition: .3s;
}

.vistaHeroBtnNewX:hover {
    background: #f18b3a;
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(224, 122, 44, .3);
}

.vistaHeroBtnNewX:hover i {
    transform: translateX(4px);
}

.vistaHeroOutlineNewX {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 22px;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 5px;
    text-decoration: none;
    font-size: 13px;
    transition: .3s;
}

.vistaHeroOutlineNewX:hover {
    background: #fff;
    color: #111;
    border-color: #fff;
    transform: translateY(-3px);
}

/* ========================================= TRUST ========================================= */
.vistaHeroTrustNewX {
    display: flex;
    align-items: center;
    gap: 13px;
}

.vistaTrustAvatarsNewX {
    display: flex;
    padding-left: 8px;
}

.vistaTrustAvatarsNewX span {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -8px;
    border: 2px solid rgba(255, 255, 255, .8);
    background: #3c5140;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
}

.vistaTrustAvatarsNewX span:nth-child(2) {
    background: #886c4d;
}

.vistaTrustAvatarsNewX span:nth-child(3) {
    background: #66533e;
}

.vistaTrustAvatarsNewX span:last-child {
    background: #e07a2c;
}

.vistaHeroTrustNewX strong {
    display: block;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 2px;
}

.vistaHeroTrustNewX small {
    color: rgba(255, 255, 255, .55);
    font-size: 10px;
}

/* ========================================= SAFARI CARD ========================================= */
.vistaSafariCardNewX {
    width: 100%;
    max-width: 390px;
    margin-left: auto;
    background: rgba(255, 255, 255, .96);
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 25px 70px rgba(0, 0, 0, .30);
    transform: rotate(1deg);
    transition: .4s;
}

.vistaSafariCardNewX:hover {
    transform: rotate(0deg) translateY(-7px);
    box-shadow: 0 30px 80px rgba(0, 0, 0, .38);
}

/* ========================================= CARD IMAGE ========================================= */
.vistaCardImageNewX {
    height: 205px;
    position: relative;
    overflow: hidden;
}

.vistaCardImageNewX img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
}

.vistaSafariCardNewX:hover .vistaCardImageNewX img {
    transform: scale(1.07);
}

.vistaCardImageNewX::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(transparent 45%, rgba(0, 0, 0, .55));
}

.vistaCardImageNewX span {
    position: absolute;
    bottom: 13px;
    left: 15px;
    z-index: 2;
    color: #fff;
    font-size: 10px;
    padding: 6px 10px;
    background: rgba(0, 0, 0, .38);
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 30px;
    backdrop-filter: blur(6px);
}

.vistaCardImageNewX span i {
    color: #e7b65a;
    margin-right: 5px;
}

/* ========================================= CARD BODY ========================================= */
.vistaCardBodyNewX {
    padding: 22px;
}

.vistaCardTopNewX {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 9px;
}

.vistaCardTopNewX small {
    color: #e07a2c;
    font-size: 9px;
    letter-spacing: .15em;
    font-weight: 700;
}

.vistaCardTopNewX h3 {
    margin: 4px 0 0;
    color: #182019;
    font-size: 21px;
    font-weight: 600;
}

.vistaCardRatingNewX {
    background: #f5ead7;
    color: #8c6425;
    padding: 6px 9px;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.vistaCardRatingNewX i {
    color: #d99b35;
    font-size: 9px;
    margin-right: 3px;
}

.vistaCardBodyNewX>p {
    color: #6d716e;
    font-size: 12px;
    line-height: 1.7;
    margin-bottom: 18px;
}

/* ========================================= FEATURES ========================================= */
.vistaCardFeaturesNewX {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid #ecebe7;
    border-bottom: 1px solid #ecebe7;
    padding: 14px 0;
    margin-bottom: 17px;
}

.vistaCardFeaturesNewX div {
    text-align: center;
    border-right: 1px solid #ecebe7;
}

.vistaCardFeaturesNewX div:last-child {
    border-right: 0;
}

.vistaCardFeaturesNewX i {
    display: block;
    color: #e07a2c;
    font-size: 14px;
    margin-bottom: 5px;
}

.vistaCardFeaturesNewX span {
    display: block;
    color: #737774;
    font-size: 9px;
}

/* ========================================= CARD LINK ========================================= */
.vistaCardLinkNewX {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #182019;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
}

.vistaCardLinkNewX i {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #182019;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    transition: .3s;
}

.vistaCardLinkNewX:hover {
    color: #e07a2c;
}

.vistaCardLinkNewX:hover i {
    background: #e07a2c;
    transform: translateX(3px);
}

/* ========================================= SCROLL ========================================= */
.vistaHeroScrollNewX {
    position: absolute;
    bottom: 22px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .55);
    font-size: 8px;
    letter-spacing: .2em;
}

.vistaHeroScrollNewX i {
    color: #e07a2c;
    font-size: 10px;
    animation: vistaScrollNewX 1.5s infinite;
}

@keyframes vistaScrollNewX {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }
}

/* ========================================= TABLET ========================================= */
@media(max-width: 991px) {
    .vistaHeroNewX {
       
        height: auto;
        padding: 120px 0 80px;
    }

    .vistaHeroLocationNewX {
        top: 85px;
        right: 20px;
    }

    .vistaHeroRowNewX {
        padding-top: 20px;
    }

    .vistaHeroContentNewX {
        margin-bottom: 55px;
        max-width: 650px;
    }

    .vistaSafariCardNewX {
        margin: auto;
    }
}

/* ========================================= MOBILE ========================================= */
@media(max-width: 767px) {
    .vistaHeroNewX {
        min-height: auto;
        padding: 115px 0 65px;
    }

    .vistaHeroOverlayNewX {
        background: linear-gradient(180deg, rgba(8, 15, 12, .88) 0%, rgba(8, 15, 12, .78) 55%, rgba(8, 15, 12, .93) 100%);
    }

    .vistaHeroLocationNewX {
        top: 78px;
        left: 15px;
        right: auto;
        font-size: 8px;
        padding: 7px 10px;
    }

    .vistaHeroTitleNewX {
        font-size: 42px;
        line-height: 1.32;
        margin-bottom: 20px;
    }

    .vistaHeroTextNewX {
        font-size: 13px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .vistaHeroButtonsNewX {
        gap: 9px;
        margin-bottom: 30px;
    }

    .vistaHeroBtnNewX,
    .vistaHeroOutlineNewX {
        padding: 12px 17px;
        font-size: 11px;
    }

    .vistaHeroTrustNewX {
        margin-bottom: 35px;
    }

    .vistaSafariCardNewX {
        max-width: 100%;
        transform: none;
    }

    .vistaSafariCardNewX:hover {
        transform: translateY(-4px);
    }

    .vistaCardImageNewX {
        height: 180px;
    }

    .vistaCardBodyNewX {
        padding: 18px;
    }

    .vistaCardTopNewX h3 {
        font-size: 18px;
    }

    .vistaCardBodyNewX>p {
        font-size: 11px;
    }

    .vistaHeroScrollNewX {
        display: none;
    }
}

/* ========================================= SMALL MOBILE ========================================= */
@media(max-width: 400px) {
    .vistaHeroTitleNewX {
        font-size: 30px;
    }

    .vistaHeroBtnNewX,
    .vistaHeroOutlineNewX {
        width: 100%;
    }

    .vistaHeroButtonsNewX {
        flex-direction: column;
        align-items: stretch;
    }
}

/* =========================================
   ABOUT IMAGE
========================================= */

.smh-about-image-wrap {
    position: relative;
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    padding: 15px 15px 25px 25px;

}

@media screen and (max-width:992px) {

    .smh-about-image-wrap {
        margin-top: 40px;
    }

}


/* Image */

.smh-about-image {
    position: relative;
    width: 100%;
    height: 390px;
    overflow: hidden;
    border-radius: 5px;
    background: #eee;
}


.smh-about-image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;

    background: linear-gradient(180deg,
            rgba(11, 27, 43, 0) 45%,
            rgba(11, 27, 43, .35));
}


.smh-about-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s ease;
}


.smh-about-image-wrap:hover .smh-about-image img {
    transform: scale(1.06);
}


/* Decorative Border */

.smh-about-image-wrap::before {
    content: "";
    position: absolute;

    top: 0;
    left: 0;

    width: 85%;
    height: 85%;

    border: 2px solid #f78e1e;

    z-index: 0;
}


/* Experience Badge */

.smh-image-experience {
    position: absolute;

    right: 0;
    bottom: 5px;

    z-index: 4;

    display: flex;
    align-items: center;
    gap: 10px;

    background: #0b1b2b;
    color: #fff;

    padding: 14px 18px;

    border-radius: 4px;

    box-shadow: 0 12px 30px rgba(11, 27, 43, .2);
}


.smh-image-experience strong {
    color: #f78e1e;

    font-size: 30px;
    line-height: 1;
    font-weight: 800;
}


.smh-image-experience span {
    font-size: 9px;
    line-height: 1.4;

    text-transform: uppercase;
    letter-spacing: .7px;
    font-weight: 600;
}


/* Location Badge */

.smh-image-location {
    position: absolute;

    left: 0;
    bottom: 48px;

    z-index: 4;

    display: flex;
    align-items: center;
    gap: 7px;

    padding: 9px 13px;

    background: #fff;

    color: #0b1b2b;

    border-radius: 3px;

    box-shadow: 0 8px 22px rgba(11, 27, 43, .12);

    font-size: 10px;
    font-weight: 600;
}


.smh-image-location i {
    color: #e53935;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:575px) {

    .smh-about-image-wrap {
        max-width: 330px;
        padding: 10px 10px 20px 18px;
        margin-top: 35px;
    }

    .smh-about-image {
        height: 300px;
    }

    .smh-about-image-wrap::before {
        width: 85%;
        height: 85%;
    }

    .smh-image-experience {
        right: -2px;
        bottom: 0;
        padding: 10px 12px;
    }

    .smh-image-experience strong {
        font-size: 23px;
    }

    .smh-image-experience span {
        font-size: 7px;
    }

    .smh-image-location {
        left: 0;
        bottom: 38px;
        padding: 7px 10px;
        font-size: 8px;
    }

}

/* =========================================
   TOUR COLLAGE SECTION
========================================= */

.sht-collage-section {
    padding: 60px 0;
    background: #FBF6EC;
    overflow: hidden;
}


/* =========================================
   LEFT CONTENT
========================================= */

.sht-collage-intro {
    max-width: 390px;
}


.sht-collage-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: #f78e1e;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;

    margin-bottom: 16px;
}


.sht-collage-label i {
    font-size: 12px;
}


.sht-collage-intro h2 {
    color: #0b1b2b;

    font-size: 43px;

    line-height: 1.12;

    font-weight: 500;

    margin: 0 0 18px;
}


.sht-collage-intro h2 span {
    color: #f78e1e;
    display: block;
    font-weight: 700;
}


.sht-collage-intro p {
    color: #68717a;

    font-size: 13px;

    line-height: 1.8;

    margin: 0 0 28px;
}


.sht-collage-btn {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 12px 20px;

    background: #0b1b2b;

    color: #fff;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    border-radius: 4px;

    transition: .3s ease;
}


.sht-collage-btn i {
    transition: .3s ease;
}


.sht-collage-btn:hover {
    background: #f78e1e;
    color: #fff;
}


.sht-collage-btn:hover i {
    transform: translateX(4px);
}


/* =========================================
   COLLAGE GRID
========================================= */

.sht-collage-grid {
    display: grid;

    grid-template-columns:
        1.25fr .75fr .75fr;

    grid-template-rows:
        190px 190px;

    gap: 12px;

    height: 392px;

    position: relative;
}


/* =========================================
   COMMON IMAGE BOX
========================================= */

.sht-collage-box {
    position: relative;

    overflow: hidden;

    border-radius: 7px;

    background: #ddd;
}


.sht-collage-box img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform .7s ease;
}


.sht-collage-box:hover img {
    transform: scale(1.08);
}


/* =========================================
   GRID POSITIONS
========================================= */

.sht-collage-big {
    grid-column: 1;
    grid-row: 1 / 3;
}


.sht-collage-top {
    grid-column: 2;
    grid-row: 1;
}


.sht-collage-middle {
    grid-column: 3;
    grid-row: 1;
}


.sht-collage-bottom {
    grid-column: 2;
    grid-row: 2;
}


.sht-collage-small {
    grid-column: 3;
    grid-row: 2;
}


/* =========================================
   OVERLAY
========================================= */

.sht-collage-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(to top,
            rgba(5, 15, 25, .82),
            rgba(5, 15, 25, .03) 70%);

    transition: .4s ease;
}


.sht-collage-box:hover .sht-collage-overlay {
    background: linear-gradient(to top, rgb(0 0 0 / 78%), rgba(5, 15, 25, .05) 75%);
}


/* =========================================
   BIG CARD CONTENT
========================================= */

.sht-collage-info {
    position: absolute;

    left: 22px;
    right: 20px;
    bottom: 20px;

    z-index: 2;
}


.sht-collage-info small {
    color: #ffaaa6;

    font-size: 8px;

    letter-spacing: 1.5px;

    font-weight: 700;
}


.sht-collage-info h3 {
    color: #fff;

    font-size: 27px;

    margin: 6px 0 10px;

    font-weight: 700;
}


.sht-collage-info a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #fff;

    text-decoration: none;

    font-size: 10px;

    font-weight: 600;
}


.sht-collage-info a i {
    transition: .3s ease;
}


.sht-collage-info a:hover i {
    transform: translateX(5px);
}


/* =========================================
   SMALL CARDS
========================================= */

.sht-collage-mini-info {
    position: absolute;

    left: 15px;
    right: 12px;
    bottom: 14px;

    z-index: 2;
}


.sht-collage-mini-info span {
    display: block;

    color: #ffaaa6;

    font-size: 8px;

    font-weight: 700;

    margin-bottom: 3px;
}


.sht-collage-mini-info h4 {
    color: #fff;

    font-size: 15px;

    margin: 0;

    font-weight: 600;
}


/* =========================================
   DESKTOP DECORATION
========================================= */

.sht-collage-grid::after {
    content: "";

    position: absolute;

    width: 45px;
    height: 45px;

    border: 1px solid #e53935;

    right: -18px;
    bottom: -18px;

    z-index: -1;
}


/* =========================================
   TABLET
========================================= */

@media(max-width:991px) {

    .sht-collage-section {
        padding: 60px 0;
    }

    .sht-collage-intro {
        max-width: 600px;
    }

    .sht-collage-intro h2 {
        font-size: 38px;
    }

    .sht-collage-grid {
        height: 420px;

        grid-template-rows:
            204px 204px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:575px) {

    .sht-collage-section {
        padding: 55px 0;
    }

    .sht-collage-intro {
        margin-bottom: 30px;
    }

    .sht-collage-label {
        font-size: 8px;
        letter-spacing: 1.5px;
    }

    .sht-collage-intro h2 {
        font-size: 31px;
    }

    .sht-collage-intro p {
        font-size: 12px;
    }

    .sht-collage-grid {
        height: 520px;

        grid-template-columns: 1fr 1fr;

        grid-template-rows:
            250px 125px 125px;

        gap: 8px;
    }


    /* BIG */
    .sht-collage-big {
        grid-column: 1 / 3;
        grid-row: 1;
    }


    /* SMALL */
    .sht-collage-top {
        grid-column: 1;
        grid-row: 2;
    }

    .sht-collage-middle {
        grid-column: 2;
        grid-row: 2;
    }

    .sht-collage-bottom {
        grid-column: 1;
        grid-row: 3;
    }

    .sht-collage-small {
        grid-column: 2;
        grid-row: 3;
    }


    .sht-collage-info h3 {
        font-size: 23px;
    }

    .sht-collage-mini-info h4 {
        font-size: 13px;
    }

}

/* =========================================
   FULL HERO BACKGROUND SLIDER
========================================= */

.vistaHeroBgNewX {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}


/* Owl full height */

.vistaBgSliderNewX,
.vistaBgSliderNewX .owl-stage-outer,
.vistaBgSliderNewX .owl-stage,
.vistaBgSliderNewX .owl-item {
    width: 100%;
    height: 100%;
}


/* Individual slide */

.vistaBgSlideNewX {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}


/* Image */

.vistaBgSlideNewX img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transform: scale(1.05);

    animation: vistaBgZoomNewX 6s ease forwards;
}


/* Slow cinematic zoom */

@keyframes vistaBgZoomNewX {

    from {
        transform: scale(1.05);
    }

    to {
        transform: scale(1.12);
    }

}


/* =========================================
   BACKGROUND DARK OVERLAY
========================================= */

.vistaHeroOverlayNewX {
    position: absolute;
    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(8, 15, 12, .94) 0%,
            rgba(8, 15, 12, .78) 35%,
            rgba(8, 15, 12, .42) 68%,
            rgba(8, 15, 12, .60) 100%
        );

    pointer-events: none;
}


/* Bottom fade */

.vistaHeroNewX::after {

    content: "";

    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 160px;

    z-index: 2;

    background:
        linear-gradient(
            transparent,
            rgba(8,15,12,.8)
        );

    pointer-events: none;
}


/* =========================================
   BACKGROUND SLIDER DOTS
========================================= */

.vistaBgSliderNewX .owl-dots {

    position: absolute;

    right: 35px;
    bottom: 35px;

    z-index: 20;

    display: flex;

    gap: 7px;
}


.vistaBgSliderNewX .owl-dot span {

    width: 7px !important;
    height: 7px !important;

    margin: 0 !important;

    border-radius: 20px;

    background: rgba(255,255,255,.45) !important;

    transition: all .35s ease;
}


.vistaBgSliderNewX .owl-dot.active span {

    width: 28px !important;

    background: #e07a2c !important;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px) {

    .vistaBgSliderNewX .owl-dots {

        right: 18px;
        bottom: 20px;
    }

    .vistaHeroOverlayNewX {

        background:
            linear-gradient(
                180deg,
                rgba(8,15,12,.88) 0%,
                rgba(8,15,12,.72) 30%,
                rgba(8,15,12,.94) 100%
            );
    }

}

/* =========================================
   VERTICAL HERO SLIDER CONTROLS
========================================= */

.vistaBgControlsNewX {
    position: absolute;

    right: 35px;
    top: 50%;

    transform: translateY(-50%);

    z-index: 20;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 18px;
}


/* =========================================
   PREV / NEXT BUTTON
========================================= */

.vistaBgControlsNewX button {

    width: 38px;
    height: 38px;

    border-radius: 50%;

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

    color: #fff;

    background: rgba(0,0,0,.25);

    border: 1px solid rgba(255,255,255,.35);

    backdrop-filter: blur(8px);

    cursor: pointer;

    transition: all .3s ease;
}


.vistaBgControlsNewX button i {
    font-size: 10px;
}


.vistaBgControlsNewX button:hover {

    background: #e07a2c;

    border-color: #e07a2c;

    transform: scale(1.08);
}


/* =========================================
   VERTICAL DOTS
========================================= */

.vistaBgDotsNewX {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 7px;
}


/* Individual line */

.vistaBgDotNewX {

    width: 3px;
    height: 14px;

    border-radius: 20px;

    background: rgba(255,255,255,.38);

    cursor: pointer;

    transition:
        height .35s ease,
        background .35s ease;
}


/* Active */

.vistaBgDotNewX.active {

    height: 28px;

    background: #e07a2c;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:767px) {

    .vistaBgControlsNewX {

        right: 14px;

        gap: 12px;
    }


    .vistaBgControlsNewX button {

        width: 32px;
        height: 32px;
    }


    .vistaBgDotNewX {

        height: 14px;
    }


    .vistaBgDotNewX.active {

        height: 28px;
    }

}

/* =========================================
   PREMIUM NAV HOVER
========================================= */

.trv-menu li a {
    position: relative;
    display: inline-block;

    color: #222;
    text-decoration: none;

    padding: 8px 2px;

    transition: color .3s ease,
                transform .3s ease;
}


/* Underline */

.trv-menu li a::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 0;

    width: 0;
    height: 2px;

    background: #e07a2c;

    border-radius: 10px;

    transform: translateX(-50%);

    transition: width .35s ease;
}


/* Hover */

.trv-menu li a:hover {
    color: #e07a2c;

    transform: translateY(-2px);
}


.trv-menu li a:hover::after {
    width: 100%;
}

/* =====================================================
   TOUR PACKAGE SECTION
===================================================== */

.cvs-package-section {
    padding: 60px 0;
    background: #f5f6f2;
}


/* =====================================================
   MAIN CARD
===================================================== */

.cvs-package-card {
    display: flex;

    width: 100%;

    background: #fff;

    border: 1px solid #e4e5df;

    border-radius: 14px;

    overflow: hidden;

    box-shadow: 0 8px 25px rgba(16, 24, 32, .06);

    transition: all .35s ease;
}


.cvs-package-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 18px 40px rgba(16, 24, 32, .12);

    border-color: rgba(224, 122, 44, .35);
}


/* =====================================================
   IMAGE
===================================================== */

.cvs-package-image {
    position: relative;

    width: 40%;

    min-width: 40%;

    overflow: hidden;
}


.cvs-package-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform .6s ease;
}


.cvs-package-card:hover
.cvs-package-image img {
    transform: scale(1.07);
}


/* =====================================================
   DISCOUNT
===================================================== */

.cvs-discount-badge {
    position: absolute;

    top: 20px;
    left: 20px;

    padding: 8px 13px;

    background: var(--cvs-orange, #e07a2c);

    color: #fff;

    font-size: 12px;

    font-weight: 700;

    border-radius: 3px;

    letter-spacing: .02em;

    box-shadow: 0 5px 15px rgba(0,0,0,.15);
}


/* =====================================================
   CONTENT
===================================================== */

.cvs-package-content {
    width: 60%;

    padding: 15px 15px;

    display: flex;
    flex-direction: column;

    justify-content: center;
}


/* =====================================================
   META
===================================================== */

.cvs-package-meta {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 20px;

    margin-bottom: 14px;
}


.cvs-package-meta span {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: #20251f;

    font-size: 13px;

    font-weight: 500;
}


.cvs-package-meta i {
    color: var(--cvs-orange, #e07a2c);

    font-size: 14px;
}


/* =====================================================
   TITLE
===================================================== */

.cvs-package-title {
    color: #161b17;

    font-size: 18px;

    font-weight: 600;

    line-height: 1.25;

    margin: 0 0 10px;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.cvs-package-desc {
    color: #70756f;

    font-size: 13px;

    line-height: 1.65;

    margin: 0 0 20px;

    max-width: 390px;
}


/* =====================================================
   INCLUSIONS
===================================================== */

.cvs-package-inclusions {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 8px;

    padding: 16px 0;

    border-top: 1px solid #ecece7;

    border-bottom: 1px solid #ecece7;

    margin-bottom: 18px;
}


.cvs-inclusion-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;

    min-width: 0;
}


.cvs-inclusion-icon {
    width: 34px;
    height: 34px;

    min-width: 34px;

    border-radius: 50%;

    background: #f8eee5;

    color: var(--cvs-orange, #e07a2c);

    display: flex;

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

    transition: all .3s ease;
}


.cvs-inclusion-icon i {
    font-size: 13px;
}


.cvs-inclusion-item:hover
.cvs-inclusion-icon {
    background: var(--cvs-orange, #e07a2c);

    color: #fff;

    transform: translateY(-2px);
}


.cvs-inclusion-item strong {
    display: block;

    color: #252a25;

    font-size: 11px;

    font-weight: 700;

    line-height: 1.2;
}


.cvs-inclusion-item small {
    display: block;

    color: #858982;

    font-size: 10px;

    margin-top: 2px;

    white-space: nowrap;
}


/* =====================================================
   PRICE + DETAILS
===================================================== */

.cvs-package-bottom {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;
}


.cvs-package-price small {
    display: block;

    color: #858982;

    font-size: 10px;

    margin-bottom: 2px;
}


.cvs-package-price strong {
    color: var(--cvs-orange, #e07a2c);

    font-size: 22px;

    font-weight: 750;
}


.cvs-package-price del {
    color: #999;

    font-size: 12px;

    margin-left: 6px;
}


/* =====================================================
   VIEW DETAILS BUTTON
===================================================== */

.cvs-package-btn {
    display: inline-flex;

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

    gap: 12px;

    padding: 11px 17px;

    background: var(--cvs-orange, #e07a2c);

    color: #fff;

    text-decoration: none;

    border-radius: 6px;

    font-size: 12px;

    font-weight: 600;

    white-space: nowrap;

    transition: all .3s ease;
}


.cvs-package-btn i {
    font-size: 10px;

    transition: transform .3s ease;
}


.cvs-package-btn:hover {
    background: #c9621b;

    color: #fff;

    transform: translateY(-2px);
}


.cvs-package-btn:hover i {
    transform: translateX(4px);
}


/* =====================================================
   CALL + WHATSAPP
===================================================== */

.cvs-package-contact {
    display: flex;

    gap: 8px;

    margin-top: 15px;
}


.cvs-package-contact a {
    flex: 1;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    padding: 9px;

    border-radius: 5px;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    transition: all .3s ease;
}


.cvs-contact-call {
    color: #343a33;

    background: #f5f4ed;

    border: 1px solid #e8e6db;
}


.cvs-contact-whatsapp {
    color: #fff;

    background: #238b58;
}


.cvs-contact-call:hover {
    background: #ebe9dd;

    color: #222;
}


.cvs-contact-whatsapp:hover {
    background: #1c754a;

    color: #fff;

    transform: translateY(-2px);
}


.cvs-package-contact i {
    font-size: 13px;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:991px) {

    .cvs-package-content {
        padding: 16px;
    }

    .cvs-package-title {
        font-size: 19px;
    }

    .cvs-package-inclusions {
        grid-template-columns: repeat(4, 1fr);

        row-gap: 12px;
    }
    .cvs-package-inclusions{
        padding: 10px 0px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:575px) {

    .cvs-package-section {
        padding: 35px 0;
    }


    .cvs-package-card {
        display: block;

        min-height: auto;
    }


    .cvs-package-image {
        width: 100%;
        height: 250px;
    }


    .cvs-package-content {
        width: 100%;

        padding: 20px;
    }


    .cvs-package-meta {
        gap: 12px;
    }


    .cvs-package-title {
        font-size: 19px;
    }


    .cvs-package-inclusions {
        grid-template-columns: repeat(4, 1fr);
    }


    .cvs-package-bottom {
        align-items: flex-end;
    }


    .cvs-package-price strong {
        font-size: 20px;
    }


    .cvs-package-btn {
        padding: 10px 13px;
    }

}

@media (max-width: 567px) {
    .sh-international-image {
        height: 200px;
    }
    .sh-international-arrow{
        width: 30px;
        height: 30px;
    }
    .sh-international-info h4{
        font-size: 15px;
    }
}

/* =====================================================
   PREMIUM FAQ SECTION
===================================================== */

.cvsFaqSectionX {
    position: relative;

    padding: 60px 0;

    background: #fff;

    overflow: hidden;
}


/* Decorative circle */

.cvsFaqSectionX::before {

    content: "";

    position: absolute;

    width: 330px;
    height: 330px;

    left: -180px;
    bottom: -170px;

    border: 1px solid rgba(224,122,44,.16);

    border-radius: 50%;
}


/* =====================================================
   LEFT INTRO
===================================================== */

.cvsFaqIntroX {
    padding-right: 35px;
}


.cvsFaqEyebrowX {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #e07a2c;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: .13em;

    margin-bottom: 13px;
}


.cvsFaqEyebrowX i {
    font-size: 13px;
}


/* Heading */

.cvsFaqTitleX {

    max-width: 430px;

    color: #182019;

    font-size: clamp(30px, 4vw, 45px);

    font-weight: 500;

    line-height: 1.12;

    letter-spacing: -.025em;

    margin: 0 0 17px;
}


.cvsFaqTitleX span {

    color: #e07a2c;

    font-weight: 700;

    display: inline-block;
}


/* Description */

.cvsFaqTextX {

    max-width: 430px;

    color: #70756e;

    font-size: 13px;

    line-height: 1.8;

    margin: 0 0 28px;
}


/* =====================================================
   HELP BOX
===================================================== */

.cvsFaqHelpBoxX {

    max-width: 420px;

    display: flex;

    align-items: center;

    gap: 13px;

    padding: 13px 14px;

    background: #fff;

    border: 1px solid #e7e5dc;

    border-radius: 10px;

    box-shadow: 0 10px 30px rgba(25,30,25,.05);
}


.cvsFaqHelpIconX {

    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

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

    border-radius: 50%;

    color: #e07a2c;

    background: #f9eee5;
}


.cvsFaqHelpIconX i {
    font-size: 15px;
}


.cvsFaqHelpBoxX small {

    display: block;

    color: #8a8d87;

    font-size: 10px;

    margin-bottom: 3px;
}


.cvsFaqHelpBoxX strong {

    display: block;

    color: #20251f;

    font-size: 16px;

    font-weight: 650;
}


.cvsFaqHelpBtnX {

    width: 34px;
    height: 34px;

    margin-left: auto;

    display: flex;

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

    color: #fff;

    background: #e07a2c;

    border-radius: 50%;

    text-decoration: none;

    transition: .3s;
}


.cvsFaqHelpBtnX:hover {

    color: #fff;

    background: #c9611c;

    transform: translateX(3px);
}


.cvsFaqHelpBtnX i {
    font-size: 10px;
}


/* =====================================================
   FAQ ACCORDION
===================================================== */

.cvsFaqAccordionX {

    display: flex;

    flex-direction: column;

    gap: 10px;
}


/* Individual */

.cvsFaqItemX {

    background: #fff;

    border: 1px solid #e6e5df;

    border-radius: 9px;

    overflow: hidden;

    transition: .3s ease;
}


.cvsFaqItemX:hover {

    border-color: rgba(224,122,44,.35);

    box-shadow: 0 8px 25px rgba(25,30,25,.05);
}


/* Question button */

.cvsFaqButtonX {

    width: 100%;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    padding: 10px 15px;

    border: 0;

    background: transparent;

    color: #242923;

    text-align: left;

    font-size: 15px;

    font-weight: 650;

    line-height: 1.4;

    box-shadow: none;
}


.cvsFaqButtonX:hover {

    color: #e07a2c;
}


.cvsFaqButtonX:focus {

    outline: none;

    box-shadow: none;
}


/* Plus */

.cvsFaqButtonX i {

    width: 27px;
    height: 27px;

    min-width: 27px;

    display: flex;

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

    border-radius: 50%;

    color: #e07a2c;

    background: #f9eee5;

    font-size: 9px;

    transition: transform .35s ease,
                background .35s ease,
                color .35s ease;
}


/* Active icon */

.cvsFaqButtonX:not(.collapsed) i {

    transform: rotate(45deg);

    color: #fff;

    background: #e07a2c;
}


/* Answer */

.cvsFaqAnswerX {

    padding: 0 20px 18px;

    color: #777b75;

    font-size: 12px;

    line-height: 1.75;

    max-width: 700px;
}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:991px) {

    .cvsFaqIntroX {

        padding-right: 0;

        margin-bottom: 15px;
    }

}


@media(max-width:575px) {

    .cvsFaqSectionX {

        padding: 50px 0;
    }


    .cvsFaqTitleX {

        font-size: 30px;
    }


    .cvsFaqTextX {

        font-size: 12px;

        line-height: 1.7;
    }


    .cvsFaqButtonX {

        padding: 15px;

        font-size: 12px;
    }


    .cvsFaqAnswerX {

        padding: 0 15px 16px;

        font-size: 11px;
    }


    .cvsFaqHelpBoxX {

        padding: 11px;
    }

}

/* =========================================================
   MISSION & VISION
========================================================= */

.cvs-mv-section {
    position: relative;
    padding: 60px 0;
    background: #f7f5ef;
    overflow: hidden;
}


/* Background Decorations */

.cvs-mv-bg-circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.cvs-mv-circle-one {
    width: 420px;
    height: 420px;
    top: -220px;
    right: -120px;
    border: 1px solid rgba(224, 122, 44, .13);
}

.cvs-mv-circle-two {
    width: 300px;
    height: 300px;
    bottom: -170px;
    left: -120px;
    background: rgba(217, 164, 65, .06);
}


/* Heading */

.cvs-mv-heading {
    position: relative;
    z-index: 2;
    max-width: 720px;
    margin: 0 auto 50px;
}

.cvs-mv-eyebrow {
    display: inline-block;
    margin-bottom: 11px;
    color: #e07a2c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .2em;
}

.cvs-mv-heading h2 {
    margin: 0 0 13px;
    color: #20201d;
    font-size: clamp(32px, 4vw, 40px);
    line-height: 1.12;
    font-weight: 500;
    letter-spacing: -.025em;
}

.cvs-mv-heading h2 span {
    color: #f78e1e;
    font-weight: 700;
}

.cvs-mv-heading p {
    max-width: 590px;
    margin: auto;
    color: #77736b;
    font-size: 14px;
    line-height: 1.75;
}


/* Main Card */

.cvs-mv-card {
    position: relative;
    height: 100%;
    padding: 25px;
    background: #fff;
    border: 1px solid rgba(30, 30, 30, .07);
    border-radius: 22px;
    overflow: hidden;
    transition:
        transform .45s cubic-bezier(.2, .8, .2, 1),
        box-shadow .45s ease,
        border-color .45s ease;
}

.cvs-mv-card:hover {
    transform: translateY(-9px);
    box-shadow: 0 25px 55px rgba(30, 28, 23, .11);
    border-color: rgba(224, 122, 44, .2);
}


/* Top */

.cvs-mv-card-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cvs-mv-icon {
    width: 62px;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 17px;
    background: #fff2e7;
    color: #e07a2c;
    font-size: 22px;
    box-shadow: 0 10px 25px rgba(224, 122, 44, .10);
    transition: .4s ease;
}

.cvs-mv-vision .cvs-mv-icon {
    background: #fff2e7;
    color: #f78e1e;
}

.cvs-mv-card:hover .cvs-mv-icon {
    transform: rotate(-7deg) scale(1.08);
}

.cvs-mv-number {
    font-size: 48px;
    line-height: 1;
    font-weight: 700;
    color: rgba(32, 32, 29, .045);
}


/* Content */

.cvs-mv-card-content {
    position: relative;
    z-index: 2;
    margin-top: 30px;
}

.cvs-mv-label {
    display: block;
    margin-bottom: 8px;
    color: #e07a2c;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .18em;
}

.cvs-mv-vision .cvs-mv-label {
    color: #b48826;
}

.cvs-mv-card-content h3 {
    margin: 0;
    color: #24231f;
    font-size: 27px;
    font-weight: 600;
}

.cvs-mv-line {
    width: 42px;
    height: 2px;
    margin: 16px 0 18px;
    background: #e07a2c;
}

.cvs-mv-vision .cvs-mv-line {
    background: #c5942e;
}

.cvs-mv-card-content p {
    max-width: 570px;
    margin: 0;
    color:#1d1d1d;
    font-size: 14px;
    line-height: 1.85;
}


/* Footer */

.cvs-mv-card-footer {
    position: absolute;
    left: 32px;
    right: 32px;
    bottom: 27px;

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

    padding-top: 16px;
    border-top: 1px solid #eeeeeb;

    color: #8b877e;
    font-size: 11px;
    font-weight: 600;
}

.cvs-mv-card-footer i {
    color: #e07a2c;
    transition: .3s ease;
}

.cvs-mv-vision .cvs-mv-card-footer i {
    color: #b48826;
}

.cvs-mv-card:hover .cvs-mv-card-footer i {
    transform: translateX(6px);
}


/* Huge Background Text */

.cvs-mv-watermark {
    position: absolute;
    right: 10px;
    bottom: 35px;
    color: rgb(255 127 19 / 10%);
    font-size: 75px;
    font-weight: 800;
    letter-spacing: -.05em;
    line-height: 1;

    pointer-events: none;
    user-select: none;
}


/* Bottom Statement */

.cvs-mv-bottom {
    position: relative;
    z-index: 2;

    max-width: 650px;
    margin: 30px auto 0;
    padding: 17px 22px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;

    background: rgba(255, 255, 255, .75);
    border: 1px solid rgba(30, 30, 30, .07);
    border-radius: 14px;

    backdrop-filter: blur(8px);
}

.cvs-mv-bottom-icon {
    width: 38px;
    height: 38px;
    flex-shrink: 0;

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

    border-radius: 50%;
    background: #e07a2c;
    color: #fff;
    font-size: 12px;
}

.cvs-mv-bottom strong {
    display: block;
    color: #282621;
    font-size: 13px;
}

.cvs-mv-bottom span {
    display: block;
    margin-top: 2px;
    color: #858078;
    font-size: 11px;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .cvs-mv-section {
        padding: 60px 0;
    }

    .cvs-mv-heading {
        margin-bottom: 32px;
    }

    .cvs-mv-heading h2 {
        font-size: 30px;
    }

    .cvs-mv-heading p {
        font-size: 13px;
    }

    .cvs-mv-card {
        min-height: 390px;
        padding: 24px;
        border-radius: 17px;
    }

    .cvs-mv-icon {
        width: 54px;
        height: 54px;
        font-size: 19px;
    }

    .cvs-mv-number {
        font-size: 38px;
    }

    .cvs-mv-card-content {
        margin-top: 25px;
    }

    .cvs-mv-card-content h3 {
        font-size: 24px;
    }

    .cvs-mv-card-content p {
        font-size: 13px;
        line-height: 1.75;
    }

    .cvs-mv-card-footer {
        left: 24px;
        right: 24px;
        bottom: 22px;
    }

    .cvs-mv-watermark {
        font-size: 55px;
    }

    .cvs-mv-bottom {
        justify-content: flex-start;
        padding: 14px 16px;
    }
}

/* =========================================================
   WHY CHOOSE US — PREMIUM
========================================================= */

.cvsWhySectionX {
    position: relative;
    padding: 85px 0;
    background: #101820;
    overflow: hidden;
}


/* Background glow */

.cvsWhySectionX::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    top: -280px;
    right: -150px;
    border-radius: 50%;
    background: rgba(224, 122, 44, .08);
    filter: blur(10px);
}

.cvsWhySectionX::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    bottom: -280px;
    left: -150px;
    border-radius: 50%;
    border: 1px solid rgba(217, 164, 65, .13);
}


/* Decorative shapes */

.cvsWhyShapeX {
    position: absolute;
    pointer-events: none;
}

.cvsWhyShapeOneX {
    width: 100px;
    height: 100px;
    top: 25%;
    left: 5%;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
}

.cvsWhyShapeTwoX {
    width: 70px;
    height: 70px;
    right: 8%;
    bottom: 20%;
    border: 1px dashed rgba(217,164,65,.18);
    transform: rotate(25deg);
}


/* =========================================================
   HEADING
========================================================= */

.cvsWhyHeadingX {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;

    margin-bottom: 45px;
}

.cvsWhyEyebrowX {
    display: block;
    margin-bottom: 10px;

    color: #e07a2c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .2em;
}

.cvsWhyHeadingX h2 {
    max-width: 570px;
    margin: 0;

    color: #fff;
    font-size: clamp(31px, 4vw, 46px);
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -.025em;
}

.cvsWhyHeadingX h2 span {
    color: #f78e1e;
}

.cvsWhyHeadingX > p {
    max-width: 370px;
    margin: 0 0 4px;

    color: rgba(255,255,255,.58);
    font-size: 13px;
    line-height: 1.8;
}


/* =========================================================
   MAIN CARD
========================================================= */

.cvsWhyMainCardX {
    position: relative;
    height: 100%;
    min-height: 430px;

    padding: 30px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.095),
            rgba(255,255,255,.035)
        );

    border: 1px solid rgba(255,255,255,.10);
    border-radius: 20px;

    overflow: hidden;

    transition: .4s ease;
}

.cvsWhyMainCardX::after {
    content: "";
    position: absolute;

    width: 210px;
    height: 210px;

    right: -100px;
    bottom: -100px;

    border-radius: 50%;

    border: 1px solid rgba(224,122,44,.18);
}

.cvsWhyMainCardX:hover {
    transform: translateY(-6px);
    border-color: rgba(224,122,44,.3);
    box-shadow: 0 20px 50px rgba(0,0,0,.22);
}


/* Icon */

.cvsWhyMainIconX {
    width: 58px;
    height: 58px;

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

    margin-bottom: 25px;

    color: #fff;
    background: linear-gradient(
        135deg,
        #e07a2c,
        #c75f1c
    );

    border-radius: 16px;

    box-shadow:
        0 12px 30px rgba(224,122,44,.25);

    font-size: 20px;
}


.cvsWhyMainLabelX {
    display: block;

    color: #d9a441;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .18em;

    margin-bottom: 10px;
}


.cvsWhyMainCardX h3 {
    max-width: 420px;

    color: #fff;
    font-size: 28px;
    line-height: 1.25;
    font-weight: 600;

    margin-bottom: 15px;
}

.cvsWhyMainCardX h3 span {
    color: #e07a2c;
}


.cvsWhyMainCardX > p {
    max-width: 470px;

    color: rgba(255,255,255,.57);
    font-size: 13px;
    line-height: 1.8;
}


/* Stats */

.cvsWhyStatsX {
    position: absolute;

    left: 30px;
    right: 30px;
    bottom: 27px;

    display: flex;

    padding-top: 18px;

    border-top: 1px solid rgba(255,255,255,.09);
}


.cvsWhyStatsX > div {
    flex: 1;

    padding-right: 15px;
}

.cvsWhyStatsX > div + div {
    padding-left: 15px;
    border-left: 1px solid rgba(255,255,255,.09);
}


.cvsWhyStatsX strong {
    display: block;

    color: #fff;
    font-size: 21px;
    font-weight: 600;
}

.cvsWhyStatsX small {
    display: block;

    margin-top: 2px;

    color: rgba(255,255,255,.43);
    font-size: 9px;
}


/* =========================================================
   FEATURE CARDS
========================================================= */

.cvsWhyFeatureX {
    position: relative;

    min-height: 207px;

    padding: 23px;

    background: rgba(255,255,255,.055);

    border: 1px solid rgba(255,255,255,.085);
    border-radius: 16px;

    transition: .4s ease;
}


.cvsWhyFeatureX:hover {
    background: rgba(255,255,255,.085);

    border-color: rgba(224,122,44,.28);

    transform: translateY(-5px);

    box-shadow: 0 15px 35px rgba(0,0,0,.15);
}


.cvsWhyFeatureTopX {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 22px;
}


.cvsWhyFeatureIconX {
    width: 43px;
    height: 43px;

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

    border-radius: 12px;

    color: #e07a2c;
    background: rgba(224,122,44,.11);

    font-size: 15px;

    transition: .35s ease;
}


.cvsWhyFeatureX:hover .cvsWhyFeatureIconX {
    background: #e07a2c;
    color: #fff;
    transform: rotate(-6deg);
}


.cvsWhyFeatureTopX > span {
    color: rgba(255,255,255,.15);

    font-size: 25px;
    font-weight: 700;
}


.cvsWhyFeatureX h4 {
    margin-bottom: 7px;

    color: #fff;

    font-size: 17px;
    font-weight: 600;
}


.cvsWhyFeatureX p {
    margin: 0;

    color: rgba(255,255,255,.48);

    font-size: 13px;
    line-height: 1.7;
}


/* =========================================================
   BOTTOM PROMISE
========================================================= */

.cvsWhyPromiseX {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;

    max-width: 850px;

    margin: 28px auto 0;
    padding: 14px 17px;

    background: rgba(255,255,255,.055);

    border: 1px solid rgba(255,255,255,.09);
    border-radius: 13px;
}


.cvsWhyPromiseIconX {
    width: 37px;
    height: 37px;

    min-width: 37px;

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

    margin-right: 12px;

    border-radius: 50%;

    color: #fff;
    background: #e07a2c;

    font-size: 11px;
}


.cvsWhyPromiseTextX {
    flex: 1;
}


.cvsWhyPromiseTextX strong {
    display: block;

    color: #fff;

    font-size: 12px;
    font-weight: 600;
}


.cvsWhyPromiseTextX span {
    display: block;

    margin-top: 2px;

    color: rgba(255,255,255,.42);

    font-size: 10px;
}


.cvsWhyPromiseArrowX {
    width: 31px;
    height: 31px;

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

    border-radius: 50%;

    color: #e07a2c;
    background: rgba(224,122,44,.09);

    font-size: 9px;

    transition: .3s;
}


.cvsWhyPromiseX:hover .cvsWhyPromiseArrowX {
    transform: translateX(4px);
}


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

@media (max-width: 991px) {

    .cvsWhyHeadingX {
        display: block;
    }

    .cvsWhyHeadingX > p {
        margin-top: 15px;
    }

    .cvsWhyMainCardX {
        min-height: 390px;
    }
}


@media (max-width: 575px) {

    .cvsWhySectionX {
        padding: 60px 0;
    }

    .cvsWhyHeadingX {
        margin-bottom: 30px;
    }

    .cvsWhyHeadingX h2 {
        font-size: 30px;
    }

    .cvsWhyHeadingX > p {
        font-size: 12px;
    }

    .cvsWhyMainCardX {
        min-height: 410px;
        padding: 24px;
    }

    .cvsWhyMainCardX h3 {
        font-size: 24px;
    }

    .cvsWhyStatsX {
        left: 24px;
        right: 24px;
    }

    .cvsWhyStatsX strong {
        font-size: 18px;
    }

    .cvsWhyStatsX small {
        font-size: 8px;
    }

    .cvsWhyFeatureX {
        min-height: auto;
    }

    .cvsWhyPromiseX {
        align-items: flex-start;
    }

    .cvsWhyPromiseArrowX {
        display: none;
    }
}

/* =========================================================
   COMPACT INNER HERO
========================================================= */

.cvsInnerMiniHeroX {
    position: relative;
    height: 230px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #101820;
    padding-top: 200px;
    padding-bottom: 100px;
}


/* Background */

.cvsInnerMiniBgX {
    position: absolute;
    inset: 0;
}

.cvsInnerMiniBgX img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* Overlay */

.cvsInnerMiniOverlayX {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(8, 15, 18, .82) 0%,
            rgba(8, 15, 18, .55) 55%,
            rgba(8, 15, 18, .35) 100%
        );
}


/* Content */

.cvsInnerMiniHeroX .container {
    position: relative;
    z-index: 2;
}

.cvsInnerMiniContentX {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}


/* Page Title */

.cvsInnerMiniContentX h1 {
    margin: 0 0 10px;

    color: #fff;

    font-size: clamp(30px, 4vw, 43px);
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -.025em;
}


/* Small Orange Line */

.cvsInnerMiniContentX h1::before {
    content: "";
    display: block;

    width: 34px;
    height: 2px;

    margin-bottom: 10px;

    background: #e07a2c;
}


/* Breadcrumb */

.cvsInnerMiniBreadcrumbX {
    display: flex;
    align-items: center;
    gap: 9px;
}

.cvsInnerMiniBreadcrumbX a {
    color: rgba(255,255,255,.65);
    text-decoration: none;

    font-size: 15px;
    transition: .3s ease;
}

.cvsInnerMiniBreadcrumbX a:hover {
    color: #e07a2c;
}

.cvsInnerMiniBreadcrumbX i {
    color: #e07a2c;
    font-size: 7px;
}

.cvsInnerMiniBreadcrumbX span {
    color: #d9a441;
    font-size: 15px;
    font-weight: 500;
}


/* Mobile */

@media (max-width: 767px) {

    .cvsInnerMiniHeroX {
        height: 180px;
    }

    .cvsInnerMiniContentX h1 {
        font-size: 30px;
        margin-bottom: 8px;
    }

    .cvsInnerMiniContentX h1::before {
        width: 27px;
        height: 2px;
        margin-bottom: 8px;
    }

    .cvsInnerMiniBreadcrumbX a,
    .cvsInnerMiniBreadcrumbX span {
        font-size: 14px;
    }

}


/* =========================================================
   TOP TOUR FILTER
========================================================= */

.tour-top-filter {
    width: 100%;
    background: #ffffff;
    border: 1px solid #e8e8e8;
    border-radius: 16px;
    padding: 15px 20px;
    margin-bottom: 30px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05);
}


/* HEADING */

.tour-filter-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.tour-filter-mini {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 50px;
    background: #f5f5f5;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #777;
}

.tour-filter-heading h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: #222;
}


/* CONTROLS */

.tour-filter-controls {
    display: flex;
    align-items: flex-end;
    gap: 25px;
}

.tour-filter-group {
    flex: 1;
}

.tour-destination-group {
    max-width: 330px;
}


/* LABEL */

.tour-filter-label {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 9px;
    font-size: 14px;
    font-weight: 600;
    color: #555;
}

.tour-filter-label i {
    font-size: 12px;
}


/* DURATION OPTIONS */

.tour-duration-options {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.tour-duration-option {
    border: 1px solid #e3e3e3;
    background: #fafafa;
    color: #555;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s ease;
}

.tour-duration-option:hover {
    border-color: #222;
    color: #222;
    background: #fff;
}

.tour-duration-option.active {
    background: #222;
    color: #fff;
    border-color: #222;
}


/* DESTINATION SELECT */

.tour-destination-select {
    position: relative;
    width: 100%;
}

.tour-destination-select select {
    width: 100%;
    height: 42px;
    padding: 0 42px 0 14px;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    background: #fafafa;
    color: #444;
    font-size: 12px;
    font-weight: 600;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    transition: 0.25s ease;
}

.tour-destination-select select:focus {
    border-color: #222;
    background: #fff;
}

.tour-select-icon {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 10px;
    color: #777;
    pointer-events: none;
}


/* =========================================================
   PACKAGE GRID
========================================================= */

.tour-package-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}


/* HIDDEN PACKAGE */

.tour-package-card.tour-filter-hidden {
    display: none !important;
}


/* NO RESULT */

.tour-no-result {
    display: none;
    text-align: center;
    padding: 50px 20px;
    border: 1px dashed #ddd;
    border-radius: 12px;
    margin-top: 20px;
}

.tour-no-result.show {
    display: block;
}

.tour-no-result i {
    font-size: 28px;
    margin-bottom: 12px;
    color: #888;
}

.tour-no-result h4 {
    margin: 0 0 5px;
    font-size: 16px;
}

.tour-no-result p {
    margin: 0;
    font-size: 14px;
    color: #777;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .tour-filter-controls {
        flex-direction: column;
        align-items: stretch;
        gap: 18px;
    }

    .tour-destination-group {
        max-width: 100%;
    }

    .tour-package-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .tour-top-filter {
        padding: 16px;
        border-radius: 12px;
        margin-bottom: 22px;
    }

    .tour-filter-heading {
        margin-bottom: 15px;
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    .tour-filter-heading h3 {
        font-size: 16px;
    }

    .tour-duration-options {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .tour-duration-option {
        width: 100%;
        padding: 9px 8px;
        font-size: 12px;
    }

    .tour-package-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

}


/* =====================================================
   BHUTAN PACKAGE HERO
   Theme: #e07a2c + #0b1b2b
===================================================== */

.btp-package-hero {
    padding: 18px 0 40px;
    background: #fff;
    color: #0b1b2b;
    font-family: Arial, Helvetica, sans-serif;
}


/* =====================================================
   TITLE
===================================================== */

.btp-package-heading {
    margin-bottom: 16px;
}

.btp-title-row {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
}

.btp-package-title {
    margin: 0;
    color: #0b1b2b;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
}

.btp-rating {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: #555;
}

.btp-rating i {
    color: #f5b400;
    font-size: 14px;
}


/* =====================================================
   META
===================================================== */

.btp-package-meta {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 14px;
    flex-wrap: wrap;
}

.btp-meta-item,
.btp-meta-route {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #202020;
    font-size: 14px;
    font-weight: 500;
}

.btp-meta-item i,
.btp-meta-route > i {
    color: #e07a2c;
    font-size: 17px;
}

.btp-meta-route span {
    line-height: 1.5;
}

.btp-meta-route b {
    color: #777;
    font-weight: 400;
    margin: 0 3px;
}


/* =====================================================
   IMAGE GALLERY
===================================================== */

.btp-gallery-layout {
   
    gap: 12px;
    
}

.btp-gallery-main {
    position: relative;
    overflow: hidden;
    border-radius: 5px;
   
}

.btp-gallery-main img,
.btp-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}



.btp-gallery-item img {
    transition: transform .35s ease;
}

.btp-gallery-item:hover img,
.btp-gallery-main:hover img {
    transform: scale(1.04);
}
.btp-gallery-item img,
.btp-gallery-main img{
    transition: all ease 0.4s;
}

.btp-price-footer a{
    font-size: 14px;
    text-decoration: none;
    color: #182019;
}


/* =====================================================
   GROUP BADGE
===================================================== */

.btp-group-badge {
    position: absolute;
    top: 9px;
    left: 9px;
    background: #fff;
    color: #e07a2c;
    border: 1px solid #e07a2c;
    border-radius: 6px;
    padding: 7px 13px;
    font-size: 13px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 7px;
}

.btp-group-badge i {
    font-size: 13px;
}


/* =====================================================
   SEE ALL PHOTOS
===================================================== */

.btp-see-photos {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(0, 0, 0, .38);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: background .3s ease;
}

.btp-see-photos:hover {
    background: rgba(11, 27, 43, .72);
}


/* =====================================================
   FEATURE ROW
===================================================== */

.btp-feature-row {
    display: flex;
    align-items: center;
    gap: 34px;
    padding: 22px 10px 3px;
}

.btp-feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    min-width: 52px;
}

.btp-feature-item > span {
    font-size: 13px;
    color: #0b1b2b;
    font-weight: 500;
}


/* =====================================================
   FEATURE ICONS
===================================================== */

.btp-feature-icon {
    width: 43px;
    height: 43px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 17px;
    background-color: #e07a2c;
}




/* =====================================================
   PRICE CARD
===================================================== */

.btp-price-card {
    border: 1px solid #ddd;
    border-radius: 11px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 3px 12px rgba(11, 27, 43, .04);
}


/* =====================================================
   PRICE TOP
===================================================== */

.btp-price-top {
    background: #f7f7f7;
    padding: 25px 15px 16px;
    text-align: center;
}

.btp-old-price {
    color: #777;
    text-decoration: line-through;
    font-size: 13px;
    margin-bottom: 2px;
}

.btp-current-price {
    color: #444;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2;
}

.btp-current-price span {
    font-size: 19px;
    margin-right: 2px;
}

.btp-price-label {
    color: #777;
    font-size: 13px;
    margin-top: 3px;
}


/* =====================================================
   REWARD BOX
===================================================== */

.btp-reward-box {
    background: #fff3f3;
    text-align: center;
    padding: 9px 10px;
}

.btp-reward-box strong {
    display: block;
    color: #555;
    font-size: 15px;
    margin-bottom: 4px;
}

.btp-reward-box span {
    color: #777;
    font-size: 11px;
    display: block;
}

.btp-reward-box span i:first-child {
    color: #e07a2c;
    margin-right: 4px;
}

.btp-reward-box span i:last-child {
    color: #999;
    margin-left: 2px;
}


/* =====================================================
   BUTTON AREA
===================================================== */

.btp-price-action {
    padding: 16px 25px 12px;
}

.btp-book-btn {
    width: 100%;
    border: 0;
    border-radius: 5px;
    padding: 11px 15px;
    background: #e07a2c;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.btp-book-btn:hover {
    background: #0b1b2b;
}


.btp-wishlist-btn {
    width: 100%;
    margin-top: 12px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    color: #555;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
}

.btp-wishlist-btn i {
    margin-right: 7px;
    font-size: 15px;
}

.btp-wishlist-btn:hover {
    border-color: #e07a2c;
    color: #e07a2c;
}


/* =====================================================
   PRICE FOOTER
===================================================== */

.btp-price-footer {
    border-top: 1px solid #eee;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 13px;
    padding: 12px 8px;
}

.btp-price-footer button {
    background: transparent;
    border: 0;
    color: #666;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
}

.btp-price-footer button:hover {
    color: #e07a2c;
}

.btp-price-footer i {
    font-size: 13px;
}

.btp-footer-divider {
    width: 1px;
    height: 18px;
    background: #ddd;
}


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

@media (max-width: 1199px) {

    

    .btp-feature-row {
        gap: 25px;
    }

    .btp-package-meta {
        gap: 20px;
    }

}


@media (max-width: 991px) {

    

    .btp-price-card {
        margin-top: 4px;
    }

}


@media (max-width: 767px) {

    .btp-package-hero {
        padding-top: 15px;
    }

    .btp-package-title {
        font-size: 20px;
    }

    .btp-package-meta {
        gap: 10px;
        flex-direction: column;
        align-items: flex-start;
    }

    .btp-meta-route {
        align-items: flex-start;
    }

   

   

   
    .btp-feature-row {
        overflow-x: auto;
        justify-content: flex-start;
        gap: 28px;
        padding: 18px 5px 5px;
    }

    .btp-feature-item {
        flex: 0 0 auto;
    }

    .details-banner{
        padding-top: 110px !important;
    }

}


@media (max-width: 480px) {

    .btp-package-title {
        font-size: 19px;
    }

    .btp-meta-item,
    .btp-meta-route {
        font-size: 13px;
    }

  .btp-group-badge{
    font-size: 10px;
  }

    .btp-gallery-small {
        height: 180px;
        gap: 8px;
    }

    .btp-feature-row {
        gap: 22px;
    }

    .btp-feature-icon {
        width: 40px;
        height: 40px;
        font-size: 15px;
    }

    .btp-feature-item > span {
        font-size: 12px;
    }

}

.details-banner{
    height: auto !important;
    padding-top: 130px!important;
    padding-bottom: 15px!important;
}

/* ==========================================
   TOUR STICKY MENU
========================================== */

.btp-tour-sticky-menu {
    position: sticky;
    top: 70px;
    z-index: 1000;
    background: #ffffff;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #dddddd;
    box-shadow: 0 3px 12px rgba(11, 27, 43, 0.07);
}


/* INNER */

.btp-tour-menu-inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    min-height: 58px;
}


/* LINK */

.btp-tour-menu-link {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    padding: 18px 14px 16px;
    color: #0b1b2b;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    transition: all 0.25s ease;
}


/* ICON */

.btp-tour-menu-link i {
    font-size: 15px;
    color: #777777;
    transition: all 0.25s ease;
}


/* HOVER */

.btp-tour-menu-link:hover {
    color: #e07a2c;
}

.btp-tour-menu-link:hover i {
    color: #e07a2c;
}


/* ACTIVE */

.btp-tour-menu-link.active {
    color: #e07a2c;
}

.btp-tour-menu-link.active i {
    color: #e07a2c;
}


/* ACTIVE LINE */

.btp-tour-menu-link::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: transparent;
    transition: all 0.25s ease;
}

.btp-tour-menu-link.active::after {
    background: #e07a2c;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .btp-tour-sticky-menu {
        overflow: hidden;
    }

    .btp-tour-menu-inner {
        justify-content: flex-start;
        overflow-x: auto;
        overflow-y: hidden;
        min-height: 54px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .btp-tour-menu-inner::-webkit-scrollbar {
        display: none;
    }

    .btp-tour-menu-link {
        padding: 16px 16px 14px;
        font-size: 13px;
        gap: 6px;
    }

    .btp-tour-menu-link i {
        font-size: 14px;
    }

    .btp-tour-menu-link::after {
        left: 12px;
        right: 12px;
    }

}

/* ==========================================
   SIMPLE TOUR OVERVIEW
========================================== */

.btp-simple-overview {
    padding: 25px 0 25px;
    background: #fff;
}

.btp-simple-overview-box {
    padding: 0 2px;
}


/* HEADING */

.btp-simple-overview-title {
    margin: 0;
    color: #0b1b2b;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}


/* SMALL ORANGE LINE */

.btp-simple-overview-line {
    width: 42px;
    height: 3px;
    background: #e07a2c;
    border-radius: 3px;
    margin: 8px 0 14px;
}


/* PARAGRAPH */

.btp-simple-overview-text {
    margin: 0 0 10px;
    color: #555;
    font-size: 14px;
    line-height: 1.75;
    max-width: 1100px;
}

.btp-simple-overview-text:last-child {
    margin-bottom: 0;
}


/* MOBILE */

@media (max-width: 767px) {

    .btp-simple-overview {
        padding: 18px 0 8px;
    }

    .btp-simple-overview-title {
        font-size: 20px;
    }

    .btp-simple-overview-text {
        font-size: 13px;
        line-height: 1.7;
    }

}


/* =====================================================
   BTP - PREMIUM DAY WISE ITINERARY
===================================================== */

.btp-itinerary-section {
    padding: 25px 0 25px;
  
}


/* =====================================================
   HEADER
===================================================== */

.btp-itinerary-heading {
    margin-bottom: 25px;
}

.btp-itinerary-kicker {
    display: inline-block;
    color: #e07a2c;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-bottom: 4px;
}

.btp-itinerary-title {
    margin: 0;
    color: #0b1b2b;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
}

.btp-itinerary-subtitle {
    margin: 5px 0 0;
    color: #777;
    font-size: 13px;
}


/* =====================================================
   ITINERARY LIST
===================================================== */

.btp-itinerary-list {
    position: relative;
    max-width: 1100px;
}


/* =====================================================
   DAY CARD
===================================================== */

.btp-day-card {
    position: relative;
    display: grid;
    grid-template-columns: 82px 28px minmax(0, 1fr);
    margin-bottom: 14px;
}


/* =====================================================
   DAY NUMBER
===================================================== */

.btp-day-number {
    height: 76px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    background: #0b1b2b;
    color: #fff;

    border-radius: 7px 0 0 7px;
    position: relative;
    z-index: 2;
}

.btp-day-number span {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
    opacity: .65;
}

.btp-day-number strong {
    font-size: 25px;
    line-height: 1;
    font-weight: 800;
    margin-top: 3px;
}


/* ACTIVE DAY */

.btp-day-card.active .btp-day-number {
    background: #e07a2c;
}


/* =====================================================
   CONNECTOR
===================================================== */

.btp-day-connector {
    position: relative;
    display: flex;
    justify-content: center;
}

.btp-day-connector::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: -14px;
    width: 1px;
    background: #d8d8d8;
}

.btp-last-day .btp-day-connector::before {
    display: none;
}

.btp-day-dot {
    position: absolute;
    top: 31px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #e07a2c;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px #e07a2c;
    z-index: 3;
}


/* =====================================================
   CONTENT CARD
===================================================== */

.btp-day-content {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-left: 0;
    border-radius: 0 8px 8px 0;
    overflow: hidden;
    box-shadow: 0 2px 9px rgba(11, 27, 43, .035);
}


/* =====================================================
   DAY TOP
===================================================== */

.btp-day-top {
    min-height: 76px;
    padding: 15px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;

    cursor: pointer;
}


/* ROUTE */

.btp-day-route {
    display: block;
    color: #e07a2c;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .9px;
    margin-bottom: 3px;
}


/* TITLE */

.btp-day-top h3 {
    margin: 0;
    color: #0b1b2b;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
}


/* =====================================================
   TOGGLE BUTTON
===================================================== */

.btp-day-toggle {
    width: 31px;
    height: 31px;
    flex: 0 0 31px;

    border: 1px solid #ddd;
    border-radius: 50%;

    background: #fff;
    color: #0b1b2b;

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

    font-size: 11px;
    cursor: pointer;

    transition: all .25s ease;
}

.btp-day-toggle:hover {
    background: #e07a2c;
    color: #fff;
    border-color: #e07a2c;
}


/* =====================================================
   DAY DETAILS
===================================================== */

.btp-day-details {
    display: none;
    padding: 0 18px 17px;
    border-top: 1px solid #f0f0f0;
}

.btp-day-card.active .btp-day-details {
    display: block;
}


.btp-day-details p {
    margin: 14px 0 13px;
    color: #5d5d5d;
    font-size: 13px;
    line-height: 1.75;
    max-width: 900px;
}


/* =====================================================
   DAY INFO
===================================================== */

.btp-day-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.btp-day-info span {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 6px 10px;

    background: #f7f7f7;
    border-radius: 4px;

    color: #666;
    font-size: 11px;
    font-weight: 500;
}

.btp-day-info i {
    color: #e07a2c;
    font-size: 11px;
}


/* =====================================================
   ACTIVE CARD
===================================================== */

.btp-day-card.active .btp-day-content {
    border-color: #ead8cc;
}

.btp-day-card.active .btp-day-toggle {
    background: #e07a2c;
    color: #fff;
    border-color: #e07a2c;
}


/* =====================================================
   HOVER
===================================================== */

.btp-day-card:not(.active):hover .btp-day-content {
    border-color: #e3c5b3;
}

.btp-day-card:not(.active):hover .btp-day-number {
    background: #172d40;
}


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

@media (max-width: 767px) {

    .btp-itinerary-section {
        padding: 24px 0 10px;
    }

    .btp-itinerary-title {
        font-size: 21px;
    }

    .btp-itinerary-subtitle {
        font-size: 12px;
    }

    .btp-day-card {
        display: block;
    }
    .btp-day-connector{
        display: none;
    }

    .btp-day-number {
        height: 40px;
        width: 100%;
        flex-direction: row; 
        gap: 10px;
        align-items: center;
    }

    .btp-day-number strong {
        font-size: 18px;
        margin-top: 0px;
    }

    .btp-day-number span {
        font-size: 15px;
    }

    .btp-day-top {
        min-height: 70px;
        padding: 13px;
    }

    .btp-day-top h3 {
        font-size: 14px;
    }

    .btp-day-route {
        font-size: 8px;
    }

    .btp-day-details {
        padding: 0 13px 14px;
    }

    .btp-day-details p {
        font-size: 12px;
        line-height: 1.7;
    }

    .btp-day-info span {
        font-size: 10px;
        padding: 5px 8px;
    }

    .btp-day-toggle {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

}

/* ==========================================
   PACKAGE INCLUSION
========================================== */

.btp-inclusion-section {
    padding: 28px 0 10px;
}

.btp-inclusion-box {
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 9px;
    padding: 24px 25px;
    box-shadow: 0 4px 15px rgba(11, 27, 43, 0.04);
}


/* HEADING */

.btp-inclusion-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.btp-inclusion-icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;

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

    background: #fff1e8;
    color: #e07a2c;
    border-radius: 7px;
    font-size: 18px;
}

.btp-inclusion-label {
    display: block;
    color: #e07a2c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 2px;
}

.btp-inclusion-heading h2 {
    margin: 0;
    color: #0b1b2b;
    font-size: 22px;
    font-weight: 700;
}


/* ==========================================
   LIST
========================================== */

.btp-inclusion-list {
    list-style: none;
    padding: 0;
    margin: 0;

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 30px;
}


/* LIST ITEM */

.btp-inclusion-list li {
    position: relative;

    padding: 12px 5px 12px 30px;

    color: #4d4d4d;
    font-size: 13px;
    line-height: 1.5;

    border-bottom: 1px solid #eeeeee;
}


/* AUTOMATIC CHECK ICON */

.btp-inclusion-list li::before {
    content: "\f00c";

    font-family: "Font Awesome 6 Free";
    font-weight: 900;

    position: absolute;
    left: 3px;
    top: 12px;

    width: 20px;
    height: 20px;

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

    background: #e07a2c;
    color: #fff;

    border-radius: 50%;

    font-size: 9px;
}


/* HOVER */

.btp-inclusion-list li:hover {
    color: #0b1b2b;
}

.btp-inclusion-list li:hover::before {
    background: #0b1b2b;
}


/* LAST ROW BORDER */

.btp-inclusion-list li:nth-last-child(-n+2) {
    border-bottom: none;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .btp-inclusion-section {
        padding: 20px 0 8px;
    }

    .btp-inclusion-box {
        padding: 19px 15px;
    }

    .btp-inclusion-icon {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .btp-inclusion-heading h2 {
        font-size: 20px;
    }

    .btp-inclusion-list {
        grid-template-columns: 1fr;
    }

    .btp-inclusion-list li {
        padding: 11px 3px 11px 30px;
        font-size: 12px;
    }

    .btp-inclusion-list li::before {
        top: 11px;
    }

    .btp-inclusion-list li:last-child {
        border-bottom: none;
    }

}

/* ==========================================
   PACKAGE EXCLUSIONS
========================================== */

.btp-exclusion-section {
    padding: 15px 0 10px;
}

.btp-exclusion-box {
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 9px;
    padding: 24px 25px;
    box-shadow: 0 4px 15px rgba(11, 27, 43, 0.04);
}


/* ==========================================
   HEADING
========================================== */

.btp-exclusion-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.btp-exclusion-icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;

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

    background: #eef1f4;
    color: #0b1b2b;

    border-radius: 7px;
    font-size: 18px;
}

.btp-exclusion-label {
    display: block;
    color: #e07a2c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 2px;
}

.btp-exclusion-heading h2 {
    margin: 0;
    color: #0b1b2b;
    font-size: 22px;
    font-weight: 700;
}


/* ==========================================
   LIST
========================================== */

.btp-exclusion-list {
    list-style: none;
    padding: 0;
    margin: 0;

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 30px;
}


/* LIST ITEM */

.btp-exclusion-list li {
    position: relative;

    padding: 12px 5px 12px 30px;

    color: #555;
    font-size: 13px;
    line-height: 1.5;

    border-bottom: 1px solid #eeeeee;
}


/* AUTOMATIC CROSS ICON */

.btp-exclusion-list li::before {
    content: "\f00d";

    font-family: "Font Awesome 6 Free";
    font-weight: 900;

    position: absolute;
    left: 3px;
    top: 12px;

    width: 20px;
    height: 20px;

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

    background: #0b1b2b;
    color: #fff;

    border-radius: 50%;

    font-size: 9px;
}


/* HOVER */

.btp-exclusion-list li:hover {
    color: #0b1b2b;
}

.btp-exclusion-list li:hover::before {
    background: #e07a2c;
}


/* LAST ROW */

.btp-exclusion-list li:nth-last-child(-n+2) {
    border-bottom: none;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .btp-exclusion-section {
        padding: 12px 0 8px;
    }

    .btp-exclusion-box {
        padding: 19px 15px;
    }

    .btp-exclusion-icon {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .btp-exclusion-heading h2 {
        font-size: 20px;
    }

    .btp-exclusion-list {
        grid-template-columns: 1fr;
    }

    .btp-exclusion-list li {
        padding: 11px 3px 11px 30px;
        font-size: 12px;
    }

    .btp-exclusion-list li::before {
        top: 11px;
    }

    .btp-exclusion-list li:last-child {
        border-bottom: none;
    }

}

/* ==========================================
   BTP RIGHT SIDEBAR
========================================== */

.btp-sidebar {
    position: sticky;
    top: 90px;
}


/* ==========================================
   ENQUIRY CARD
========================================== */

.btp-enquiry-card {
    position: relative;
    overflow: hidden;

    background: #ffffff;
    border: 1px solid #e3e6e8;
    border-radius: 10px;

    padding: 22px 20px;

    box-shadow: 0 5px 20px rgba(11, 27, 43, 0.07);
}


/* TOP ORANGE LINE */

.btp-enquiry-card::before {
    content: "";
    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    height: 4px;
    background: #e07a2c;
}


/* ==========================================
   ENQUIRY HEADER
========================================== */

.btp-enquiry-head {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 11px;
}

.btp-enquiry-icon {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;

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

    border-radius: 7px;

    background: #0b1b2b;
    color: #ffffff;

    font-size: 15px;
}

.btp-enquiry-head > div > span {
    display: block;

    color: #e07a2c;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}

.btp-enquiry-head h3 {
    margin: 2px 0 0;

    color: #0b1b2b;
    font-size: 19px;
    font-weight: 700;
}


/* SUBTITLE */

.btp-enquiry-subtitle {
    margin: 0 0 16px;

    color: #666;
    font-size: 11px;
    line-height: 1.55;
}


/* ==========================================
   FORM
========================================== */

.btp-enquiry-form {
    display: flex;
    flex-direction: column;
    gap: 9px;
}


/* FIELD */

.btp-form-field {
    position: relative;
}

.btp-form-field > i {
    position: absolute;

    left: 12px;
    top: 50%;

    transform: translateY(-50%);

    color: #e07a2c;
    font-size: 12px;

    z-index: 2;
}

.btp-form-field input,
.btp-form-field textarea {
    width: 100%;

    border: 1px solid #e1e4e6;
    border-radius: 6px;

    background: #fafafa;

    padding: 10px 10px 10px 34px;

    color: #0b1b2b;
    font-size: 11px;

    outline: none;

    transition: .25s ease;
}

.btp-form-field input {
    height: 40px;
}

.btp-form-field textarea {
    resize: vertical;
    min-height: 72px;
}


/* FOCUS */

.btp-form-field input:focus,
.btp-form-field textarea:focus {
    border-color: #e07a2c;
    background: #fff;

    box-shadow: 0 0 0 2px rgba(224, 122, 44, 0.08);
}


/* TEXTAREA ICON */

.btp-textarea-field > i {
    top: 16px;
    transform: none;
}


/* ==========================================
   SUBMIT BUTTON
========================================== */

.btp-enquiry-submit {
    width: 100%;
    height: 42px;

    border: 0;
    border-radius: 6px;

    background: #e07a2c;
    color: #ffffff;

    font-size: 12px;
    font-weight: 700;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    cursor: pointer;

    transition: .25s ease;
}

.btp-enquiry-submit:hover {
    background: #0b1b2b;
}

.btp-enquiry-submit i {
    font-size: 10px;
}


/* NOTE */

.btp-form-note {
    margin-top: 12px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;

    color: #888;
    font-size: 9px;
}

.btp-form-note i {
    color: #e07a2c;
}


/* ==========================================
   SUPPORT CARDS
========================================== */

.btp-support-card {
    margin-top: 12px;

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 15px;

    border-radius: 8px;

    border: 1px solid #e4e6e8;
    background: #ffffff;

    box-shadow: 0 3px 12px rgba(11, 27, 43, 0.04);

    transition: .25s ease;
}

.btp-support-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(11, 27, 43, 0.08);
}


/* SUPPORT ICON */

.btp-support-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;

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

    border-radius: 7px;

    font-size: 14px;
}


/* CALL */

.btp-call-card .btp-support-icon {
    background: #fff1e8;
    color: #e07a2c;
}


/* MAIL */

.btp-mail-card .btp-support-icon {
    background: #edf1f5;
    color: #0b1b2b;
}


/* CONTENT */

.btp-support-content span {
    display: block;

    color: #999;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .8px;
}

.btp-support-content h4 {
    margin: 2px 0 3px;

    color: #0b1b2b;
    font-size: 12px;
    font-weight: 600;
}

.btp-support-content a {
    color: #e07a2c;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;

    word-break: break-word;
}

.btp-support-content a:hover {
    color: #0b1b2b;
}


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

@media (max-width: 991px) {

    .btp-sidebar {
        position: static;
        margin-top: 25px;
    }

    .btp-support-card {
        display: inline-flex;
        width: calc(50% - 7px);
        vertical-align: top;
    }

    .btp-mail-card {
        margin-left: 10px;
    }
}


@media (max-width: 575px) {

    .btp-enquiry-card {
        padding: 20px 16px;
    }

    .btp-support-card {
        width: 100%;
        margin-left: 0;
    }

    .btp-mail-card {
        margin-top: 10px;
    }

}

/* ==========================================
   RELATED TOUR PACKAGES
========================================== */

.btp-related-section {
    padding: 55px 0 65px;
    background: #f8f9fa;
}


/* ==========================================
   HEADING
========================================== */

.btp-related-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 25px;
}

.btp-related-label {
    display: block;
    color: #e07a2c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-bottom: 4px;
}

.btp-related-heading h2 {
    margin: 0;
    color: #0b1b2b;
    font-size: 27px;
    font-weight: 700;
}

.btp-related-heading p {
    margin: 6px 0 0;
    color: #777;
    font-size: 12px;
}


/* ==========================================
   NAVIGATION
========================================== */

.btp-related-nav {
    display: flex;
    gap: 7px;
}

.btp-related-nav button {
    width: 38px;
    height: 38px;

    border: 1px solid #dfe2e5;
    background: #fff;
    color: #0b1b2b;

    border-radius: 6px;

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

    font-size: 12px;

    cursor: pointer;
    transition: .25s ease;
}

.btp-related-nav button:hover {
    background: #e07a2c;
    border-color: #e07a2c;
    color: #fff;
}


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

.btp-related-card {
    background: #fff;
    border: 1px solid #e6e7e8;
    border-radius: 9px;
    overflow: hidden;

    box-shadow: 0 4px 15px rgba(11, 27, 43, .05);

    transition: .3s ease;
}

.btp-related-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(11, 27, 43, .10);
}


/* ==========================================
   IMAGE
========================================== */

.btp-related-image {
    position: relative;
    height: 205px;
    overflow: hidden;
}

.btp-related-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transition: transform .5s ease;
}

.btp-related-card:hover .btp-related-image img {
    transform: scale(1.06);
}


/* DURATION */

.btp-related-duration {
    position: absolute;
    left: 12px;
    bottom: 12px;

    background: #0b1b2b;
    color: #fff;

    padding: 6px 9px;

    border-radius: 4px;

    font-size: 10px;
    font-weight: 600;
}


/* ==========================================
   CONTENT
========================================== */

.btp-related-content {
    padding: 16px;
}

.btp-related-location {
    display: flex;
    align-items: center;
    gap: 5px;

    color: #e07a2c;
    font-size: 10px;
    font-weight: 600;

    margin-bottom: 6px;
}

.btp-related-location i {
    font-size: 9px;
}

.btp-related-content h3 {
    margin: 0 0 15px;

    color: #0b1b2b;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;

    min-height: 45px;
}


/* ==========================================
   BOTTOM
========================================== */

.btp-related-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;

    padding-top: 12px;

    border-top: 1px solid #eeeeee;
}


/* PRICE */

.btp-related-price small {
    display: block;

    color: #999;
    font-size: 9px;
    margin-bottom: 2px;
}

.btp-related-price strong {
    color: #0b1b2b;
    font-size: 18px;
    font-weight: 700;
}

.btp-related-price span {
    color: #888;
    font-size: 9px;
}


/* BUTTON */

.btp-related-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 8px 11px;

    background: #e07a2c;
    color: #fff;

    border-radius: 5px;

    font-size: 10px;
    font-weight: 600;

    text-decoration: none;

    transition: .25s ease;
}

.btp-related-btn:hover {
    background: #0b1b2b;
    color: #fff;
}

.btp-related-btn i {
    font-size: 8px;
}


/* ==========================================
   OWL DOTS
========================================== */

.btp-related-slider .owl-dots {
    margin-top: 20px;
    text-align: center;
}

.btp-related-slider .owl-dot {
    width: 7px;
    height: 7px;

    margin: 0 3px;

    border-radius: 50%;
    background: #d5d8da !important;

    transition: .25s ease;
}

.btp-related-slider .owl-dot.active {
    width: 20px;
    border-radius: 5px;

    background: #e07a2c !important;
}


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

@media (max-width: 767px) {

    .btp-related-section {
        padding: 40px 0 45px;
    }

    .btp-related-head {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 20px;
    }

    .btp-related-heading h2 {
        font-size: 23px;
    }

    .btp-related-heading p {
        font-size: 11px;
    }

    .btp-related-nav {
        display: none;
    }

    .btp-related-image {
        height: 220px;
    }

    .btp-related-content h3 {
        font-size: 15px;
    }

}

/* ==========================================
   ZCP CONTACT SECTION
========================================== */

.zcp-contact-section {
    padding: 60px 0;
    background: #f7f8f9;
}

.zcp-contact-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 35px;
    align-items: stretch;
}


/* ==========================================
   LEFT PANEL
========================================== */

.zcp-contact-info-panel {
    background: #0b1b2b;
    border-radius: 14px;
    padding: 42px 40px;

    position: relative;
    overflow: hidden;
}


/* DECORATION */

.zcp-contact-info-panel::before {
    content: "";
    position: absolute;

    width: 220px;
    height: 220px;

    border: 1px solid rgba(224, 122, 44, .18);
    border-radius: 50%;

    right: -90px;
    top: -90px;
}

.zcp-contact-info-panel::after {
    content: "";
    position: absolute;

    width: 130px;
    height: 130px;

    border: 1px solid rgba(224, 122, 44, .12);
    border-radius: 50%;

    right: -45px;
    top: -45px;
}


/* EYEBROW */

.zcp-contact-eyebrow {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    gap: 8px;

    color: #e07a2c;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;

    margin-bottom: 13px;
}

.zcp-contact-eyebrow span {
    width: 24px;
    height: 2px;
    background: #e07a2c;
}


/* HEADING */

.zcp-contact-heading {
    position: relative;
    z-index: 2;

    margin: 0;

    color: #fff;

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

.zcp-contact-heading strong {
    display: block;

    color: #e07a2c;

    font-weight: 700;
}


/* DESCRIPTION */

.zcp-contact-description {
    position: relative;
    z-index: 2;

    max-width: 600px;

    margin: 18px 0 28px;

    color: #c2cbd3;

    font-size: 13px;
    line-height: 1.7;
}


/* ==========================================
   CONTACT DETAILS
========================================== */

.zcp-contact-details {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;
    gap: 10px;
}

.zcp-detail-card {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 13px 14px;

    background: rgba(255,255,255,.055);

    border: 1px solid rgba(255,255,255,.08);

    border-radius: 8px;

    transition: .3s ease;
}

.zcp-detail-card:hover {
    background: rgba(224,122,44,.10);
    border-color: rgba(224,122,44,.3);
    transform: translateX(4px);
}


/* ICON */

.zcp-detail-icon {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;

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

    background: #e07a2c;
    color: #fff;

    border-radius: 7px;

    font-size: 14px;
}


/* CONTENT */

.zcp-detail-content {
    min-width: 0;
    flex: 1;
}

.zcp-detail-content span {
    display: block;

    color: #8f9ba5;

    font-size: 9px;
    font-weight: 600;

    text-transform: uppercase;
    letter-spacing: .8px;

    margin-bottom: 3px;
}

.zcp-detail-content a,
.zcp-detail-content strong {
    color: #fff;

    font-size: 14px;
    line-height: 1.5;

    text-decoration: none;
}

.zcp-detail-content a:hover {
    color: #e07a2c;
}

.zcp-phone-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

.zcp-phone-links b {
    color: #64717d;
    font-size: 11px;
}


/* LOCATION */

.zcp-location-card {
    align-items: flex-start;
}

.zcp-location-card .zcp-detail-icon {
    margin-top: 2px;
}

.zcp-location-card strong {
    display: block;
    font-weight: 500;
}


/* ARROW */

.zcp-detail-arrow {
    color: #687681;
    font-size: 10px;
}


/* ==========================================
   FORM PANEL
========================================== */

.zcp-form-panel {
    background: #fff;

    border: 1px solid #e3e6e8;
    border-radius: 14px;

    padding: 36px 35px;

    box-shadow: 0 8px 30px rgba(11,27,43,.06);
}


/* FORM TOP */

.zcp-form-top {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 9px;
}

.zcp-form-icon {
    width: 43px;
    height: 43px;

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

    background: #fff0e6;
    color: #e07a2c;

    border-radius: 8px;

    font-size: 17px;
}

.zcp-form-top span {
    display: block;

    color: #e07a2c;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}

.zcp-form-top h3 {
    margin: 2px 0 0;

    color: #0b1b2b;

    font-size: 23px;
    font-weight: 700;
}


/* FORM DESCRIPTION */

.zcp-form-description {
    color: #777;

    font-size: 12px;
    line-height: 1.6;

    margin: 0 0 22px;
}


/* ==========================================
   FORM FIELDS
========================================== */

.zcp-contact-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.zcp-field label {
    display: block;

    margin-bottom: 6px;

    color: #0b1b2b;

    font-size: 11px;
    font-weight: 700;
}

.zcp-field label em {
    color: #e07a2c;
    font-style: normal;
}

.zcp-input-wrap {
    position: relative;
}

.zcp-input-wrap > i {
    position: absolute;

    left: 13px;
    top: 50%;

    transform: translateY(-50%);

    color: #a3a8ac;

    font-size: 12px;

    pointer-events: none;
}

.zcp-input-wrap input,
.zcp-input-wrap textarea {
    width: 100%;

    border: 1px solid #dfe3e6;
    border-radius: 6px;

    background: #fafbfc;

    color: #0b1b2b;

    font-size: 11px;

    outline: none;

    transition: .25s ease;
}

.zcp-input-wrap input {
    height: 42px;
    padding: 0 12px 0 37px;
}

.zcp-input-wrap textarea {
    min-height: 80px;

    resize: vertical;

    padding: 12px 12px 12px 37px;
}

.zcp-input-wrap textarea + i {
    top: 17px;
    transform: none;
}

.zcp-input-wrap input:focus,
.zcp-input-wrap textarea:focus {
    background: #fff;
    border-color: #e07a2c;

    box-shadow: 0 0 0 3px rgba(224,122,44,.08);
}

.zcp-input-wrap:focus-within > i {
    color: #e07a2c;
}


/* ==========================================
   SUBMIT
========================================== */

.zcp-submit-button {
    width: 100%;
    height: 44px;

    border: 0;
    border-radius: 6px;

    background: #e07a2c;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    font-size: 12px;
    font-weight: 700;

    cursor: pointer;

    transition: .3s ease;
}

.zcp-submit-button:hover {
    background: #0b1b2b;
}

.zcp-submit-button i {
    font-size: 10px;
}


/* SECURITY */

.zcp-form-security {
    margin-top: 14px;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;

    color: #999;

    font-size: 12px;
}

.zcp-form-security i {
    color: #e07a2c;
}


/* ==========================================
   OFFICE SECTION
========================================== */

.zcp-office-section {
    padding: 55px 0;

    background: #fff;
}

.zcp-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 25px;
}

.zcp-section-heading > div > span {
    display: block;

    color: #e07a2c;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.3px;

    margin-bottom: 4px;
}

.zcp-section-heading h2 {
    margin: 0;

    color: #0b1b2b;

    font-size: 27px;
    font-weight: 700;
}

.zcp-section-heading p {
    max-width: 350px;

    margin: 0;

    color: #777;

    font-size: 11px;
    line-height: 1.6;
}


/* ==========================================
   OFFICE CARD
========================================== */

.zcp-office-card {
    position: relative;

    min-height: 165px;

    display: flex;
    align-items: center;

    gap: 18px;

    padding: 25px;

    background: #f8f9fa;

    border: 1px solid #e4e7e9;
    border-radius: 10px;

    overflow: hidden;

    transition: .3s ease;
}

.zcp-office-card:hover {
    background: #0b1b2b;

    border-color: #0b1b2b;

    transform: translateY(-4px);
}


/* NUMBER */

.zcp-office-number {
    position: absolute;

    right: 20px;
    top: 12px;

    color: #e8eaec;

    font-size: 35px;
    font-weight: 800;

    transition: .3s ease;
}

.zcp-office-card:hover .zcp-office-number {
    color: rgba(255,255,255,.08);
}


/* ICON */

.zcp-office-icon {
    width: 55px;
    height: 55px;
    flex: 0 0 55px;

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

    background: #fff0e6;
    color: #e07a2c;

    border-radius: 9px;

    font-size: 20px;

    position: relative;
    z-index: 2;
}


/* CONTENT */

.zcp-office-content {
    position: relative;
    z-index: 2;
}

.zcp-office-content > span {
    display: block;

    color: #e07a2c;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1px;

    margin-bottom: 3px;
}

.zcp-office-content h3 {
    margin: 0 0 9px;

    color: #0b1b2b;

    font-size: 18px;
    font-weight: 700;
}

.zcp-office-address {
    display: flex;
    align-items: flex-start;
    gap: 7px;
}

.zcp-office-address i {
    color: #e07a2c;

    font-size: 11px;

    margin-top: 3px;
}

.zcp-office-address p {
    margin: 0;

    color: #666;

    font-size: 11px;
    line-height: 1.6;
}


/* HOVER TEXT */

.zcp-office-card:hover .zcp-office-content h3 {
    color: #fff;
}

.zcp-office-card:hover .zcp-office-address p {
    color: #b9c3ca;
}


/* CORNER */

.zcp-office-corner {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 42px;
    height: 42px;

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

    background: #e07a2c;
    color: #fff;

    border-radius: 25px 0 0 0;

    font-size: 10px;
}


/* ==========================================
   MAP
========================================== */

.zcp-map-section {
    padding: 0 0 60px;

    background: #fff;
}

.zcp-map-box {
    position: relative;

    overflow: hidden;

    border-radius: 12px;

    border: 1px solid #e1e4e6;

    box-shadow: 0 7px 25px rgba(11,27,43,.07);
}

.zcp-map-box iframe {
    display: block;
    width: 100%;
}


/* MAP LABEL */

.zcp-map-label {
    position: absolute;

    z-index: 5;

    left: 18px;
    top: 18px;

    display: flex;
    align-items: center;
    gap: 7px;

    padding: 9px 13px;

    background: #0b1b2b;
    color: #fff;

    border-radius: 5px;

    box-shadow: 0 4px 15px rgba(0,0,0,.15);
}

.zcp-map-label i {
    color: #e07a2c;

    font-size: 12px;
}

.zcp-map-label span {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .7px;
}


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

@media (max-width: 991px) {

    .zcp-contact-grid {
        grid-template-columns: 1fr;
    }

    .zcp-contact-info-panel {
        padding: 35px 30px;
    }

    .zcp-form-panel {
        padding: 32px 28px;
    }

}


@media (max-width: 767px) {

    .zcp-contact-section {
        padding: 40px 0;
    }

    .zcp-contact-info-panel {
        padding: 30px 20px;
        border-radius: 10px;
    }

    .zcp-contact-heading {
        font-size: 26px;
    }

    .zcp-contact-description {
        font-size: 12px;
        line-height: 1.65;
    }

    .zcp-detail-content a,
    .zcp-detail-content strong {
        font-size: 11px;
    }

    .zcp-phone-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 1px;
    }

    .zcp-phone-links b {
        display: none;
    }

    .zcp-form-panel {
        padding: 25px 18px;
        border-radius: 10px;
    }

    .zcp-form-top h3 {
        font-size: 21px;
    }

    .zcp-office-section {
        padding: 40px 0;
    }

    .zcp-section-heading {
        display: block;
    }

    .zcp-section-heading h2 {
        font-size: 24px;
    }

    .zcp-section-heading p {
        margin-top: 8px;
    }

    .zcp-office-card {
        padding: 20px;
    }

    .zcp-map-section {
        padding-bottom: 40px;
    }

    .zcp-map-box iframe {
        height: 350px;
    }

}

/* ==========================================
   SOCIAL LINKS
========================================== */

.zcp-social-area {
    position: relative;
    z-index: 2;

    margin-top: 24px;
    padding-top: 20px;

    border-top: 1px solid rgba(255,255,255,.10);

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.zcp-social-label {
    color: #8f9ba5;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 1.2px;
}


/* SOCIAL WRAPPER */

.zcp-social-links {
    display: flex;
    align-items: center;
    gap: 7px;
}


/* SOCIAL BUTTON */

.zcp-social-link {
    width: 32px;
    height: 32px;

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

    background: rgba(255,255,255,.06);

    border: 1px solid rgba(255,255,255,.10);

    border-radius: 6px;

    color: #d6dce1;

    font-size: 12px;

    text-decoration: none;

    transition: .25s ease;
}

.zcp-social-link:hover {
    background: #e07a2c;
    border-color: #e07a2c;

    color: #fff;

    transform: translateY(-3px);
}

/* ==========================================
   QVF FEEDBACK SECTION
========================================== */

.qvf-feedback-section {
    padding: 65px 0;
    background: #f7f8f9;
}

.qvf-feedback-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
    align-items: center;
}


/* ==========================================
   LEFT CONTENT
========================================== */

.qvf-feedback-content {
    padding-right: 20px;
}


/* TAG */

.qvf-feedback-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: #e07a2c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.4px;

    margin-bottom: 14px;
}

.qvf-feedback-tag i {
    font-size: 12px;
}


/* TITLE */

.qvf-feedback-title {
    margin: 0;

    color: #0b1b2b;

    font-size: 36px;
    line-height: 1.18;
    font-weight: 600;
}

.qvf-feedback-title span {
    display: block;
    color: #e07a2c;
}


/* TEXT */

.qvf-feedback-text {
    max-width: 570px;

    margin: 18px 0 27px;

    color: #66717a;

    font-size: 13px;
    line-height: 1.75;
}


/* ==========================================
   FEEDBACK POINTS
========================================== */

.qvf-feedback-points {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.qvf-feedback-point {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 11px 13px;

    background: #fff;

    border: 1px solid #e7e9eb;
    border-radius: 8px;

    transition: .3s ease;
}

.qvf-feedback-point:hover {
    border-color: rgba(224,122,44,.35);
    transform: translateX(4px);
}


/* ICON */

.qvf-point-icon {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;

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

    background: #fff0e7;

    color: #e07a2c;

    border-radius: 7px;

    font-size: 14px;
}


/* POINT TEXT */

.qvf-feedback-point span {
    display: block;

    color: #535353;

    font-size: 10px;
    font-weight: 600;

    letter-spacing: .8px;

    margin-bottom: 2px;
}

.qvf-feedback-point strong {
    display: block;

    color: #0b1b2b;

    font-size: 13px;

    font-weight: 600;
}


/* ==========================================
   QUOTE
========================================== */

.qvf-feedback-quote {
    position: relative;

    margin-top: 22px;
    padding: 14px 18px;

    border-left: 3px solid #e07a2c;

    background: #0b1b2b;
    border-radius: 0 7px 7px 0;
}

.qvf-feedback-quote i {
    position: absolute;

    right: 15px;
    top: 10px;

    color: rgba(224,122,44,.25);

    font-size: 22px;
}

.qvf-feedback-quote p {
    position: relative;
    z-index: 1;

    margin: 0;

    max-width: 500px;

    color: #d7dde1;

    font-size: 12px;
    line-height: 1.6;
}


/* ==========================================
   FORM CARD
========================================== */

.qvf-feedback-card {
    padding: 32px;

    background: #fff;

    border: 1px solid #e2e5e7;
    border-radius: 13px;

    box-shadow: 0 10px 35px rgba(11,27,43,.07);
}


/* CARD HEADER */

.qvf-feedback-card-head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.qvf-card-icon {
    width: 44px;
    height: 44px;

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

    background: #0b1b2b;
    color: #e07a2c;

    border-radius: 8px;

    font-size: 16px;
}

.qvf-feedback-card-head span {
    display: block;

    color: #e07a2c;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 1px;
}

.qvf-feedback-card-head h3 {
    margin: 2px 0 0;

    color: #0b1b2b;

    font-size: 22px;
    font-weight: 700;
}


/* DESCRIPTION */

.qvf-feedback-card-text {
    margin: 12px 0 21px;

    color: #737b81;

    font-size: 11px;
    line-height: 1.6;
}


/* ==========================================
   FORM
========================================== */

.qvf-feedback-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.qvf-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.qvf-form-field label {
    display: block;

    margin-bottom: 6px;

    color: #26343f;

    font-size: 10px;
    font-weight: 700;
}

.qvf-form-field label em {
    color: #e07a2c;
    font-style: normal;
}


/* INPUT */

.qvf-form-field input,
.qvf-form-field textarea {
    width: 100%;

    background: #fafbfc;

    border: 1px solid #dfe3e6;
    border-radius: 6px;

    outline: none;

    color: #0b1b2b;

    font-size: 11px;

    transition: .25s ease;
}

.qvf-form-field input {
    height: 41px;

    padding: 0 12px;
}

.qvf-form-field textarea {
    height: 105px;

    padding: 11px 12px;

    resize: vertical;
}

.qvf-form-field input::placeholder,
.qvf-form-field textarea::placeholder {
    color: #a7adb1;
}

.qvf-form-field input:focus,
.qvf-form-field textarea:focus {
    background: #fff;

    border-color: #e07a2c;

    box-shadow:
        0 0 0 3px rgba(224,122,44,.08);
}


/* ==========================================
   RATING
========================================== */

.qvf-rating {
    display: flex;
    align-items: center;
    gap: 5px;
}

.qvf-rating label {
    margin: 0;

    cursor: pointer;
}

.qvf-rating input {
    display: none;
}

.qvf-rating i {
    color: #d9dde0;

    font-size: 15px;

    transition: .2s ease;
}

.qvf-rating label:hover i,
.qvf-rating label:has(input:checked) i {
    color: #e07a2c;
}


/* ==========================================
   SUBMIT BUTTON
========================================== */

.qvf-feedback-submit {
    width: 100%;
    height: 43px;

    border: 0;
    border-radius: 6px;

    background: #e07a2c;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    font-size: 11px;
    font-weight: 700;

    cursor: pointer;

    transition: .3s ease;
}

.qvf-feedback-submit:hover {
    background: #0b1b2b;
}

.qvf-feedback-submit i {
    font-size: 10px;
}


/* ==========================================
   NOTE
========================================== */

.qvf-feedback-note {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 5px;

    margin-top: 12px;

    color: #999;

    font-size: 8px;
}

.qvf-feedback-note i {
    color: #e07a2c;
}


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

@media (max-width: 991px) {

    .qvf-feedback-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .qvf-feedback-content {
        padding-right: 0;
    }

}


@media (max-width: 575px) {

    .qvf-feedback-section {
        padding: 45px 0;
    }

    .qvf-feedback-title {
        font-size: 28px;
    }

    .qvf-feedback-text {
        font-size: 12px;
    }

    .qvf-feedback-card {
        padding: 23px 18px;
    }

    .qvf-form-row {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .qvf-feedback-point strong {
        font-size: 10px;
    }

}

/* ==========================================
   QTM ENQUIRY MODAL
========================================== */

.qtm-enquiry-modal .modal-dialog {
    max-width: 900px;
}

.qtm-modal-content {
    position: relative;

    overflow: hidden;

    border: 0;
    border-radius: 16px;

    background: #fff;

    box-shadow: 0 25px 70px rgba(0, 0, 0, .18);
}


/* CLOSE */

.qtm-close-btn {
    position: absolute;

    right: 15px;
    top: 15px;

    z-index: 10;

    width: 32px;
    height: 32px;

    border: 0;
    border-radius: 50%;

    background: rgba(255,255,255,.12);

    color: #e07a2c;

    border: 1px solid;

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

    font-size: 13px;

    cursor: pointer;
}


/* ==========================================
   LEFT INFO
========================================== */

.qtm-modal-info {
    height: 100%;

    padding: 42px 32px;

    background: #0b1b2b;

    color: #fff;
}

.qtm-modal-tag {
    display: inline-block;

    margin-bottom: 15px;

    color: #e07a2c;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.qtm-modal-info h2 {
    margin: 0;

    font-size: 30px;
    line-height: 1.2;
    font-weight: 600;
}

.qtm-modal-info h2 strong {
    display: block;

    color: #e07a2c;
}

.qtm-modal-info > p {
    margin: 17px 0 27px;

    color: #c5ced5;

    font-size: 12px;
    line-height: 1.7;
}


/* FEATURES */

.qtm-modal-features {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.qtm-modal-feature {
    display: flex;
    align-items: center;
    gap: 12px;

    font-size: 11px;
    color: #e7ebee;
}

.qtm-modal-feature i {
    width: 35px;
    height: 35px;

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

    flex: 0 0 35px;

    border-radius: 7px;

    background: rgba(224,122,44,.13);

    color: #e07a2c;

    font-size: 13px;
}


/* ==========================================
   FORM
========================================== */

.qtm-modal-form {
    padding: 25px 28px;
}

.qtm-form-heading span {
    color: #e07a2c;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.2px;
}

.qtm-form-heading h3 {
    margin: 4px 0 5px;

    color: #0b1b2b;

    font-size: 23px;
    font-weight: 700;
}

.qtm-form-heading p {
    margin: 0 0 20px;

    color: #7c858c;

    font-size: 10px;
}


/* FORM ROW */

.qtm-form-row {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 12px;
}


/* GROUP */

.qtm-form-group {
    margin-bottom: 12px;
}

.qtm-form-group label {
    display: block;

    margin-bottom: 5px;

    color: #273540;

    font-size: 13px;
    font-weight: 600;
}

.qtm-form-group label em {
    color: #e07a2c;

    font-style: normal;
}


/* INPUT */

.qtm-input-wrap {
    position: relative;
}

.qtm-input-wrap > i {
    position: absolute;

    left: 12px;
    top: 50%;

    transform: translateY(-50%);

    color: #a1a8ad;

    font-size: 11px;

    pointer-events: none;
}

.qtm-input-wrap input,
.qtm-input-wrap textarea {
    width: 100%;

    border: 1px solid #e1e5e8;
    border-radius: 6px;

    background: #fafbfc;

    color: #0b1b2b;

    font-size: 12px;

    outline: none;

    transition: .25s ease;
}

.qtm-input-wrap input {
    height: 40px;

    padding: 0 11px 0 33px;
}

.qtm-input-wrap textarea {
    height: 72px;

    padding: 10px 11px 10px 33px;

    resize: none;
}

.qtm-input-wrap textarea + i {
    top: 15px;

    transform: none;
}

.qtm-input-wrap input:focus,
.qtm-input-wrap textarea:focus {
    border-color: #e07a2c;

    background: #fff;

    box-shadow: 0 0 0 3px rgba(224,122,44,.08);
}


/* ==========================================
   SUBMIT
========================================== */

.qtm-submit-btn {
    width: 100%;
    height: 43px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    border: 0;
    border-radius: 6px;

    background: #e07a2c;
    color: #fff;

    font-size: 11px;
    font-weight: 700;

    cursor: pointer;

    transition: .3s ease;
}

.qtm-submit-btn:hover {
    background: #0b1b2b;
}

.qtm-submit-btn i {
    font-size: 10px;
}


/* ==========================================
   OPEN BUTTON
========================================== */

.qtm-open-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 11px 19px;

    border: 0;
    border-radius: 6px;

    background: #e07a2c;
    color: #fff;

    font-size: 11px;
    font-weight: 600;

    cursor: pointer;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .qtm-modal-content {
        margin: 10px;
    }

    .qtm-modal-info {
        padding: 30px 24px;
    }

    .qtm-modal-info h2 {
        font-size: 25px;
    }

    .qtm-modal-form {
        padding: 28px 22px;
    }

    .qtm-form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

}

/* ==========================================
   MODAL ALWAYS ABOVE FIXED HEADER
========================================== */

.qtm-enquiry-modal {
    z-index: 99999 !important;
}

.qtm-enquiry-modal .modal-dialog {
    position: relative;
    z-index: 100000;
}

.modal-backdrop {
    z-index: 99990 !important;
}