/* ========================================
   CSS Variables - Color Scheme & Fonts
   ======================================== */
:root {
    /* Main Colors */
    --primary-color: #0d6efd;
    --secondary-color: #ff6b35;
    --dark-color: #1a1a2e;
    --light-color: #f8f9fa;
    --white-color: #ffffff;

    /* Gradient */
    --gradient-primary: linear-gradient(135deg, #0d6dfdd6 0%, #0052ccbf 100%);
    --gradient-secondary: linear-gradient(135deg, #ff6b35 0%, #ff4500 100%);
    --gradient-overlay: linear-gradient(
        135deg,
        rgba(13, 110, 253, 0.9) 0%,
        rgba(0, 82, 204, 0.85) 100%
    );

    /* Typography */
    --font-heading: "Montserrat", sans-serif;
    --font-body: "Poppins", sans-serif;

    /* Spacing */
    --section-padding: 40px 0;
    --transition: all 0.3s ease;
}

/* ========================================
   Base Styles
   ======================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
    color: var(--dark-color);
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading);
    font-weight: 700;
    line-height: 1.3;
    color: var(--dark-color);
}

a {
    text-decoration: none;
    transition: var(--transition);
}

img {
    max-width: 100%;
    height: auto;
}

.section-padding {
    padding: var(--section-padding);
}

/* ========================================
   Top Bar
   ======================================== */
.top-bar {
    background: var(--dark-color);
    padding: 5px 0;
    font-size: 14px;
}

.top-contact {
    margin: 5px 0px;
}

.top-contact a {
    color: var(--light-color);
    margin-right: 25px;
    display: inline-block;
}

.top-contact a i {
    margin-right: 5px;
    color: var(--primary-color);
}

.top-contact a:hover {
    color: var(--primary-color);
}

.top-social a {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    color: var(--white-color);
    margin-left: 8px;
    transition: var(--transition);
}

.top-social a:hover {
    background: var(--primary-color);
    transform: translateY(-3px);
}

/* ========================================
   Navigation
   ======================================== */
.navbar {
    background: #fffffff0;
    padding: 12px 0;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    transition: var(--transition);
}

.navbar.scrolled {
    padding: 10px 0;
}

.navbar-brand {
    max-width: 171px;
}

.navbar-brand img {
    width: 100%;
}

.navbar-nav .nav-link {
    color: var(--dark-color);
    font-weight: 500;
    padding: 3px 6px !important;
    font-size: 14px;
    margin: 0px 0px;
    border-radius: 8px;
    transition: var(--transition);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: var(--primary-color);
    background: rgba(13, 110, 253, 0.08);
}

.navbar-toggler {
    border: none;
    padding: 8px;
}

.navbar-toggler:focus {
    box-shadow: none;
}

.navbar .dropdown-menu {
    border: 1px solid rgba(13, 110, 253, 0.12);
    border-radius: 14px;
    padding: 8px;
    box-shadow: 0 12px 30px rgba(12, 48, 120, 0.14);
    top: 51px;
    height: 300px;
    overflow: hidden;
    overflow-y: auto;
}

.navbar .dropdown-item {
    border-radius: 10px;
    padding: 10px 14px;
    font-weight: 500;
}

.navbar .dropdown-item:hover {
    background: rgba(13, 110, 253, 0.1);
    color: var(--primary-color);
}

@media (max-width: 991px) {
    .navbar {
        padding: 10px 0;
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: blur(8px);
    }

    .navbar .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .navbar-toggler {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        background: linear-gradient(135deg, #0d6efd, #0052cc);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .navbar-toggler .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.96)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.4' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        width: 1.2em;
        height: 1.2em;
    }

    .navbar-collapse {
        margin-top: 12px;
        padding: 14px;
        border-radius: 18px;
        border: 1px solid rgba(13, 110, 253, 0.12);
        background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
        box-shadow: 0 16px 35px rgba(8, 31, 82, 0.12);
    }

    .navbar-nav {
        gap: 6px;
    }

    .navbar-nav .nav-link {
        margin: 0;
        padding: 4px 8px !important;
        border-radius: 3px;
    }

    .navbar .dropdown-toggle::after {
        float: right;
        margin-top: 10px;
    }

    .navbar .dropdown-menu {
        position: static !important;
        transform: none !important;
        width: 100%;
        margin-top: 6px;
        border-radius: 12px;
        box-shadow: none;
        background: #f2f7ff;
        height: auto;
    }

    .navbar .btn.ms-3 {
        margin-left: 0 !important;
        margin-top: 10px;
        width: 100%;
    }

    .navbar .dropdown-item {
        padding: 2px 5px;
        font-weight: 500;
        font-size: 12px;
    }
}

/* ========================================
   Buttons
   ======================================== */
.btn {
    font-family: var(--font-heading);
    font-weight: 600;
    padding: 8px 25px;
    border-radius: 50px;
    border: none;
    transition: var(--transition);
}

.btn-primary {
    background: var(--secondary-color);
    color: var(--white-color);
    border: 2px solid #ff6b35;
    box-shadow: 0 4px 15px rgba(240, 211, 69, 0.3);
    font-size: 15px;
}

.btn-primary:hover {
    box-shadow: 0 6px 20px rgba(231, 130, 6, 0.4);
    background: #fff;
    color: var(--secondary-color);
}

.btn-outline-primary {
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
    background: transparent;
}

.btn-outline-primary:hover {
    background: var(--primary-color);
    color: var(--white-color);
    transform: translateY(-3px);
}

.btn-outline-light {
    border: 2px solid #022058;
    color: #022058;
    background: transparent;
    font-size: 15px;
}

.btn-outline-light:hover {
    background: var(--white-color);
    color: var(--primary-color);
    transform: translateY(-3px);
}

.btn-primary a {
    text-decoration: none !important;
}

/* ========================================
   Hero Section
   ======================================== */
.hero-section {
    position: relative;
    background: url("../../assets/images/home-taxi-hero.png") center/cover
        no-repeat;
    min-height: 70vh;
    display: flex;
    align-items: center;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background: var(--gradient-overlay); */
    background: linear-gradient(
        135deg,
        rgb(13 110 253 / 60%) 0%,
        rgba(0, 82, 204, 0.85) 100%
    );
}

.hero-content {
    position: relative;
    z-index: 2;
    color: var(--white-color);
    padding: 40px 0px;
}
.hero-top-sub-title {
    color: var(--secondary-color);
    font-size: 18px;
}

.hero-title {
    font-size: 50px;
    font-weight: 800;
    margin-bottom: 0px;
    animation: fadeInUp 1s ease;
    color: #001b48;
}

.hero-subtitle {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--secondary-color);
    animation: fadeInUp 1.2s ease;
}

.hero-text {
    font-size: 15px;
    margin-bottom: 40px;
    max-width: 600px;
    opacity: 0.95;
    animation: fadeInUp 1.4s ease;
    color: #001b48;
    font-weight: 600;
}

.hero-buttons {
    margin-bottom: 25px;
    animation: fadeInUp 1.6s ease;
}

.hero-features {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.457);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 10px 10px;
    max-width: 340px;
}

.feature-item {
    text-align: center;
}

.feature-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgb(255 100 48);
    background: #fff;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 5px;
}

.feature-divider {
    height: 20px;
    width: 2px;
    color: #001b48;
}

.feature-icon i {
    font-size: 22px;
    color: #ff7532;
}

.feature-item h4 {
    color: #001b4a;
    font-size: 10px;
    line-height: 1.3;
    font-weight: 600;
    margin: 0;
}

.hero-taxi {
    border-radius: 10px;
    padding: 5px 10px;
    background: #fff;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    margin-top: 25px;
    max-width: 525px;
}

.hero-taxi-item {
    text-align: center;
    position: relative;
}

.hero-taxi-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -10px;
    top: 15%;
    width: 1px;
    height: 70%;
    background: #e5e5e5;
}

.hero-taxi-item img {
    width: 100px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.hero-taxi-item h4 {
    font-size: 14px;
    font-weight: 700;
    color: #1d2a4d;
    margin: 0px;
}

.hero-taxi-item p {
    margin: 0;
    color: #ff7a34;
    font-size: 12px;
    font-weight: 600;
}

/* Mobile */
@media (max-width: 767px) {
    .hero-taxi {
        padding: 5px;
        gap: 10px;
        border-radius: 10px;
        margin-top: 20px;
    }

    .hero-taxi-item img {
        width: 60px;
    }

    .hero-taxi-item h4 {
        font-size: 10px;
        line-height: 10px;
    }

    .hero-taxi-item p {
        font-size: 9px;
    }
}

@media (max-width: 768px) {
    .hero-features {
        justify-content: space-between;
        gap: 5px;
    }

    .feature-icon {
        width: 30px;
        height: 30px;
        margin: 0 auto 6px;
    }

    .feature-icon i {
        font-size: 18px;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Right Side Form */
.rightSide {
    position: relative;
    z-index: 9;
    border-radius: 20px;
    margin: 30px 0px;
}

.hero-booking-card {
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 30px 70px rgba(8, 22, 52, 0.36);
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: #fff;
}

.hero-booking-card .modal-dialog {
    margin: 0;
    max-width: 100%;
}

.hero-booking-card .modal-content {
    border: none;
    border-radius: 24px;
    background: transparent;
    box-shadow: none;
}

.hero-booking-card .modal-header {
    border: 0;
    padding: 28px 28px 8px;
}

.hero-booking-card .booking-title-wrap {
    width: 100%;
}

.hero-booking-card .booking-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    letter-spacing: 0.2px;
    font-weight: 700;
    text-transform: uppercase;
    color: #0f3360;
    background: linear-gradient(135deg, #e6efff, #f8f3e7);
    border: 1px solid #d5e3ff;
    border-radius: 999px;
    padding: 6px 12px;
    margin-bottom: 12px;
}

.hero-booking-card .modal-title {
    margin: 0;
    font-size: 34px;
    line-height: 1.1;
    color: #102a53;
    letter-spacing: -0.4px;
}

.hero-booking-card .booking-subtitle {
    margin: 10px 0 0;
    color: #5a6980;
    font-size: 14px;
    font-weight: 500;
}

.hero-booking-card .modal-body {
    padding: 0px 28px 28px;
}

.hero-booking-card #bookingTabs {
    display: flex;
    width: 100%;
    gap: 10px;
    margin-bottom: 5px;
}

.hero-booking-card #bookingTabs .nav-item {
    flex: 1;
}

.hero-booking-card #bookingTabs .nav-link {
    width: 100%;
    border: 0;
    border-radius: 999px;
    background: #edf3ff;
    color: #37517e;
    padding: 5px 18px;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.25s ease;
    border-radius: 5px;
}

.hero-booking-card #bookingTabs .nav-link:hover {
    transform: translateY(-1px);
    background: #dfeaff;
}

.hero-booking-card #bookingTabs .nav-link.active {
    background: linear-gradient(135deg, #ff7a34, #ff5f2e);
    color: #fff;
    box-shadow: 0 10px 24px rgba(255, 111, 49, 0.28);
}

.hero-booking-card .booking-trust-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 0 0 0px;
    margin-bottom: 0px;
    border-bottom: 1px dashed #d4e2fb;
}

.hero-booking-card .booking-trust-strip span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 600;
    color: #4f6284;
    margin-bottom: 10px;
}

.hero-booking-card .booking-trust-strip i {
    color: #ff6b35;
}

.hero-booking-card .booking-form .form-label {
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
    color: #1f3256;
}

.hero-booking-card .booking-form .form-control,
.hero-booking-card .booking-form .form-select {
    border-radius: 12px;
    border: 1px solid #ccdbf8;
    background-color: #fbfdff;
    min-height: 44px;
    padding: 8px 14px;
    font-size: 14px;
    color: #1d2f52;
    transition: all 0.25s ease;
}

.hero-booking-card .booking-form .form-control::placeholder {
    color: #8b9bb5;
}

.hero-booking-card .booking-form .form-control:focus,
.hero-booking-card .booking-form .form-select:focus {
    border-color: #4d83ff;
    box-shadow: 0 0 0 0.22rem rgba(77, 131, 255, 0.15);
    background-color: #fff;
}

.hero-booking-card .booking-form .btn.btn-primary {
    border-radius: 14px;
    padding: 12px 20px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.2px;
    background: linear-gradient(135deg, #ff7a34, #ff5f2e);
    box-shadow: 0 14px 30px rgba(255, 101, 45, 0.32);
    border: 0;
}

.hero-booking-card .booking-form .btn.btn-primary:hover {
    background: linear-gradient(135deg, #ff6a23, #f64f22);
    color: #fff;
    box-shadow: 0 18px 34px rgba(255, 101, 45, 0.4);
}

.booking-modal-premium .modal-dialog {
    max-width: 600px;
}

.booking-modal-premium .modal-content {
    border: none;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 30px 70px rgba(8, 22, 52, 0.38);
    background: linear-gradient(
        160deg,
        rgba(255, 255, 255, 0.98),
        rgba(244, 248, 255, 0.96)
    );
}

.booking-modal-premium .modal-header {
    border: 0;
    padding: 26px 28px 8px;
    align-items: flex-start;
}

.booking-modal-premium .booking-title-wrap {
    width: calc(100% - 44px);
}

.booking-modal-premium .booking-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    letter-spacing: 0.2px;
    font-weight: 700;
    text-transform: uppercase;
    color: #0f3360;
    background: linear-gradient(135deg, #e6efff, #f8f3e7);
    border: 1px solid #d5e3ff;
    border-radius: 999px;
    padding: 6px 12px;
    margin-bottom: 12px;
}

.booking-modal-premium .modal-title {
    margin: 0;
    font-size: 34px;
    line-height: 1.1;
    color: #102a53;
    letter-spacing: -0.4px;
}

.booking-modal-premium .booking-subtitle {
    margin: 10px 0 0;
    color: #5a6980;
    font-size: 14px;
    font-weight: 500;
}

.booking-modal-premium .btn-close {
    margin-top: 6px;
}

.booking-modal-premium .modal-body {
    padding: 10px 28px 28px;
}

.booking-modal-premium #bookingTabsModal {
    justify-content: center;
    gap: 10px;
}

.booking-modal-premium #bookingTabsModal .nav-link {
    border: 0;
    border-radius: 999px;
    background: #edf3ff;
    color: #37517e;
    padding: 9px 18px;
    margin-right: 0;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.25s ease;
}

.booking-modal-premium #bookingTabsModal .nav-link:hover {
    transform: translateY(-1px);
    background: #dfeaff;
}

.booking-modal-premium #bookingTabsModal .nav-link.active {
    background: linear-gradient(135deg, #ff7a34, #ff5f2e);
    color: #fff;
    box-shadow: 0 10px 24px rgba(255, 111, 49, 0.28);
}

.booking-modal-premium .booking-trust-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 0 0 16px;
    margin-bottom: 18px;
    border-bottom: 1px dashed #d4e2fb;
}

.booking-modal-premium .booking-trust-strip span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 600;
    color: #4f6284;
}

.booking-modal-premium .booking-trust-strip i {
    color: #ff6b35;
}

.booking-modal-premium .booking-form .form-label {
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
    color: #1f3256;
}

.booking-modal-premium .booking-form .form-control,
.booking-modal-premium .booking-form .form-select {
    border-radius: 12px;
    border: 1px solid #ccdbf8;
    background-color: #fbfdff;
    min-height: 44px;
    padding: 8px 14px;
    font-size: 14px;
    color: #1d2f52;
    transition: all 0.25s ease;
}

.booking-modal-premium .booking-form .form-control::placeholder {
    color: #8b9bb5;
}

.booking-modal-premium .booking-form .form-control:focus,
.booking-modal-premium .booking-form .form-select:focus {
    border-color: #4d83ff;
    box-shadow: 0 0 0 0.22rem rgba(77, 131, 255, 0.15);
    background-color: #fff;
}

.booking-modal-premium .booking-form .btn.btn-primary {
    border-radius: 14px;
    padding: 12px 20px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.2px;
    background: linear-gradient(135deg, #ff7a34, #ff5f2e);
    box-shadow: 0 14px 30px rgba(255, 101, 45, 0.32);
    border: 0;
}

.booking-modal-premium .booking-form .btn.btn-primary:hover {
    background: linear-gradient(135deg, #ff6a23, #f64f22);
    color: #fff;
    box-shadow: 0 18px 34px rgba(255, 101, 45, 0.4);
}

/* ========================================
   Section Headers
   ======================================== */
.section-header {
    margin-bottom: 40px;
}

.section-subtitle {
    display: inline-block;
    color: var(--primary-color);
    font-weight: 600;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
    padding-left: 50px;
}

.section-subtitle::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 2px;
    background: var(--secondary-color);
}

.section-title {
    font-size: 38px;
    font-weight: 800;
}

.section-title span {
    color: var(--secondary-color);
}

.section-description {
    font-size: 18px;
    color: #6c757d;
    max-width: 900px;
    margin: 0 auto;
}

/* ========================================
   Services Section
   ======================================== */
.services-section {
    background: var(--light-color);
}

.service-card {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.service-card img {
    height: 200px;
    border-radius: 10px;
    width: 100%;
    object-fit: cover;
    position: relative;
    transition: transform 0.4s ease;
}

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

.homeservicecontent {
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    padding: 5px 10px;
    color: white;
    background: linear-gradient(to top, rgb(0 0 0 / 88%), transparent);
    border-radius: 0 0 10px 10px;
}

.homeservicecontent h3 {
    color: #fff;
    font-size: 18px;
    text-transform: capitalize;
    margin-bottom: 5px;
}

.homeservicecontent-btn {
    display: flex;
    gap: 5px;
    width: 100%;
}

/* Common button style */
.homeservicecontent-btn a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    border-radius: 5px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-sizing: border-box;
}

/* Enquery Button */
.homeservicecontent_enq_btn {
    background: #ff6b35;
    color: #fff;
    border: none;
}

/* View Details Button */
.homeservicecontent_view_deatails_btn {
    background: #0d6efd;
    color: #fff;
}

/* Hover Effects */
.homeservicecontent_enq_btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(37, 99, 235, 0.3);
}

.homeservicecontent_view_deatails_btn:hover {
    transform: translateY(-2px);
}

/* Right Side Image */
.right_side_serv_img_main {
    position: relative;
    overflow: hidden;
}

.right_side_serv_img_main img {
    width: 100%;
    height: 417px;
    border-radius: 10px;
    object-fit: inherit;
}

.right_side_serv_img_main a {
    display: block;
    position: relative;
}

.right_side_serv_img_main h2 {
    position: absolute;
    bottom: 20px;
    left: 20px;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    margin: 0;
    z-index: 2;
}

.right_side_serv_img_main a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
    border-radius: 10px;
    z-index: 1;
}

/* ========================================
   Why Choose Us Section
   ======================================== */
.why-choose-section {
    position: relative;
    background: url("https://images.unsplash.com/photo-1519003722824-194d4455a60c?q=80&w=1920")
        center center/cover no-repeat;
    overflow: hidden;
}

.why-choose-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(9, 83, 196, 0.85);
}

.why-choose-section .container {
    position: relative;
    z-index: 2;
}

.why-choose-image {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    background: #000;
}

.why-choose-image img {
    border-radius: 20px;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15);
}

.experience-badge {
    position: absolute;
    bottom: 30px;
    right: 30px;
    background: var(--gradient-primary);
    color: var(--white-color);
    padding: 30px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(13, 110, 253, 0.3);
}

.experience-badge h3 {
    font-size: 48px;
    font-weight: 800;
    color: var(--white-color);
    margin: 0;
}

.experience-badge p {
    font-size: 14px;
    margin: 0;
    font-weight: 600;
}

.why-choose-content {
    padding-left: 30px;
}

.feature-list {
    margin-top: 30px;
}

.feature-list-item {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
    padding: 20px 15px;
    background: var(--light-color);
    border-radius: 15px;
    transition: var(--transition);
}

.feature-list-item:hover {
    background: var(--white-color);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transform: translateX(10px);
}

.feature-icon-small {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gradient-primary);
    border-radius: 15px;
    flex-shrink: 0;
}

.feature-icon-small i {
    font-size: 24px;
    color: var(--white-color);
}

.feature-list-item h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 8px;
}

.feature-list-item p {
    color: #6c757d;
    margin: 0;
    font-size: 15px;
}

/* Call to Book with Us */
.call-to-book-banner-section {
    background-color: #000;
}

.call-to-book-banner-hero-img {
    height: 380px;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.call-to-book-banner-hero-img img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: auto;
    height: 100%;
}

.call-to-book-btn-container {
    display: inline-flex;
    align-items: center;
    border-radius: 8px;
    gap: 12px;
    margin-top: 15px;
}

.call-icon {
    width: 45px;
    height: 45px;
    background: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.call-icon i {
    color: #fff;
    font-size: 18px;
}

.call-text span {
    display: block;
    color: #fff;
    font-size: 14px;
}

.call-text a {
    display: block;
    color: var(--primary-color);
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}

.call-text a:hover {
    color: var(--secondary-color);
}

/* Home Expolore Royal Rajaasthan card */
.hm-tour-cat {
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
    transition: 0.4s ease;
    cursor: pointer;
}

.hm-tour-cat-img {
    position: relative;
    height: 240px;
    overflow: hidden;
    border-radius: 10px;
}

.hm-tour-cat-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s ease;
}

.hm-tour-cat-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.85) 10%,
        rgba(0, 0, 0, 0.15) 55%,
        rgba(0, 0, 0, 0.05) 100%
    );
}

.hm-tour-cat-content {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    color: #fff;
}

.hm-tour-cat-subtitle {
    display: inline-block;
    font-size: 14px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 0px;
    color: #f5c36b;
}

.hm-tour-cat-content h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    margin-bottom: 0px;
}

.hm-tour-cat-content p {
    margin: 0;
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 0px;
}

.hm-tour-cat:hover img {
    transform: scale(1.1);
}

/* ========================================
   Fleet Section
   ======================================== */
.fleet-section {
    background: var(--light-color);
}

.fleet-card {
    background: var(--white-color);
    border-radius: 10px;
    overflow: hidden;
    transition: var(--transition);
    border: 1px solid #dadada;
    height: 100%;
}

.fleet-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.fleet-image {
    position: relative;
    overflow: hidden;
    height: 250px;
}

.fleet-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition);
}

.fleet-card:hover .fleet-image img {
    transform: scale(1.1);
}

.fleet-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background: var(--gradient-secondary);
    color: var(--white-color);
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
}

.fleet-badge.luxury {
    background: var(--gradient-primary);
}

.fleet-content {
    padding: 5px 15px 15px 15px;
}

.fleet-content h3 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 5px;
}

.fleet-description {
    color: #6c757d;
    font-size: 14px;
    margin-bottom: 10px;
}

.fleet-features {
    display: flex;
    gap: 5px;
    margin-bottom: 5px;
    flex-wrap: wrap;
    justify-content: space-around;
}

.fleet-features span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #6c757d;
}

.fleet-features span i {
    color: var(--primary-color);
}

.fleet-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 5px;
    border-top: 1px solid #e9ecef;
}

.fleet-price {
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.fleet-price .price {
    font-size: 22px;
    font-weight: 800;
    color: var(--primary-color);
}

.fleet-price .per-km {
    font-size: 14px;
    color: #6c757d;
}

.estimated-price-tag {
    color: var(--primary-color);
    font-size: 14px;
}

.fleet-hm-btns {
    display: flex;
    gap: 5px;
}

.fleet-hm-btns a {
    flex: 1;
    padding: 4px;
    font-size: 10px;
    text-align: center;
    border-radius: 3px;
    text-decoration: none;
    transition: 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fleet-hm-btns--view {
    background: #0d6efd;
    color: #fff;
}

.fleet-hm-btns--enquiry {
    background: #ff6b35;
    color: #fff;
}

.fleet-hm-btns--whtasaap {
    background: #25d366;
    color: #fff;
    max-width: 40px;
}

.fleet-hm-btns--whtasaap i {
    font-size: 17px;
}

.fleet-hm-btns a:hover {
    opacity: 0.9;
}

@media (max-width: 450px) {
    .fleet-hm-btns a {
        font-size: 12px;
        border-radius: 3px;
    }
}

/* ========================================
   Top sighting Section
   ======================================== */

.topsighting {
    background: #e9ecef;
}

.topsighting-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    cursor: pointer;
}

.topsightingCardImage img {
    height: 350px;
    width: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    display: block;
}

.topsighting-card:hover img {
    transform: scale(1.1);
}

.topsighting-content {
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    padding: 15px;
    color: white;
    background: linear-gradient(to top, rgb(0 0 0 / 88%), transparent);
    border-radius: 0 0 10px 10px;
}

.topsighting-content h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 15px;
    color: #fff;
    text-align: center;
    text-transform: capitalize;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.topsighting-button {
    display: flex;
    display: flex;
    justify-content: space-between;
}

.topsighting-button a {
    padding: 4px 20px;
    border-radius: 25px;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
}

/* Enquiry Button */
.btn-enquiry {
    background: #ffffff;
    color: var(--primary-color);
}

.btn-enquiry:hover {
    background: var(--primary-color);
    color: #fff;
}

/* Book Button */
.btn-book {
    background: var(--secondary-color);
    color: #fff;
}

.btn-book:hover {
    background: #fff;
    color: var(--secondary-color);
}

/* ========================================
  Group Taxi Section
   ======================================== */
.GropTourCardSection {
    background: #efdec343;
}

.GropTourCard {
    position: relative;
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
    background: #000;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    font-family: "Poppins", sans-serif;
}

.GropTourCardImage img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block;
}

.GropTourCardOverlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 40px 15px 20px;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.9),
        rgba(0, 0, 0, 0.4),
        transparent
    );
    text-align: center;
}

.GropTourCardTitle {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 0px;
    font-family: var(--font-heading);
}

.GropTourCardText {
    color: #ddd;
    font-size: 18px;
    margin-bottom: 5px;
}

.GropTourCardButtonWrapper {
    display: flex;
    justify-content: space-between;
}

.GropTourCardButton {
    display: inline-block;
    padding: 1px 15px;
    border-radius: 5px;
    background: transparent;
    border: 1px solid #fff;
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    transition: 0.3s ease;
}

.GropTourCardButton:hover {
    background: #fff;
    color: #000;
}

/* Book Now button special style */
.GropTourCardButtonPrimary {
    background: var(--secondary-color);
    border: 1px solid var(--secondary-color);
    color: #fff;
}

.GropTourCardButtonPrimary:hover {
    background: #fff;
    border-color: #fff;
}

/* Ribbon */
.GropTourCardRibbon {
    position: absolute;
    top: 20px;
    left: -58px;
    background: var(--primary-color);
    color: #fff;
    padding: 1px 60px;
    font-weight: 600;
    font-size: 12px;
    transform: rotate(-45deg);
    z-index: 2;
}

/* ========================================
  Group Taxi Section End
   ======================================== */

/* ========================================
   Start Our Transport Expresss Section
   ======================================== */
.ourTranspotExpressSection {
    background: #000;
}

.ourTranspotExpressCard {
    background: #000;
    text-align: center;
    padding: 40px 20px;
}

.ourTranspotExpressCardTitle {
    color: var(--secondary-color);
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
}

/* OUTER CIRCLE */
.ourTranspotExpressCardCircle {
    position: relative;
    width: 160px;
    height: 160px;
    margin: auto;
    border: 3px solid #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* INNER CIRCLE */
.ourTranspotExpressCardInnerCircle {
    width: 140px;
    height: 140px;
    background: #e5e5e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ourTranspotExpressCardInnerCircle img {
    width: 60px;
}

/* DOT WRAPPER rotates */
.ourTranspotExpressCardDotWrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;

    animation: rotateDot 4s linear infinite;
}

/* DOT exact border par */
.ourTranspotExpressCardDot {
    position: absolute;
    width: 10px;
    height: 10px;
    background: #fff;
    border-radius: 50%;

    top: 50%;
    left: -6px;
    /* half outside */
    transform: translateY(-50%);
}

/* ROTATION */
@keyframes rotateDot {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.ourTranspotExpressCardDesc {
    color: #ddd;
    font-size: 16px;
    margin-top: 25px;
    line-height: 1.4;
}

/* ========================================
  Group Taxi Section End
   ======================================== */

/* ========================================
   Tours Section
   ======================================== */
.tours-section {
    background: var(--white-color);
}

.hm-tour-card {
    width: 100%;
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid #0d6efd;
}

/* IMAGE */
.hm-tour-card__img-wrap {
    position: relative;
    height: 220px;
}

.hm-tour-card__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hm-tour-card__img-wrap::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 70%;

    /*background: url("/assets/images/cradoverlay.png") no-repeat right bottom;*/
    background-size: contain;

    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.75) 0%,
        rgba(0, 0, 0, 0.45) 40%,
        rgba(0, 0, 0, 0) 100%
    );

    pointer-events: none;
    z-index: 1;
}

.hm-tour-card__duration {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #ffffffc2;
    color: #fe6a36;
    font-weight: 600;
    padding: 2px 14px;
    border-radius: 20px;
    font-size: 14px;
    z-index: 2;
}

.hm-tour-card__duration i {
    margin-right: 3px;
}

.hm-tour-card__body {
    padding: 5px 15px 15px 15px;
}

.hm-tour-card__title {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1;
    min-height: 40px;
    position: relative;
    z-index: 99;
    margin-top: -54px;
}

.hm-tour-card__title span {
    font-weight: 400;
    color: #555;
}

.hm-tour-card__underline {
    width: 100%;
    height: 1px;
    background: #ff6b35;
    margin: 8px 0 12px;
    border-radius: 5px;
}

.hm-tour-card__route {
    font-size: 14px;
    color: #555;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0px;
    line-height: 1.2;
}

.hm-tour-card__route i {
    color: #ff6b35;
    margin-right: 6px;
}

.hm-tour-card__divider {
    height: 1px;
    background: #eee;
    margin: 8px 0;
}

.hm-tour-card__features {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}

.hm-tour-card__feature {
    text-align: center;
    font-size: 12px;
}

.hm-tour-card__feature i {
    font-size: 18px;
    color: #ff6b35;
    border: 1px solid #0d6efd;
    padding: 12px;
    border-radius: 10px;
    display: block;
    margin-bottom: 5px;
    transition: transform 0.4s ease;
}

.hm-tour-card__feature:hover i {
    transform: scaleX(-1);
}

.hm-tour-card__price {
    display: flex;
    align-items: center;
    font-weight: 600;
    margin-bottom: 15px;
}

.hm-tour-card__price-icon {
    background: #ff6b35;
    color: #fff;
    padding: 0px 10px;
    border-radius: 6px;
    margin-right: 8px;
}

.hm-tour-card__buttons {
    display: flex;
    gap: 10px;
}

.hm-tour-card__btn {
    flex: 1;
    padding: 6px 10px;
    font-size: 12px;
    border: none;
    border-radius: 10px;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
}

.hm-tour-card__btn--primary {
    background: linear-gradient(135deg, #0d6efd, #0052cc);
}

.hm-tour-card__btn--secondary {
    background: linear-gradient(135deg, #ff6b35, #ff4500);
}

.hm-tour-card__btn i {
    margin-right: 3px;
}

/* Pricing Table */
/* Tables */
.pricing-taxi-img {
    width: 100%;
    object-fit: cover;

    animation: taxiMove 4s ease-in-out infinite;
}

/* animation */
@keyframes taxiMove {
    0% {
        transform: translateX(0px);
    }

    50% {
        transform: translateX(20px);
        /* taxi thoda aage */
    }

    100% {
        transform: translateX(0px);
        /* wapas */
    }
}

.hm-car-img {
    height: 25px;
    width: 40px;
    object-fit: cover;
}

.home-pricing-table table {
    width: 100%;
    border-collapse: collapse;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(234, 163, 21, 0.199);
}

.home-pricing-table table thead {
    background-color: var(--secondary-color);
    color: #fff;
}

.home-pricing-table table th {
    padding: 8px 5px;
    text-align: left;
    font-weight: 600;
    font-size: 12px;
}

.home-pricing-table table td {
    padding: 8px 5px;
    border-bottom: 1px solid #e0e0e0;
    font-size: 1rem;
    color: #555;
}

.home-pricing-table table tbody tr:last-child td {
    border-bottom: none;
}

.home-pricing-table table tbody tr:hover {
    background-color: #f8f9fa;
}

@media (max-width: 768px) {
    .home-pricing-table table {
        font-size: 0.9rem;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* Horizontal Rule */
.home-pricing-table hr {
    border: none;
    border-top: 2px solid #e0e0e0;
    margin: 2.5rem 0;
    border-radius: 2px;
}

/* Business */
.Business-section {
    background: #f4f4f4;
}

/* Image */
.Business-image-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

.Business-subtitle {
    font-size: 14px;
    color: var(--primary-color);
    font-weight: 600;
    text-transform: uppercase;
    position: relative;
    padding-left: 40px;
}

.Business-subtitle::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 30px;
    height: 2px;
    background: var(--secondary-color);
}

/* Title */
.Business-title {
    font-size: 36px;
    font-weight: 800;
    margin: 15px 0 25px;
    color: #111;
}

/* Quote Box */
.Business-quote-box {
    background: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    margin-bottom: 25px;
    border: 1px dashed var(--secondary-color);
}

.Business-author span {
    color: var(--secondary-color);
}

/* Call Box */
.Business-call-box {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

.Business-call-icon {
    width: 50px;
    height: 50px;
    background: var(--secondary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
}

.Business-call-icon i {
    color: #fff;
}

.Business-call-text span {
    display: block;
    font-size: 14px;
}

.Business-call-text a {
    font-size: 20px;
    font-weight: 700;
    color: #000;
    text-decoration: none;
}

/* Button */
.Business-btn {
    display: inline-block;
    background: var(--secondary-color);
    color: #fff;
    padding: 8px 30px;
    font-weight: 600;
    text-decoration: none;

    clip-path: polygon(
        11% 0%,
        /* top-left cut */ 100% 0%,
        /* top-right */ 90% 100%,
        /* bottom-right cut */ 0% 100% /* bottom-left */
    );

    transition: all 0.3s ease;
}

.Business-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(240, 211, 69, 0.3);
}

/* ========================================
   Testimonials Section
   ======================================== */
.testimonials-section {
    background: var(--light-color);
}

.testimonial-card {
    background: var(--white-color);
    padding: 40px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    height: 100%;
}

.testimonial-rating {
    margin-bottom: 25px;
}

.testimonial-rating i {
    color: #ffd700;
    font-size: 18px;
    margin: 0 3px;
}

.testimonial-text {
    font-size: 16px;
    line-height: 1.8;
    color: #6c757d;
    margin-bottom: 30px;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.author-image {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}

.author-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.author-info {
    text-align: left;
}

.author-info h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}

.author-info p {
    font-size: 14px;
    color: #6c757d;
    margin: 0;
}

/* ========================================
   Stats Section
   ======================================== */
.stats-section {
    background:
        linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
        url("/assets/images/bg_counter_img.jpg") no-repeat center center;
    background-size: cover;

    background-size: cover;
    padding: 80px 0;
    color: #fff;

    background-blend-mode: multiply;
    background-attachment: fixed;
}

.stat-card {
    text-align: center;
    color: var(--white-color);
}

.stat-icon {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--secondary-color);
    border-radius: 20px;
    margin: 0 auto 10px;
}

.stat-icon i {
    font-size: 36px;
}

.stat-number {
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 0px;
    color: var(--white-color);
}

.stat-label {
    font-size: 16px;
    font-weight: 500;
    opacity: 0.9;
    margin: 0;
}

/* ========================================
   Contact Section
   ======================================== */
.contact-section {
    background: var(--light-color);
}

.contact-info {
    padding-right: 30px;
}

.contact-details {
    margin-top: 40px;
}

.contact-item {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
    padding: 20px 15px;
    background: var(--white-color);
    border-radius: 15px;
    border: 1px solid var(--secondary-color);
    transition: var(--transition);
}

.contact-item:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transform: translateX(10px);
}

.contact-icon {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gradient-primary);
    border-radius: 15px;
    flex-shrink: 0;
}

.contact-icon i {
    font-size: 24px;
    color: var(--white-color);
}

.contact-item h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
}

.contact-item p {
    color: #6c757d;
    margin: 0;
    font-size: 15px;
}

.contact-form-wrapper {
    background: #ffffffa8;
    padding: 40px 15px;
    border-radius: 20px;
    border: 1px dashed var(--secondary-color);
    box-shadow: 0 5px 20px rgba(234, 163, 21, 0.199);
}

.contact-form .form-control,
.contact-form .form-select {
    padding: 15px 20px;
    border: 2px solid #e9ecef;
    border-radius: 10px;
    font-size: 15px;
    transition: var(--transition);
}

.contact-form .form-control:focus,
.contact-form .form-select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.1);
}

/* ========================================
   Footer
   ======================================== */
.footer {
    background: var(--dark-color);
    color: var(--light-color);
    padding: 40px 0 0;
}

.footer-logo-warpper img {
    width: 211px;
    background: #fff;
    border-radius: 5px;
    padding: 5px 3px;
}

.footer-widget h2,
.footer-widget h4 {
    color: var(--white-color);
}

.footer-brand {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 20px;
}

.footer-brand span {
    background: var(--gradient-primary);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.footer-widget p {
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 25px;
}

.footer-social {
    display: flex;
    gap: 10px;
}

.footer-social a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    color: var(--white-color);
    transition: var(--transition);
}

.footer-social a:hover {
    background: var(--primary-color);
    transform: translateY(-5px);
}

.footer-widget h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
    position: relative;
    padding-bottom: 8px;
}

.footer-widget h4::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30%;
    height: 3px;
    background: linear-gradient(to right, #ff6b35, #ff9a6b);
    border-radius: 2px;
    box-shadow: 0 0 10px rgba(236, 76, 17, 0.727);
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.7);
    transition: var(--transition);
    display: inline-block;
}

.footer-links a:hover {
    color: var(--primary-color);
    padding-left: 5px;
}

.newsletter-form {
    display: flex;
    gap: 10px;
}

.newsletter-form input {
    /* flex: 1; */
    padding: 10px 16px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50px;
    color: var(--white-color);
    font-size: 15px;
}

.newsletter-form input::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.newsletter-form input:focus {
    outline: none;
    border-color: var(--primary-color);
}

.newsletter-form button {
    width: 50px;
    height: 50px;
    border: none;
    background: var(--gradient-primary);
    border-radius: 50%;
    color: var(--white-color);
    cursor: pointer;
    transition: var(--transition);
}

.newsletter-form button:hover {
    transform: scale(1.1);
}

.footer-bottom {
    margin-top: 60px;
    padding: 30px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-bottom p {
    margin: 0;
    color: rgba(255, 255, 255, 0.6);
}

.footer-bottom-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 20px;
    justify-content: flex-end;
}

.footer-bottom-links a {
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
}

.footer-bottom-links a:hover {
    color: var(--primary-color);
}

/* ========================================
   Modal
   ======================================== */
.modal-content {
    border: none;
    border-radius: 10px;
}

.modal-header {
    border-bottom: 1px solid #e9ecef;
    padding: 5px 30px;
}

.modal-title {
    font-size: 28px;
    font-weight: 700;
}

.modal-body {
    padding: 10px 15px 30px 15px;
}

.nav-pills {
    justify-content: center;
}

.nav-pills .nav-link {
    background: #f5e7cfc6;
    color: var(--dark-color);
    padding: 2px 15px;
    border-radius: 50px;
    margin-right: 10px;
    font-size: 12px;
    font-weight: 500;
    border: 1px solid var(--secondary-color);
}

.nav-pills .nav-link.active {
    background: var(--secondary-color);
    color: var(--white-color);
}

.booking-form .form-label {
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--dark-color);
}

.booking-form .form-control,
.booking-form .form-select {
    padding: 8px 15px;
    border: 1px solid var(--secondary-color);
    border-radius: 10px;
    transition: var(--transition);
}

.booking-form .form-control:focus,
.booking-form .form-select:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.1);
}

/* ========================================
   Scroll to Top Button
   ======================================== */
.scroll-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: var(--gradient-primary);
    color: var(--white-color);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    box-shadow: 0 5px 20px rgba(13, 110, 253, 0.4);
    transition: var(--transition);
    z-index: 1000;
}

.scroll-top:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(13, 110, 253, 0.5);
}

.scroll-top.show {
    display: flex;
}

/* ========================================
   Navigating FAQ Section Start
   ======================================== */

.navigating-faq-section {
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

.faq-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    position: relative;
}

.faq-accordion {
    margin: 0 auto;
}

.faq-item {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    margin-bottom: 20px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.faq-item:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    border-color: var(--accent-green);
}

.faq-item.active {
    border-color: var(--accent-green);
    box-shadow: 0 5px 25px rgba(238, 124, 10, 0.15);
}

.faq-question {
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #ffffff;
}

.faq-item.active .faq-question {
    background: #efdec3c4;
}

.faq-question:hover {
    background: #f5e7cf6e;
}

.faq-question h5 {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    margin: 0;
    flex: 1;
    padding-right: 20px;
    line-height: 1.5;
}

.faq-question i {
    font-size: 1rem;
    color: var(--primary-color);
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
    color: var(--primary-color);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition:
        max-height 0.4s ease,
        padding 0.4s ease;
    padding: 0 30px;
}

.faq-item.active .faq-answer {
    max-height: 500px;
    padding: 15px;
}

.faq-answer p {
    font-size: 14px;
    color: #000000;
    line-height: 1.5;
    margin: 0;
    text-align: left;
}

.faq-hero-img {
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}

/* Responsive Design for FAQ */

@media (max-width: 768px) {
    .faq-question h5 {
        font-size: 1rem;
        padding-right: 15px;
    }

    .faq-item.active .faq-answer {
        padding: 0 20px 20px 20px;
    }

    .faq-answer {
        padding: 0 20px;
    }

    .faq-icon {
        width: 60px;
        height: 60px;
    }

    .faq-icon i {
        font-size: 1.3rem;
    }
}

/* ========================================
    Navigating FAQ Section End 
   ======================================== */

/* ========================================
   Hide Unhide in Desk and Mob view Css
   ======================================== */

/* ========================================
   Contact Us Page
   ======================================== */

.contact-us-hero {
    padding: 80px 30px;
    position: relative;
    background: linear-gradient(135deg, #0a1931 0%, #0d6efd 100%);
    overflow: hidden;
    color: #fff;
    border: none;
}

.real-map-wrapper {
    border-radius: 20px;
    overflow: hidden;
    position: sticky;
    top: 100px;
    margin-top: 10px;
}

/* ===== Contact Info Section ===== */

.contact-info-section {
    padding: var(--section-padding);
    background: var(--light-color);
}

.info-card {
    background: var(--white-color);
    border-radius: 16px;
    padding: 30px 15px;
    text-align: center;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05);
    transition: var(--transition);
    height: 270px;
}

.info-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
}

.info-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: var(--gradient-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 28px;
}

.info-card h4 {
    font-family: var(--font-heading);
    font-weight: 600;
    margin-bottom: 15px;
}

.info-card p {
    font-family: var(--font-body);
    color: #6c757d;
    line-height: 1.7;
}

/* ===== Contact Form Section ===== */

.contact-form-section {
    padding: var(--section-padding);
    background: var(--gradient-overlay);
}

.custom-contact-card {
    background: rgb(255 255 255 / 75%);
    border-radius: 20px;
    padding: 40px 20px;
    backdrop-filter: blur(12px);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.15);
}

.form-header h2 {
    font-family: var(--font-heading);
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
}

.form-header p {
    font-family: var(--font-body);
    color: #fff;
}

.custom-badge {
    display: inline-block;
    padding: 6px 14px;
    background: var(--gradient-secondary);
    color: #fff;
    border-radius: 50px;
    font-size: 13px;
    margin-bottom: 10px;
}

/* Inputs */

.custom-contact-form label {
    font-weight: 500;
    margin-bottom: 6px;
    display: block;
    font-family: var(--font-body);
}

.custom-input {
    width: 100%;
    padding: 12px 15px;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    font-family: var(--font-body);
    transition: var(--transition);
}

.custom-input:focus {
    border-color: var(--primary-color);
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15);
}

/* Button */

.custom-submit-btn {
    padding: 14px 35px;
    border-radius: 50px;
    border: none;
    background: var(--gradient-primary);
    color: #fff;
    font-weight: 600;
    font-family: var(--font-heading);
    transition: var(--transition);
}

.custom-submit-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

/* ========================================
   Contact Us Page End
   ======================================== */

/* ========================================
   About Us Page
   ======================================== */
.about-us-page {
    background: var(--light-color);
}

/* ========================================
   Modernized Hero Section
   ======================================== */
.about-us-hero {
    position: relative;
    background: linear-gradient(135deg, #0a1931 0%, #102a53 100%);
    padding: 120px 0;
    overflow: hidden;
    color: #fff;
}

.hero-shape-overlay {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    background: radial-gradient(
        circle at 70% 30%,
        rgba(13, 110, 253, 0.15),
        transparent 60%
    );
    z-index: 1;
}

.about-hero-glass-content {
    position: relative;
    z-index: 5;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgb(255 255 255 / 46%);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 4px 18px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 700;
    color: var(--secondary-color);
    margin-bottom: 25px;
    backdrop-filter: blur(5px);
    position: relative;
    bottom: 221px;
}

.hero-main-title {
    font-size: 64px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 25px;
    color: #fff;
}

.hero-main-title span {
    background: linear-gradient(135deg, var(--secondary-color), #ffcc33);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-sub-text {
    font-size: 20px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 40px;
    max-width: 90%;
}

.hero-feature-grid {
    display: flex;
    gap: 30px;
    flex-wrap: nowrap;
    justify-content: space-around;
}

.h-f-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.h-f-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-color);
    font-size: 16px;
    border: 1px solid rgba(13, 110, 253, 0.3);
    background: #ffffffab;
}

.h-f-item span {
    font-size: 15px;
    font-weight: 600;
}

/* Hero Visual */
.hero-visual-container {
    position: relative;
    z-index: 5;
    display: flex;
    justify-content: center;
}

.main-taxi-img-wrap {
    position: relative;
}

.floating-img {
    filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.5));
    animation: float 6s ease-in-out infinite;
}

.quick-stats-card {
    position: absolute;
    bottom: -20px;
    right: 0;
    padding: 20px 30px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.q-s-icon {
    width: 45px;
    height: 45px;
    background: var(--secondary-color);
    color: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.q-s-info strong {
    display: block;
    font-size: 22px;
    line-height: 1;
}

.q-s-info span {
    font-size: 12px;
    opacity: 0.8;
}

@media (max-width: 991px) {
    .about-us-hero {
        padding: 80px 0;
        text-align: center;
    }

    .hero-main-title {
        font-size: 42px;
    }

    .hero-sub-text {
        max-width: 100%;
    }

    .hero-visual-container {
        margin-top: 60px;
    }

    .quick-stats-card {
        right: 50%;
        transform: translateX(50%);
        bottom: -10px;
    }
}

/* ========================================
   Redesigned Story Section (Premium)
   ======================================== */
.about-us-story {
    background: #fdfdfe;
    overflow: hidden;
}

.about-story-visual {
    position: relative;
    padding: 40px;
}

.about-story-visual .main-card {
    position: relative;
    z-index: 2;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.12);
}

.about-story-visual .main-card img {
    width: 100%;
    display: block;
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-story-visual .main-card:hover img {
    transform: scale(1.05);
}

.glass-glow {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.experience-card {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    padding: 25px;
    border-radius: 24px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.experience-card .exp-val {
    font-size: 42px;
    font-weight: 800;
    color: var(--primary-color);
    line-height: 1;
}

.experience-card .exp-lbl {
    font-size: 14px;
    font-weight: 700;
    color: var(--dark-color);
    line-height: 1.2;
}

.experience-card .exp-lbl span {
    color: var(--secondary-color);
    font-size: 12px;
}

.trust-pill {
    position: absolute;
    bottom: 10%;
    right: 0;
    z-index: 3;
    padding: 12px 20px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.trust-avatars {
    display: flex;
    align-items: center;
}

.trust-avatars img {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    border: 2px solid #fff;
    margin-left: -10px;
}

.trust-avatars img:first-child {
    margin-left: 0;
}

.trust-avatars .more {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: var(--secondary-color);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    margin-left: -10px;
}

.trust-pill p {
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    color: var(--dark-color);
}

/* Content Side */
.about-story-premium-content {
    padding-left: 20px;
}

.premium-kicker {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.premium-kicker .line {
    width: 40px;
    height: 3px;
    background: var(--secondary-color);
    border-radius: 2px;
}

.premium-kicker .text {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--primary-color);
}

.premium-title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 25px;
    color: var(--dark-color);
}

.premium-title span {
    color: var(--secondary-color);
    position: relative;
    z-index: 1;
}

.premium-title span::after {
    content: "";
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 100%;
    height: 12px;
    background: rgba(255, 107, 53, 0.15);
    z-index: -1;
}

.premium-desc {
    font-size: 17px;
    color: #555e71;
    line-height: 1.7;
    margin-bottom: 35px;
}

.story-pillar-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 40px;
}

.pillar-item {
    display: flex;
    gap: 15px;
}

.pillar-icon {
    min-width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: var(--transition);
}

.pillar-icon.blue {
    background: rgba(13, 110, 253, 0.1);
    color: var(--primary-color);
}

.pillar-icon.orange {
    background: rgba(255, 107, 53, 0.1);
    color: var(--secondary-color);
}

.pillar-item:hover .pillar-icon {
    transform: rotateY(180deg);
}

.pillar-info h4 {
    font-size: 18px;
    margin-bottom: 5px;
    color: var(--dark-color);
}

.pillar-info p {
    font-size: 14px;
    color: #6c757d;
    margin: 0;
    line-height: 1.5;
}

.feature-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: center;
}

.feature-tags .tag {
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--gradient-primary);
    padding: 10px;
    border-radius: 5px;
}

.feature-tags .tag i {
    color: var(--secondary-color);
}

/* Animations */
@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

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

.animate-float {
    animation: float 5s ease-in-out infinite;
}

@media (max-width: 991px) {
    .about-story-visual {
        padding: 20px;
        margin-bottom: 50px;
    }

    .premium-title {
        font-size: 36px;
    }

    .experience-card {
        padding: 15px;
    }

    .experience-card .exp-val {
        font-size: 32px;
    }
}

/* ========================================
   Redesigned Values Section
   ======================================== */
.about-us-values {
    background: #eef1f4;
}

.about-us-value-card {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 24px;
    padding: 40px 30px;
    text-align: center;
    transition: var(--transition);
    height: 100%;
}

.about-us-value-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
}

.about-us-value-icon {
    width: 80px;
    height: 80px;
    background: rgba(13, 110, 253, 0.05);
    color: var(--primary-color);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    margin: 0 auto 25px;
    transition: var(--transition);
}

.about-us-value-card:hover .about-us-value-icon {
    background: var(--primary-color);
    color: #fff;
    transform: rotate(10deg);
}

.about-us-value-card h3 {
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 15px;
    color: var(--dark-color);
}

.about-us-value-card p {
    color: #64748b;
    font-size: 15px;
    line-height: 1.6;
}

/* ========================================
   Redesigned Journey Section
   ======================================== */
.journey-flow-wrapper {
    position: relative;
}

/* Connection Line */
.journey-flow-wrapper::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5%;
    width: 90%;
    height: 2px;
    background: repeating-linear-gradient(
        to right,
        #ccc,
        #ccc 10px,
        transparent 10px,
        transparent 20px
    );
    z-index: 1;
}

.journey-step-card {
    position: relative;
    z-index: 2;
    background: #fff;
    border-radius: 24px;
    padding: 30px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: var(--transition);
}

.journey-step-card:hover {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
    transform: translateY(-5px);
}

.step-num-badge {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--dark-color);
    color: #fff;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: 12px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-visual {
    margin-bottom: 20px;
    position: relative;
}

.step-icon {
    width: 60px;
    height: 60px;
    background: var(--light-color);
    color: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin: 0 auto;
    border: 3px solid #fff;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
    z-index: 2;
    position: relative;
}

.journey-step-card h4 {
    font-size: 19px;
    font-weight: 800;
    margin-bottom: 10px;
}

.journey-step-card p {
    font-size: 14px;
    color: #6c757d;
    margin: 0;
}

@media (max-width: 991px) {
    .journey-flow-wrapper::before {
        display: none;
    }

    .journey-step-card {
        margin-bottom: 30px;
    }
}

/* ========================================
   Redesigned Final CTA Section
   ======================================== */
.cta-royal-box {
    position: relative;
    background: linear-gradient(135deg, #0a1931 0%, #0d6efd 100%);
    border-radius: 40px;
    padding: 40px 15px;
    overflow: hidden;
    color: #fff;
    border: none;
}

.cta-decoration .circle {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    z-index: 1;
}

.circle-1 {
    width: 300px;
    height: 300px;
    top: -100px;
    right: -100px;
}

.circle-2 {
    width: 200px;
    height: 200px;
    bottom: -50px;
    left: -50px;
}

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

.cta-mini {
    background: rgba(255, 255, 255, 0.1);
    padding: 6px 15px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 20px;
    display: inline-block;
}

.cta-title {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 20px;
    color: #fff;
}

.cta-text {
    font-size: 18px;
    opacity: 0.9;
    max-width: 700px;
    margin: 0 auto 40px;
}

.cta-button-group {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.cta-btn {
    padding: 10px 20px;
    border-radius: 100px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: var(--transition);
    text-decoration: none !important;
}

.cta-btn.primary {
    background: var(--secondary-color);
    color: #fff;
    box-shadow: 0 15px 30px rgba(255, 107, 53, 0.3);
}

.cta-btn.primary:hover {
    background: #fff;
    color: var(--secondary-color);
    transform: scale(1.05);
}

.cta-btn.secondary {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
}

.cta-btn.secondary:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: scale(1.05);
}

@media (max-width: 767px) {
    .cta-royal-box {
        padding: 50px 20px;
        border-radius: 24px;
    }

    .cta-title {
        font-size: 30px;
    }

    .cta-btn {
        width: 100%;
        justify-content: center;
    }

    .story-pillar-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 991px) {
    .hero-title {
        font-size: 30px;
        line-height: 1;
        margin-bottom: 5px;
    }

    .hero-subtitle {
        font-size: 32px;
    }

    .hero-booking-card .modal-title {
        font-size: 30px;
    }

    .booking-modal-premium .modal-title {
        font-size: 30px;
    }

    .section-title {
        font-size: 35px;
    }

    .why-choose-content {
        padding-left: 0;
        margin-top: 40px;
    }

    .experience-badge {
        bottom: 20px;
        right: 20px;
        padding: 20px;
    }

    .experience-badge h3 {
        font-size: 36px;
    }

    .about-us-hero {
        padding: 70px 0;
    }

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

    .about-us-hero-card {
        margin-top: 20px;
    }

    .about-us-story-media {
        padding-right: 0;
    }

    .about-us-story-media-pill {
        right: 18px;
        top: 18px;
        font-size: 13px;
    }

    .about-us-story-content {
        padding: 28px 22px;
    }
}

@media (max-width: 767px) {
    :root {
        --section-padding: 30px 0;
    }

    .hero-title {
        font-size: 36px;
    }

    .hero-subtitle {
        font-size: 24px;
        margin-bottom: 0px;
    }

    .hero-content {
        padding: 5px 0px;
    }

    .hero-text {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .hero-buttons {
        display: flex;
        flex-direction: row;
        gap: 15px;
        margin-bottom: 10px;
    }

    .hero-buttons .btn {
        width: 100%;
        font-size: 12px;
        padding: 5px 15px;
    }

    .section-title {
        font-size: 20px;
    }

    .section-padding {
        padding: 10px 0;
    }

    .section-description {
        font-size: 16px;
    }

    .contact-info {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .footer-bottom-links {
        justify-content: flex-start;
        margin-top: 15px;
    }

    .nav-pills .nav-link {
        margin-bottom: 10px;
    }

    .hero-booking-card .modal-header {
        padding: 20px 18px 8px;
    }

    .hero-booking-card .modal-body {
        padding: 10px 10px 20px;
    }

    .hero-booking-card .modal-title {
        font-size: 26px;
    }

    .hero-booking-card #bookingTabs {
        justify-content: flex-start;
    }

    .hero-booking-card #bookingTabs .nav-link {
        padding: 5px 14px;
        font-size: 12px;
    }

    .hero-booking-card .booking-trust-strip {
        gap: 10px;
    }

    .booking-modal-premium .modal-header {
        padding: 20px 18px 8px;
    }

    .booking-modal-premium .modal-body {
        padding: 10px 18px 20px;
    }

    .booking-modal-premium .modal-title {
        font-size: 26px;
    }

    .booking-modal-premium #bookingTabsModal {
        justify-content: flex-start;
    }

    .booking-modal-premium #bookingTabsModal .nav-link {
        padding: 8px 14px;
        font-size: 12px;
    }

    .booking-modal-premium .booking-trust-strip {
        gap: 10px;
    }

    .about-us-hero-title {
        font-size: 30px;
    }

    .about-us-hero-points {
        gap: 10px;
    }

    .about-us-hero-points span {
        font-size: 14px;
    }

    .about-us-cta-box {
        padding: 35px 20px;
    }

    .about-us-cta-box h2 {
        font-size: 30px;
    }

    .about-us-story-media img {
        min-height: 300px;
    }

    .about-us-story-media-badge {
        left: 12px;
        bottom: 12px;
        padding: 10px 12px;
    }

    .about-us-story-media-pill {
        top: 10px;
        right: 10px;
        padding: 8px 12px;
    }

    .about-us-story-stats {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .call-to-book-banner-hero-img {
        height: 285px;
    }

    .booking-modal-premium .booking-trust-strip {
        padding: 0 0 5px;
        margin-bottom: 5px;
    }

    .modal-content .col-6 {
        margin-top: 0 !important;
    }

    .top-bar {
        text-align: center;
    }

    .top-contact a {
        display: block;
    }

    .top-contact {
        margin: 2px 0px;
    }

    .stat-number {
        font-size: 36px;
    }
}

/* ========================================
   Services Page
   ======================================== */
.main_services_page {
    background: linear-gradient(180deg, #f6dfd0 0%, #ffffff 48%, #f7fbff 100%);
}

.main_services_hero {
    position: relative;
    overflow: hidden;
    padding-top: 55px;
    padding-bottom: 55px;
}

.main_services_hero::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: rgba(13, 110, 253, 0.08);
    top: -140px;
    left: -100px;
}

.main_services_hero::after {
    content: "";
    position: absolute;
    width: 290px;
    height: 290px;
    border-radius: 50%;
    background: rgba(255, 107, 53, 0.12);
    bottom: -130px;
    right: -80px;
}

.main_services_hero .container {
    position: relative;
    z-index: 2;
}

.main_services_badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.4px;
    color: #0d6efd;
    background: rgba(13, 110, 253, 0.12);
    padding: 8px 16px;
    border-radius: 999px;
    margin-bottom: 14px;
}

.main_services_title {
    font-size: 52px;
    line-height: 1.16;
    margin-bottom: 16px;
}

.main_services_subtitle {
    font-size: 18px;
    max-width: 620px;
    color: #485068;
    margin-bottom: 24px;
}

.main_services_hero_actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.main_services_hero_stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.main_services_stat_card {
    background: #fff;
    border-radius: 18px;
    padding: 22px 20px;
    border: 1px solid #e5ecfa;
    box-shadow: 0 8px 22px rgba(13, 32, 72, 0.06);
}

.main_services_stat_card h3 {
    color: #0d6efd;
    font-size: 30px;
    margin-bottom: 4px;
}

.main_services_stat_card p {
    margin: 0;
    color: #616b80;
    font-weight: 500;
}

.main_services_heading h2 {
    font-size: 40px;
    margin-bottom: 8px;
}

.main_services_heading p {
    color: #616b80;
    margin-bottom: 0;
}

.main_services_card {
    background: #ffffff;
    border: 1px solid #e4ebfb;
    border-radius: 20px;
    padding: 26px 24px;
    box-shadow: 0 10px 25px rgba(27, 54, 101, 0.06);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.main_services_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 35px rgba(27, 54, 101, 0.1);
}

.main_services_icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    background: var(--gradient-primary);
    color: #fff;
    font-size: 21px;
}

.main_services_card h3 {
    font-size: 24px;
    margin-bottom: 10px;
}

.main_services_card p {
    color: #535d73;
    margin-bottom: 14px;
}

.main_services_points {
    list-style: none;
    margin: 0;
    padding: 0;
}

.main_services_points li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 8px;
    color: #1e2a40;
    font-weight: 500;
}

.main_services_points li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: #0d6efd;
    font-size: 13px;
}

.main_services_steps {
    background: #f2f7ff;
}

.main_services_step_card {
    background: #fff;
    border-radius: 18px;
    border: 1px solid #dce6fa;
    padding: 24px;
    height: 100%;
    box-shadow: 0 8px 20px rgba(27, 54, 101, 0.05);
}

.main_services_step_no {
    display: inline-flex;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    align-items: center;
    justify-content: center;
    background: rgba(13, 110, 253, 0.12);
    color: #0d6efd;
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
}

.main_services_step_card h3 {
    font-size: 23px;
    margin-bottom: 8px;
}

.main_services_step_card p {
    color: #5d6780;
    margin-bottom: 0;
}

.main_services_cta_wrap {
    background: var(--gradient-primary);
    border-radius: 24px;
    padding: 50px 26px;
    color: #fff;
    box-shadow: 0 16px 34px rgba(13, 48, 120, 0.22);
}

.main_services_cta_wrap h2 {
    color: #fff;
    font-size: 38px;
    margin-bottom: 10px;
}

.main_services_cta_wrap p {
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 20px;
}

.main_services_cta_wrap .btn-primary {
    background: #fff;
    color: #0d6efd;
    border: 1px solid #fff;
}

.main_services_cta_wrap .btn-primary:hover {
    background: transparent;
    color: #fff;
    border-color: #fff;
}

@media (max-width: 991px) {
    .main_services_title {
        font-size: 40px;
    }

    .main_services_subtitle {
        font-size: 16px;
    }

    .main_services_heading h2 {
        font-size: 33px;
    }
}

@media (max-width: 767px) {
    .main_services_hero {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .main_services_title {
        font-size: 32px;
    }

    .main_services_hero_stats {
        grid-template-columns: 1fr;
    }

    .main_services_card h3,
    .main_services_step_card h3 {
        font-size: 21px;
    }

    .main_services_heading h2,
    .main_services_cta_wrap h2 {
        font-size: 28px;
    }

    .main_services_cta_wrap {
        border-radius: 16px;
        padding: 34px 20px;
    }
}

/* Details Page */
/* ========================================
   Details Page - Parent Tag Styling
   ======================================== */
.details-page-hero {
    padding: 181px 0 10px;
    position: relative;
    overflow: hidden;
    color: #fff;
}

.custom-breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 0;
}

.custom-breadcrumb .breadcrumb-item,
.custom-breadcrumb .breadcrumb-item a {
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    text-decoration: none;
}

.custom-breadcrumb .breadcrumb-item.active {
    color: #fff;
}

.custom-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.4);
}

.details-page-hero .hero-title {
    font-size: 41px;
    font-weight: 900;
    line-height: 1.1;
    margin-bottom: 15px;
    color: #fff;
}

.details-page-hero .hero-title span {
    background: linear-gradient(135deg, #ffcc33, #ffa000);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.dtpage-title {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border-radius: 30px;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
}

.dtpage-location,
.dtpage-duration {
    display: flex;
    align-items: center;
    gap: 6px;
}

.dtpage-title i {
    font-size: 14px;
}

.dtpage-divider {
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, 0.4);
}

.details-page-hero .hero-subtitle {
    font-size: 20px;
    line-height: 1.6;
    opacity: 0.95;
    max-width: 750px;
}

/* Content Area Core Styling */
.details-page-content-wrapper {
    padding: 20px;
    background: #ffffff;
    margin-bottom: 20px;
    -webkit-box-shadow: 0 1px 5px 0 rgb(0 0 0 / 30%);
    box-shadow: 0 1px 5px 0 rgb(0 0 0 / 30%);
    margin: 20px 0px;
    border-radius: 10px;
}

/* Dynamic Content Tag Handlers - NO CUSTOM CLASSES ON TAGS */
.details-page-content h1,
.details-page-content h2,
.details-page-content h3,
.details-page-content h4,
.details-page-content h5,
.details-page-content h6 {
    color: #111;
    font-weight: 700;
    font-family: var(--font-heading);
}

.details-page-content h2 {
    font-size: 24px;
    border-left: 4px solid var(--secondary-color);
    padding-left: 5px;
    line-height: 1.2;
    margin-bottom: 15px;
}

.details-page-content h3 {
    font-size: 17px;
    color: #000;
    margin-bottom: 0px;
}

.details-page-content img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 12px;
    margin: 20px 0;
    transition:
        transform 0.5s ease,
        box-shadow 0.5s ease;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    cursor: pointer;
}

.details-page-content img:hover {
    transform: scale(1.01);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.details-page-content p {
    font-size: 15px;
    color: #444;
    margin-bottom: 5px;
    line-height: 1.6;
    margin-top: 5px;
}

.details-page-content strong {
    color: #111;
}

.details-page-content ul {
    list-style: none;
    padding-left: 0px;
}

.details-page-content ul li {
    position: relative;
    padding-left: 21px;
    margin-bottom: 8px;
}

.details-page-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 15px;
    height: 15px;
    background: url(/assets/images/menu.png) no-repeat center;
    background-size: contain;
}

.details-page-content ol {
    list-style: none;
    counter-reset: custom-counter;
    padding-left: 0;
    margin-bottom: 30px;
}

.details-page-content ol li {
    counter-increment: custom-counter;
    position: relative;
    padding-left: 65px;
    margin-bottom: 15px;
    font-size: 17px;
    color: #444;
    background: #f9f9f9;
    padding: 15px 15px 15px 65px;
    border-radius: 12px;
    transition: 0.3s;
    min-height: 60px;
    display: flex;
    align-items: center;
}

.details-page-content ol li:hover {
    background: #f1f1f1;
    transform: translateX(5px);
}

.details-page-content ol li::before {
    content: counter(custom-counter);
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 35px;
    height: 35px;
    background: var(--primary-color);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    box-shadow: 0 5px 10px rgba(13, 110, 253, 0.2);
}

/* Table Styling - High Contrast & Premium */
.details-page-content table {
    width: 100%;
    margin: 15px 0;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e0e0e0;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.details-page-content img.table-taxi-img {
    width: 50px !important;
    height: 30px !important;
    object-fit: scale-down !important;
    margin: 0px 5px 0px 0px;
}

.table-button-wapper {
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
    width: 200px;
    align-items: center;
}

.table-button-wapper a {
    flex: 1;
    text-decoration: none;
    text-align: center;
    padding: 0px 15px;
    border-radius: 3px;
    font-size: 15px;
    font-weight: 600;
    white-space: nowrap;
    transition: all 0.3s ease;
}

.table-book-btn {
    background: #ff6b35;
    color: #fff;
}

.table-book-btn:hover {
    background: #fb5a1f;
    color: #fff;
    transform: translateY(-2px);
}

.table-whatsapp-btn {
    background: #25d366;
    color: #fff;
    max-width: 50px;
}

.table-whatsapp-btn i {
    font-size: 16px;
}

.table-whatsapp-btn:hover {
    background: #1ebe5d;
    color: #fff;
    transform: translateY(-2px);
}

.details-page-content table th {
    background: linear-gradient(180deg, #0f3d91 0%, #ff6b35 100%);
    color: #fff;

    padding: 15px 20px;
    font-weight: 700;
    text-align: left;
    border-bottom: 2px solid #e0e0e0;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.details-page-content table td {
    padding: 15px 20px;
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
    color: #555;
    font-size: 15px;
}

.details-page-content table tr:last-child td {
    border-bottom: none;
}

.details-page-content table tr:hover td {
    background: #fcfcfc;
}

/* Blockquote Styling */
.details-page-content blockquote {
    padding: 15px;
    background: #fdfaf0;
    border-radius: 15px;
    border-left: 6px solid var(--secondary-color);
    position: relative;
}

.details-page-content blockquote cite {
    display: block;
    font-weight: 700;
    font-size: 14px;
    color: var(--primary-color);
    font-style: normal;
    margin-top: 15px;
}

/* Component Container Styles (Not Tag Based) */

.details-social-share {
    margin-top: 50px;
    padding-top: 25px;
    border-top: 1px solid #eee;
    display: flex;
    align-items: center;
    gap: 15px;
    display: none;
}

.details-social-share span {
    font-weight: 700;
    font-size: 14px;
    color: #888;
}

.details-social-share div {
    display: flex;
    gap: 10px;
}

.details-social-share a {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f0f0f0;
    color: #555;
    font-size: 13px;
    transition: 0.3s;
}

.details-social-share a:hover {
    background: var(--primary-color);
    color: #fff;
    transform: translateY(-2px);
}

.details-sidebar {
    margin-top: 20px;
    position: sticky;
    top: 85px;
}

/* Sidebar Design */
.tour-price-wrapper {
    background: #ffffff;
    padding: 25px 15px;
    border-radius: 10px;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #dadada !important;
    margin-top: 25px;
}

/* Left Section */
.price-text .starting-text {
    margin: 0;
    font-size: 16px;
    color: #000;
    font-weight: 500;
}

.price-text h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    color: #000;
}

.price-text h4 span {
    font-size: 16px;
    font-weight: 500;
    color: #ff6b35;
    text-transform: capitalize;
    margin-left: 8px;
}

.price-divider {
    font-size: 24px;
    color: #000;
}

/* Button */
.tour-book-btn {
    display: flex;
    gap: 5px;
    justify-content: center;
}

.details_book-now-btn {
    padding: 0px 10px;
    background: #fff;
    color: #ff6b35;
    border: 1px solid #ff6b35;
    font-size: 12px;
    border-radius: 30px;
    font-weight: 500;
    text-decoration: none;
    margin-top: 10px;
    transition: 0.3s ease;
}

.details_book-now-btn:hover {
    background: #ff6b35;
    color: #ffff;
}

.details_whatsapp-btn {
    padding: 0px 10px;
    background: #fff;
    color: #25d366;
    border: 1px solid #25d366;
    font-size: 13px;
    border-radius: 30px;
    font-weight: 500;
    text-decoration: none;
    margin-top: 10px;
    transition: 0.3s ease;
}

.details_whatsapp-btn:hover {
    background: #25d366;
    color: #ffff;
}

.sidebar-card h5 {
    font-weight: 600;
    margin-bottom: 10px;
    color: #0d6efd;
    font-size: 20px;
    position: relative;
}

.sidebar-card h5::after {
    content: "";
    position: absolute;
    bottom: -12px;
    left: -15px;
    right: -15px;
    height: 1px;
    background: #e0f2f1;
    margin-bottom: 5px;
}

.connect-widget {
    padding: 15px 15px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dadada !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06);
}

.social-links-row {
    display: flex;
    gap: 15px;
    margin-top: 40px;
    justify-content: center;
}

.social-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff !important;
    text-decoration: none;
    font-size: 20px;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.social-icon:hover {
    transform: translateY(-8px) scale(1.1);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.social-icon.fb {
    background: #4267b2;
}

.social-icon.tw {
    background: #1da1f2;
}

.social-icon.ig {
    background: linear-gradient(
        45deg,
        #f09433 0%,
        #e6683c 25%,
        #dc2743 50%,
        #cc2366 75%,
        #bc1888 100%
    );
}

.social-icon.yt {
    background: #ff0000;
}

.social-icon.wa {
    background: #25d366;
}

.emergency-widget {
    padding: 15px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dadada !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06);
}

.contact-item-right {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #444;
    font-weight: 600;
    font-size: 15px;
    margin: 15px 0px;
}

.contact-item-right a {
    text-decoration: none;
    color: #444;
}

.contact-item-right i {
    color: #f97316;
    font-size: 22px;
    width: 30px;
    text-align: center;
}

.whatsapp-btn-full {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: #25d366;
    color: #fff !important;
    padding: 4px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    max-width: 160px;
    margin: 0 auto;
}

.whatsapp-btn-full:hover {
    background: #4ab67d;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(90, 196, 140, 0.4);
}

.booking-card {
    padding: 20px 15px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dadada !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06);
}

.booking-card h4 {
    font-weight: 800;
    margin-bottom: 10px;
    color: var(--primary-color);
    display: flex;
    align-items: center;
    font-size: 22px;
    gap: 8px;
}

.booking-card .form-label {
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 600;
    color: #555;
}

.booking-card .form-control,
.booking-card .form-select {
    height: 45px;
    border-radius: 3px;
    border: 1px solid #e4e4e4;
    padding: 5px 16px;
    font-size: 12px;
    background: #fafafa;
    box-shadow: none;
    transition: all 0.3s ease;
}

.booking-card .form-control::placeholder {
    color: #999;
}

.booking-card .form-control:focus,
.booking-card .form-select:focus {
    border-color: #ff6b35;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.12);
}

.booking-card .mb-2 {
    margin-bottom: 18px !important;
}

.booking-card select.form-select {
    cursor: pointer;
}

.booking-card .sidebar-form {
    margin-top: 10px;
}

@media (max-width: 991px) {
    .details-page-hero .hero-title {
        font-size: 30px;
    }

    .details-page-content-wrapper {
        padding: 20px 10px;
    }
}

@media (max-width: 768px) {
    .details-page-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* Category Crad Page */
.tourcat {
    position: relative;
    background: linear-gradient(180deg, #e8ebf0 0%, #dfe4ec 100%);
    padding: 40px 0;
    overflow: hidden;
}

.custom-tour-card {
    position: relative;
    display: grid;
    grid-template-columns: 1.2fr 1.45fr 1fr;
    gap: 10px;
    border-radius: 24px;
    padding: 12px;
    /* background: linear-gradient(120deg, #0c4380 0%, #4f81c3 38%, #dce7f7 100%); */
    background: linear-gradient(
        120deg,
        #0c4380 0%,
        #fc69022e 38%,
        #dce7f7 100%
    );
    border: 2px solid rgba(255, 255, 255, 0.58);
    box-shadow: 0 24px 40px rgba(15, 53, 109, 0.2);
    overflow: hidden;
    margin-bottom: 15px;
}

.custom-tour-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(
        circle at 82% 12%,
        rgba(255, 255, 255, 0.45),
        transparent 38%
    );
    pointer-events: none;
}

.image-container {
    position: relative;
    min-height: 250px;
    border-radius: 18px;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, 0.65);
}

.image-container::before,
.image-container::after {
    content: "";
    position: absolute;
    background: rgba(255, 255, 255, 0.55);
    z-index: 2;
    border-radius: 20px;
}

.image-container::before {
    width: 190px;
    height: 2px;
    top: 54%;
    left: -26px;
    transform: rotate(18deg);
}

.image-container::after {
    width: 145px;
    height: 2px;
    top: 40%;
    right: -30px;
    transform: rotate(-18deg);
}

.duration-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 4;
    background: linear-gradient(90deg, #f37335, #ff9a22);
    color: #fff;
    padding: 3px 13px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(243, 115, 53, 0.35);
}

.image-layout {
    width: 100%;
    height: 300px;
    min-height: inherit;
}

.image-layout img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.08);
    display: block;
}

.details-container {
    position: relative;
    z-index: 3;
    padding: 10px 6px;
}

.main-title {
    color: #022058;
    font-size: clamp(20px, 2vw, 22px);
    line-height: 1.2;
    margin-bottom: 12px;
}

.info-row p {
    margin-bottom: 7px;
    color: #25324a;
    font-size: 14px;
    display: flex;
    align-items: flex-start;
    gap: 9px;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-weight: 900;
}

.info-row strong {
    color: #530605;
}

.info-row p i {
    color: #f06422;
    margin-top: 4px;
}

.holiday-tag {
    color: #022157;
    font-size: 20px;
    font-weight: 700;
    margin: 16px 0 14px;
    margin: 0px 0 10px;
}

.feature-tags-cat-pg {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    justify-content: flex-start;
}

.tag-item {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.95);
    border-radius: 10px;
    padding: 6px 10px;
    color: #12233f;
    font-weight: 600;
    font-size: 13px;
    text-align: center;
}

.tag-item i {
    color: #f06422;
    margin-right: 2px;
}

.price-container {
    position: relative;
    z-index: 3;
    border-radius: 16px;
    border: 2px solid rgba(255, 255, 255, 0.75);
    background: rgba(255, 255, 255, 0.74);
    backdrop-filter: blur(6px);
    padding: 16px 14px;
    color: #1c2d4a;
}

.label-txt {
    margin-bottom: 4px;
    font-size: 15px;
    color: #24324b;
}

.price-txt {
    margin: 0;
    font-size: clamp(13px, 1.8vw, 20px);
    color: #10233f;
}

.price-txt span {
    color: #f06422;
}

.small-txt {
    margin: 4px 0 11px;
    color: #3c4e6b;
    font-size: 13px;
}

.btn-orange,
.btn-green {
    width: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 5px;
    padding: 10px 12px;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    margin-top: 10px;
}

.btn-orange {
    background: linear-gradient(90deg, #f37335, #ef6207);
}

.btn-green {
    background: linear-gradient(90deg, #0f8b60, #1ca95d);
}

.btn-orange:hover,
.btn-green:hover {
    color: #fff;
    transform: translateY(-1px);
}

.details-link {
    align-items: center;
    color: #28d366;
    font-size: 11px;
    border-radius: 5px;
    font-weight: 600;
    display: flex;
    justify-content: center;
    padding: 10px 12px;
    border: 1px solid #28d366;
}

.details-link i {
    margin-right: 6px;
    font-size: 15px;
}

.details-link:hover {
    background: #28d366;
    color: #fff;
}

@media (max-width: 1200px) {
    .custom-tour-card {
        grid-template-columns: 1.1fr 1fr;
    }

    .price-container {
        grid-column: span 2;
    }

    .holiday-tag {
        font-size: 23px;
    }
}

@media (max-width: 768px) {
    .tourcat {
        padding: 30px 0;
    }

    .btn_comobo_cat_pg {
        display: flex;
        gap: 5px;
    }

    .custom-tour-card {
        grid-template-columns: 1fr;
        border-radius: 16px;
        padding: 10px;
    }

    .image-container {
        min-height: 240px;
        height: 230px;
        order: 1;
    }

    .details-container {
        order: 2;
    }

    .price-container {
        order: 3;
        grid-column: auto;
    }

    .main-title {
        font-size: 24px;
    }

    .holiday-tag {
        font-size: 20px;
    }

    .info-row p,
    .small-txt {
        font-size: 14px;
    }

    .tag-item {
        font-size: 10px;
    }

    .btn-orange,
    .btn-green,
    .details-link {
        font-size: 14px;
    }
}

/* Default (Desktop safe) */
.mobile-scroll-wrapper {
    overflow: hidden;
}

/* ONLY mobile pe scroll enable */
@media (max-width: 767px) {
    .mobile-scroll-wrapper {
        overflow-x: auto;
    }

    .flex-nowrap-mobile {
        flex-wrap: nowrap;
    }

    .flex-nowrap-mobile > div {
        flex: 0 0 auto;
        width: 85%;
        /* adjust 75%-90% */
    }

    /* scrollbar hide */
    .mobile-scroll-wrapper::-webkit-scrollbar {
        display: none;
    }
}

/* tour Category page filter */
.destination-filter-list {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 10px 15px;
    list-style: none;
    position: sticky;
    top: 63px;
    -webkit-overflow-scrolling: touch;
    z-index: 99;
    background: #0d0d0dd4;
    border-radius: 10px;

    /* Firefox */
    scrollbar-width: thin;
    scrollbar-color: #ff6600 #333;
}

.destination-chip.active {
    border: 2px solid #ff6600;
}

.destination-filter-list::-webkit-scrollbar {
    height: 3px;
}

.destination-filter-list::-webkit-scrollbar-track {
    background: #333;
    border-radius: 10px;
}

.destination-filter-list::-webkit-scrollbar-thumb {
    background: #ff6600;
    border-radius: 10px;
}

.destination-chip {
    position: relative;
    min-width: 120px;
    height: 70px;
    border-radius: 5px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    overflow: hidden;
    flex-shrink: 0;
}

.destination-chip::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1));
}

.destination-chip span {
    position: relative;
    color: #fff;
    font-weight: 600;
    font-size: 13px;
    z-index: 2;
    text-align: center;
}

.destination-chip:hover {
    transform: translateY(-3px);
    transition: 0.3s ease;
}

/* Tour Details Page */

.tiney-dt-card-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.tiney-dt-card {
    background: #fff;
    border-radius: 5px;
    padding: 20px 6px;
    text-align: center;
    border: 1px solid #e5e5e5;
    border-top: 2px solid #ff6b35;
}

.tiney-dt-card img {
    width: 28px;
    height: 28px;
    margin-bottom: 6px;
}

.tiney-dt-card p {
    font-size: 13px;
    font-weight: 600;
    margin: 0;
    line-height: 1.2;
}

.dp-boxarea {
    padding: 20px;
    border-radius: 10px;
    background: #ffffff;
    margin-bottom: 20px;
    -webkit-box-shadow: 0 1px 5px 0 rgb(0 0 0 / 30%);
    box-shadow: 0 1px 5px 0 rgb(0 0 0 / 30%);
    margin: 20px 0px;
}

.tour-gallery__shell {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
    gap: 20px;
    align-items: stretch;
}

.tour-gallery__shell--single {
    grid-template-columns: 1fr;
}

.tour-gallery__primary,
.tour-gallery__thumb {
    position: relative;
    display: block;
    width: 100%;
    border: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 18px;
    background: #edf3ff;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(15, 61, 145, 0.08);
}

.tour-gallery__primary::after,
.tour-gallery__thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(8, 16, 34, 0.04),
        rgba(8, 16, 34, 0.2)
    );
    opacity: 0;
    transition: opacity 0.35s ease;
}

.tour-gallery__primary:hover::after,
.tour-gallery__thumb:hover::after {
    opacity: 1;
}

.tour-gallery__primary:hover img,
.tour-gallery__thumb:hover img {
    transform: scale(1.05);
}

.tour-gallery__primary img {
    height: 265px;
    width: 100%;
    object-fit: cover;
    display: block;
}

.tour-gallery__thumb img,
.tour-gallery-modal__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.tour-gallery__primary img,
.tour-gallery__thumb img {
    transition: transform 0.45s ease;
}

.tour-gallery__primary {
    height: 100%;
    min-height: 100%;
}

.tour-gallery__desktop-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.tour-gallery__desktop-grid .tour-gallery__thumb {
    aspect-ratio: 4 / 3;
}

.tour-gallery__mobile-stack {
    display: none;
}

.tour-gallery__badge {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    border: 2px solid #ef4136;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    color: #ef4136;
    font-family: var(--font-heading);
    font-size: 17px;
    font-weight: 700;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.tour-gallery__badge i {
    font-size: 18px;
}

.tour-gallery__thumb--overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        180deg,
        rgba(6, 15, 33, 0.06),
        rgba(6, 15, 33, 0.62)
    );
}

.tour-gallery__view-all {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    text-align: center;
    color: #ffffff;
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
}

.tour-gallery-modal .modal-dialog {
    margin: 0;
    max-width: 100vw;
    height: 100vh;
}

.tour-gallery-modal .modal-content {
    min-height: 100vh;
    border: 0;
    border-radius: 0;
    overflow: hidden;
    background: #08101f;
    color: #ffffff;
}

.tour-gallery-modal__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 32px 16px;
}

.tour-gallery-modal__eyebrow {
    margin: 0 0 6px;
    color: #8fb8ff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tour-gallery-modal__header .modal-title {
    margin: 0;
    font-size: 28px;
    color: #ffffff;
}

.tour-gallery-modal__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    padding: 0 32px 28px;
}

.tour-gallery-modal__stage {
    position: relative;
    margin: 0;
    flex: 1 1 auto;
}

.tour-gallery-modal__item {
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(100vh - 180px);
    min-height: 420px;
    padding: 32px 96px;
    border-radius: 28px;
    background: radial-gradient(
        circle at top,
        rgba(29, 50, 94, 0.85),
        rgba(8, 16, 31, 0.96)
    );
}

.tour-gallery-modal__item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.tour-gallery-modal__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 62px;
    height: 62px;
    border: 0;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(10px);
    cursor: pointer;
    transform: translateY(-50%);
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.tour-gallery-modal__nav:hover {
    background: rgba(13, 110, 253, 0.9);
    transform: translateY(-50%) scale(1.05);
}

.tour-gallery-modal__nav:disabled {
    opacity: 0.45;
    cursor: not-allowed;
    transform: translateY(-50%);
}

.tour-gallery-modal__nav i {
    font-size: 24px;
}

.tour-gallery-modal__nav--prev {
    left: 24px;
}

.tour-gallery-modal__nav--next {
    right: 24px;
}

.tour-gallery-modal__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-top: 20px;
}

.tour-gallery-modal__caption,
.tour-gallery-modal__counter {
    margin: 0;
}

.tour-gallery-modal__caption {
    color: rgba(255, 255, 255, 0.82);
    font-size: 16px;
    font-weight: 500;
}

.tour-gallery-modal__counter {
    color: #ffffff;
    font-family: var(--font-heading);
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 767.98px) {
    .tour-gallery__shell {
        grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr);
        gap: 12px;
    }

    .tour-gallery__shell--single {
        grid-template-columns: 1fr;
    }

    .tour-gallery__desktop-grid {
        display: none;
    }

    .tour-gallery__mobile-stack {
        display: grid;
        grid-template-rows: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .tour-gallery__primary {
        aspect-ratio: 4 / 5;
    }

    .tour-gallery__thumb {
        aspect-ratio: 4 / 3;
        height: 125px;
    }

    .tour-gallery__badge {
        top: 14px;
        left: 14px;
        gap: 8px;
        padding: 10px 16px;
        border-radius: 14px;
        font-size: 14px;
    }

    .tour-gallery__badge i {
        font-size: 15px;
    }

    .tour-gallery__view-all {
        padding: 16px 12px;
        font-size: 15px;
    }

    .tour-gallery-modal__header {
        padding: 18px 18px 12px;
    }

    .tour-gallery-modal__header .modal-title {
        font-size: 22px;
    }

    .tour-gallery-modal__body {
        padding: 0 18px 18px;
    }

    .tour-gallery-modal__item {
        height: calc(100vh - 160px);
        min-height: 260px;
        padding: 16px 0px;
        border-radius: 20px;
    }

    .tour-gallery-modal__nav {
        width: 35px;
        height: 35px;
    }

    .tour-gallery-modal__nav i {
        font-size: 18px;
    }

    .tour-gallery-modal__nav--prev {
        left: 12px;
    }

    .tour-gallery-modal__nav--next {
        right: 12px;
    }
}

.timeline {
    position: relative;
    padding-left: 30px;
}

.timeline-item:not(.active) .timeline-body {
    display: none;
}

/* vertical line */
.timeline::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0;
    height: 100%;
    width: 2px;
    border-left: 2px dashed #ccc;
}

.timeline-item {
    position: relative;
    margin-bottom: 10px;
}

.timeline-dot {
    position: absolute;
    left: -20px;
    top: 11px;
    width: 20px;
    height: 20px;
    border: 3px solid #0d1b2a;
    border-radius: 50%;
    background: #fff;
}

.timeline-content {
    padding-left: 5px;
}

.timeline-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    border-bottom: 1.4px solid #dadada;
}

.timeline-header h4 {
    font-size: 16px;
    margin: 0;
    font-weight: 600;
}

.timeline-header h4 span {
    color: #ff5a1f;
    font-weight: 700;
}

.toggle {
    font-size: 26px;
    font-weight: bold;
    cursor: pointer;
}

.timeline-body p {
    color: #444;
    line-height: 1.5;
    font-size: 15px;
    margin: 0;
    padding: 0;
    margin-top: 10px;
}

.timeline-body ul {
    list-style: none;
    padding-left: 0;
}

.timeline-body ul li {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
}

.timeline-body ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background-color: #ff5a1f;
    border-radius: 50%;
}

.dp-routes span i {
    color: #ff5a1f;
}

/* Overview  */
.dp-overview ul {
    padding-left: 15px;
    list-style-type: disc;
}

.dp-overview ul li::marker {
    color: #ff5a1f;
    font-size: 14px;
}

.dp-overview strong {
    color: #0f3d91;
}

/* stikcey nav */
.dt-pg-tabs-wrapper {
    padding: 12px;
}

.dt-pg-tabs-wrapper {
    position: sticky;
    top: 85px;
    width: 100%;
    z-index: 50;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.dt-pg-tabs {
    display: flex;
    gap: 10px;
    min-width: max-content;
}

/* Tab button */
.dt-pg-tab {
    border: none;
    background: #e4e6eb;
    color: #555;
    padding: 5px 18px;
    border-radius: 4px;
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.dt-pg-tab:hover {
    background: #070221;
    color: #fff;
}

.dt-pg-active {
    background: #ff7a00;
    color: #fff;
}

[id].dt-pg-section-target {
    scroll-margin-top: var(--dt-pg-scroll-offset, 150px);
}

.dt-pg-icon {
    margin-right: 6px;
}

.price-dt-table__title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    margin-bottom: 20px;
}

.price-dt-table__icon {
    color: #ff5a1f;
}

.price-dt-table__wrapper {
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
}

.price-dt-table__row {
    display: grid;
    grid-template-columns: 240px 1fr;
    border-bottom: 1px solid #ddd;
}

.price-dt-table__row:last-child {
    border-bottom: none;
}

.price-dt-table__label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    font-weight: 600;
    background: #f9f9f9;
    border-right: 1px solid #ddd;
}

.price-dt-table__label i {
    color: #ff5a1f;
}

.price-dt-table__value {
    padding: 10px;
    color: #333;
    line-height: 1.6;
    word-break: break-word;
}

/* ---------------- MOBILE FIX ---------------- */
@media (max-width: 768px) {
    .price-dt-table__row {
        display: flex;
        flex-direction: column;
    }

    .price-dt-table__label {
        border-right: none;
        border-bottom: 1px solid #ddd;
        padding: 14px;
        font-size: 15px;
    }

    .price-dt-table__value {
        padding: 14px;
        font-size: 14px;
    }

    .tiney-dt-card {
        padding: 3px;
    }
}

/* Priceing Table End */

/* faq section */
.tour-dp-faq-item {
    border: 1px solid #ccc;
    margin-bottom: 15px;
    background: #fff;
}

.tour-dp-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 15px;
    cursor: pointer;
}

.tour-dp-faq-question h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
}

.tour-dp-faq-question h4 span {
    color: #ff5a1f;
    font-weight: 700;
}

.tour-dp-faq-toggle {
    font-size: 24px;
    font-weight: bold;
}

.tour-dp-faq-answer {
    border-top: 1px solid #ddd;
    padding: 5px 15px;
}

.tour-dp-faq-answer p {
    margin-bottom: 10px;
}

.tour-dp-faq-answer .ans {
    color: green;
    font-weight: 600;
}

.tour-dp-faq-item:not(.active) .tour-dp-faq-answer {
    display: none;
}

.tour-dp-faq-item.active {
    background: #fafafa;
}

/* ul li design */
.dp-highlights-list {
    list-style: none;
    padding-left: 0px;
}

.dp-highlights-list li {
    position: relative;
    padding-left: 21px;
    margin-bottom: 8px;
}

/* custom dot image */
.dp-highlights-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 15px;
    height: 15px;
    background: url("/assets/images/menu.png") no-repeat center;
    background-size: contain;
}

.dp-exclusions-list {
    list-style: none;
    padding-left: 0px;
}

.dp-exclusions-list li {
    position: relative;
    padding-left: 21px;
    margin-bottom: 8px;
}

.dp-exclusions-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 15px;
    height: 15px;
    background: url("/assets/images/tick.png") no-repeat center;
    background-size: contain;
}

.dp-inclusion-list {
    list-style: none;
    padding-left: 0px;
}

.dp-inclusion-list li {
    position: relative;
    padding-left: 21px;
    margin-bottom: 8px;
}

.dp-inclusion-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 15px;
    height: 15px;
    background: url("/assets/images/cross.png") no-repeat center;
    background-size: contain;
}

/* Car Category Page */
.cat-pg-car-card {
    width: 100%;
    padding: 10px 15px 10px 15px;
    border-radius: 20px;
    background: #f9fbff;
    position: relative;
    box-shadow:
        10px 10px 30px rgba(0, 0, 0, 0.08),
        -10px -10px 30px rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(255, 255, 255, 0.6);
}

.cat-pg-car-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 20px;
    padding: 2px;
    background: linear-gradient(135deg, #ff6b35, #4a90e2);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 0.4;
}

.cat-pg-badge {
    position: absolute;
    top: 20px;
    left: 20px;
    background: linear-gradient(135deg, #ff6b35, #ff3d00);
    color: #fff;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
    box-shadow: 0 5px 15px rgba(255, 107, 53, 0.4);
}

.cat-pg-car-image {
    text-align: center;
}

.cat-pg-car-image img {
    width: 100%;
}

.cat-pg-car-content {
    text-align: left;
}

.cat-pg-car-content h2 {
    font-size: 22px;
    color: #1c2333;
    margin-bottom: 10px;
}

.cat-pg-btn-cnt {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
}

.cat-pg-price {
    font-size: 20px;
    font-weight: bold;
    color: #2f55d4;
    margin-bottom: 20px;
    flex: 1;
}

.cat-pg-price span {
    font-size: 14px;
    color: #777;
    font-weight: normal;
}

.cat-pg-enquire-btn {
    padding: 5px 15px;
    border: none;
    border-radius: 30px;
    font-size: 15px;
    color: #fff;
    cursor: pointer;
    background: linear-gradient(135deg, #3a7bd5, #1e1ea8);
    box-shadow: 0 10px 20px rgba(58, 123, 213, 0.4);
    transition: 0.3s;
}

.cat-pg-enquire-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(58, 123, 213, 0.6);
}

/* Taxi Hero Section */
.taxi-hero-dt-pg-section {
    position: relative;
    min-height: 420px;
    background: url("https://images.unsplash.com/photo-1503376780353-7e6692767b70")
        no-repeat center center/cover;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Dark overlay */
/* .taxi-hero-dt-pg-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.6) 0%,
        rgba(0, 0, 0, 0.75) 100%
    );
    z-index: 1;
} */

.taxi-hero-dt-pg-content {
    position: relative;
    z-index: 2;
    color: #fff;
    padding: 20px 15px;
    background: #00000085;
    border-radius: 20px;
    margin-top: 30px;
}

/* Badge */
.dp-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.08);
    margin-bottom: 25px;
    font-weight: 600;
}

.dp-hero-badge i {
    width: 35px;
    height: 35px;
    background: #fff;
    color: #111;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Heading */
.taxi-hero-dt-pg-content h1 {
    font-size: 55px;
    line-height: 1.05;
    font-weight: 800;
    margin-bottom: 25px;
    color: #fff;
}

.taxi-hero-dt-pg-content h1 span {
    color: #ff6b35;
}

/* Description */
.taxi-hero-dt-pg-content p {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 10px;
}

/* Feature List */
.dp-hero-features {
    list-style: none;
    padding: 10px 0px;
}

.dp-hero-features li {
    position: relative;
    padding-left: 30px;
    font-size: 15px;
    font-weight: 500;
    background: #faf9f3a6;
    padding: ma;
    margin: 10px 0px;
    border-radius: 20px;
    display: table;
    padding-right: 15px;
    color: #000;
}

.dp-hero-features li::before {
    content: "\F26E";
    font-family: "bootstrap-icons";
    position: absolute;
    left: 8px;
    top: 6px;
    width: 16px;
    height: 16px;
    background: rgba(255, 107, 53, 0.15);
    border: 1px solid #ff6b35;
    color: #ff6b35;
    border-radius: 50%;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Support Card */
.hero-support-box {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hero-support-box-call-btn,
.hero-support-box-whatsapp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 30px;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

/* Call Button */
.hero-support-box-call-btn {
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
    color: #fff;
}

.hero-support-box-call-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(37, 99, 235, 0.35);
}

/* WhatsApp Button */
.hero-support-box-whatsapp-btn {
    background: linear-gradient(135deg, #25d366, #128c7e);
    color: #fff;
}

.hero-support-box-whatsapp-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(37, 211, 102, 0.35);
}

/* Mobile */
@media (max-width: 576px) {
    .hero-support-box-call-btn,
    .hero-support-box-whatsapp-btn {
        width: 100%;
        padding: 6px 12px;
    }
}

/* Responsive */
@media (max-width: 991px) {
    .taxi-hero-dt-pg-content h1 {
        font-size: 30px;
        margin-bottom: 0px;
    }

    .support-content h4 {
        font-size: 24px;
    }
}

/* Responsive */
@media (max-width: 768px) {
    .taxi-hero-dt-pg-content h1 {
        font-size: 20px;
    }

    .dp-hero-badge {
        gap: 5px;
        margin-bottom: 10px;
        padding: 4px 8px;
        font-size: 12px;
    }

    .dp-hero-badge i {
        width: 21px;
        height: 21px;
    }

    .dp-hero-features {
        display: none;
    }
}

.taxi-details-hero-form-wrapper {
    position: relative;
    z-index: 5;
}

.taxi-details-hero-form-box {
    background: rgba(255, 255, 255, 0.12);
    padding: 15px;
    border-radius: 12px;
    margin-top: 15px;
    margin-bottom: 15px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 2px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

.taxi-details-hero-form-title {
    font-size: 28px;
    font-weight: 700;
    color: #ff6b36;
    margin-bottom: 8px;
}

.taxi-details-hero-form-subtitle {
    font-size: 14px;
    color: #fff;
    margin-bottom: 20px;
}

.taxi-details-hero-form-group {
    margin-bottom: 10px;
}

.taxi-details-hero-form-input {
    height: 45px;
    border-radius: 5px;
    border: 1px solid #ddd;
    padding: 10px 15px;
    font-size: 14px;
    box-shadow: none !important;
}

.taxi-details-hero-form-input:focus {
    border-color: #ff6b35;
}

.taxi-details-hero-form-btn {
    width: 100%;
    max-width: 160px;
    justify-content: center;
    align-items: center;
    display: flex;
    height: 40px;
    border: none;
    border-radius: 4px;
    background: linear-gradient(135deg, #ff6b35, #f08b3e);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    transition: 0.3s ease;
    margin: 0 auto;
}

.taxi-details-hero-form-btn:hover {
    transform: translateY(-2px);
}

/* chardhamcards Desigging */
.char-dham-card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #dadada;
    transition: 0.3s;
}

.char-dham-card__img img {
    width: 100%;
    height: 210px;
    object-fit: cover;
}

.char-dham-card__body {
    padding: 10px;
}

.char-dham-card__title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    min-height: 40px;
}

.char-dham-card__text {
    font-size: 13px;
    color: #666;
    margin-bottom: 5px;
    line-height: 1.2;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 32px;
}

/* Info */
.char-dham-card__info {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    margin-bottom: 10px;
    padding: 5px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.char-dham-card__info i {
    margin-right: 4px;
    color: #ff6b35;
}

/* Price */
.char-dham-card__price {
    margin-bottom: 8px;
}

.char-dham-card__price h4 {
    font-size: 14px;
    color: #666;
}

.char-dham-card__old {
    text-decoration: line-through;
    color: #999;
    font-size: 13px;
    margin-right: 8px;
}

.char-dham-card__new {
    color: red;
    font-weight: bold;
}

/* Buttons */
.char-dham-card__btns {
    display: flex;
    gap: 5px;
}

.char-dham-card__btn {
    flex: 1;
    padding: 4px;
    font-size: 13px;
    text-align: center;
    border-radius: 8px;
    text-decoration: none;
    transition: 0.3s;
}

.char-dham-card__btn--view {
    background: #0d6efd;
    color: #fff;
}

.char-dham-card__btn--enquiry {
    background: #ff6b35;
    color: #fff;
}

.char-dham-card__btn--whtasaap {
    background: #25d366;
    color: #fff;
}

.char-dham-card__btn:hover {
    opacity: 0.9;
}

/* Details Page Card Taxi Route */
.premium-card-td-pg {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    transition: 0.4s ease;
}

.premium-card-td-pg__img {
    overflow: hidden;
}

.premium-card-td-pg__img img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.premium-card-td-pg:hover .premium-card-td-pg__img img {
    transform: scale(1.1);
}

.premium-card-td-pg__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: linear-gradient(45deg, #ff6a00, #ffb347);
    color: #fff;
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 8px;
}

.premium-card-td-pg__content {
    padding: 15px;
}

.premium-card-td-pg__title {
    font-weight: 600;
    margin-bottom: 5px;
}

.premium-card-td-pg__trip {
    font-size: 13px;
    color: #666;
    margin-bottom: 10px;
}

.premium-card-td-pg__details {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 12px;
    margin-bottom: 10px;
}

.premium-card-td-pg__details span {
    background: #f5f5f5;
    padding: 5px 8px;
    border-radius: 6px;
}

.premium-card-td-pg__actions {
    display: flex;
    justify-content: space-between;
}

.premium-card-td-pg__btn-view {
    flex: 1;
    text-align: center;
    padding: 8px;
    border-radius: 8px;
    background: linear-gradient(45deg, #007bff, #00c6ff);
    color: #fff;
    text-decoration: none;
    margin-right: 8px;
    transition: 0.3s;
}

.premium-card-td-pg__btn-view:hover {
    opacity: 0.9;
}

.premium-card-td-pg__btn-whatsapp {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #25d366;
    color: #fff;
    border-radius: 50%;
    font-size: 18px;
    text-decoration: none;
    transition: 0.3s;
}

.premium-card-td-pg__btn-whatsapp:hover {
    transform: scale(1.1);
}

@media (max-width: 500px) {
    .dp-boxarea {
        padding: 10px;
    }

    .details-page-hero {
        padding: 159px 0 10px;
    }

    .tiney-dt-card img {
        width: 20px;
        height: 20px;
    }

    .dtpage-title {
        font-size: 14px;
    }

    .tiney-dt-card p {
        font-size: 11px;
    }
}

/* right side blogs category */
.blog-categories-grid {
    padding: 15px 0px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Blog Category Item */
.blog-category-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.blog-category-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: #ff6b35;
    transform: scaleY(0);
    transition: transform 0.3s ease;
}

.blog-category-item:hover::before {
    transform: scaleY(1);
}

.blog-category-item:hover {
    background: white;
    box-shadow: 0 4px 15px rgba(224, 106, 33, 0.15);
    transform: translateX(5px);
}

/* Category Post Image */
.category-post-image {
    width: 70px;
    height: 70px;
    border-radius: 10px;
    overflow: hidden;
    flex-shrink: 0;
    position: relative;
}

.category-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.blog-category-item:hover .category-post-image img {
    transform: scale(1.1);
}

.category-post-image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        135deg,
        rgba(209, 105, 1, 0.3) 0%,
        rgba(0, 101, 224, 0.3) 100%
    );
    opacity: 0;
    transition: opacity 0.3s ease;
}

.blog-category-item:hover .category-post-image::after {
    opacity: 1;
}

/* Category Post Info */
.category-post-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.category-post-info h4 {
    font-size: 0.95rem;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
    font-family: "Plus Jakarta Sans", sans-serif;
    transition: color 0.3s ease;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-category-item:hover .category-post-info h4 {
    color: #ff6b35;
}

/* Post Date */
.post-date {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    color: #6c757d;
}

.post-date i {
    color: #ff6b35;
    font-size: 0.75rem;
}

.post-date span {
    font-weight: 500;
}

/* Single Blog Crads */
.cat-blogs-card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.35s ease;
    height: 100%;
}

.cat-blogs-card:hover {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.cat-blogs-image {
    position: relative;
    overflow: hidden;
}

.cat-blogs-image img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    transition: 0.5s;
}

.cat-blogs-card:hover .cat-blogs-image img {
    transform: scale(1.08);
}

.cat-blogs-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #ff6b00;
    color: #fff;
    padding: 4px 16px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
}

.cat-blogs-content {
    padding: 10px;
}

.cat-blogs-meta {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    color: #777;
    font-size: 14px;
}

.cat-blogs-meta i {
    color: #ff6b00;
    margin-right: 5px;
}

.cat-blogs-title {
    margin-bottom: 5px;
    line-height: 1.2;
}

.cat-blogs-title a {
    color: #111;
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    transition: 0.3s;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.cat-blogs-title a:hover {
    color: #ff6b00;
}

.cat-blogs-desc {
    color: #666;
    line-height: 1.3;
    margin-bottom: 0px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.cat-blogs-btn {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #ff6b00;
    text-decoration: none;
    font-weight: 700;
    transition: 0.3s;
    justify-content: end;
}

.cat-blogs-btn:hover {
    gap: 12px;
}

.cat-blogs-btn i {
    transition: 0.3s;
}

/* hoem Below Card */
.home_all_cat_top_wrapper {
    border-radius: 80px;
    padding: 15px 10px 5px;
    gap: 15px;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.08);
    width: 100%;
    background: #faf2eb;
    border: 2.5px solid #ede4d6;
}

.home_all_cat_top_item {
    min-width: 110px;
    text-align: center;
    cursor: pointer;
    flex-shrink: 0;
}

.home_all_cat_top_item img {
    width: 75px;
    height: 75px;
    object-fit: cover;
    border-radius: 50%;
    padding: 4px;
    border: 3px solid #ff6b35;
    transition: 0.3s;
}

.home_all_cat_top_item.active img {
    border-color: #17b857;
}

.home_all_cat_top_item h6 {
    margin-top: 8px;
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
}

.home_all_cat_top_item.active h6 {
    color: #17b857;
}

@media (max-width: 768px) {
    .home_all_cat_top_wrapper {
        padding: 10px 0px;
        border-radius: 10px;
    }

    .home_all_cat_top_item {
        min-width: 81px;
    }

    .home_all_cat_top_item img {
        width: 75px;
        height: 75px;
    }

    .home_all_cat_top_item h6 {
        font-size: 9px;
    }
}

@media (max-width: 380px) {
    .home_all_cat_top_wrapper {
        gap: 5px;
    }
}

/* Home Tab Swatcher */
.home_trip_content_wrap,
.home_index_trip_content_wrap {
    display: none;
}

.home_trip_content_wrap.active,
.home_index_trip_content_wrap.active {
    display: block;
}

.home_trip_tabs,
.home_index_trip_tabs {
    font-size: 14px;
    width: 100%;
    max-width: fit-content;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE */
}

.home_trip_tabs::-webkit-scrollbar,
.home_index_trip_tabs::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari */
}

.home_trip_tabs,
.home_index_trip_tabs {
    margin: auto;
    background: #faf2eb;
    padding: 3px 4px;
    border-radius: 60px;
    display: flex;
    gap: 8px;
    border: 2.5px solid #ede4d6;

    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;

    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
}

.home_trip_tab,
.home_index_trip_tab {
    border: none;
    background: transparent;
    padding: 10px 35px;
    border-radius: 50px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s;
    flex-shrink: 0;
    color: #0e152f;
}

.home_trip_tab.active,
.home_index_trip_tab.active {
    background: linear-gradient(90deg, rgb(255, 107, 0), rgb(255, 140, 0));
    color: #fff;
}

.home_trip_btn {
    background: #ff6b35;
    padding: 7px 35px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border-radius: 30px;
}

.home_trip_tab svg,
.home_index_trip_tab svg {
    width: 30px;
    height: 30px;
    margin-bottom: 3px;
}

.home_trip_tab svg path,
.home_index_trip_tab svg path {
    fill: currentColor;
}

@media (max-width: 767px) {
    .home_trip_tabs,
    .home_index_trip_tabs {
        justify-content: flex-start;
        width: 100%;
    }

    .home_trip_tab,
    .home_index_trip_tab {
        padding: 5px 12px;
        font-size: 10px;
    }
    .home_trip_tab svg,
    .home_index_trip_tab svg {
        width: 20px;
        height: 20px;
    }
}

/* New card for top  */
.flexive_card {
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    font-family: sans-serif;
}

.flexive_card_image {
    position: relative;
}

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

/* TOP (rating + heart) */
.flexive_card_top {
    position: absolute;
    top: 12px;
    left: 0px;
    right: 12px;
    display: flex;
    justify-content: space-between;
    color: #fff;
    font-weight: 600;
}

.flexive_card_rating {
    color: #000;
    background: #fff91f;
    padding: 1px 12px;
    border-radius: 0px 20px 20px 0px;
    font-size: 13px;
    font-weight: 400;
}

/* OVERLAY */
.flexive_card_overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 8px 10px;
    color: #fff;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85), transparent);
}

/* TAG */
.flexive_card_tag {
    display: inline-block;
    background: rgb(113 106 106 / 38%);
    margin-bottom: 8px;
    font-size: 13px;
    font-family: "Poppins Medium", sans-serif;
    border: 1px solid rgba(255, 255, 255, 0.5);
    padding: 3px 12px;
    border-radius: 8px;
    position: relative;
}

/* TITLE */
.flexive_card_title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 5px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    color: #fff;
    /* max 2 lines */
    -webkit-box-orient: vertical;

    overflow: hidden;
}

/* PRICE */
.flexive_card_price_box {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0px 0;
}

.divider_flexive_card {
    height: 1px;
    background: #ffffff9e;
    margin: 5px 0px;
}

.flexive_card_old {
    text-decoration: line-through;
    opacity: 0.7;
}

.flexive_card_new {
    font-size: 14px;
    font-weight: bold;
}

.flexive_card_discount {
    background: transparent;
    color: #69d29c;
    border: 1px solid #69d29c;
    font-weight: 500;
    padding: 0px 6px;
    font-size: 12px;
    border-radius: 4px;
    min-width: 50px;
}

.flexive_card_location {
    font-size: 13px;
    opacity: 0.85;
    display: flex;
    align-items: center;
    gap: 6px;
}

.flexive_card_location_text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.flexive_card_read_more {
    font-size: 11px;
    color: #4e00cd;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 30px;
    border: 1px solid #fff;
    min-width: 21px;
}

@media (max-width: 767px) {
    .flexive_card_title {
        font-size: 12px;
    }

    .flexive_card_image img {
        height: 250px;
    }

    .flexive_card_new {
        font-size: 11px;
    }

    .flexive_card_tag {
        padding: 1px 12px;
        font-size: 12px;
    }

    .flexive_card_overlay {
        padding: 5px 5px;
    }

    .flexive_card_discount {
        min-width: 40px;
        padding: 0px 3px;
        font-size: 10px;
    }
}

/* home blogs card */
/* Featured Card Styles */
.home_blog_featured_card {
    border-radius: 32px;
    overflow: hidden;
    position: relative;
    height: 600px;
}

.home_blog_hero_img_wrapper {
    width: 100%;
    height: 100%;
}

.home_blog_hero_img_wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
}

.home_blog_hero_overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.9) 10%,
        transparent 60%
    );
    padding: 30px 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.home_blog_hero_tag {
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    color: #fff;
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    width: fit-content;
    border: 1px solid rgba(15, 234, 37, 0.3);
}

.home_blog_hero_content {
    color: #fff;
}

.home_blog_hero_date {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
    display: block;
    opacity: 0.8;
}

.home_blog_hero_title {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 15px;
    line-height: 1.2;
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home_blog_hero_desc {
    font-size: 16px;
    opacity: 0.9;
    max-width: 90%;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home_blog_hero_btn {
    background: linear-gradient(135deg, #fe6a36 0%, #4882ed 100%);
    color: white;
    border: 1px solid transparent;
    color: #fff;
    text-decoration: none;
    padding: 12px 28px;
    border-radius: 12px;
    font-weight: 700;
    display: inline-block;
    transition: 0.3s;
}

.home_blog_hero_btn:hover {
    background: #ffffffd1;
    color: #061694;
    border: 1px solid #061694;
    transform: translateY(-3px);
}

/* Sidebar List Styles */
.home_blog_side_card {
    display: flex;
    gap: 20px;
    margin-bottom: 24px;
    background: linear-gradient(
        145deg,
        rgb(254 106 54 / 32%) 0%,
        rgb(254 106 54 / 18%) 45%,
        #4881eb 100%
    );
    padding: 12px;
    border-radius: 20px;
    transition: 0.3s;
}

.home_blog_side_card:hover {
    background: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.home_blog_side_img {
    width: 110px;
    height: 110px;
    flex-shrink: 0;
    border-radius: 16px;
    overflow: hidden;
}

.home_blog_side_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home_blog_side_info h4 {
    font-size: 17px;
    font-weight: 700;
    margin: 6px 0;
    color: #1a1a1a;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home_blog_side_meta {
    font-size: 11px;
    font-weight: 700;
    color: #07cc98;
    text-transform: uppercase;
}

.home_blog_side_link {
    font-size: 13px;
    font-weight: 700;
    color: #64748b;
    text-decoration: none;
    transition: 0.2s;
}

.home_blog_side_link:hover {
    color: #07cc98;
}

/* Mobile Responsive */
@media (max-width: 991px) {
    .home_blog_featured_card {
        height: 450px;
    }

    .home_blog_hero_title {
        font-size: 24px;
        margin-bottom: 0px;
    }

    .home_blog_hero_btn {
        padding: 5px 10px;
        border-radius: 5px;
        margin-bottom: 0px;
        font-size: 14px;
    }
}

.link-card-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 150px;
    margin: 10px auto 0;
    padding: 2px 20px;
    border-radius: 50px;
    background: linear-gradient(135deg, #ff6b35, #ff8c42);
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.link-card-btn:hover {
    color: #fff;
}

.link-card-btn span {
    white-space: nowrap;
}

@media (min-width: 1200px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        /* max-width: 1300px; */
        max-width: calc(100% - 65px);
    }
}

.popular-toute-right-side {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 15px 0;
    background: blanchedalmond;
    padding: 8px;
    border-radius: 5px;
}

.popular-toute-right-side-icon-box {
    height: 35px;
    width: 35px;
    min-width: 35px;
    color: #fff;
    background: #ff6b35;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 3px;
}

.popular-toute-right-side-route-name {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #000;
    font-weight: 600;
    font-size: 16px;
}

.popular-toute-right-side-route-name span {
    color: #ff6b35;
}

.popular-toute-right-side-btn {
    margin-top: 10px;
    display: flex;
    justify-content: center;
}

.popular-toute-right-side-btn-text {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    padding: 4px 21px;
    background: linear-gradient(135deg, #ff6b35, #ff914d);
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(255, 107, 53, 0.25);
    transition: all 0.3s ease;
}

.popular-toute-right-side-btn-text i {
    transition: transform 0.3s ease;
}

.popular-toute-right-side-btn-text:hover {
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(255, 107, 53, 0.35);
}

.popular-toute-right-side-btn-text:hover i {
    transform: translateX(6px);
}

.taxi-dp-quick-info {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin: 15px 0;
}

.taxi-dp-info-card {
    position: relative;
    background: #fff;
    border-radius: 20px;
    padding: 24px 20px;
    text-align: center;
    overflow: hidden;
    border: 1px solid #f0e4b6;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
}

.taxi-dp-info-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #ff9800, #ff5722);
}

.taxi-dp-info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.taxi-dp-info-label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #6b7280;
    margin-bottom: 12px;
}

.taxi-dp-info-card h3 {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1;
}

/* Different Highlight Colors */
.taxi-dp-info-card:nth-child(1) h3 {
    color: #16a34a;
}

.taxi-dp-info-card:nth-child(4) h3 {
    color: #f59e0b;
}

@media (max-width: 768px) {
    .taxi-dp-quick-info {
        gap: 5px;
    }

    .taxi-dp-info-card {
        padding: 15px 5px;
        border-radius: 10px;
    }

    .taxi-dp-info-card h3 {
        font-size: 12px;
    }

    .taxi-dp-info-label {
        font-size: 10px;
        letter-spacing: 0px;
        margin-bottom: 4px;
    }

    .taxi-dp-info-card::before {
        height: 2px;
    }
}

.route_taxi_dp_card {
    position: relative;
    background: #fff;
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid #f3dce6;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

.route_taxi_dp_top_shape {
    position: absolute;
    top: 0;
    right: 0;
    width: 120px;
    height: 100px;
    background: linear-gradient(135deg, #fe6a3652, #4383f5);
    border-bottom-left-radius: 120px;
}

.route_taxi_dp_header {
    position: relative;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.route_taxi_dp_content h3 {
    font-size: 26px;
    font-weight: 700;
    color: #15203b;
    margin: 0;
}

.route_taxi_dp_content p {
    color: #ff6b35;
    font-size: 14px;
    margin: 0px;
}

.route_taxi_dp_meta {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

.route_taxi_dp_meta span {
    color: #55627d;
    font-weight: 500;
}

.route_taxi_dp_meta i {
    color: #ff6b35;
}

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

.route_taxi_dp_image img {
    width: 100px;
    height: 100px;
    min-width: 100px;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #fff;
}

.route_taxi_dp_tags {
    padding: 10px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 13px;
}

.route_taxi_dp_tags span {
    padding: 1px 10px;
    background: #fff1f6;
    color: #0f3d90;
    border-radius: 50px;
    font-weight: 600;
}

.route_taxi_dp_price_box {
    margin: 0 10px;
    padding: 10px;
    background: #fff8fb;
    border: 1px solid #f6d8e5;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.route_taxi_dp_price_box small {
    color: #777;
}

.route_taxi_dp_price_box h2 {
    font-size: 21px;
    margin: 0px 0;
    color: #ff6b35;
    font-weight: 800;
}

.route_taxi_dp_price_box span {
    color: #7d8797;
}

.route_taxi_dp_best_price {
    width: 134px;
    height: 45px;
    border-radius: 5px;
    background: #0f3d90;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 1.2;
    font-size: 14px;
    letter-spacing: 0;
    font-weight: 600;
}

.route_taxi_dp_buttons {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    padding: 10px;
}

.route_taxi_dp_buttons a,
.route_taxi_dp_buttons button {
    height: 35px;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    text-decoration: none;
    transition: 0.3s;
    flex: 1;
    font-size: 12px;
    font-weight: 600;
}

.route_taxi_dp_call_btn {
    background: #000;
    color: #fff;
}

.route_taxi_dp_enquiry_btn {
    border: 1px solid #fe6a36;
    color: #fe6a36;
    background: #fff;
}

.route_taxi_dp_whatsapp_btn {
    background: #25d366;
    color: #fff;
}

.route_taxi_dp_buttons i {
    font-size: 13px;
    margin-right: 3px;
}

/* Why Choose Taxi */

.why_choose_taxi_main_card {
    background: linear-gradient(135deg, #032b7a, #0b5fff);
    border-radius: 20px;
    padding: 15px;
    color: #fff;
    height: 100%;
}

.why_choose_taxi_icon {
    width: 60px;
    height: 60px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}

.why_choose_taxi_icon i {
    font-size: 35px;
}

.why_choose_taxi_main_card h2 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 15px;
    color: #fff;
}

.why_choose_taxi_main_card h2 span {
    color: #ffd43b;
}

.why_choose_taxi_main_card p {
    font-size: 16px;
    opacity: 0.9;
    max-width: 650px;
}

.why_choose_taxi_features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    margin-top: 15px;
}

.why_choose_taxi_feature {
    background: #fff;
    color: #111;
    border-radius: 5px;
    padding: 5px 5px;
    text-align: center;
}

.why_choose_taxi_feature i {
    display: block;
    font-size: 24px;
    margin-bottom: 10px;
    color: #0b5fff;
}

.why_choose_taxi_feature span {
    font-weight: 600;
}

.why_choose_taxi_price_card,
.why_choose_taxi_fleet_card,
.why_choose_taxi_support_card,
.why_choose_taxi_review_card {
    border-radius: 20px;
    padding: 15px;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.why_choose_taxi_price_card {
    background: linear-gradient(135deg, #ffb000, #ffd56a);
}

.why_choose_taxi_fleet_card {
    background: linear-gradient(135deg, #ecfff7, #d8fff0);
}

.why_choose_taxi_support_card {
    background: linear-gradient(135deg, #eef4ff, #dfe8ff);
}

.why_choose_taxi_review_card {
    background: linear-gradient(135deg, #f6e8ff, #ead7ff);
}

.why_choose_taxi_small_icon {
    width: 60px;
    height: 60px;
    border-radius: 10px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}

.why_choose_taxi_small_icon i {
    font-size: 32px;
    color: #ff9800;
}

.why_choose_taxi_small_icon.green i {
    color: #16a34a;
}

.why_choose_taxi_small_icon.blue i {
    color: #2563eb;
}

.why_choose_taxi_small_icon.purple i {
    color: #9333ea;
}

.why_choose_taxi_price_card h3,
.why_choose_taxi_fleet_card h3,
.why_choose_taxi_support_card h3,
.why_choose_taxi_review_card h3 {
    font-size: 23px;
    font-weight: 700;
    margin-bottom: 5px;
}

.why_choose_taxi_price_card p,
.why_choose_taxi_fleet_card p,
.why_choose_taxi_support_card p,
.why_choose_taxi_review_card p {
    font-size: 16px;
    margin-bottom: 5px;
    color: #475569;
}

.why_choose_taxi_bottom_text {
    margin-top: 5px;
    font-size: 18px;
    font-weight: 600;
    color: #16a34a;
}

.why_choose_taxi_bottom_text i {
    margin-right: 8px;
}

.why_choose_taxi_phone {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
    background: #fff;
    padding: 5px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 700;
    color: #2563eb;
}

.why_choose_taxi_rating {
    margin-top: 25px;
    font-size: 28px;
}

.why_choose_taxi_rating span {
    color: #111827;
    font-weight: 700;
}

.why_choose_taxi_trust_bar {
    margin-top: 25px;
    background: #fff;
    border-radius: 100px;
    padding: 10px 20px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    box-shadow: 0 10px 30px rgb(0 0 0 / 34%);
}

.why_choose_taxi_trust_bar div {
    font-weight: 600;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 5px;
    text-align: center;
    line-height: 15px;
}

.why_choose_taxi_trust_bar i {
    margin-right: 2px;
    color: #24d366;
    background: #21201f;
    padding: 5px;
    border-radius: 30px;
    min-width: 25px;
}

@media (max-width: 576px) {
    .why_choose_taxi_main_card h2 {
        font-size: 21px;
        margin-bottom: 5px;
    }

    .why_choose_taxi_main_card p {
        font-size: 14px;
    }

    .why_choose_taxi_icon {
        width: 50px;
        height: 50px;
        border-radius: 5px;
    }

    .why_choose_taxi_small_icon {
        width: 50px;
        height: 50px;
        border-radius: 5px;
    }

    .why_choose_taxi_price_card p,
    .why_choose_taxi_fleet_card p,
    .why_choose_taxi_support_card p,
    .why_choose_taxi_review_card p {
        font-size: 14px;
    }

    .why_choose_taxi_trust_bar div {
        font-size: 12px;
        gap: 5px;
        text-align: center;
    }

    .why_choose_taxi_features {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin-top: 10px;
    }

    .why_choose_taxi_feature {
        width: 100%;
    }

    .why_choose_taxi_trust_bar {
        grid-template-columns: 1fr 1fr;
        gap: 5px;
        border-radius: 10px;
        padding: 8px 8px;
    }
}

.support-hero-icon-wrapper {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: start;
}

.support-hero-icon-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 12px;
    margin-bottom: 20px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.support-hero-icon-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
}

.support-hero-icon-box {
    width: 55px;
    height: 55px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.support-hero-icon-box i {
    font-size: 26px;
    color: #fff;
}

.support-hero-icon-blue {
    background: linear-gradient(135deg, #4f8cff, #2563eb);
}

.support-hero-icon-orange {
    background: linear-gradient(135deg, #ffb347, #ff8c00);
}

.support-hero-icon-green {
    background: linear-gradient(135deg, #22c55e, #10b981);
}

.support-hero-icon-content h3 {
    margin: 0;
    font-size: 25px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
}

.support-hero-icon-content p {
    margin: 0px 0 0;
    font-size: 16px;
    color: rgba(255, 255, 255, 0.75);
}

.hero-sefty-box-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 5px 10px;
    position: relative;
    z-index: 4;
    background: #000;
    margin-top: -22px;
    border-radius: 5px;
    z-index: 20;
}

.hero-sefty-box-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
}

.hero-sefty-box-item i {
    color: #ffd700;
    font-size: 24px;
    width: 28px;
    text-align: center;
}

@media (max-width: 768px) {
    .hero-sefty-box-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 5px;
        padding: 5px 6px;
    }

    .hero-sefty-box-item {
        width: 48%;
        font-size: 15px;
    }

    .hero-sefty-box-item i {
        font-size: 20px;
    }

    .support-hero-icon-wrapper {
        justify-content: center;
        gap: 5px;
    }

    .support-hero-icon-card {
        padding: 6px 8px;
        gap: 5px;
    }

    .support-hero-icon-box i {
        font-size: 18px;
    }

    .support-hero-icon-box {
        width: 30px;
        height: 30px;
        border-radius: 3px;
    }

    .support-hero-icon-content h3 {
        font-size: 12px;
    }
}

@media (max-width: 576px) {
    .hero-sefty-box-item {
        width: 100%;
        justify-content: start;
    }
}

.taxi-dt-pg-about-us-wrapper {
    background: #f8fafc;
}

.taxi-dt-pg-about-us-info-card,
.taxi-dt-pg-about-us-attractions,
.taxi-dt-pg-about-us-tips {
    background: #fff;
    border-radius: 10px;
    padding: 15px;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.taxi-dt-pg-about-us-info-card {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    height: 100%;
    border-top: 3px solid #facc15;
}

.taxi-dt-pg-about-us-icon {
    width: 55px;
    height: 55px;
    border-radius: 16px;
    background: #fef3c7;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d97706;
    font-size: 22px;
    flex-shrink: 0;
}

.taxi-dt-pg-about-us-info-card h4,
.taxi-dt-pg-about-us-heading h3 {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
    color: #0f172a;
}

.taxi-dt-pg-about-us-info-card p {
    margin-top: 10px;
    color: #64748b;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 5px;
}

.taxi-dt-pg-about-us-heading {
    display: flex;
    align-items: center;
    gap: 15px;
}

.taxi-dt-pg-about-us-attractions {
    border-top: 5px solid #facc15;
}

.taxi-dt-pg-about-us-place {
    background: #f8fafc;
    border-radius: 10px;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: 0.3s;
}

.taxi-dt-pg-about-us-place:hover {
    transform: translateY(-4px);
}

.taxi-dt-pg-about-us-place span {
    min-width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #facc15;
    color: #000;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.taxi-dt-pg-about-us-place p {
    margin: 0;
    font-size: 16px;
    color: #334155;
    font-weight: 500;
}

.taxi-dt-pg-about-us-tips {
    border-top: 5px solid #22c55e;
}

.taxi-dt-pg-about-us-green {
    background: #dcfce7;
    color: #16a34a;
}

.taxi-dt-pg-about-us-tip {
    background: #f0fdf4;
    border: 1px solid #d1fae5;
    border-radius: 10px;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.taxi-dt-pg-about-us-tip i {
    color: #22c55e;
    font-size: 18px;
}

.taxi-dt-pg-about-us-tip span {
    color: #475569;
    font-weight: 500;
}

.taxi-dt-pg-about-us-destination {
    padding: 35px;
    border-radius: 24px;
    background: linear-gradient(135deg, #0f172a, #172554, #1e293b);
    box-shadow: 0 15px 40px rgba(15, 23, 42, 0.3);
}

.taxi-dt-pg-about-us-light h3 {
    color: #fff;
}

.taxi-dt-pg-about-us-tags {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    justify-content: center;
    gap: 15px;
    margin-top: 25px;
}

.taxi-dt-pg-about-us-tags span {
    padding: 5px 22px;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #fff;
    backdrop-filter: blur(10px);
    font-size: 15px;
}

.taxi-dt-pg-about-us-tags i {
    margin-right: 8px;
}

@media (max-width: 768px) {
    .taxi-dt-pg-about-us-info-card,
    .taxi-dt-pg-about-us-attractions,
    .taxi-dt-pg-about-us-tips,
    .taxi-dt-pg-about-us-destination {
        padding: 10px;
    }

    .taxi-dt-pg-about-us-info-card h4,
    .taxi-dt-pg-about-us-heading h3 {
        font-size: 16px;
    }

    .taxi-dt-pg-about-us-info-card p {
        margin-top: 0px;
        font-size: 14px;
        line-height: 1.5;
    }

    .taxi-dt-pg-about-us-icon {
        width: 40px;
        height: 40px;
        border-radius: 5px;
    }

    .taxi-dt-pg-about-us-heading {
        gap: 10px;
    }

    .taxi-dt-pg-about-us-heading h3 {
        font-size: 16px;
    }

    .taxi-dt-pg-about-us-tags {
        gap: 10px;
    }

    .taxi-dt-pg-about-us-tags span {
        width: 100%;
        text-align: center;
        padding: 5px 10px;
        font-size: 12px;
    }

    .taxi-dt-pg-about-us-place span {
        min-width: 25px;
        height: 25px;
        border-radius: 2px;
    }

    .taxi-dt-pg-about-us-place p {
        font-size: 14px;
    }

    .taxi-dt-pg-about-us-tip span {
        font-size: 14px;
        line-height: 1.3;
    }

    .taxi-dt-pg-about-us-destination {
        border-radius: 10px;
    }

    .taxi-dt-pg-about-us-tags {
        grid-template-columns: repeat(2, 1fr);
        justify-content: stretch;
    }

    .taxi-dt-pg-about-us-tags i {
        margin-right: 2px;
    }
}

.best_time_section {
    background: #f8fafc;
}

.best_time_stat_card {
    background: #fff;
    border-radius: 10px;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e7eb;
}

.best_time_stat_icon {
    width: 50px;
    height: 50px;
    border-radius: 10px;
    background: #facc15;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: 22px;
}

.best_time_blue {
    background: #3b82f6;
    color: #fff;
}

.best_time_green {
    background: #22c55e;
    color: #fff;
}

.best_time_stat_card span {
    color: #64748b;
    font-size: 14px;
}

.best_time_stat_card h5 {
    margin: 0;
    font-weight: 700;
}

.best_time_season_card {
    background: #fff;
    border-radius: 15px;
    padding: 25px 15px;
    border: 1px solid #e5e7eb;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
    height: 100%;
    transition: 0.3s;
}

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

.best_time_active {
    border: 2px solid #facc15;
}

.best_time_season_top {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.best_time_season_top i {
    width: 60px;
    height: 60px;
    background: #fff3cd;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #f59e0b;
    font-size: 22px;
}

.best_time_season_top h4 {
    margin: 0;
    font-weight: 700;
}

.best_time_season_top span {
    color: #64748b;
}

.best_time_temp {
    background: #f8fafc;
    padding: 14px 18px;
    border-radius: 12px;
    margin-bottom: 10px;
    font-weight: 600;
}

.best_time_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

.best_time_tags span {
    background: #dcfce7;
    color: #15803d;
    padding: 3px 15px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
}

.best_time_season_card p {
    color: #475569;
    line-height: 1.8;
    margin: 0;
}

.best_time_recommendation {
    background: linear-gradient(135deg, #0f172a, #1e3a8a);
    border-radius: 25px;
    padding: 15px;
    display: flex;
    gap: 20px;
    align-items: flex-start;
    color: #fff;
}

.best_time_recommendation_icon {
    width: 70px;
    height: 70px;
    border-radius: 18px;
    background: #facc15;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    flex-shrink: 0;
}

.best_time_recommendation h3 {
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
}

.best_time_recommendation p {
    margin: 0;
    opacity: 0.9;
}

@media (max-width: 768px) {
    .best_time_recommendation {
        flex-direction: column;
        gap: 10px;
        border-radius: 15px;
        margin-top: 25px !important;
    }

    .best_time_stat_icon,
    .best_time_season_top i,
    .best_time_recommendation_icon {
        width: 40px;
        height: 40px;
        border-radius: 5px;
    }

    .best_time_tags span {
        padding: 2px 10px;
        font-size: 12px;
    }

    .best_time_temp {
        padding: 5px 14px;
        border-radius: 5px;
    }

    .best_time_season_card p {
        line-height: 1.3;
        font-size: 14px;
    }

    .best_time_recommendation p {
        line-height: 1.3;
        font-size: 14px;
    }
}

/* cards */
.taxi-details-serv-card {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    padding: 15px;
    text-align: center;
    height: 100%;
    transition: all 0.35s ease;
    position: relative;
    overflow: hidden;
}

.taxi-details-serv-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #f59e0b, #facc15);
    transform: scaleX(0);
    transition: 0.4s;
}

.taxi-details-serv-card:hover::before {
    transform: scaleX(1);
}

.taxi-details-serv-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
    border: 1px solid #ff0000;
}

.taxi-details-serv-card-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 10px;
    border-radius: 50%;
    background: #fff8e7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.taxi-details-serv-card-icon i {
    font-size: 30px;
    color: #d97706;
}

.taxi-details-serv-card-title {
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0px;
}

.taxi-details-serv-card-desc {
    margin: 0;
    color: #64748b;
    font-size: 15px;
    line-height: 1.3;
}

/* top icon section */
.taxi-dt-tp-ico-section {
    background: #f8fafc;
}

.taxi-dt-tp-ico-wrapper {
    background: #fff;
    border-radius: 10px;
    padding: 10px;
    border: 1px solid #ececec;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.06);
}

.taxi-dt-tp-ico-stat {
    display: flex;
    align-items: center;
    gap: 15px;
    position: relative;
}

.taxi-dt-tp-ico-stat::after {
    content: "";
    position: absolute;
    right: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 65px;
    background: #e5e7eb;
}

.taxi-dt-tp-ico-last::after {
    display: none;
}

.taxi-dt-tp-ico-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.taxi-dt-tp-ico-icon i {
    font-size: 26px;
}

.taxi-dt-tp-ico-yellow {
    background: #fff7dd;
    color: #f4b400;
}

.taxi-dt-tp-ico-blue {
    background: #eef5ff;
    color: #2f80ed;
}

.taxi-dt-tp-ico-green {
    background: #edf9ef;
    color: #22c55e;
}

.taxi-dt-tp-ico-purple {
    background: #f5efff;
    color: #8b5cf6;
}

.taxi-dt-tp-ico-content h3 {
    font-size: 30px;
    font-weight: 800;
    color: #111827;
    margin: 0 0 5px;
    line-height: 1;
}

.taxi-dt-tp-ico-content p {
    margin: 0;
    color: #6b7280;
    font-size: 16px;
    font-weight: 500;
}

.taxi-dt-tp-ico-divider {
    height: 1px;
    background: #e5e7eb;
    margin: 10px 0;
}

.taxi-dt-tp-ico-services {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.taxi-dt-tp-ico-service {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 500;
    color: #4b5563;
}

.taxi-dt-tp-ico-dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: block;
}

.taxi-dt-tp-ico-dot-yellow {
    background: #f4b400;
}

.taxi-dt-tp-ico-dot-blue {
    background: #2f80ed;
}

.taxi-dt-tp-ico-dot-green {
    background: #35b84b;
}

.taxi-dt-tp-ico-dot-red {
    background: #ff5b5b;
}

@media (max-width: 991px) {
    .taxi-dt-tp-ico-wrapper {
        padding: 10px;
    }

    .taxi-dt-tp-ico-stat::after {
        display: none;
    }

    .taxi-dt-tp-ico-content h3 {
        font-size: 34px;
    }

    .taxi-dt-tp-ico-content p {
        font-size: 14px;
        line-height: 16px;
    }

    .taxi-dt-tp-ico-services {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }

    .taxi-dt-tp-ico-service {
        font-size: 14px;
        gap: 5px;
    }
}

@media (max-width: 767px) {
    .taxi-dt-tp-ico-wrapper {
        padding: 10px;
    }

    .taxi-dt-tp-ico-stat {
        margin-top: 5px;
        gap: 5px;
    }

    .taxi-dt-tp-ico-icon {
        width: 40px;
        height: 40px;
    }

    .taxi-dt-tp-ico-content h3 {
        font-size: 15px;
        margin-bottom: 3px;
    }

    .taxi-dt-tp-ico-dot {
        width: 14px;
        height: 14px;
    }

    .taxi-dt-tp-ico-services {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .details-page-content h2 {
        font-size: 18px;
    }

    .details-page-content p {
        font-size: 14px;
    }

    .details-social-share {
        margin-top: 15px;
        padding-top: 15px;
    }

    .section-header {
        margin-bottom: 20px;
    }

    .route_taxi_dp_content h3 {
        font-size: 20px;
    }

    .route_taxi_dp_meta span {
        font-size: 14px;
    }

    .route_taxi_dp_tags span {
        font-size: 10px;
    }

    .taxi-details-serv-card-title {
        font-size: 16px;
    }

    .taxi-details-serv-card {
        padding: 15px 10px;
    }

    .taxi-details-serv-card-icon {
        width: 40px;
        height: 40px;
    }

    .taxi-details-serv-card-icon i {
        font-size: 21px;
    }

    .taxi-details-serv-card-desc {
        font-size: 14px;
        text-align: start;
    }

    .section-subtitle {
        font-size: 14px;
    }

    .taxi-hero-dt-pg-content p {
        font-size: 12px;
        line-height: 1.4;
        margin-bottom: 5px;
    }
}

/* Ended Top Icon Section */
.similar-tour-content {
    margin-top: 20px;
}

.similar-tour-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.similar-tour-content ul li {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 10px 7px;
    margin-bottom: 10px;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #dadada;
    border-left: 4px solid #ff6b35;
    font-size: 12px;
    font-weight: 500;
    color: #333;
    transition: all 0.3s ease;
    line-height: 16px;
}

.similar-tour-content ul li:hover {
    background: #eef5ff;
    transform: translateX(5px);
    box-shadow: 0 1px 5px 0 rgb(255 107 53);
}

.similar-tour-content ul li i {
    color: #ff6b35;
    font-size: 16px;
}

/* all city taxi cards */
.all_city_taxi_service_card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08);
    transition: 0.4s ease;
    height: 100%;
    display: flex;
    position: relative;
}

.all_city_taxi_service_image {
    width: 40%;
    position: relative;
    overflow: hidden;
}

.all_city_taxi_service_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s ease;
}

.all_city_taxi_service_card:hover .all_city_taxi_service_image img {
    transform: scale(1.08);
}

.all_city_taxi_service_badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #fff4ec;
    color: #ff6b00;
    padding: 2px 14px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 600;
}

.all_city_taxi_service_content {
    width: 60%;
    padding: 10px 10px;
    position: relative;
}

.all_city_taxi_service_icon {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 21px;
    margin-bottom: 2px;
}

.all_city_taxi_service_content h3 {
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    color: #101828;
    margin-bottom: 0px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: #f5efff;
    padding: 2px 3px;
    margin-top: 5px;
    border-radius: 2px;
}

.all_city_taxi_service_content p {
    color: #667085;
    margin-bottom: 5px;
    font-size: 13px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 17px;
    margin-top: 5px;
}

.all_city_taxi_service_content ul {
    list-style: none;
    padding: 0;
    margin: 0 0 25px;
}

.all_city_taxi_service_content ul li {
    color: #475467;
    font-size: 12px;
    border-bottom: 1px dashed #ffc107bd;
    margin-bottom: 5px;
}

.all_city_taxi_service_content ul li i {
    color: #ff6b35;
    margin-right: 5px;
}

.all_city_taxi_service_btns {
    display: flex;
    gap: 5px;
    font-size: 10px;
}

.all_city_taxi_service_enquiry_btn {
    flex: 1;
    background: linear-gradient(90deg, #ff6b00, #ff8c00);
    color: #fff;
    text-decoration: none;
    padding: 5px;
    border-radius: 3px;
    text-align: center;
    font-weight: 600;
    transition: 0.3s;
}

.all_city_taxi_service_enquiry_btn:hover {
    color: #fff;
    transform: translateY(-2px);
}

.all_city_taxi_service_details_btn {
    flex: 1;
    border: 1px solid #d0d5dd;
    color: #344054;
    text-decoration: none;
    padding: 5px;
    border-radius: 3px;
    text-align: center;
    font-weight: 600;
    transition: 0.3s;
}

.all_city_taxi_service_details_btn:hover {
    background: #f8f9fc;
    color: #111827;
}

/* Tablet */
@media (max-width: 991px) {
    .all_city_taxi_service_card {
        flex-direction: column;
    }

    .all_city_taxi_service_image,
    .all_city_taxi_service_content {
        width: 100%;
    }

    .all_city_taxi_service_image {
        height: 325px;
    }

    .all_city_taxi_service_icon {
        display: none;
    }
}

/* taxi category card */
.taxi_category_home_card {
    position: relative;
    width: 100%;
    height: 150px;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.taxi_category_home_card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s ease;
}

.taxi_category_home_card .overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
}

.taxi_category_home_card span {
    position: absolute;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    z-index: 2;
    text-align: center;
}

.taxi_category_home_card:hover img {
    transform: scale(1.08);
}

@media (max-width: 768px) {
    .taxi_category_home_card span {
        font-size: 16px;
    }
}

/* dbvdf */
.taxi-services-img-over-wrapper {
    display: flex;
    gap: 5px;
    z-index: 33;
    position: relative;
    bottom: 40px;
    justify-content: space-around;
}

.taxi-services-img-over-item {
    display: flex;
    align-items: center;
    gap: 0px;
    padding: 6px 0px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
    margin: 0px 4px;
}

.taxi-services-img-over-item:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.25);
}

.taxi-services-img-over-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ff8c2f;
    font-size: 12px;
    flex-shrink: 0;
}

.taxi-services-img-over-content h4 {
    margin: 0;
    color: #fff;
    font-size: 8px;
    line-height: 1.4;
    font-weight: 600;
}

@media (max-width: 771px) {
    .taxi-services-img-over-item {
        padding: 3px 5px;
    }
}

/* ========================================
   Hide Unhide in Desk and Mob view Css
   ======================================== */
/* sowing in mobile anf desktop */
@media (max-width: 991px) {
    .hide-on-mob-view {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .hide-on-desktop {
        display: none !important;
    }
}
