:root {
    --vt-primary: #0d0f7c;
    --vt-navy: #0d0f7c;
    --vt-sky: #00BFFF; /* Pure Sky Blue */
    --vt-accent: #A8894A;
}

body {
    font-family: 'Jost', sans-serif;
    padding-top: 80px !important; /* Matches inline navbar min-height exactly */
    font-size: 15px; /* Base font size */
}


body.home-page {
    padding-top: 0 !important; /* Home page hero handles its own spacing */
}



p {
    font-size: 14px;
    line-height: 1.6;
}

/* Revert font size for specific sections requested by user */
.testimonial-wrapper p {
    font-size: 18px !important;
    text-align: justify;
}

@media (max-width: 768px) {
    .testimonial-wrapper p {
        font-size: 15px !important;
        text-align: center;
    }
}


.travel-card p,
.travel-swiper p,
.section-head-content p.text {
    font-size: 16px !important;
}

/* Navbar and UI elements visibility and theme overrides */
.navbar {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 999999 !important;
    background-color: #0d0f7c !important;
    min-height: 55px !important; /* Even slimmer navbar */
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: all 0.3s ease;
    overflow: visible !important; /* Allow logo to overhang */
    border-bottom: none !important;
}


body.is-scrolled .navbar {
    background-color: #0d0f7c !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.2) !important;
}

/* Offset for fixed navbar */


.navbar .navbar-brand img {
    height: 70px !important; /* Slightly smaller to fit better */
    width: auto !important;
    border-radius: 8px;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 5px rgba(0,0,0,0.2));
}


.navbar .nav-link {
    transition: all 0.3s ease;
    font-size: 0.9rem;
    color: white !important;
}

.navbar .nav-link:hover, .navbar .nav-link.active {
    color: var(--vt-sky) !important;
}

/* 50% Off Badge Color Override (Green to Blue) */
/* Path updated to match original but with Navy Blue fill (%230d0f7c) */
.sale-badge::before {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='189' height='190' viewBox='0 0 189 190' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M89.0826 2.2765C91.8021 -0.756693 96.553 -0.756693 99.2724 2.2765V2.2765C101.618 4.89247 105.563 5.30715 108.401 3.23597V3.23597C111.692 0.834457 116.339 1.82223 118.368 5.35455V5.35455C120.118 8.40098 123.891 9.62689 127.098 8.19102V8.19102C130.816 6.52615 135.156 8.45853 136.407 12.3356V12.3356C137.485 15.6793 140.921 17.6629 144.356 16.9251V16.9251C148.339 16.0696 152.183 18.8622 152.6 22.9145V22.9145C152.96 26.4094 155.908 29.064 159.421 29.0565V29.0565C163.495 29.0478 166.674 32.5784 166.239 36.629V36.629C165.865 40.1223 168.197 43.3318 171.635 44.0549V44.0549C175.621 44.8934 177.997 49.0079 176.73 52.8796V52.8796C175.637 56.2187 177.25 59.8428 180.463 61.265V61.265C184.188 62.914 185.656 67.4324 183.612 70.9561V70.9561C181.849 73.995 182.674 77.8754 185.52 79.9345V79.9345C188.821 82.322 189.318 87.0469 186.585 90.0685V90.0685C184.229 92.6744 184.229 96.6416 186.585 99.2475V99.2475C189.318 102.269 188.821 106.994 185.52 109.381V109.381C182.674 111.441 181.849 115.321 183.612 118.36V118.36C185.656 121.884 184.188 126.402 180.463 128.051V128.051C177.25 129.473 175.637 133.097 176.73 136.436V136.436C177.997 140.308 175.621 144.423 171.635 145.261V145.261C168.197 145.984 165.865 149.194 166.239 152.687V152.687C166.674 156.738 163.495 160.268 159.421 160.26V160.26C155.908 160.252 152.96 162.907 152.6 166.401V166.401C152.183 170.454 148.339 173.246 144.356 172.391V172.391C140.921 171.653 137.485 173.637 136.407 176.98V176.98C135.156 180.857 130.816 182.79 127.098 181.125V181.125C123.891 179.689 120.118 180.915 118.368 183.961V183.961C116.339 187.494 111.692 188.482 108.401 186.08V186.08C105.563 184.009 101.618 184.424 99.2724 187.039V187.039C96.553 190.073 91.8021 190.073 89.0826 187.039V187.039C86.7373 184.424 82.7919 184.009 79.9539 186.08V186.08C76.6633 188.482 72.0161 187.494 69.9868 183.961V183.961C68.2366 180.915 64.4636 179.689 61.257 181.125V181.125C57.539 182.79 53.1988 180.857 51.9482 176.98V176.98C50.8696 173.637 47.434 171.653 43.9989 172.391V172.391C40.016 173.246 36.1724 170.454 35.7552 166.401V166.401C35.3954 162.907 32.4472 160.252 28.9338 160.26V160.26C24.8601 160.268 21.6811 156.738 22.1156 152.687V152.687C22.4902 149.194 20.1584 145.984 16.7203 145.261V145.261C12.7337 144.423 10.3582 140.308 11.6254 136.436V136.436C12.7182 133.097 11.1046 129.473 7.89192 128.051V128.051C4.16683 126.402 2.6987 121.884 4.7431 118.36V118.36C6.50628 115.321 5.68147 111.441 2.83467 109.381V109.381C-0.466165 106.994 -0.962773 102.269 1.76955 99.2475V99.2475C4.12603 96.6416 4.12603 92.6744 1.76955 90.0685V90.0685C-0.962773 87.0469 -0.466165 82.322 2.83467 79.9345V79.9345C5.68147 77.8755 6.50628 73.995 4.7431 70.9561V70.9561C2.6987 67.4324 4.16683 62.914 7.89192 61.265V61.265C11.1046 59.8428 12.7182 56.2187 11.6254 52.8796V52.8796C10.3582 49.0079 12.7337 44.8934 16.7203 44.0549V44.0549C20.1584 43.3318 22.4902 40.1223 22.1156 36.629V36.629C21.6811 32.5784 24.8601 29.0478 28.9338 29.0565V29.0565C32.4472 29.064 35.3954 26.4094 35.7552 22.9145V22.9145C36.1724 18.8622 40.016 16.0696 43.9989 16.9251V16.9251C47.434 17.6629 50.8696 15.6793 51.9482 12.3356V12.3356C53.1988 8.45853 57.539 6.52615 61.257 8.19102V8.19102C64.4636 9.62689 68.2366 8.40098 69.9868 5.35455V5.35455C72.0161 1.82223 76.6633 0.834457 79.9539 3.23597V3.23597C82.7919 5.30715 86.7373 4.89247 89.0826 2.2765V2.2765Z' fill='%230d0f7c'/%3e%3c/svg%3e") !important;
}

.sale-badge, .sale-badge strong {
    color: white !important;
}


/* Services Swiper Fix */
.services-swiper {
    padding-bottom: 50px !important;
}

.services-swiper .swiper-pagination-bullet-active {
    background: var(--vt-navy) !important; /* Changed to theme blue */
}

.service-card {
    transition: all 0.3s ease;
}

.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

/* Fix for overlapping issues */
.content-inner-1, .content-inner-2 {
    padding-top: 60px;
    padding-bottom: 30px;
}

.carousel-item {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    image-rendering: -webkit-optimize-contrast;
}

/* Booking Form Polish */
.booking-card {
    border-radius: 32px !important;
    border: none !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.12) !important;
    background: rgba(255, 255, 255, 0.98);
}

.booking-input-box {
    border: 1px solid #eef2f6 !important;
    background: #fdfdfe;
    transition: all 0.3s ease;
}

.booking-input-box:hover {
    border-color: var(--vt-primary) !important;
    background: #fff;
    box-shadow: 0 4px 15px rgba(13, 15, 124, 0.1);
}

.btn-search {
    background: var(--vt-navy) !important;
    color: white !important;
    border: none !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 15px rgba(13, 15, 124, 0.2);
    transition: all 0.3s ease;
}

.btn-search:hover {
    background: #0a0c64 !important; /* Slightly darker navy */
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(13, 15, 124, 0.3);
}

.nav-pills .nav-link.active {
    background-color: var(--vt-navy) !important;
    color: white !important;
    box-shadow: 0 8px 15px rgba(13, 15, 124, 0.2);
}

.nav-pills .nav-link {
    color: #666;
    padding: 10px 25px;
}

/* Change all Sky Blue buttons to Navbar Navy Blue */
.btn-primary, .btn-rounded-pill, .btn.btn-primary {
    background-color: var(--vt-navy) !important;
    border-color: var(--vt-navy) !important;
    color: white !important;
}

.btn-primary:hover, .btn.btn-primary:hover {
    background-color: #0a0c64 !important;
    border-color: #0a0c64 !important;
    color: white !important;
}


@media (max-width: 991px) {
    .navbar .container {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        max-width: 100% !important;
        flex-wrap: wrap !important; /* Allow menu to wrap to next line (downwards) */
    }
    
    .navbar .navbar-brand img {
        height: 50px !important; /* Smaller logo on mobile to prevent toggler wrapping */
    }
    
    .navbar .navbar-brand span {
        font-size: 1.1rem !important; /* Smaller text on mobile */
    }

    .navbar-toggler {
        margin-left: auto !important;
        order: 2 !important;
        padding: 4px 8px !important;
    }
    
    .navbar-brand {
        margin-right: 0 !important;
        order: 1 !important;
        max-width: 75% !important; /* Ensure toggler has room */
    }

    .navbar-collapse {
        order: 3 !important; /* Forces it to the next line, appearing "below" */
        width: 100% !important;
        background: #0d0f7c !important; /* Match navbar color */
        margin-top: 10px !important;
        border-radius: 0 0 15px 15px !important;
        padding: 15px !important;
        box-shadow: 0 10px 20px rgba(0,0,0,0.2) !important;
    }

    .booking-card {
        border-radius: 20px !important;
        padding: 1rem !important;
    }
}




/* Ensure no underlines or decorative lines on headings */
h1, h2, h3, h4, h5, h6, .title, .heading, .section-head, .section-head-title, .section-head-title .title {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

h1::after, h2::after, h3::after, h4::after, h5::after, h6::after,
.title::after, .heading::after, .section-head::after, .section-head-title::after,
h1::before, h2::before, h3::before, h4::before, h5::before, h6::before,
.title::before, .heading::before, .section-head::before, .section-head-title::before {
    content: none !important;
    display: none !important;
}

.dz-separator, .separator, .divider {
    display: none !important;
}

/* Arrow styling in blue circles with white arrows */
.carousel-control-prev-icon, .carousel-control-next-icon {
    background-color: var(--vt-navy) !important;
    background-size: 50% !important; /* Adjust arrow size inside circle */
    border-radius: 50%;
    opacity: 1 !important;
}


/* Fix Appointment & Booking Form Theme Polish */
.fix_appointment {
    background: white;
    padding: 30px;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(13, 15, 124, 0.15);
    margin-bottom: 50px;
    position: relative;
    z-index: 10;
}

.form-section {
    display: none;
}

.form-section.active {
    display: block;
}

.fix_appointment .tabs {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 25px;
    border-bottom: 2px solid #f0f0f0;
    padding-bottom: 15px;
}

.fix_appointment .tab {
    padding: 10px 30px;
    cursor: pointer;
    border-radius: 50px;
    font-weight: 600;
    color: #666;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid transparent;
    font-size: 0.9rem;
}

.fix_appointment .tab:hover {
    color: var(--vt-navy);
    background: rgba(13, 15, 124, 0.05);
}

.fix_appointment .tab.active {
    background-color: var(--vt-navy) !important;
    color: white !important;
    box-shadow: 0 8px 20px rgba(13, 15, 124, 0.25);
}

.field-group {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.field {
    flex: 1;
    min-width: 0; /* Prevent flex children from overflowing */
}

.fix_appointment .allfiled_box {
    position: relative;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 0 18px;
    height: 55px; /* Standardize height */
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f8f9fa;
    transition: all 0.3s ease;
}

.fix_appointment .allfiled_box:focus-within {
    border-color: var(--vt-navy);
    background: white;
    box-shadow: 0 0 0 4px rgba(13, 15, 124, 0.1);
}

.fix_appointment .icon {
    width: 20px;
    height: 20px;
    color: var(--vt-navy);
    fill: var(--vt-navy);
    flex-shrink: 0;
}

.fix_appointment input, 
.fix_appointment select,
.fix_appointment .phone-input {
    border: none !important;
    outline: none !important;
    width: 100% !important;
    height: 55px !important;
    background: transparent !important;
    font-size: 0.95rem;
    color: #333;
    font-weight: 500;
    margin: 0;
}

.fix_appointment input::placeholder {
    color: #999;
    font-weight: 400;
}

/* Passenger Dropdown */
.passenger-wrapper {
    position: relative;
    user-select: none;
}

.passenger-toggle {
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 0 18px; /* Consistent with allfiled_box */
    height: 55px !important; /* Strictly 55px */
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Fix for phone input wrapper height */
.iti {
    width: 100% !important;
}

.phone-input {
    height: 55px !important;
    padding-left: 95px; /* Base padding, library will override with precise value */
}

/* Ensure the dial code text doesn't steal clicks from the input area */
.iti__selected-dial-code {
    pointer-events: none;
    margin-left: 4px;
}

.passenger-wrapper:hover .passenger-toggle {
    border-color: #ccc;
}

.passenger-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    right: 0;
    background: white;
    box-shadow: 0 15px 45px rgba(0,0,0,0.15);
    border-radius: 15px;
    padding: 25px;
    z-index: 1000;
    border: 1px solid #eee;
}

.passenger-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

.passenger-row:last-child {
    margin-bottom: 0;
}

.passenger-row > span {
    font-weight: 600;
    color: #333;
}

.passenger-counter {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #f0f2f5;
    padding: 5px 12px;
    border-radius: 30px;
}

.passenger-counter button {
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 50%;
    background: white;
    color: var(--vt-navy);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem; /* Slightly smaller for icons */
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: all 0.2s ease;
}

.passenger-counter button:hover {
    background: var(--vt-navy);
    color: white;
    transform: scale(1.1);
}

.passenger-counter .count {
    font-weight: 700;
    min-width: 20px;
    text-align: center;
    color: #333;
}

.fix_appointment .search-btn {
    background-color: var(--vt-navy) !important;
    color: white !important;
    border: none !important;
    padding: 18px;
    border-radius: 14px;
    font-weight: 700;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 1rem;
    box-shadow: 0 8px 20px rgba(13, 15, 124, 0.2);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    margin-top: 10px;
}

.fix_appointment .search-btn:hover {
    background-color: #0a0c64 !important;
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(13, 15, 124, 0.35);
}

@media (max-width: 768px) {
    .field-group {
        flex-direction: column;
        gap: 15px;
    }
    .fix_appointment {
        padding: 20px;
        margin-top: -60px !important;
    }
}



/* Explore Section & List Point Fixes */
#explore .sub-title {
    color: var(--vt-navy) !important;
}

#explore .sale-badge::before {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='189' height='190' viewBox='0 0 189 190' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M89.0826 2.2765C91.8021 -0.756693 96.553 -0.756693 99.2724 2.2765V2.2765C101.618 4.89247 105.563 5.30715 108.401 3.23597V3.23597C111.692 0.834457 116.339 1.82223 118.368 5.35455V5.35455C120.118 8.40098 123.891 9.62689 127.098 8.19102V8.19102C130.816 6.52615 135.156 8.45853 136.407 12.3356V12.3356C137.485 15.6793 140.921 17.6629 144.356 16.9251V16.9251C148.339 16.0696 152.183 18.8622 152.6 22.9145V22.9145C152.96 26.4094 155.908 29.064 159.421 29.0565V29.0565C163.495 29.0478 166.674 32.5784 166.239 36.629V36.629C165.865 40.1223 168.197 43.3318 171.635 44.0549V44.0549C175.621 44.8934 177.997 49.0079 176.73 52.8796V52.8796C175.637 56.2187 177.25 59.8428 180.463 61.265V61.265C184.188 62.914 185.656 67.4324 183.612 70.9561V70.9561C181.849 73.995 182.674 77.8754 185.52 79.9345V79.9345C188.821 82.322 189.318 87.0469 186.585 90.0685V90.0685C184.229 92.6744 184.229 96.6416 186.585 99.2475V99.2475C189.318 102.269 188.821 106.994 185.52 109.381V109.381C182.674 111.441 181.849 115.321 183.612 118.36V118.36C185.656 121.884 184.188 126.402 180.463 128.051V128.051C177.25 129.473 175.637 133.097 176.73 136.436V136.436C177.997 140.308 175.621 144.423 171.635 145.261V145.261C168.197 145.984 165.865 149.194 166.239 152.687V152.687C166.674 156.738 163.495 160.268 159.421 160.26V160.26C155.908 160.252 152.96 162.907 152.6 166.401V166.401C152.183 170.454 148.339 173.246 144.356 172.391V172.391C140.921 171.653 137.485 173.637 136.407 176.98V176.98C135.156 180.857 130.816 182.79 127.098 181.125V181.125C123.891 179.689 120.118 180.915 118.368 183.961V183.961C116.339 187.494 111.692 188.482 108.401 186.08V186.08C105.563 184.009 101.618 184.424 99.2724 187.039V187.039C96.553 190.073 91.8021 190.073 89.0826 187.039V187.039C86.7373 184.424 82.7919 184.009 79.9539 186.08V186.08C76.6633 188.482 72.0161 187.494 69.9868 183.961V183.961C68.2366 180.915 64.4636 179.689 61.257 181.125V181.125C57.539 182.79 53.1988 180.857 51.9482 176.98V176.98C50.8696 173.637 47.434 171.653 43.9989 172.391V172.391C40.016 173.246 36.1724 170.454 35.7552 166.401V166.401C35.3954 162.907 32.4472 160.252 28.9338 160.26V160.26C24.8601 160.268 21.6811 156.738 22.1156 152.687V152.687C22.4902 149.194 20.1584 145.984 16.7203 145.261V145.261C12.7337 144.423 10.3582 140.308 11.6254 136.436V136.436C12.7182 133.097 11.1046 129.473 7.89192 128.051V128.051C4.16683 126.402 2.6987 121.884 4.7431 118.36V118.36C6.50628 115.321 5.68147 111.441 2.83467 109.381V109.381C-0.466165 106.994 -0.962773 102.269 1.76955 99.2475V99.2475C4.12603 96.6416 4.12603 92.6744 1.76955 90.0685V90.0685C-0.962773 87.0469 -0.466165 82.322 2.83467 79.9345V79.9345C5.68147 77.8755 6.50628 73.995 4.7431 70.9561V70.9561C2.6987 67.4324 4.16683 62.914 7.89192 61.265V61.265C11.1046 59.8428 12.7182 56.2187 11.6254 52.8796V52.8796C10.3582 49.0079 12.7337 44.8934 16.7203 44.0549V44.0549C20.1584 43.3318 22.4902 40.1223 22.1156 36.629V36.629C21.6811 32.5784 24.8601 29.0478 28.9338 29.0565V29.0565C32.4472 29.064 35.3954 26.4094 35.7552 22.9145V22.9145C36.1724 18.8622 40.016 16.0696 43.9989 16.9251V16.9251C47.434 17.6629 50.8696 15.6793 51.9482 12.3356V12.3356C53.1988 8.45853 57.539 6.52615 61.257 8.19102V8.19102C64.4636 9.62689 68.2366 8.40098 69.9868 5.35455V5.35455C72.0161 1.82223 76.6633 0.834457 79.9539 3.23597V3.23597C82.7919 5.30715 86.7373 4.89247 89.0826 2.2765V2.2765Z' fill='%230d0f7c'/%3e%3c/svg%3e") !important;
}

ul.list-check-circle li:before {
    content: "" !important;
    background-image: url('data:image/svg+xml,<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M26.3533 16.6898C25.8029 15.8337 25.2526 15.0082 24.7023 14.1521C24.58 13.9686 24.58 13.8464 24.7023 13.6629C25.2526 12.8374 25.7724 12.0119 26.3227 11.1863C26.9648 10.208 26.6285 9.26014 25.5278 8.86267C24.6105 8.52635 23.6933 8.15945 22.7761 7.82313C22.5926 7.76198 22.5009 7.63968 22.5009 7.42566C22.4703 6.41669 22.4092 5.40773 22.348 4.42934C22.2869 3.35922 21.4613 2.74773 20.4218 3.0229C19.4434 3.2675 18.465 3.54267 17.5172 3.81784C17.3032 3.87899 17.1809 3.81784 17.028 3.66497C16.4165 2.87002 15.7744 2.10566 15.1629 1.34129C14.4903 0.485196 13.4508 0.485196 12.7475 1.34129C12.1361 2.10566 11.494 2.87002 10.9131 3.63439C10.7602 3.84841 10.6073 3.87899 10.3627 3.81784C9.4149 3.54267 8.46709 3.29807 7.79445 3.11462C6.47973 2.80888 5.68479 3.32864 5.62364 4.42934C5.56249 5.4383 5.50134 6.44727 5.47077 7.48681C5.47077 7.70083 5.37904 7.79255 5.1956 7.88428C4.24778 8.25118 3.29996 8.61807 2.35215 8.98497C1.37376 9.38244 1.06801 10.3303 1.64893 11.2169C2.19927 12.073 2.74962 12.8985 3.29996 13.7546C3.42226 13.9381 3.42226 14.0604 3.29996 14.2744C2.71904 15.1305 2.1687 15.9866 1.61835 16.8732C1.09858 17.6988 1.4349 18.6772 2.35214 19.0441C3.29996 19.411 4.27835 19.7778 5.22616 20.1447C5.44019 20.2059 5.50133 20.3282 5.50133 20.5422C5.53191 21.5206 5.65421 22.4684 5.65421 23.4468C5.65421 24.4252 6.5103 25.3119 7.70271 24.945C8.65053 24.6392 9.59834 24.4252 10.5462 24.15C10.7296 24.0889 10.8519 24.1194 10.9742 24.3029C11.6163 25.0978 12.2278 25.8622 12.8698 26.6572C13.5731 27.5132 14.582 27.5132 15.2547 26.6572C15.8967 25.8622 16.5082 25.0978 17.1503 24.3029C17.2726 24.15 17.3643 24.0889 17.5783 24.15C18.5567 24.4252 19.5351 24.6698 20.5135 24.945C21.5225 25.2201 22.3786 24.6086 22.4091 23.5691C22.4703 22.5601 22.5314 21.5512 22.562 20.5116C22.562 20.267 22.6843 20.1753 22.8678 20.1142C23.785 19.7778 24.7328 19.411 25.6501 19.0441C26.6285 18.5549 26.9342 17.5765 26.3533 16.6898ZM19.0459 11.6755L12.931 17.7905C12.7781 17.9434 12.5641 18.0657 12.3501 18.0962C12.2889 18.0962 12.1972 18.1268 12.1361 18.1268C11.8609 18.1268 11.5551 18.0045 11.3411 17.7905L8.83399 15.2834C8.40594 14.8553 8.40594 14.1521 8.83399 13.724C9.26203 13.296 9.96525 13.296 10.3933 13.724L12.1055 15.4362L17.4255 10.1162C17.8535 9.68819 18.5567 9.68819 18.9848 10.1162C19.474 10.5443 19.474 11.2475 19.0459 11.6755Z" fill="%230d0f7c"/></svg>') !important;
}

#explore .list-check-circle li, .list-check-2 li {
    font-weight: 500;
}

/* Fix for any green SVG fills in the explore section */
#explore svg path[fill="#28a745"], 
#explore svg path[fill="green"],
#explore svg circle[fill="#28a745"] {
    fill: var(--vt-navy) !important;
}

.bg-higlight {
    background-color: rgba(13, 15, 124, 0.03) !important;
}

/* Global Clean-up: Remove underlines from all titles and destination links */
.section-head-title .title,
.dz-title,
.dz-title a,
.title,
.heading,
.location-card .title {
    text-decoration: none !important;
    border-bottom: none !important;
}

/* Remove decorative template lines under titles */
.section-head-title .title::after,
.section-head-title .title::before,
.dz-title::after,
.dz-title::before,
.heading::after,
.heading::before,
.dz-separator {
    display: none !important;
}

/* Ensure destination package links don't underline on hover */
.dz-title a:hover,
.location-card a:hover {
    text-decoration: none !important;
}







/* Upcoming Trips Hover Circle fix */
.travel-card .view-btn {
    background-color: var(--vt-navy) !important;
    color: white !important;
}

.travel-card:hover .view-btn {
    background-color: var(--vt-navy) !important;
    color: white !important;
}

.travel-card .travel-info .price,
.travel-card .travel-info .price strong {
    color: #ffffff !important;
}

/* Destination Hover Title color fix */
.dz-card.style-10:hover .dz-title a,
.dz-card.style-10.active .dz-title a {
    color: #fff !important; /* Reverted to white */
}

.dz-card.style-10:hover .location,
.dz-card.style-10.active .location {
    color: var(--vt-sky) !important; /* Bottom location name now sky blue for visibility */
}

/* Destination Hover Circle Icon color fix - Forced Visibility */
.dz-card.style-10 .dz-right .btn-primary,
.dz-card.style-10 .dz-right .btn.btn-primary.light,
.dz-card.style-10:hover .dz-right .btn-primary,
.dz-card.style-10 .dz-info .dz-right .btn-primary {
    background: var(--vt-sky) !important; /* Changed from background-color to background to override gradients */
    border-color: var(--vt-sky) !important;
    color: #fff !important;
}

.dz-card.style-10:hover .dz-right svg path,
.dz-card.style-10.active .dz-right svg path {
    stroke: white !important;
}
.side-users .swiper-pagination-bullet {
    width: 48px !important;
    height: 48px !important;
    flex-shrink: 0 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    opacity: 1 !important;
    border: 3px solid #fff !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
    background: #fff !important;
}

.side-users .swiper-pagination-bullet img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}

.myTestimonialSwiper {
    min-height: 400px !important;
    padding-bottom: 60px !important;
}

.testimonial-wrapper {
    min-height: 380px !important;
    display: flex !important;
    align-items: center !important;
    gap: 30px;
}

.testimonial-wrapper .profile-box {
    width: 180px;
    height: 180px;
    flex-shrink: 0;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}




.testimonial-wrapper .profile-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-content {
    flex: 1;
}

.myTestimonialSwiper.swiper-horizontal .side-users.swiper-pagination.swiper-pagination-bullets {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: auto !important;
    height: auto !important;
    min-height: 320px !important; /* Ensure enough height for all 5 images */
    max-height: none !important;
    background: #ffffff !important;
    padding: 30px 15px !important; /* Increased padding to enclose images better */
    border-radius: 40px !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.15) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 0px !important;
    z-index: 10 !important;
    overflow: visible !important;
}

.myTestimonialSwiper.swiper-horizontal .side-users .swiper-pagination-bullet-active {
    outline: none !important; /* Removed blue border */
    transform: scale(1.1);
    border-color: var(--vt-primary) !important; /* Keep white border consistent */
}

@media (max-width: 991px) {
    .testimonial-wrapper {
        flex-direction: column !important;
        text-align: center !important;
        min-height: auto !important;
        padding: 40px 20px 100px !important;
    }
    
    .testimonial-wrapper .profile-box {
        width: 150px;
        height: 150px;
        margin: 0 auto;
        border-radius: 50%;
    }




    .testimonial-content .quote-icon {
        margin: 0 auto 20px;
        text-align: center;
    }
    
    .testimonial-content .quote-icon svg {
        width: 40px !important;
        height: auto !important;
    }

    .side-users .swiper-pagination-bullet {
        width: 40px !important;
        height: 40px !important;
    }
    
    .myTestimonialSwiper.swiper-horizontal .side-users.swiper-pagination.swiper-pagination-bullets {
        flex-direction: row !important;
        top: auto !important;
        bottom: 85px !important; /* Moved up to avoid overlap with mobile nav (70px) */
        left: 50% !important;
        transform: translateX(-50%) !important;
        right: auto !important;
        min-height: auto !important;
        padding: 10px 20px !important;
        background: rgba(255, 255, 255, 0.95) !important;
        backdrop-filter: blur(5px);
    }
    
    .myTestimonialSwiper {
        min-height: auto !important;
    }
}


.border-dashed {
    border-style: dashed !important;
}

/* Global Typography Consistency */
footer p, 
footer li, 
footer li a,
footer div, 
footer span,
footer .small, 
footer .text-white-50 {
    font-size: 15px !important;
    line-height: 1.6 !important;
    font-family: 'Jost', sans-serif !important;
    font-weight: 400 !important;
    text-transform: none !important;
}

footer h4, footer h5 {
    font-size: 1.15rem !important;
    font-family: 'Jost', sans-serif !important;
}

/* ---- FLOATING WHATSAPP (Left Side) ---- */
.whatsapp-float {
    position: fixed;
    left: 20px;
    bottom: 30px;
    width: 60px;
    height: 60px;
    background-color: #25d366;
    color: #FFF !important;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.3);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: all 0.3s ease;
}
.whatsapp-float:hover {
    background-color: #128c7e;
    transform: scale(1.1);
    color: #FFF !important;
}

@media (max-width: 991px) {
    .whatsapp-float {
        display: none !important; /* Managed by mobile-bottom-nav */
    }
}

/* ---- MOBILE BOTTOM NAV ---- */
.fixed-bottom.d-lg-none, 
.mobile-bottom-nav {
    display: none !important; /* Reset existing bars if they conflict */
}

@media (max-width: 991px) {
    .fixed-bottom.d-lg-none, 
    .mobile-bottom-nav,
    .vt-mobile-nav {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        background: #ffffff !important;
        height: 70px !important;
        z-index: 999999 !important;
        border-top: 1px solid #eee !important;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1) !important;
        justify-content: space-around !important;
        align-items: center !important;
        padding-bottom: env(safe-area-inset-bottom) !important;
    }

    .vt-mobile-nav .nav-item {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-decoration: none !important;
        color: #666;
        font-size: 11px;
        font-weight: 500;
    }

    .vt-mobile-nav .nav-item i,
    .vt-mobile-nav .nav-item svg {
        font-size: 20px;
        margin-bottom: 4px;
        transition: all 0.2s;
    }

    .vt-mobile-nav .nav-item.active {
        color: var(--vt-primary);
        font-weight: 700;
    }

    .vt-mobile-nav .nav-item.whatsapp {
        color: #25d366;
    }

    .vt-mobile-nav .nav-item.call {
        color: var(--vt-primary);
    }
}

