/* =========================================================
   TRAVELX24 HEADER CSS
   Bootstrap 5 + Fully Responsive
========================================================= */

:root {
    --navy: #102d55;
    --dark-navy: #0b2547;
    --yellow: #f5b900;
    --text: #222222;
    --light-bg: #f7f8fa;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
  font-family: "Urbanist", sans-serif;
}

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


/* =========================================================
   TOP BAR
========================================================= */

.top-bar {
    width: 100%;
    min-height: 0;
    background: var(--navy);
    color: #fff;
    font-size: 12px;
    padding-top: 12px;
}
.top-bar .container-fluid {
    min-height: 29px;
}

.ride-safe {
    display: flex;
    align-items: center;
    gap: 7px;
    font-weight: 500;
}

.ride-safe i {
    color: var(--yellow);
    font-size: 13px;
}

.location-text {
    display: flex;
    align-items: center;
    gap: 8px;
}

.location-text i {
    font-size: 13px;
}


/* =========================================================
   MAIN NAVBAR
========================================================= */

.main-navbar {
    width: 100%;
    min-height: 102px;
    background: #fff;
    border-bottom: 1px solid #eeeeee;
    padding: 0;
    z-index: 1000;
}

.navbar-container {
    min-height: 102px;
}


/* =========================================================
   LOGO
========================================================= */

.brand-logo {
    text-decoration: none;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1;
    min-width: 245px;
}

.brand-main {
    color: var(--navy);
    font-size: 39px;
    font-weight: 800;
    font-style: italic;
    letter-spacing: -2px;
    line-height: 38px;
}

.brand-main span {
    color: var(--yellow);
}

.brand-sub {
    color: var(--navy);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-left: 7px;
    margin-top: 3px;
}

.brand-line {
    width: 204px;
    height: 3px;
    background: var(--navy);
    margin-left: 2px;
    margin-top: 4px;
}


/* =========================================================
   DESKTOP NAVIGATION
========================================================= */

.desktop-menu {
    display: flex;
    align-items: center;
}

.navbar-nav {
    gap: 2px;
}

.navbar-nav .nav-link {
    position: relative;
    color: var(--text);
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;

    padding: 38px 12px 34px !important;

    transition: all 0.25s ease;
}

.navbar-nav .nav-link:hover {
    color: var(--navy);
}


/* Active Home underline */

.navbar-nav .nav-link.active {
    color: var(--text);
}

.navbar-nav .nav-link.active::after {
    content: "";

    position: absolute;

    left: 12px;
    right: 12px;
    bottom: 24px;

    width: auto;
    height: 2px;

    background: var(--yellow);
}


/* =========================================================
   DROPDOWN
   DESKTOP = HOVER
========================================================= */

@media (min-width: 992px) {

    .desktop-menu .dropdown {
        position: relative;
    }

    /*
       Hide dropdown by default
    */

    .desktop-menu .dropdown-menu {
        display: block;

        visibility: hidden;
        opacity: 0;

        transform: translateY(10px);

        pointer-events: none;

        position: absolute;

        top: 100%;
        left: 0;

        min-width: 210px;

        margin-top: 0 !important;

        padding: 8px 0;

        background: #fff;

        border: 0;
        border-radius: 0;

        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);

        transition:
            opacity 0.25s ease,
            transform 0.25s ease,
            visibility 0.25s ease;

        z-index: 1050;
    }


    /*
       Open dropdown on hover
    */

    .desktop-menu .dropdown:hover > .dropdown-menu {
        visibility: visible;
        opacity: 1;

        transform: translateY(0);

        pointer-events: auto;
    }


    /*
       Keep dropdown open when moving mouse
    */

    .desktop-menu .dropdown:hover > .dropdown-toggle {
        color: var(--navy);
    }


    /*
       Remove Bootstrap click arrow behavior
    */

    .desktop-menu .dropdown-toggle::after {
        margin-left: 7px;

        vertical-align: 2px;

        border-top: 4px solid;
        border-right: 4px solid transparent;
        border-left: 4px solid transparent;
    }

}


/* Dropdown items */

.dropdown-menu .dropdown-item {
    display: block;

    color: #222;

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

    padding: 10px 18px;

    transition: all 0.2s ease;
}

.dropdown-menu .dropdown-item:hover {
    background: #f5f7fa;
    color: var(--navy);
}


/* =========================================================
   CALL BUTTON
========================================================= */

.call-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    background: var(--navy);
    color: #fff;

    padding: 10px 17px;

    border-radius: 7px;

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

    text-decoration: none;

    white-space: nowrap;

    transition: all 0.3s ease;
}

.call-btn:hover {
    background: var(--dark-navy);
    color: #fff;

    transform: translateY(-1px);
}

.call-btn i {
    font-size: 13px;
}


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

.mobile-toggle {
    border: 0;
    outline: 0;

    background: transparent;

    color: var(--navy);

    font-size: 25px;

    padding: 5px 8px;

    line-height: 1;
}

.mobile-toggle:hover {
    color: var(--yellow);
}

.mobile-toggle:focus {
    box-shadow: none;
    outline: none;
}


/* =========================================================
   MOBILE OFFCANVAS
   LEFT SIDE MENU
========================================================= */

.mobile-menu {
    width: 300px !important;
    max-width: 85%;

    border: 0 !important;

    z-index: 1100;
}


/* Mobile Header */

.mobile-menu .offcanvas-header {
    background: var(--navy);
    color: #fff;

    padding: 18px 20px;

    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.mobile-menu .offcanvas-title {
    font-size: 20px;
    font-weight: 700;
}

.mobile-menu .btn-close {
    filter: brightness(0) invert(1);

    opacity: 1;

    box-shadow: none;
}


/* Mobile Body */

.mobile-menu .offcanvas-body {
    padding: 0;

    background: #fff;
}


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

.mobile-nav {
    list-style: none;

    padding: 8px 0;
    margin: 0;
}

.mobile-nav > li {
    width: 100%;

    border-bottom: 1px solid #eeeeee;
}


/* Normal mobile links */

.mobile-nav > li > a {
    display: block;

    width: 100%;

    color: #222;

    text-decoration: none;

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

    padding: 14px 20px;

    transition: all 0.2s ease;
}

.mobile-nav > li > a:hover {
    color: var(--navy);
    background: #f6f8fb;
}


/* =========================================================
   MOBILE SUBMENU BUTTON
========================================================= */

.mobile-nav .submenu-toggle {
    display: flex;

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

    width: 100%;

    border: 0;
    outline: 0;

    background: #fff;

    color: #222;

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

    text-align: left;

    padding: 14px 20px;

    transition: all 0.2s ease;
}

.mobile-nav .submenu-toggle:hover {
    color: var(--navy);

    background: #f6f8fb;
}

.mobile-nav .submenu-toggle:focus {
    outline: none;
    box-shadow: none;
}


/* Arrow */

.mobile-nav .submenu-toggle i {
    font-size: 11px;

    transition: transform 0.3s ease;
}


/* Rotate arrow when submenu is open */

.mobile-nav .submenu-toggle[aria-expanded="true"] i {
    transform: rotate(180deg);
}


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

.mobile-submenu {
    background: #f7f8fa;

    border-top: 1px solid #eeeeee;
}

.mobile-submenu a {
    display: block;

    color: #333;

    text-decoration: none;

    font-size: 14px;

    padding: 11px 20px 11px 38px;

    transition: all 0.2s ease;
}

.mobile-submenu a:hover {
    color: var(--navy);

    background: #eef1f5;
}


/* =========================================================
   MOBILE CALL BUTTON
========================================================= */

.mobile-call {
    margin: 20px;
}

.mobile-call .call-btn {
    width: 100%;

    min-height: 44px;
}


/* =========================================================
   TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 1199px) {

    .brand-logo {
        min-width: 205px;
    }

    .brand-main {
        font-size: 34px;
        line-height: 34px;
    }

    .brand-line {
        width: 180px;
    }

    .navbar-nav {
        gap: 0;
    }

    .navbar-nav .nav-link {
        font-size: 13px;

        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .navbar-nav .nav-link.active::after {
        left: 7px;
        right: 7px;
    }

    .call-btn {
        padding: 9px 12px;

        font-size: 12px;
    }
}


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

@media (max-width: 991.98px) {

    .top-bar {
        min-height: 29px;

        font-size: 10px;
    }

    .top-bar .container-fluid {
        min-height: 29px;
    }


    /* Navbar */

    .main-navbar {
        min-height: 78px;
    }

    .navbar-container {
        min-height: 78px;
    }


    /* Hide desktop navigation */

    .desktop-menu,
    .desktop-call {
        display: none !important;
    }


    /* Show hamburger */

    .mobile-toggle {
        display: block !important;
    }


    /* Logo */

    .brand-logo {
        min-width: auto;
    }

    .brand-main {
        font-size: 31px;
        line-height: 31px;
    }

    .brand-sub {
        font-size: 9px;
    }

    .brand-line {
        width: 165px;
    }
}


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

@media (max-width: 575.98px) {

    /* Top bar */

    .top-bar {
        min-height: 27px;

        font-size: 10px;
    }

    .top-bar .container-fluid {
        min-height: 27px;

        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .ride-safe {
        width: 100%;

        justify-content: center;
    }

    .location-text {
        display: none;
    }


    /* Navbar */

    .main-navbar {
        min-height: 70px;
    }

    .navbar-container {
        min-height: 70px;

        padding-left: 15px !important;
        padding-right: 15px !important;
    }


    /* Logo */

    .brand-logo {
        min-width: auto;
    }

    .brand-main {
        font-size: 27px;
        line-height: 27px;

        letter-spacing: -1.5px;
    }

    .brand-sub {
        font-size: 7px;

        letter-spacing: 0.7px;

        margin-left: 4px;
        margin-top: 2px;
    }

    .brand-line {
        width: 143px;

        height: 2px;

        margin-top: 3px;
    }


    /* Hamburger */

    .mobile-toggle {
        font-size: 23px;

        padding: 4px 5px;
    }


    /* Mobile menu */

    .mobile-menu {
        width: 285px !important;

        max-width: 88%;
    }

    .mobile-menu .offcanvas-header {
        padding: 17px 18px;
    }

    .mobile-menu .offcanvas-title {
        font-size: 19px;
    }

    .mobile-nav > li > a {
        padding: 13px 18px;
    }

    .mobile-nav .submenu-toggle {
        padding: 13px 18px;
    }

    .mobile-submenu a {
        padding-left: 35px;
    }

    .mobile-call {
        margin: 18px;
    }
}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 380px) {

    .brand-main {
        font-size: 24px;
        line-height: 24px;
    }

    .brand-sub {
        font-size: 6px;
    }

    .brand-line {
        width: 128px;
    }

    .mobile-menu {
        width: 270px !important;
    }
}



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

        .travel-hero {
            position: relative;
            width: 100%;
            overflow: visible;
        }


        /* =====================================================
           ACTUAL BANNER IMAGE
           IMAGE IS IN HTML, NOT CSS
        ===================================================== */

        .hero-banner {
            display: block;
            width: 100%;
            height: auto;
            min-height: 535px;
            object-fit: cover;
            object-position: center center;
        }


        /* =====================================================
           HERO CONTENT OVER IMAGE
        ===================================================== */

        .hero-content-wrap {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 2;
        }

.hero-content {
    padding-top: 42px;
    padding-left: 6.5%;
    width: 48%;
    position: relative;
    z-index: 9;
}

        /* =====================================================
           WELCOME
        ===================================================== */

        .welcome-text {
            color: #102d55;
            font-size: clamp(38px, 3.7vw, 53px);
            font-weight: 700;
            line-height: 1;
            margin-bottom: 6px;
        }


        /* =====================================================
           TRAVEL X24
        ===================================================== */

        .travel-title {
            color: #102d55;
            font-size: clamp(55px, 5.6vw, 80px);
            font-weight: 800;
            letter-spacing: -3px;
            line-height: .9;
            margin: 0 0 15px 0;
        }

        .travel-title .yellow {
            color: #f8b900;
        }


        /* =====================================================
           SUBTITLE
        ===================================================== */

        .hero-subtitle {
            color: #111d2e;
            font-size: clamp(15px, 1.45vw, 21px);
            font-weight: 600;
            line-height: 1.3;
            margin-bottom: 12px;
        }


        /* =====================================================
           YELLOW LINE
        ===================================================== */

        .yellow-line {
            width: 78px;
            height: 3px;
            background: #f7b900;
            margin-bottom: 16px;
        }


        /* =====================================================
           DESCRIPTION
        ===================================================== */

        .hero-description {
            color: #26303d;
            font-size: clamp(12px, 1.1vw, 16px);
            font-weight: 400;
            line-height: 1.55;
            max-width: 540px;
            margin-bottom: 30px;
        }


        /* =====================================================
           BUTTONS
        ===================================================== */

        .hero-buttons {
            display: flex;
            align-items: center;
            gap: 17px;
            flex-wrap: nowrap;
        }


        .hero-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;

            min-height: 48px;

            padding: 10px 17px;

            border-radius: 8px;

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

            text-decoration: none;

            white-space: nowrap;

            transition: all .25s ease;
        }


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


        /* Book Cab */

        .btn-cab {
            background: #102d55;
            color: #fff;
            border: 1px solid #102d55;
        }

        .btn-cab:hover {
            background: #0b2547;
            color: #fff;
            transform: translateY(-2px);
        }


        /* Attach Vehicle */

        .btn-vehicle {
            background: #f7b900;
            color: #111;
            border: 1px solid #f7b900;
        }

        .btn-vehicle:hover {
            background: #e7a900;
            color: #111;
            transform: translateY(-2px);
        }


        /* Join Driver */

        .btn-driver {
            background: #fff;
            color: #102d55;
            border: 1px solid #d9dfe7;

            box-shadow: 0 2px 7px rgba(0,0,0,.08);
        }

        .btn-driver:hover {
            background: #f7f8fa;
            color: #102d55;
            transform: translateY(-2px);
        }


        /* =====================================================
           FEATURES BAR
        ===================================================== */

        .features-container {
            position: absolute;

            z-index: 5;

            left: 6.5%;
            right: 6.5%;

            bottom: -76px;
        }


        .features-bar {
            width: 100%;

            background: #102f59;

            border-radius: 8px;

            min-height: 138px;

            padding: 18px 16px;

            display: grid;

            grid-template-columns: repeat(5, 1fr);

            box-shadow: 0 4px 12px rgba(0,0,0,.12);
        }


        /* =====================================================
           FEATURE ITEM
        ===================================================== */

        .feature-item {
            position: relative;

            display: flex;
            align-items: center;

            padding: 10px 20px;
        }


        /* Divider */

        .feature-item:not(:last-child)::after {
            content: "";

            position: absolute;

            right: 0;

            top: 5px;
            bottom: 5px;

            width: 1px;

            background: rgba(255,255,255,.35);
        }


        /* =====================================================
           FEATURE ICON
        ===================================================== */

        .feature-icon {
            flex: 0 0 52px;

            width: 52px;
            height: 52px;

            display: flex;

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

            color: #f7b900;

            font-size: 36px;

            margin-right: 13px;
        }


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

        .feature-title {
            color: #fff;

            font-size: 15px;

            font-weight: 600;

            line-height: 1.35;

            margin-bottom: 6px;
        }


        .feature-description {
            color: rgba(255,255,255,.85);

            font-size: 12px;

            font-weight: 400;

            line-height: 1.45;

            margin: 0;
        }


        /* =====================================================
           SPACE BELOW HERO
        ===================================================== */

        .hero-bottom-space {
            height: 105px;
        }


        /* =====================================================
           1200 PX
        ===================================================== */

        @media (max-width: 1200px) {

            .hero-content {
                padding-top: 35px;
                padding-left: 6%;
            }

            .hero-buttons {
                gap: 10px;
            }

            .hero-btn {
                padding: 9px 13px;
                font-size: 12px;
            }

            .features-container {
                left: 6%;
                right: 6%;
            }

            .feature-item {
                padding: 8px 13px;
            }

            .feature-icon {
                flex-basis: 43px;
                width: 43px;
                height: 43px;
                font-size: 30px;
                margin-right: 9px;
            }

            .feature-title {
                font-size: 13px;
            }

            .feature-description {
                font-size: 10px;
            }
        }


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

        @media (max-width: 991px) {

            .hero-banner {
                min-height: 540px;
            }

            .hero-content {
                padding-top: 30px;
                padding-left: 5%;
                width: 52%;
            }

            .hero-description {
                margin-bottom: 20px;
            }

            .hero-buttons {
                gap: 7px;
            }

            .hero-btn {
                min-height: 44px;
                padding: 8px 11px;
                font-size: 11px;
            }

            .hero-btn i {
                font-size: 13px;
            }


            /* Features */

            .features-container {
                left: 4%;
                right: 4%;
                bottom: -105px;
            }

            .features-bar {
                grid-template-columns: repeat(3, 1fr);
                padding: 12px;
            }

            .feature-item {
                min-height: 75px;
            }

            .feature-item:nth-child(3)::after {
                display: none;
            }

            .hero-bottom-space {
                height: 130px;
            }
        }


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

        @media (max-width: 767px) {

            .travel-hero {
                overflow: hidden;
            }


            /* Banner */

            .hero-banner {
                min-height: 650px;

                height: 650px;

                object-fit: cover;

                object-position: 65% center;
            }


            /* Content */

            .hero-content-wrap {
                height: auto;
                min-height: 650px;
            }

            .hero-content {
                width: 100%;

                padding: 30px 20px;

                text-align: left;
            }


            .welcome-text {
                font-size: 34px;
            }

            .travel-title {
                font-size: 53px;
                letter-spacing: -2px;
            }

            .hero-subtitle {
                font-size: 16px;
                max-width: 360px;
            }

            .hero-description {
                font-size: 13px;
                max-width: 370px;
                line-height: 1.55;
                margin-bottom: 20px;
            }


            /* Buttons */

            .hero-buttons {
                display: grid;

                grid-template-columns: 1fr;

                width: 100%;

                max-width: 300px;

                gap: 9px;
            }

            .hero-btn {
                width: 100%;

                min-height: 44px;

                font-size: 13px;
            }


            /* Features */

            .features-container {
                position: relative;

                left: auto;
                right: auto;
                bottom: auto;

                width: 100%;

                margin-top: 15px;

                padding: 0 12px;
            }

            .features-bar {
                grid-template-columns: 1fr;

                padding: 8px 12px;

                border-radius: 8px;
            }

            .feature-item {
                min-height: 75px;

                padding: 12px 5px;

                border-bottom: 1px solid rgba(255,255,255,.25);
            }

            .feature-item:last-child {
                border-bottom: 0;
            }

            .feature-item::after {
                display: none !important;
            }

            .feature-icon {
                flex-basis: 48px;

                width: 48px;
                height: 48px;

                font-size: 30px;

                margin-right: 13px;
            }

            .feature-title {
                font-size: 14px;
            }

            .feature-description {
                font-size: 11px;
            }

            .hero-bottom-space {
                display: none;
            }
        }


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

        @media (max-width: 480px) {

            .hero-banner {
                height: 625px;
                min-height: 625px;

                object-position: 63% center;
            }

            .hero-content-wrap {
                min-height: 625px;
            }

            .hero-content {
                padding: 25px 17px;
            }

            .welcome-text {
                font-size: 30px;
            }

            .travel-title {
                font-size: 45px;
            }

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

            .hero-description {
                font-size: 12px;
            }

            .hero-buttons {
                max-width: 280px;
            }
        }


        /* =====================================================
           VERY SMALL MOBILE
        ===================================================== */

        @media (max-width: 360px) {

            .hero-banner {
                height: 610px;
                min-height: 610px;
            }

            .hero-content-wrap {
                min-height: 610px;
            }

            .welcome-text {
                font-size: 27px;
            }

            .travel-title {
                font-size: 40px;
            }

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

            .hero-description {
                font-size: 11px;
            }
        }



/* =========================================================
   OUR SERVICES SECTION
========================================================= */

.services-section {
    width: 100%;
    background: #fff;
    padding: 141px 0 25px;
}

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

.services-heading {
    margin-bottom: 45px;
}

.services-label {
    color: #102d55;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 10px;
}

.services-heading h2 {
    color: #102d55;
    font-size: 52px;
    font-weight: 700;
    line-height: 1.12;
    margin: 0 0 23px;
}

.services-heading p {
    color: #5b718d;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}


/* =========================================================
   SERVICES GRID
========================================================= */

.services-grid {
    width: 92.5%;
    max-width: 1800px;
    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(6, 1fr);

    gap: 23px;
}


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

.service-card {
    background: #fff;

    border: 1px solid #d9e1ea;

    border-radius: 20px;

    overflow: hidden;

    box-shadow: 0 5px 22px rgba(22, 48, 80, 0.08);

    display: flex;
    flex-direction: column;

    min-width: 0;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


/* Hover */

.service-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 12px 30px rgba(22, 48, 80, 0.14);
}


/* =========================================================
   SERVICE IMAGE
========================================================= */

.service-image {
    width: 100%;

    height: 195px;

    overflow: hidden;
}

.service-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.4s ease;
}

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


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

.service-content {
    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 29px 22px 25px;
}


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

.service-content h3 {
    color: #102d55;

    font-size: 16px;

    font-weight: 700;

    line-height: 1.15;

    margin: 0 0 20px;
}

.service-icon {
    font-size: 21px;

    margin-right: 5px;

    vertical-align: 1px;
}


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

.service-content p {
    color: #5b718d;

    font-size: 19px;

    font-weight: 400;

    line-height: 1.42;

    margin: 0 0 25px;
}


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

.service-link {
    display: inline-block;

    margin-top: auto;

    color: #c58a00;

    font-size: 20px;

    font-weight: 700;

    line-height: 1.2;

    text-decoration: none;

    transition: color 0.2s ease;
}

.service-link:hover {
    color: #102d55;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (max-width: 1600px) {

    .services-grid {
        width: 92%;
        gap: 20px;
    }

    .service-image {
        height: 190px;
    }

    .service-content {
        padding: 27px 20px 23px;
    }

    .service-content h3 {
        font-size: 16px;
    }

    .service-content p {
        font-size: 17px;
    }

    .service-link {
        font-size: 18px;
    }
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1200px) {

    .services-heading {
        margin-bottom: 35px;
    }

    .services-label {
        font-size: 17px;
    }

    .services-heading h2 {
        font-size: 42px;
    }

    .services-heading p {
        font-size: 20px;
    }


    .services-grid {
        width: 94%;

        grid-template-columns: repeat(3, 1fr);

        gap: 20px;
    }

    .service-image {
        height: 210px;
    }

    .service-content h3 {
        font-size: 16px;
    }

    .service-content p {
        font-size: 17px;
    }
}


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

@media (max-width: 767px) {

    .services-section {
        padding-top: 15px;
        padding-bottom: 30px;
    }


    .services-heading {
        padding: 0 15px;

        margin-bottom: 30px;
    }

    .services-label {
        font-size: 15px;

        margin-bottom: 8px;
    }

    .services-heading h2 {
        font-size: 31px;

        line-height: 1.15;

        margin-bottom: 13px;
    }

    .services-heading p {
        font-size: 16px;
    }


    /* Grid */

    .services-grid {
        width: calc(100% - 30px);

        grid-template-columns: repeat(2, 1fr);

        gap: 15px;
    }


    /* Cards */

    .service-card {
        border-radius: 15px;
    }

    .service-image {
        height: 180px;
    }

    .service-content {
        padding: 20px 17px 20px;
    }

    .service-content h3 {
        font-size: 19px;

        line-height: 1.18;

        margin-bottom: 15px;
    }

    .service-icon {
        font-size: 17px;
    }

    .service-content p {
        font-size: 15px;

        line-height: 1.45;

        margin-bottom: 20px;
    }

    .service-link {
        font-size: 16px;
    }
}


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

@media (max-width: 575px) {

    .services-heading {
        margin-bottom: 25px;
    }

    .services-heading h2 {
        font-size: 27px;
    }

    .services-heading p {
        font-size: 15px;
    }


    .services-grid {
        width: calc(100% - 24px);

        grid-template-columns: 1fr;

        gap: 18px;
    }


    .service-card {
        width: 100%;

        border-radius: 16px;
    }


    .service-image {
        height: 220px;
    }


    .service-content {
        padding: 21px 20px 22px;
    }


    .service-content h3 {
        font-size: 21px;
    }


    .service-content p {
        font-size: 16px;

        max-width: 350px;
    }


    .service-link {
        font-size: 18px;
    }
}


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

@media (max-width: 380px) {

    .services-heading h2 {
        font-size: 25px;
    }

    .services-heading p {
        font-size: 14px;
    }

    .service-image {
        height: 200px;
    }

    .service-content h3 {
        font-size: 19px;
    }

    .service-content p {
        font-size: 15px;
    }
}


.your-element {
    position: relative;
}

.your-element::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(
        to right,
        #fff 0%,
        rgba(255, 255, 255, 0) 100%
    );
    pointer-events: none;
}
.hero-content-wrap::after {
    background: linear-gradient(
        to right,
        #fff 0%,
        rgba(255, 255, 255, 0) 100%);
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    top: 0px;
}


/* =========================================================
   JOIN / ATTACH SECTION
========================================================= */

.join-section {
    width: 100%;
    padding: 22px 0 25px;
    background: #fff;
}


/* =========================================================
   MAIN GRID
========================================================= */

.join-grid {
    width: 90%;
    max-width: 1710px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 27px;
}


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

.join-card {
    position: relative;

    min-height: 548px;

    border-radius: 26px;

    overflow: hidden;
}


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

.driver-card {
    background: #10457f;
    color: #fff;
}


/* =========================================================
   ATTACH CAR CARD
========================================================= */

.car-card {
    background: #ffbd18;
    color: #062b5c;
}


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

.join-card-content {
    height: 100%;

    min-height: 548px;

    padding: 48px 48px 47px;

    display: flex;
    flex-direction: column;
}


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

.join-card h2 {
    margin: 0;

    font-size: 51px;

    font-weight: 700;

    line-height: 1.15;

    letter-spacing: -1px;
}


/* Driver heading */

.driver-card h2 {
    color: #fff;
}


/* Car heading */

.car-card h2 {
    color: #062b5c;
}


/* =========================================================
   SUBTITLE
========================================================= */

.join-subtitle {
    margin: 38px 0 0;

    font-size: 25px;

    font-weight: 400;

    line-height: 1.4;
}


/* =========================================================
   LIST
========================================================= */

.join-list {
    margin: 50px 0 32px;

    padding-left: 38px;

    font-size: 24px;

    line-height: 1.9;
}


/* Driver list */

.driver-card .join-list {
    color: #fff;
}


/* Car list */

.car-card .join-list {
    color: #062b5c;
}


/* =========================================================
   BUTTON
========================================================= */

.join-btn {
    width: 100%;

    min-height: 72px;

    margin-top: auto;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    border-radius: 15px;

    text-decoration: none;

    font-size: 25px;

    font-weight: 700;

    transition: all 0.25s ease;
}


/* Arrow */

.join-btn span {
    font-size: 28px;

    line-height: 1;
}


/* =========================================================
   DRIVER BUTTON
========================================================= */

.driver-btn {
    background: #ffc629;

    color: #062b5c;
}

.driver-btn:hover {
    background: #ffd34d;

    color: #062b5c;

    transform: translateY(-2px);
}


/* =========================================================
   CAR BUTTON
========================================================= */

.car-btn {
    background: #062e62;

    color: #fff;
}

.car-btn:hover {
    background: #092650;

    color: #fff;

    transform: translateY(-2px);
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (max-width: 1600px) {

    .join-grid {
        width: 90%;
        gap: 25px;
    }

    .join-card,
    .join-card-content {
        min-height: 530px;
    }

    .join-card-content {
        padding: 45px 45px 44px;
    }

    .join-card h2 {
        font-size: 46px;
    }

    .join-subtitle {
        font-size: 22px;
        margin-top: 34px;
    }

    .join-list {
        font-size: 21px;
        margin-top: 42px;
    }

    .join-btn {
        min-height: 68px;
        font-size: 22px;
    }
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1200px) {

    .join-grid {
        width: 92%;
        gap: 20px;
    }

    .join-card,
    .join-card-content {
        min-height: 490px;
    }

    .join-card-content {
        padding: 38px 35px 38px;
    }

    .join-card h2 {
        font-size: 40px;
    }

    .join-subtitle {
        font-size: 19px;
        margin-top: 28px;
    }

    .join-list {
        font-size: 18px;
        margin-top: 35px;
        padding-left: 28px;
    }

    .join-btn {
        min-height: 62px;
        font-size: 20px;
        border-radius: 13px;
    }
}


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

@media (max-width: 991px) {

    .join-section {
        padding: 20px 0;
    }

    .join-grid {
        width: 92%;

        grid-template-columns: 1fr;

        gap: 20px;
    }

    .join-card,
    .join-card-content {
        min-height: 460px;
    }

    .join-card-content {
        padding: 35px;
    }

    .join-card h2 {
        font-size: 40px;
    }

    .join-subtitle {
        font-size: 20px;
    }

    .join-list {
        font-size: 19px;
        margin-top: 30px;
    }

    .join-btn {
        min-height: 60px;
    }
}


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

@media (max-width: 767px) {

    .join-section {
        padding: 15px 0 25px;
    }

    .join-grid {
        width: calc(100% - 24px);

        grid-template-columns: 1fr;

        gap: 18px;
    }

    .join-card {
        border-radius: 18px;
    }

    .join-card,
    .join-card-content {
        min-height: 0;
    }

    .join-card-content {
        padding: 30px 24px 24px;
    }

    .join-card h2 {
        font-size: 34px;
        letter-spacing: -.5px;
    }

    .join-subtitle {
        margin-top: 25px;
        font-size: 18px;
    }

    .join-list {
        margin-top: 28px;
        margin-bottom: 28px;

        padding-left: 25px;

        font-size: 17px;

        line-height: 1.8;
    }

    .join-btn {
        min-height: 57px;

        font-size: 18px;

        border-radius: 11px;
    }

    .join-btn span {
        font-size: 22px;
    }
}


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

@media (max-width: 480px) {

    .join-grid {
        width: calc(100% - 20px);
    }

    .join-card-content {
        padding: 27px 20px 20px;
    }

    .join-card h2 {
        font-size: 30px;
    }

    .join-subtitle {
        font-size: 16px;
        margin-top: 22px;
    }

    .join-list {
        font-size: 15px;

        padding-left: 22px;

        margin-top: 24px;

        line-height: 1.8;
    }

    .join-btn {
        min-height: 53px;

        font-size: 17px;
    }
}


/* =========================================================
   COUNTER SECTION
========================================================= */

.counter-section {
    width: 100%;
    background: #05254d;
    padding: 45px 0;
    margin: 0;
}


/* =========================================================
   COUNTER CONTAINER
========================================================= */

.counter-container {
    width: 100%;
    max-width: 1800px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(5, 1fr);

    align-items: center;
    text-align: center;
}


/* =========================================================
   COUNTER ITEM
========================================================= */

.counter-item {
    padding: 0 20px;
}


/* =========================================================
   COUNTER NUMBER
========================================================= */

.counter-number {
    color: #ffc21c;

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

    line-height: 1.1;

    margin-bottom: 3px;
}


/* =========================================================
   COUNTER TITLE
========================================================= */

.counter-title {
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
    padding-top: 13px;
}

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

@media (max-width: 991px) {

    .counter-section {
        padding: 35px 15px;
    }

    .counter-container {
        grid-template-columns: repeat(3, 1fr);
        row-gap: 30px;
    }

    .counter-number {
        font-size: 34px;
    }

    .counter-title {
        font-size: 18px;
    }

}


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

@media (max-width: 767px) {

    .counter-section {
        padding: 30px 10px;
    }

    .counter-container {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 28px;
    }

    .counter-item {
        padding: 0 8px;
    }

    .counter-number {
        font-size: 30px;
    }

    .counter-title {
        font-size: 16px;
    }

}


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

@media (max-width: 480px) {

    .counter-container {
        grid-template-columns: 1fr 1fr;
        row-gap: 25px;
    }

    .counter-number {
        font-size: 27px;
    }

    .counter-title {
        font-size: 14px;
    }

}


/* =========================================================
   WHY CHOOSE TRAVELX24
========================================================= */

.why-choose-section {
    width: 100%;
    background: #fff;
    padding: 70px 0 80px;
}


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

.why-choose-heading {
    text-align: center;
    margin-bottom: 85px;
}

.why-label {
    color: #092b55;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 12px;
}

.why-choose-heading h2 {
    color: #142a4a;
    font-size: 52px;
    font-weight: 700;
    line-height: 1.15;
    margin: 0;
}


/* =========================================================
   FEATURES GRID
========================================================= */

.why-choose-grid {
    width: 90%;
    max-width: 1700px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(5, 1fr);

    align-items: start;
    text-align: center;
}


/* =========================================================
   FEATURE ITEM
========================================================= */

.why-item {
    padding: 0 25px;
}


/* =========================================================
   ICON
========================================================= */

.why-icon {
    width: 58px;
    height: 58px;

    margin: 0 auto 12px;

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

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


/* Individual icon colors */

.why-item:nth-child(1) .why-icon {
    color: #46aeea;
}

.why-item:nth-child(2) .why-icon {
    color: #442078;
}

.why-item:nth-child(3) .why-icon {
    color: #d99a00;
}

.why-item:nth-child(4) .why-icon {
    color: #b9b6c0;
}

.why-item:nth-child(5) .why-icon {
    color: #c9b8e4;
}


/* =========================================================
   FEATURE TITLE
========================================================= */

.why-item h3 {
    color: #092b55;

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

    line-height: 1.2;

    margin: 0 0 6px;
}


/* =========================================================
   FEATURE DESCRIPTION
========================================================= */

.why-item p {
    color: #092b55;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.3;

    margin: 0;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (max-width: 1400px) {

    .why-choose-section {
        padding: 60px 0 70px;
    }

    .why-choose-heading {
        margin-bottom: 70px;
    }

    .why-choose-heading h2 {
        font-size: 46px;
    }

    .why-label {
        font-size: 18px;
    }

    .why-item {
        padding: 0 15px;
    }

    .why-item h3,
    .why-item p {
        font-size: 21px;
    }

}


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

@media (max-width: 991px) {

    .why-choose-section {
        padding: 50px 0 60px;
    }

    .why-choose-heading {
        margin-bottom: 55px;
    }

    .why-choose-heading h2 {
        font-size: 40px;
    }

    .why-label {
        font-size: 17px;
    }

    .why-choose-grid {
        width: 90%;

        grid-template-columns: repeat(3, 1fr);

        row-gap: 50px;
    }

    .why-item h3,
    .why-item p {
        font-size: 19px;
    }

}


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

@media (max-width: 767px) {

    .why-choose-section {
        padding: 45px 0 50px;
    }

    .why-choose-heading {
        margin-bottom: 45px;
        padding: 0 15px;
    }

    .why-label {
        font-size: 15px;
        margin-bottom: 9px;
    }

    .why-choose-heading h2 {
        font-size: 32px;
    }

    .why-choose-grid {
        width: calc(100% - 30px);

        grid-template-columns: repeat(2, 1fr);

        row-gap: 45px;
    }

    .why-item {
        padding: 0 10px;
    }

    .why-icon {
        width: 50px;
        height: 50px;

        font-size: 36px;

        margin-bottom: 10px;
    }

    .why-item h3 {
        font-size: 18px;
        margin-bottom: 15px;
    }

    .why-item p {
        font-size: 17px;
    }

}


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

@media (max-width: 480px) {

    .why-choose-section {
        padding: 40px 0 45px;
    }

    .why-choose-heading {
        margin-bottom: 40px;
    }

    .why-choose-heading h2 {
        font-size: 28px;
    }

    .why-label {
        font-size: 14px;
    }

    .why-choose-grid {
        width: calc(100% - 20px);

        grid-template-columns: 1fr 1fr;

        row-gap: 38px;
    }

    .why-item {
        padding: 0 5px;
    }

    .why-icon {
        font-size: 32px;
    }

    .why-item h3 {
        font-size: 16px;
        line-height: 1.25;
        margin-bottom: 12px;
    }

    .why-item p {
        font-size: 15px;
        line-height: 1.3;
    }

}


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

.testimonial-section {
    width: 100%;
    background: #f7f9fc;
    padding: 75px 0 70px;
    overflow: hidden;
}


/* Heading */

.testimonial-heading {
    text-align: center;
    margin-bottom: 45px;
}

.testimonial-label {
    display: block;
    color: #c58a00;
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.testimonial-heading h2 {
    color: #102d55;
    font-size: 48px;
    font-weight: 700;
    margin: 0 0 14px;
}

.testimonial-heading p {
    color: #60758e;
    font-size: 18px;
    margin: 0;
}


/* =========================================================
   SLIDER
========================================================= */

.testimonial-slider {
    position: relative;
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
    padding: 0 60px;
}


/* Viewport */

.testimonial-slider::before {
    content: "";
}


/* Track */

.testimonial-track {
    display: flex;
    gap: 0;

    transition: transform 0.55s ease-in-out;

    will-change: transform;
}


/* =========================================================
   ONE CARD AT A TIME
========================================================= */

.testimonial-slide {
    flex: 0 0 100%;
    width: 100%;
    min-width: 100%;
}


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

.testimonial-card {
    position: relative;

    width: 95%;
    min-height: 350px;

    background: #fff;

    border: 1px solid #e0e6ed;
    border-radius: 22px;

    padding: 38px 45px 32px;

    box-sizing: border-box;

    box-shadow: 0 8px 28px rgba(16, 45, 85, 0.08);
}


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

.quote-icon {
    position: absolute;

    top: 12px;
    right: 32px;

    color: #ffc21c;

    font-family: Georgia, serif;

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

    line-height: 1;

    opacity: 0.8;
}


/* =========================================================
   STARS
========================================================= */

.stars {
    color: #f5b400;

    font-size: 20px;

    letter-spacing: 2px;

    margin-bottom: 22px;
}


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

.testimonial-text {
    color: #526a85;

    font-size: 18px;

    line-height: 1.7;

    margin: 0 0 30px;

    max-width: 700px;
}


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

.testimonial-user {
    display: flex;
    align-items: center;

    gap: 14px;
}


/* Avatar */

.user-avatar {
    width: 54px;
    height: 54px;

    flex: 0 0 54px;

    border-radius: 50%;

    background: #102d55;

    color: #ffc21c;

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

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


/* User info */

.user-info h4 {
    color: #102d55;

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

    margin: 0 0 4px;
}

.user-info span {
    color: #8291a3;

    font-size: 14px;
}


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

.testimonial-arrow {
    position: absolute;

    top: 50%;
    transform: translateY(-50%);

    width: 48px;
    height: 48px;

    border: 1px solid #d7e0ea;

    border-radius: 50%;

    background: #fff;

    color: #102d55;

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

    font-size: 21px;

    cursor: pointer;

    z-index: 10;

    box-shadow: 0 5px 18px rgba(16, 45, 85, 0.12);

    transition: all 0.25s ease;
}

.testimonial-prev {
    left: 0;
}

.testimonial-next {
    right: 0;
}

.testimonial-arrow:hover {
    background: #102d55;
    color: #fff;
    border-color: #102d55;
}


/* =========================================================
   DOTS
========================================================= */

.testimonial-dots {
    display: flex;

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

    gap: 8px;

    margin-top: 30px;
}

.testimonial-dot {
    width: 9px;
    height: 9px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background: #cbd4df;

    cursor: pointer;

    transition: all 0.3s ease;
}

.testimonial-dot.active {
    width: 28px;

    background: #ffc21c;

    border-radius: 10px;
}


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

@media (max-width: 767px) {

    .testimonial-section {
        padding: 50px 0 55px;
    }

    .testimonial-heading {
        padding: 0 15px;
        margin-bottom: 32px;
    }

    .testimonial-label {
        font-size: 14px;
    }

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

    .testimonial-heading p {
        font-size: 15px;
        line-height: 1.5;
    }

    .testimonial-slider {
        width: calc(100% - 70px);
        padding: 0;
    }

    .testimonial-card {
        min-height: 330px;
        border-radius: 18px;
        padding: 30px 23px 25px;
    }

    .testimonial-text {
        font-size: 16px;
        line-height: 1.6;
    }

    .testimonial-arrow {
        width: 40px;
        height: 40px;

        font-size: 17px;
    }

    .testimonial-prev {
        left: -52px;
    }

    .testimonial-next {
        right: -52px;
    }

}


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

@media (max-width: 480px) {

    .testimonial-heading h2 {
        font-size: 28px;
    }

    .testimonial-slider {
        width: calc(100% - 60px);
    }

    .testimonial-card {
        min-height: 320px;
        padding: 27px 20px 22px;
    }

    .quote-icon {
        font-size: 58px;
        right: 18px;
    }

    .stars {
        font-size: 17px;
    }

    .testimonial-text {
        font-size: 15px;
    }

    .testimonial-prev {
        left: -45px;
    }

    .testimonial-next {
        right: -45px;
    }

}








/* =========================================================
   DIRECTOR'S MESSAGE / VISION / EXPANSION
========================================================= */

.company-message-section {
    width: 100%;
    background: #0b3972;
    color: #ffffff;

    padding: 95px 0 70px;

    overflow: hidden;
}


/* =========================================================
   CONTAINER
========================================================= */

.company-message-section .container {
    width: 100%;
    max-width: 1700px;

    margin: 0 auto;
    padding: 0 70px;
}


/* =========================================================
   GRID
========================================================= */

.company-message-grid {
    display: grid;

    grid-template-columns: 1fr 1.7fr 1.3fr;

    column-gap: 80px;

    align-items: start;
}


/* =========================================================
   COLUMN
========================================================= */

.message-column {
    width: 100%;
}


/* =========================================================
   HEADINGS
========================================================= */

.message-column h2 {
    color: #ffc21c;

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

    line-height: 1.2;

    margin: 0 0 30px;
}


/* =========================================================
   PARAGRAPHS
========================================================= */

.message-column p {
    color: #ffffff;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.6;

    margin: 0 0 25px;
}


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

.message-column p strong {
    font-weight: 700;
    color: #ffffff;
}


/* =========================================================
   DIRECTOR NAME
========================================================= */

.message-column h4 {
    color: #ffffff;

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

    line-height: 1.25;

    margin: 20px 0 0;
}


/* =========================================================
   DESKTOP 1400px
========================================================= */

@media (max-width: 1400px) {

    .company-message-section {
        padding: 80px 0 65px;
    }

    .company-message-section .container {
        padding: 0 55px;
    }

    .company-message-grid {
        column-gap: 55px;

        grid-template-columns: 1fr 1.65fr 1.25fr;
    }

    .message-column h2 {
        font-size: 32px;
    }

    .message-column p {
        font-size: 20px;
        line-height: 1.6;
    }

    .message-column h4 {
        font-size: 21px;
    }

}


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

@media (max-width: 991px) {

    .company-message-section {
        padding: 65px 0 55px;
    }

    .company-message-section .container {
        padding: 0 35px;
    }

    .company-message-grid {
        grid-template-columns: 1fr 1fr;

        column-gap: 40px;
        row-gap: 55px;
    }

    .message-column h2 {
        font-size: 29px;

        margin-bottom: 22px;
    }

    .message-column p {
        font-size: 18px;

        line-height: 1.55;
    }

    .message-column h4 {
        font-size: 19px;
    }

    /* Third column full width */

    .message-column:nth-child(3) {
        grid-column: 1 / -1;
    }

}


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

@media (max-width: 767px) {

    .company-message-section {
        padding: 50px 0;
    }

    .company-message-section .container {
        padding: 0 22px;
    }

    .company-message-grid {
        display: flex;

        flex-direction: column;

        gap: 45px;
    }

    .message-column {
        width: 100%;
    }

    .message-column h2 {
        font-size: 27px;

        margin-bottom: 18px;
    }

    .message-column p {
        font-size: 17px;

        line-height: 1.6;

        margin-bottom: 20px;
    }

    .message-column h4 {
        font-size: 18px;

        line-height: 1.35;

        margin-top: 15px;
    }

}


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

@media (max-width: 480px) {

    .company-message-section {
        padding: 45px 0;
    }

    .company-message-section .container {
        padding: 0 18px;
    }

    .company-message-grid {
        gap: 40px;
    }

    .message-column h2 {
        font-size: 24px;

        margin-bottom: 16px;
    }

    .message-column p {
        font-size: 16px;

        line-height: 1.6;
    }

    .message-column h4 {
        font-size: 17px;
    }

}


/* =========================================================
   POLICIES SECTION
========================================================= */

.policies-section {
    width: 100%;
    background: #ffffff;

    padding: 85px 0 90px;

    overflow: hidden;
}


/* =========================================================
   CONTAINER
========================================================= */

.policies-section .container {
    width: 100%;
    max-width: 1700px;

    margin: 0 auto;

    padding: 0 70px;
}


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

.policies-heading {
    text-align: center;

    margin-bottom: 48px;
}

.policies-heading span {
    display: block;

    color: #092b55;

    font-size: 19px;
    font-weight: 400;

    margin-bottom: 12px;
}

.policies-heading h2 {
    color: #142a4a;

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

    line-height: 1.15;

    margin: 0;
}


/* =========================================================
   GRID
========================================================= */

.policies-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 30px;
}


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

.policy-card {
    background: #ffffff;

    border: 1px solid #d7e0ea;

    border-radius: 22px;

    padding: 35px 38px 37px;

    min-height: 315px;

    box-sizing: border-box;

    display: flex;
    flex-direction: column;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.policy-card:hover {
    transform: translateY(-4px);

    box-shadow: 0 12px 30px rgba(9, 43, 85, 0.08);
}


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

.policy-card h3 {
    color: #092b55;

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

    line-height: 1.25;

    margin: 0 0 27px;
}


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

.policy-card p {
    color: #092b55;

    font-size: 21px;
    font-weight: 400;

    line-height: 1.35;

    margin: 0 0 25px;

    max-width: 850px;
}


/* =========================================================
   BUTTON
========================================================= */

.policy-btn {
    display: inline-flex;

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

    width: fit-content;

    min-height: 72px;

    padding: 0 28px;

    border-radius: 16px;

    text-decoration: none;

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

    line-height: 1.2;

    transition: all 0.25s ease;
}

.policy-btn span {
    margin-left: 9px;

    font-size: 25px;
}


/* Yellow Button */

.policy-btn-yellow {
    background: #ffc21c;

    color: #062b58;
}

.policy-btn-yellow:hover {
    background: #f3b300;

    color: #062b58;

    transform: translateY(-2px);
}


/* Blue Button */

.policy-btn-blue {
    background: #092f64;

    color: #ffffff;
}

.policy-btn-blue:hover {
    background: #062653;

    color: #ffffff;

    transform: translateY(-2px);
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1400px) {

    .policies-section {
        padding: 75px 0 80px;
    }

    .policies-section .container {
        padding: 0 55px;
    }

    .policies-heading h2 {
        font-size: 44px;
    }

    .policy-card {
        padding: 32px;
    }

    .policy-card h3 {
        font-size: 25px;
    }

    .policy-card p {
        font-size: 19px;
    }

    .policy-btn {
        min-height: 65px;

        font-size: 21px;
    }

}


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

@media (max-width: 991px) {

    .policies-section {
        padding: 65px 0 70px;
    }

    .policies-section .container {
        padding: 0 35px;
    }

    .policies-heading {
        margin-bottom: 40px;
    }

    .policies-heading span {
        font-size: 17px;
    }

    .policies-heading h2 {
        font-size: 38px;
    }

    .policies-grid {
        gap: 22px;
    }

    .policy-card {
        padding: 28px;

        min-height: 300px;
    }

    .policy-card h3 {
        font-size: 23px;

        margin-bottom: 20px;
    }

    .policy-card p {
        font-size: 17px;

        line-height: 1.45;
    }

    .policy-btn {
        min-height: 58px;

        padding: 0 22px;

        font-size: 18px;
    }

}


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

@media (max-width: 767px) {

    .policies-section {
        padding: 50px 0 55px;
    }

    .policies-section .container {
        padding: 0 20px;
    }

    .policies-heading {
        margin-bottom: 32px;
    }

    .policies-heading span {
        font-size: 15px;

        margin-bottom: 8px;
    }

    .policies-heading h2 {
        font-size: 31px;

        line-height: 1.2;
    }

    .policies-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    .policy-card {
        min-height: auto;

        padding: 26px 22px 27px;

        border-radius: 18px;
    }

    .policy-card h3 {
        font-size: 22px;

        margin-bottom: 17px;
    }

    .policy-card p {
        font-size: 16px;

        line-height: 1.55;

        margin-bottom: 22px;
    }

    .policy-btn {
        width: 100%;

        min-height: 55px;

        padding: 0 15px;

        border-radius: 13px;

        font-size: 17px;

        box-sizing: border-box;
    }

    .policy-btn span {
        font-size: 20px;
    }

}


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

@media (max-width: 480px) {

    .policies-section {
        padding: 42px 0 48px;
    }

    .policies-section .container {
        padding: 0 15px;
    }

    .policies-heading h2 {
        font-size: 27px;
    }

    .policy-card {
        padding: 23px 18px 23px;
    }

    .policy-card h3 {
        font-size: 20px;
    }

    .policy-card p {
        font-size: 15px;
    }

    .policy-btn {
        font-size: 16px;
    }

}


/* =========================================================
   TRAVELX24 FOOTER
========================================================= */

.travelx-footer {
    position: relative;
    width: 100%;

    background: #061f43;
    color: #ffffff;

    overflow: hidden;
}


/* =========================================================
   FOOTER CONTAINER
========================================================= */

.footer-container {
    width: 100%;
    max-width: 1700px;

    margin: 0 auto;

    padding: 65px 70px 0;

    box-sizing: border-box;
}


/* =========================================================
   FOOTER GRID
========================================================= */

.footer-grid {
    display: grid;

    grid-template-columns:
        1.35fr
        0.95fr
        1fr
        1.35fr;

    column-gap: 70px;

    align-items: start;
}


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

.footer-company {
    padding-top: 0;
}


/* =========================================================
   LOGO
========================================================= */

.footer-logo {
    width: 132px;
    height: 88px;

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

    margin-bottom: 28px;
}

.footer-logo img {
    width: 100%;
    max-width: 125px;
    height: auto;

    display: block;
}


/* =========================================================
   COMPANY TITLE
========================================================= */

.footer-company h3 {
    color: #ffffff;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.2;

    margin: 0 0 25px;
}


/* =========================================================
   COMPANY DESCRIPTION
========================================================= */

.footer-company p {
    color: #ffffff;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.25;

    margin: 0 0 27px;
}


/* =========================================================
   CIN
========================================================= */

.footer-cin {
    color: #ffffff;

    font-size: 19px;
    font-weight: 400;

    line-height: 1.4;
}


/* =========================================================
   FOOTER COLUMNS
========================================================= */

.footer-column {
    padding-top: 28px;
}


/* =========================================================
   COLUMN HEADINGS
========================================================= */

.footer-column h3 {
    color: #ffc21c;

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

    line-height: 1.2;

    margin: 0 0 27px;
}


/* =========================================================
   LINKS LIST
========================================================= */

.footer-column ul {
    list-style: none;

    margin: 0;
    padding: 0;
}

.footer-column ul li {
    margin: 0 0 13px;
}

.footer-column ul li a {
    color: #ffffff;

    text-decoration: none;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.25;

    transition: all 0.25s ease;
}

.footer-column ul li a:hover {
    color: #ffc21c;

    padding-left: 4px;
}


/* =========================================================
   CONTACT ITEMS
========================================================= */

.footer-contact-item {
    display: flex;

    align-items: center;

    gap: 10px;

    color: #ffffff;

    text-decoration: none;

    font-size: 16px;

    line-height: 1.3;

    margin-bottom: 8px;

    transition: color 0.25s ease;
}

.footer-contact-item:hover {
    color: #ffc21c;
}


/* =========================================================
   CONTACT ICON
========================================================= */

.contact-icon {
    display: inline-flex;

    width: 29px;

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

    flex-shrink: 0;
}

.phone-icon {
    color: #ff3d91;
}

.email-icon {
    font-size: 21px;
}


/* =========================================================
   ADDRESS
========================================================= */

.footer-address {
    margin-top: 27px;
}

.footer-address p {
    color: #ffffff;

    font-size: 15px;
    font-weight: 400;

    line-height: 1.28;

    margin: 0;
}


/* =========================================================
   24x7 OPEN
========================================================= */

.footer-open {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 27px;

    color: #ffffff;

    font-size: 21px;
}

.footer-open span:first-child {
    font-size: 23px;
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.16);

    margin-top: 65px;

    min-height: 75px;

    display: flex;

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

    padding: 15px 100px;

    box-sizing: border-box;
}

.footer-bottom p {
    color: #cbd8ea;

    font-size: 19px;

    line-height: 1.4;

    text-align: center;

    margin: 0;
}


/* =========================================================
   FLOATING CALL BUTTON
========================================================= */

.footer-call-button {
    position: fixed;

    right: 30px;
    bottom: 27px;

    width: 86px;
    height: 86px;

    border-radius: 50%;

    background: #20c568;

    color: #ffffff;

    display: flex;

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

    text-decoration: none;

    font-size: 39px;

    z-index: 9999;

    box-shadow: 0 7px 20px rgba(0, 0, 0, 0.22);

    transition:
        transform 0.25s ease,
        background 0.25s ease;
}

.footer-call-button:hover {
    background: #18ae59;

    color: #ffffff;

    transform: scale(1.08);
}


/* =========================================================
   LARGE LAPTOP
========================================================= */

@media (max-width: 1400px) {

    .footer-container {
        padding: 60px 55px 0;
    }

    .footer-grid {
        column-gap: 50px;
    }

    .footer-company h3 {
        font-size: 22px;
    }

    .footer-company p {
        font-size: 19px;
    }

    .footer-column h3 {
        font-size: 26px;
    }

    .footer-column ul li a {
        font-size: 19px;
    }

    .footer-contact-item {
        font-size: 19px;
    }

    .footer-address p {
        font-size: 18px;
    }

    .footer-open {
        font-size: 19px;
    }

}


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

@media (max-width: 991px) {

    .footer-container {
        padding: 55px 35px 0;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;

        column-gap: 45px;
        row-gap: 50px;
    }

    .footer-company {
        grid-column: 1 / -1;
    }

    .footer-column {
        padding-top: 0;
    }

    .footer-company h3 {
        font-size: 21px;
    }

    .footer-company p {
        max-width: 600px;

        font-size: 18px;
    }

    .footer-column h3 {
        font-size: 24px;
    }

    .footer-column ul li a {
        font-size: 18px;
    }

    .footer-contact-item {
        font-size: 18px;
    }

    .footer-address p {
        font-size: 17px;
    }

    .footer-open {
        font-size: 18px;
    }

    .footer-bottom {
        margin-top: 50px;
    }

    .footer-call-button {
        width: 70px;
        height: 70px;

        right: 22px;
        bottom: 22px;

        font-size: 31px;
    }

}


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

@media (max-width: 767px) {

    .footer-container {
        padding: 45px 22px 0;
    }

    .footer-grid {
        display: flex;

        flex-direction: column;

        gap: 38px;
    }

    .footer-company {
        width: 100%;
    }

    .footer-logo {
        width: 125px;
        height: 82px;

        margin-bottom: 22px;
    }

    .footer-company h3 {
        font-size: 19px;

        margin-bottom: 18px;
    }

    .footer-company p {
        font-size: 16px;

        line-height: 1.45;

        margin-bottom: 20px;
    }

    .footer-cin {
        font-size: 15px;
    }

    .footer-column {
        width: 100%;

        padding: 0;
    }

    .footer-column h3 {
        font-size: 23px;

        margin-bottom: 18px;
    }

    .footer-column ul li {
        margin-bottom: 11px;
    }

    .footer-column ul li a {
        font-size: 17px;
    }

    .footer-contact-item {
        font-size: 17px;

        margin-bottom: 9px;
    }

    .footer-address {
        margin-top: 22px;
    }

    .footer-address p {
        font-size: 16px;

        line-height: 1.45;
    }

    .footer-open {
        font-size: 17px;

        margin-top: 22px;
    }

    .footer-bottom {
        margin-top: 45px;

        min-height: 70px;

        padding: 15px 20px;
    }

    .footer-bottom p {
        font-size: 14px;

        line-height: 1.5;
    }

    .footer-call-button {
        width: 62px;
        height: 62px;

        right: 18px;
        bottom: 18px;

        font-size: 27px;
    }

}


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

@media (max-width: 480px) {

    .footer-container {
        padding: 40px 18px 0;
    }

    .footer-grid {
        gap: 35px;
    }

    .footer-company h3 {
        font-size: 18px;
    }

    .footer-company p {
        font-size: 15px;
    }

    .footer-cin {
        font-size: 14px;
    }

    .footer-column h3 {
        font-size: 21px;
    }

    .footer-column ul li a {
        font-size: 16px;
    }

    .footer-contact-item {
        font-size: 16px;
    }

    .footer-address p {
        font-size: 15px;
    }

    .footer-open {
        font-size: 16px;
    }

    .footer-bottom {
        padding: 14px 15px;
    }

    .footer-bottom p {
        font-size: 13px;
    }

    .footer-call-button {
        width: 56px;
        height: 56px;

        right: 15px;
        bottom: 15px;

        font-size: 24px;
    }

}


a.brand-logo img {
    width: 203px;
}





/* =========================================================
   TRAVELX24 ABOUT PAGE
========================================================= */

.travelx-about-page {
    width: 100%;
    overflow: hidden;
    color: #092b55;
    background: #ffffff;
}

.travelx-about-page img {
    max-width: 100%;
}


/* =========================================================
   BREADCRUMB HERO
========================================================= */

.about-breadcrumb {
    position: relative;

    min-height: 300px;

    display: flex;
    align-items: center;

    background:
        linear-gradient(
            90deg,
            #062a5b 0%,
            #0b407c 60%,
            #123f70 100%
        );

    overflow: hidden;
}

.about-breadcrumb::after {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    right: -170px;
    top: -250px;

    border: 80px solid rgba(255, 194, 28, 0.08);

    border-radius: 50%;
}

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

.about-small-title {
    display: block;

    color: #ffc21c;

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

    letter-spacing: 1px;

    margin-bottom: 10px;
}

.about-breadcrumb h1 {
    color: #ffffff;

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

    margin: 0 0 18px;

    line-height: 1.1;
}

.about-breadcrumb-list {
    margin: 0;
}

.about-breadcrumb-list .breadcrumb-item {
    font-size: 17px;
}

.about-breadcrumb-list a {
    color: #ffffff;
    text-decoration: none;
}

.about-breadcrumb-list .active {
    color: #ffc21c;
}

.about-breadcrumb-list
.breadcrumb-item + .breadcrumb-item::before {
    color: #ffffff;
}


/* =========================================================
   COMMON SECTION
========================================================= */

.section-label {
    display: inline-block;

    color: #c28a00;

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

    letter-spacing: 1px;

    margin-bottom: 12px;
}

.about-intro {
    padding: 100px 0;
}

.about-content h2,
.about-why h2 {
    color: #142a4a;

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

    line-height: 1.15;

    margin: 0 0 25px;
}

.about-content h2 span,
.about-why h2 span {
    color: #c99100;
}

.about-content p,
.about-why p {
    color: #526b88;

    font-size: 18px;
    line-height: 1.7;

    margin-bottom: 17px;
}


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

.about-image-wrap {
    position: relative;

    border-radius: 25px;

    overflow: hidden;

    box-shadow:
        0 20px 50px rgba(6, 42, 91, 0.15);
}

.about-image-wrap img {
    width: 100%;

    min-height: 500px;

    object-fit: cover;

    display: block;
}

.about-image-badge {
    position: absolute;

    right: 25px;
    bottom: 25px;

    background: #ffc21c;

    color: #062b58;

    padding: 18px 25px;

    border-radius: 15px;

    display: flex;
    flex-direction: column;

    text-align: center;

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.about-image-badge strong {
    font-size: 27px;
    line-height: 1.1;
}

.about-image-badge span {
    font-size: 14px;
    font-weight: 600;

    margin-top: 5px;
}


/* =========================================================
   CHECK LIST
========================================================= */

.about-check-list {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 14px;

    margin-top: 25px;
}

.about-check-list div {
    color: #092b55;

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

.about-check-list span {
    display: inline-flex;

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

    width: 23px;
    height: 23px;

    margin-right: 7px;

    border-radius: 50%;

    background: #ffc21c;

    color: #062b58;

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


/* =========================================================
   VISION SECTION
========================================================= */

.about-vision-section {
    padding: 90px 0;

    background: #f5f8fc;
}

.section-heading-center {
    max-width: 850px;

    margin: 0 auto;

    text-align: center;
}

.section-heading-center h2 {
    color: #142a4a;

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

    margin: 0 0 15px;

    line-height: 1.15;
}

.section-heading-center p {
    color: #60758e;

    font-size: 18px;
    line-height: 1.6;

    margin: 0;
}

.vision-card {
    height: 100%;

    padding: 42px;

    border-radius: 22px;

    display: flex;

    gap: 25px;

    transition: transform 0.3s ease,
                box-shadow 0.3s ease;
}

.vision-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 15px 35px rgba(0,0,0,0.12);
}

.vision-card-blue {
    background: #092f64;
    color: #ffffff;
}

.vision-card-yellow {
    background: #ffc21c;
    color: #062b58;
}

.vision-icon {
    min-width: 65px;
    height: 65px;

    border-radius: 15px;

    background: rgba(255,255,255,0.16);

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

    font-size: 31px;
}

.vision-card h3 {
    font-size: 29px;

    margin: 0 0 13px;

    font-weight: 700;
}

.vision-card p {
    font-size: 17px;

    line-height: 1.65;

    margin: 0;
}


/* =========================================================
   SERVICES
========================================================= */

.about-services {
    padding: 100px 0;
}

.about-service-card {
    height: 100%;

    padding: 35px 30px;

    border: 1px solid #dce4ed;

    border-radius: 20px;

    background: #ffffff;

    box-shadow: 0 8px 25px rgba(9,43,85,0.05);

    transition: all 0.3s ease;
}

.about-service-card:hover {
    transform: translateY(-7px);

    border-color: #ffc21c;

    box-shadow: 0 15px 35px rgba(9,43,85,0.11);
}

.service-icon {
    width: 62px;
    height: 62px;

    border-radius: 15px;

    background: #fff5d5;

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

    font-size: 30px;

    margin-bottom: 22px;
}

.about-service-card h3 {
    color: #092b55;

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

    margin-bottom: 13px;
}

.about-service-card p {
    color: #60758e;

    font-size: 16px;
    line-height: 1.6;

    margin: 0;
}


/* =========================================================
   WHY CHOOSE US
========================================================= */

.about-why {
    padding: 100px 0;

    background: #f5f8fc;
}

.why-feature-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 20px;
}

.why-feature {
    background: #ffffff;

    border-radius: 18px;

    padding: 27px;

    display: flex;

    gap: 18px;

    border: 1px solid #e0e7ef;

    transition: all 0.3s ease;
}

.why-feature:hover {
    transform: translateY(-4px);

    box-shadow: 0 10px 30px rgba(9,43,85,0.08);
}

.why-icon {
    flex-shrink: 0;

    width: 52px;
    height: 52px;

    border-radius: 13px;

    background: #fff4cf;

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

    color: #c18a00;

    font-size: 25px;
}

.why-feature h3 {
    color: #092b55;

    font-size: 19px;

    margin: 0 0 6px;

    font-weight: 700;
}

.why-feature p {
    color: #60758e;

    font-size: 14px;

    line-height: 1.5;

    margin: 0;
}

.about-main-btn {
    display: inline-flex;

    align-items: center;

    padding: 16px 28px;

    margin-top: 12px;

    background: #ffc21c;

    color: #062b58;

    border-radius: 12px;

    text-decoration: none;

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

    transition: all 0.25s ease;
}

.about-main-btn span {
    margin-left: 9px;
}

.about-main-btn:hover {
    color: #062b58;

    background: #f2b400;

    transform: translateY(-2px);
}


/* =========================================================
   STATS
========================================================= */

.about-stats {
    padding: 65px 0;

    background: #061f43;

    color: #ffffff;
}

.about-stat {
    display: flex;

    flex-direction: column;

    align-items: center;

    padding: 10px;
}

.about-stat strong {
    color: #ffc21c;

    font-size: 39px;

    line-height: 1.1;

    margin-bottom: 7px;
}

.about-stat span {
    color: #ffffff;

    font-size: 17px;
}


/* =========================================================
   CTA
========================================================= */

.about-cta {
    padding: 85px 0;
}

.about-cta-inner {
    padding: 50px 55px;

    border-radius: 25px;

    background:
        linear-gradient(
            105deg,
            #092f64,
            #0c477f
        );

    color: #ffffff;

    display: flex;

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

    gap: 40px;
}

.about-cta-inner > div:first-child {
    max-width: 750px;
}

.about-cta-inner span {
    color: #ffc21c;

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

    letter-spacing: 1px;
}

.about-cta-inner h2 {
    color: #ffffff;

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

    line-height: 1.2;

    margin: 9px 0 12px;
}

.about-cta-inner p {
    color: #e3edf8;

    font-size: 17px;

    margin: 0;
}

.about-cta-buttons {
    display: flex;

    gap: 12px;

    flex-shrink: 0;
}

.cta-btn {
    min-height: 54px;

    padding: 0 24px;

    border-radius: 11px;

    display: inline-flex;

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

    text-decoration: none;

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

    transition: all 0.25s ease;
}

.cta-btn-yellow {
    background: #ffc21c;

    color: #062b58;
}

.cta-btn-yellow:hover {
    background: #f1b300;

    color: #062b58;
}

.cta-btn-outline {
    border: 1px solid rgba(255,255,255,0.7);

    color: #ffffff;

    background: transparent;
}

.cta-btn-outline:hover {
    background: #ffffff;

    color: #092f64;
}


/* =========================================================
   LARGE LAPTOP
========================================================= */

@media (max-width: 1400px) {

    .about-intro,
    .about-services,
    .about-why {
        padding: 80px 0;
    }

    .about-content h2,
    .about-why h2 {
        font-size: 40px;
    }

    .section-heading-center h2 {
        font-size: 40px;
    }

    .about-breadcrumb h1 {
        font-size: 48px;
    }

}


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

@media (max-width: 991px) {

    .about-breadcrumb {
        min-height: 250px;
    }

    .about-breadcrumb h1 {
        font-size: 42px;
    }

    .about-intro,
    .about-services,
    .about-why {
        padding: 70px 0;
    }

    .about-image-wrap img {
        min-height: 400px;
    }

    .about-content h2,
    .about-why h2 {
        font-size: 36px;
    }

    .section-heading-center h2 {
        font-size: 36px;
    }

    .vision-card {
        padding: 30px;
    }

    .about-cta-inner {
        flex-direction: column;

        align-items: flex-start;

        padding: 40px;
    }

}


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

@media (max-width: 767px) {

    .about-breadcrumb {
        min-height: 210px;
    }

    .about-breadcrumb h1 {
        font-size: 34px;
    }

    .about-small-title {
        font-size: 14px;
    }

    .about-breadcrumb-list .breadcrumb-item {
        font-size: 14px;
    }

    .about-intro,
    .about-services,
    .about-why {
        padding: 55px 0;
    }

    .about-image-wrap img {
        min-height: 300px;
    }

    .about-image-badge {
        right: 15px;
        bottom: 15px;

        padding: 13px 17px;
    }

    .about-image-badge strong {
        font-size: 23px;
    }

    .about-content h2,
    .about-why h2 {
        font-size: 31px;
    }

    .about-content p,
    .about-why p {
        font-size: 16px;
        line-height: 1.6;
    }

    .about-check-list {
        grid-template-columns: 1fr;

        gap: 11px;
    }

    .section-heading-center h2 {
        font-size: 31px;
    }

    .section-heading-center p {
        font-size: 16px;
    }

    .vision-card {
        padding: 25px;

        flex-direction: column;

        gap: 16px;
    }

    .vision-icon {
        width: 55px;
        height: 55px;
    }

    .vision-card h3 {
        font-size: 25px;
    }

    .about-service-card {
        padding: 28px 24px;
    }

    .why-feature-grid {
        grid-template-columns: 1fr;
    }

    .about-stats {
        padding: 50px 0;
    }

    .about-stat strong {
        font-size: 30px;
    }

    .about-stat span {
        font-size: 14px;
    }

    .about-cta {
        padding: 55px 0;
    }

    .about-cta-inner {
        padding: 32px 24px;

        border-radius: 20px;
    }

    .about-cta-inner h2 {
        font-size: 29px;
    }

    .about-cta-inner p {
        font-size: 15px;
        line-height: 1.5;
    }

    .about-cta-buttons {
        width: 100%;

        flex-direction: column;
    }

    .cta-btn {
        width: 100%;
    }

}


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

@media (max-width: 480px) {

    .about-breadcrumb {
        min-height: 185px;
    }

    .about-breadcrumb h1 {
        font-size: 29px;
    }

    .about-intro,
    .about-services,
    .about-why {
        padding: 45px 0;
    }

    .about-content h2,
    .about-why h2 {
        font-size: 27px;
    }

    .section-heading-center h2 {
        font-size: 27px;
    }

    .about-image-wrap img {
        min-height: 250px;
    }

    .about-stat strong {
        font-size: 27px;
    }

    .about-stat span {
        font-size: 13px;
    }

    .about-cta-inner h2 {
        font-size: 25px;
    }

}





/* =========================================
   CORPORATE TRAVEL PAGE
========================================= */

:root {
    --corp-blue: #082f63;
    --corp-dark: #061f42;
    --corp-yellow: #ffc21c;
    --corp-text: #102846;
    --corp-light: #f6f8fc;
    --corp-border: #dce4ef;
}

* {
    box-sizing: border-box;
}

.corporate-hero {
    background:
        linear-gradient(135deg, #eef5ff 0%, #ffffff 55%, #fff8df 100%);
    padding: 25px 0 75px;
    overflow: hidden;
}

.corporate-breadcrumb {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 55px;
    font-size: 15px;
    color: #66758a;
}

.corporate-breadcrumb a {
    color: var(--corp-blue);
    text-decoration: none;
    font-weight: 600;
}

.corporate-tag,
.section-label {
    color: #c28a00;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corporate-hero h1 {
    color: var(--corp-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    max-width: 700px;
    margin: 15px 0 25px;
}

.corporate-hero h1 span,
.corporate-content h2 span {
    color: var(--corp-yellow);
    display: block;
}

.corporate-hero p {
    color: #52657c;
    font-size: 19px;
    line-height: 1.7;
    max-width: 650px;
}

.corporate-hero-buttons {
    display: flex;
    gap: 15px;
    margin-top: 30px;
}

.btn-corp-primary,
.btn-corp-outline,
.btn-cta-yellow {
    padding: 15px 27px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    display: inline-block;
    transition: .3s ease;
}

.btn-corp-primary {
    background: var(--corp-blue);
    color: #fff;
}

.btn-corp-primary:hover {
    background: var(--corp-yellow);
    color: var(--corp-dark);
}

.btn-corp-outline {
    border: 2px solid var(--corp-blue);
    color: var(--corp-blue);
    background: #fff;
}

.btn-corp-outline:hover {
    background: var(--corp-blue);
    color: #fff;
}


/* Hero Card */

.corporate-hero-card {
    background: var(--corp-blue);
    color: #fff;
    border-radius: 25px;
    padding: 40px;
    box-shadow: 0 20px 45px rgba(8, 47, 99, .18);
    position: relative;
}

.corporate-hero-card::after {
    content: "";
    position: absolute;
    width: 100px;
    height: 100px;
    background: var(--corp-yellow);
    border-radius: 50%;
    right: -35px;
    top: -35px;
    opacity: .9;
    z-index: 0;
}

.corporate-hero-card > * {
    position: relative;
    z-index: 1;
}

.corp-icon {
    width: 70px;
    height: 70px;
    background: var(--corp-yellow);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 35px;
    margin-bottom: 25px;
}

.corporate-hero-card h3 {
    font-size: 30px;
    margin-bottom: 15px;
}

.corporate-hero-card p {
    color: #fff;
    font-size: 17px;
    margin-bottom: 25px;
}

.corp-small-points {
    border-top: 1px solid rgba(255,255,255,.25);
    padding-top: 20px;
}

.corp-small-points div {
    margin-bottom: 13px;
    font-size: 16px;
}


/* Common Section */

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

.corporate-intro {
    background: #fff;
}

.corporate-image-box {
    position: relative;
    padding-right: 35px;
}

.corporate-image-box img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 20px;
    display: block;
}

.corporate-experience-box {
    position: absolute;
    bottom: -25px;
    right: 5px;
    background: var(--corp-yellow);
    color: var(--corp-dark);
    padding: 20px 30px;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.corporate-experience-box strong {
    font-size: 28px;
}

.corporate-experience-box span {
    font-size: 14px;
    font-weight: 600;
}

.corporate-content {
    padding-left: 25px;
}

.corporate-content h2 {
    font-size: 43px;
    line-height: 1.15;
    color: var(--corp-dark);
    font-weight: 800;
    margin: 15px 0 25px;
}

.corporate-content p {
    color: #5d6d82;
    font-size: 17px;
    line-height: 1.7;
}

.corporate-check-list {
    margin-top: 25px;
}

.corporate-check-list div {
    margin-bottom: 13px;
    font-weight: 600;
    color: var(--corp-text);
}


/* Services */

.corporate-services {
    background: var(--corp-light);
}

.section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.section-heading span {
    color: #b98300;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.section-heading h2 {
    color: var(--corp-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.section-heading p {
    color: #64748b;
    font-size: 18px;
    margin: 0;
}

.corporate-service-card {
    height: 100%;
    background: #fff;
    border: 1px solid var(--corp-border);
    border-radius: 16px;
    padding: 32px;
    transition: .3s ease;
}

.corporate-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(8,47,99,.12);
    border-color: var(--corp-yellow);
}

.service-icon {
    width: 65px;
    height: 65px;
    border-radius: 14px;
    background: #fff3c9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    margin-bottom: 22px;
}

.corporate-service-card h3 {
    color: var(--corp-dark);
    font-size: 23px;
    font-weight: 700;
    margin-bottom: 14px;
}

.corporate-service-card p {
    color: #66758a;
    line-height: 1.6;
    font-size: 16px;
}

.corporate-service-card a {
    color: #c28a00;
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    margin-top: 10px;
}


/* Why Choose */

.corporate-why {
    background: #fff;
}

.why-corp-card {
    text-align: center;
    padding: 25px 15px;
}

.why-icon {
    width: 75px;
    height: 75px;
    margin: auto auto 20px;
    background: #fff3c7;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 32px;
    color: #d09500;
    font-weight: 800;
}

.why-corp-card h3 {
    color: var(--corp-dark);
    font-size: 21px;
    margin-bottom: 12px;
}

.why-corp-card p {
    color: #66758a;
    line-height: 1.6;
}


/* Process */

.corporate-process {
    background: var(--corp-light);
}

.process-card {
    height: 100%;
    background: #fff;
    border-radius: 15px;
    padding: 30px;
    border: 1px solid var(--corp-border);
    position: relative;
}

.process-number {
    color: var(--corp-yellow);
    font-size: 35px;
    font-weight: 800;
    margin-bottom: 20px;
}

.process-card h3 {
    color: var(--corp-dark);
    font-size: 21px;
    margin-bottom: 12px;
}

.process-card p {
    color: #66758a;
    line-height: 1.6;
    margin: 0;
}


/* CTA */

.corporate-cta {
    padding: 70px 0;
    background: #fff;
}

.corporate-cta-inner {
    background: linear-gradient(135deg, #082f63, #0d4d91);
    border-radius: 22px;
    padding: 55px 60px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    overflow: hidden;
    position: relative;
}

.corporate-cta-inner::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: var(--corp-yellow);
    border-radius: 50%;
    right: -130px;
    top: -150px;
    opacity: .15;
}

.corporate-cta-inner > * {
    position: relative;
    z-index: 1;
}

.corporate-cta-inner span {
    color: var(--corp-yellow);
    font-weight: 700;
    letter-spacing: 1px;
}

.corporate-cta-inner h2 {
    font-size: 38px;
    margin: 12px 0;
    font-weight: 800;
}

.corporate-cta-inner p {
    color: #dbe7f6;
    margin: 0;
    font-size: 17px;
}

.btn-cta-yellow {
    background: var(--corp-yellow);
    color: var(--corp-dark);
    min-width: 180px;
    text-align: center;
}

.btn-cta-yellow:hover {
    background: #fff;
    color: var(--corp-dark);
}


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

@media (max-width: 991px) {

    .corporate-hero {
        padding-bottom: 60px;
    }

    .corporate-hero h1 {
        font-size: 46px;
    }

    .corporate-hero-card {
        margin-top: 45px;
    }

    .corporate-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .corporate-content h2 {
        font-size: 38px;
    }

    .corporate-image-box {
        padding-right: 0;
    }

    .section-heading h2 {
        font-size: 37px;
    }

    .corporate-cta-inner {
        padding: 45px;
    }
}


@media (max-width: 767px) {

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

    .corporate-hero {
        padding: 20px 0 55px;
    }

    .corporate-breadcrumb {
        margin-bottom: 35px;
    }

    .corporate-hero h1 {
        font-size: 38px;
    }

    .corporate-hero p {
        font-size: 16px;
    }

    .corporate-hero-buttons {
        flex-direction: column;
    }

    .btn-corp-primary,
    .btn-corp-outline {
        width: 100%;
        text-align: center;
    }

    .corporate-hero-card {
        padding: 30px;
        margin-top: 35px;
    }

    .corporate-image-box img {
        height: 320px;
    }

    .corporate-experience-box {
        right: 10px;
        bottom: -20px;
    }

    .corporate-content h2 {
        font-size: 32px;
    }

    .section-heading {
        margin-bottom: 35px;
    }

    .section-heading h2 {
        font-size: 31px;
    }

    .section-heading p {
        font-size: 16px;
    }

    .corporate-service-card {
        padding: 25px;
    }

    .corporate-cta {
        padding: 50px 0;
    }

    .corporate-cta-inner {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .corporate-cta-inner h2 {
        font-size: 30px;
    }

    .cta-button-area {
        width: 100%;
    }

    .btn-cta-yellow {
        width: 100%;
    }
}


@media (max-width: 480px) {

    .corporate-hero h1 {
        font-size: 33px;
    }

    .corporate-hero-card {
        padding: 25px;
    }

    .corporate-content h2 {
        font-size: 29px;
    }

    .corporate-image-box img {
        height: 280px;
    }

    .section-heading h2 {
        font-size: 28px;
    }

    .corporate-cta-inner h2 {
        font-size: 27px;
    }
}



/* =========================================
   TRAVEL PACKAGES
========================================= */

:root {
    --package-blue: #082f63;
    --package-dark: #061f42;
    --package-yellow: #ffc21c;
    --package-text: #102846;
    --package-muted: #64748b;
    --package-light: #f6f8fc;
    --package-border: #dce4ef;
}


/* =========================================
   HERO
========================================= */

.packages-hero {
    padding: 25px 0 75px;
    background:
        linear-gradient(
            135deg,
            #eef5ff 0%,
            #ffffff 55%,
            #fff8df 100%
        );
    overflow: hidden;
}

.packages-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    font-size: 15px;
    color: #66758a;
}

.packages-breadcrumb a {
    color: var(--package-blue);
    text-decoration: none;
    font-weight: 600;
}

.packages-tag {
    color: #c28a00;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.packages-hero h1 {
    color: var(--package-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.packages-hero h1 span {
    display: block;
    color: var(--package-yellow);
}

.packages-hero p {
    color: #52657c;
    max-width: 650px;
    font-size: 19px;
    line-height: 1.7;
}

.packages-hero-buttons {
    display: flex;
    gap: 15px;
    margin-top: 30px;
}

.package-btn-primary,
.package-btn-outline,
.package-cta-btn {
    display: inline-block;
    padding: 15px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.package-btn-primary {
    background: var(--package-blue);
    color: #fff;
}

.package-btn-primary:hover {
    background: var(--package-yellow);
    color: var(--package-dark);
}

.package-btn-outline {
    background: #fff;
    border: 2px solid var(--package-blue);
    color: var(--package-blue);
}

.package-btn-outline:hover {
    background: var(--package-blue);
    color: #fff;
}


/* Hero Box */

.packages-hero-box {
    background: var(--package-blue);
    color: #fff;
    padding: 40px;
    border-radius: 24px;
    box-shadow: 0 20px 45px rgba(8, 47, 99, .18);
    position: relative;
    overflow: hidden;
}

.packages-hero-box::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: var(--package-yellow);
    right: -70px;
    top: -70px;
    opacity: .2;
}

.package-hero-icon {
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--package-yellow);
    border-radius: 16px;
    font-size: 34px;
    margin-bottom: 25px;
}

.packages-hero-box h3 {
    font-size: 29px;
    margin-bottom: 15px;
}

.packages-hero-box p {
    color: #fff;
    font-size: 16px;
    line-height: 1.7;
}

.package-hero-points {
    border-top: 1px solid rgba(255,255,255,.25);
    margin-top: 20px;
    padding-top: 20px;
}

.package-hero-points div {
    margin-bottom: 12px;
}


/* =========================================
   PACKAGES SECTION
========================================= */

.travel-packages-section {
    padding: 90px 0;
    background: #fff;
}

.packages-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.packages-section-heading span {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.packages-section-heading h2 {
    color: var(--package-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.packages-section-heading p {
    color: var(--package-muted);
    font-size: 18px;
    margin: 0 auto;
    max-width: 650px;
}


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

.travel-package-card {
    height: 100%;
    background: #fff;
    border: 1px solid var(--package-border);
    border-radius: 18px;
    overflow: hidden;
    transition: .3s ease;
    box-shadow: 0 5px 20px rgba(8,47,99,.04);
}

.travel-package-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 40px rgba(8,47,99,.13);
    border-color: var(--package-yellow);
}

.package-image {
    height: 230px;
    position: relative;
    overflow: hidden;
}

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

.travel-package-card:hover .package-image img {
    transform: scale(1.06);
}

.package-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background: var(--package-yellow);
    color: var(--package-dark);
    padding: 7px 14px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
}

.package-card-content {
    padding: 25px;
}

.package-location {
    color: #a87700;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 10px;
}

.package-card-content h3 {
    color: var(--package-dark);
    font-size: 25px;
    font-weight: 800;
    margin-bottom: 10px;
}

.package-card-content p {
    color: var(--package-muted);
    font-size: 15px;
    line-height: 1.6;
    min-height: 48px;
}

.package-info {
    display: flex;
    flex-direction: column;
    gap: 7px;
    border-top: 1px solid var(--package-border);
    border-bottom: 1px solid var(--package-border);
    padding: 15px 0;
    margin-top: 15px;
}

.package-info span {
    color: #53657a;
    font-size: 14px;
}

.package-includes {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 15px;
}

.package-includes span {
    background: #f4f7fb;
    color: var(--package-blue);
    padding: 6px 10px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 600;
}

.package-bottom {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 15px;
    margin-top: 22px;
}

.package-price {
    display: flex;
    flex-direction: column;
}

.package-price small {
    color: #8491a1;
    font-size: 12px;
}

.package-price strong {
    color: var(--package-blue);
    font-size: 24px;
    font-weight: 800;
}

.package-view-btn {
    background: var(--package-blue);
    color: #fff;
    text-decoration: none;
    padding: 11px 17px;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.package-view-btn:hover {
    background: var(--package-yellow);
    color: var(--package-dark);
}


/* =========================================
   WHY CHOOSE
========================================= */

.packages-why {
    padding: 90px 0;
    background: var(--package-light);
}

.package-why-card {
    background: #fff;
    border: 1px solid var(--package-border);
    border-radius: 15px;
    padding: 30px 22px;
    text-align: center;
    height: 100%;
    transition: .3s ease;
}

.package-why-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.package-why-icon {
    width: 70px;
    height: 70px;
    background: #fff3c7;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 30px;
}

.package-why-card h3 {
    color: var(--package-dark);
    font-size: 20px;
    margin-bottom: 10px;
}

.package-why-card p {
    color: var(--package-muted);
    line-height: 1.6;
    font-size: 15px;
    margin: 0;
}


/* =========================================
   CTA
========================================= */

.packages-cta {
    padding: 70px 0;
    background: #fff;
}

.packages-cta-box {
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    border-radius: 22px;
    padding: 55px 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    overflow: hidden;
    position: relative;
}

.packages-cta-box::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    background: var(--package-yellow);
    border-radius: 50%;
    right: -130px;
    top: -140px;
    opacity: .13;
}

.packages-cta-box > * {
    position: relative;
    z-index: 1;
}

.packages-cta-box span {
    color: var(--package-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.packages-cta-box h2 {
    font-size: 38px;
    font-weight: 800;
    margin: 10px 0;
}

.packages-cta-box p {
    color: #dce7f5;
    margin: 0;
    font-size: 16px;
    max-width: 650px;
    line-height: 1.6;
}

.package-cta-btn {
    background: var(--package-yellow);
    color: var(--package-dark);
    min-width: 180px;
    text-align: center;
}

.package-cta-btn:hover {
    background: #fff;
    color: var(--package-dark);
}


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

@media (max-width: 991px) {

    .packages-hero h1 {
        font-size: 46px;
    }

    .packages-hero-box {
        margin-top: 45px;
    }

    .packages-section-heading h2 {
        font-size: 37px;
    }

    .packages-cta-box {
        padding: 45px;
    }
}


@media (max-width: 767px) {

    .packages-hero {
        padding: 20px 0 55px;
    }

    .packages-breadcrumb {
        margin-bottom: 35px;
    }

    .packages-hero h1 {
        font-size: 38px;
    }

    .packages-hero p {
        font-size: 16px;
    }

    .packages-hero-buttons {
        flex-direction: column;
    }

    .package-btn-primary,
    .package-btn-outline {
        width: 100%;
        text-align: center;
    }

    .packages-hero-box {
        margin-top: 35px;
        padding: 30px;
    }

    .travel-packages-section,
    .packages-why {
        padding: 65px 0;
    }

    .packages-section-heading {
        margin-bottom: 35px;
    }

    .packages-section-heading h2 {
        font-size: 31px;
    }

    .packages-section-heading p {
        font-size: 16px;
    }

    .package-image {
        height: 220px;
    }

    .packages-cta {
        padding: 50px 0;
    }

    .packages-cta-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

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

    .packages-cta-box p {
        font-size: 15px;
    }

    .package-cta-btn {
        width: 100%;
    }
}


@media (max-width: 480px) {

    .packages-hero h1 {
        font-size: 33px;
    }

    .packages-hero-box {
        padding: 25px;
    }

    .packages-section-heading h2 {
        font-size: 28px;
    }

    .package-card-content {
        padding: 22px;
    }

    .package-card-content h3 {
        font-size: 22px;
    }

    .package-bottom {
        align-items: center;
    }

    .package-price strong {
        font-size: 21px;
    }

    .package-view-btn {
        padding: 10px 13px;
    }

    .packages-cta-box h2 {
        font-size: 27px;
    }
}



/* =========================================
   TOUR SERVICES PAGE
========================================= */

:root {
    --tour-blue: #082f63;
    --tour-dark: #061f42;
    --tour-yellow: #ffc21c;
    --tour-text: #102846;
    --tour-muted: #64748b;
    --tour-light: #f6f8fc;
    --tour-border: #dce4ef;
}


/* =========================================
   HERO
========================================= */

.tour-hero {
    padding: 25px 0 75px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 55%,
        #fff8df 100%
    );
    overflow: hidden;
}

.tour-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.tour-breadcrumb a {
    color: var(--tour-blue);
    text-decoration: none;
    font-weight: 600;
}

.tour-tag,
.tour-section-label {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tour-hero h1 {
    color: var(--tour-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.tour-hero h1 span {
    display: block;
    color: var(--tour-yellow);
}

.tour-hero > .container > .row > .col-lg-7 > p {
    color: #52657c;
    max-width: 650px;
    font-size: 19px;
    line-height: 1.7;
}

.tour-hero-buttons {
    display: flex;
    gap: 15px;
    margin-top: 30px;
}

.tour-btn-primary,
.tour-btn-outline,
.tour-feature-btn,
.tour-cta-btn {
    display: inline-block;
    padding: 15px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.tour-btn-primary {
    background: var(--tour-blue);
    color: #fff;
}

.tour-btn-primary:hover {
    background: var(--tour-yellow);
    color: var(--tour-dark);
}

.tour-btn-outline {
    background: #fff;
    border: 2px solid var(--tour-blue);
    color: var(--tour-blue);
}

.tour-btn-outline:hover {
    background: var(--tour-blue);
    color: #fff;
}


/* Hero Card */

.tour-hero-card {
    position: relative;
    overflow: hidden;
    padding: 40px;
    border-radius: 24px;
    background: var(--tour-blue);
    color: #fff;
    box-shadow: 0 20px 45px rgba(8,47,99,.18);
}

.tour-hero-card::after {
    content: "";
    position: absolute;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: var(--tour-yellow);
    right: -70px;
    top: -70px;
    opacity: .18;
}

.tour-hero-icon {
    width: 70px;
    height: 70px;
    border-radius: 16px;
    background: var(--tour-yellow);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    margin-bottom: 25px;
}

.tour-hero-card h3 {
    font-size: 29px;
    font-weight: 800;
    margin-bottom: 15px;
}

.tour-hero-card p {
    color: #fff;
    font-size: 16px;
    line-height: 1.7;
}

.tour-hero-list {
    border-top: 1px solid rgba(255,255,255,.25);
    margin-top: 20px;
    padding-top: 20px;
}

.tour-hero-list div {
    margin-bottom: 12px;
}


/* =========================================
   COMMON
========================================= */

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


/* =========================================
   INTRO
========================================= */

.tour-intro {
    background: #fff;
}

.tour-image-wrapper {
    position: relative;
    padding-right: 35px;
}

.tour-image-wrapper img {
    width: 100%;
    height: 450px;
    display: block;
    object-fit: cover;
    border-radius: 20px;
}

.tour-floating-card {
    position: absolute;
    right: 0;
    bottom: -25px;
    padding: 18px 28px;
    background: var(--tour-yellow);
    color: var(--tour-dark);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.tour-floating-card strong {
    font-size: 28px;
}

.tour-floating-card span {
    font-size: 13px;
    font-weight: 600;
}

.tour-intro-content {
    padding-left: 25px;
}

.tour-intro-content h2 {
    color: var(--tour-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 25px;
}

.tour-intro-content h2 span {
    display: block;
    color: var(--tour-yellow);
}

.tour-intro-content p {
    color: var(--tour-muted);
    font-size: 17px;
    line-height: 1.7;
}

.tour-check-list {
    margin-top: 25px;
}

.tour-check-list div {
    color: var(--tour-text);
    font-weight: 600;
    margin-bottom: 13px;
}


/* =========================================
   SERVICES
========================================= */

.tour-services-section {
    padding: 90px 0;
    background: var(--tour-light);
}

.tour-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.tour-section-heading span {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tour-section-heading h2 {
    color: var(--tour-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.tour-section-heading p {
    color: var(--tour-muted);
    font-size: 18px;
    max-width: 650px;
    margin: auto;
}


/* Service Card */

.tour-service-card {
    height: 100%;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--tour-border);
    border-radius: 17px;
    position: relative;
    overflow: hidden;
    transition: .3s ease;
}

.tour-service-card::after {
    content: "";
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--tour-yellow);
    right: -55px;
    bottom: -55px;
    opacity: .12;
    transition: .3s ease;
}

.tour-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--tour-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.11);
}

.tour-service-card:hover::after {
    transform: scale(1.5);
}

.tour-service-icon {
    width: 65px;
    height: 65px;
    background: #fff3c7;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    margin-bottom: 20px;
}

.tour-card-number {
    position: absolute;
    top: 25px;
    right: 28px;
    color: #d8e0ea;
    font-size: 28px;
    font-weight: 800;
}

.tour-service-card h3 {
    color: var(--tour-dark);
    font-size: 23px;
    font-weight: 800;
    margin-bottom: 13px;
}

.tour-service-card p {
    color: var(--tour-muted);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.tour-service-card a {
    color: #b57d00;
    font-weight: 700;
    text-decoration: none;
}


/* =========================================
   FEATURES
========================================= */

.tour-features {
    background: #fff;
}

.tour-features-content {
    padding-right: 30px;
}

.tour-features-content h2 {
    color: var(--tour-dark);
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 20px;
}

.tour-features-content h2 span {
    display: block;
    color: var(--tour-yellow);
}

.tour-features-content p {
    color: var(--tour-muted);
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 28px;
}

.tour-feature-btn {
    background: var(--tour-blue);
    color: #fff;
}

.tour-feature-btn:hover {
    background: var(--tour-yellow);
    color: var(--tour-dark);
}

.tour-feature-box {
    height: 100%;
    padding: 28px;
    border-radius: 15px;
    background: var(--tour-light);
    border: 1px solid var(--tour-border);
    transition: .3s ease;
}

.tour-feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.feature-box-icon {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff3c7;
    border-radius: 12px;
    font-size: 26px;
    margin-bottom: 17px;
}

.tour-feature-box h3 {
    color: var(--tour-dark);
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.tour-feature-box p {
    color: var(--tour-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.tour-process {
    padding: 90px 0;
    background: var(--tour-light);
}

.tour-process-card {
    height: 100%;
    padding: 35px;
    background: #fff;
    border-radius: 16px;
    border: 1px solid var(--tour-border);
    position: relative;
}

.tour-process-number {
    color: var(--tour-yellow);
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 20px;
}

.tour-process-card h3 {
    color: var(--tour-dark);
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 12px;
}

.tour-process-card p {
    color: var(--tour-muted);
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   CTA
========================================= */

.tour-cta {
    padding: 70px 0;
    background: #fff;
}

.tour-cta-box {
    padding: 55px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    position: relative;
    overflow: hidden;
}

.tour-cta-box::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: var(--tour-yellow);
    border-radius: 50%;
    right: -140px;
    top: -150px;
    opacity: .13;
}

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

.tour-cta-content span {
    color: var(--tour-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tour-cta-content h2 {
    font-size: 38px;
    font-weight: 800;
    margin: 10px 0;
}

.tour-cta-content p {
    color: #dce7f5;
    max-width: 650px;
    margin: 0;
    line-height: 1.6;
}

.tour-cta-btn {
    position: relative;
    z-index: 1;
    background: var(--tour-yellow);
    color: var(--tour-dark);
    min-width: 180px;
    text-align: center;
}

.tour-cta-btn:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .tour-hero h1 {
        font-size: 46px;
    }

    .tour-hero-card {
        margin-top: 45px;
    }

    .tour-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .tour-intro-content h2 {
        font-size: 38px;
    }

    .tour-image-wrapper {
        padding-right: 0;
    }

    .tour-section-heading h2 {
        font-size: 37px;
    }

    .tour-features-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .tour-cta-box {
        padding: 45px;
    }

}


@media (max-width: 767px) {

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

    .tour-hero {
        padding: 20px 0 55px;
    }

    .tour-breadcrumb {
        margin-bottom: 35px;
    }

    .tour-hero h1 {
        font-size: 38px;
    }

    .tour-hero > .container > .row > .col-lg-7 > p {
        font-size: 16px;
    }

    .tour-hero-buttons {
        flex-direction: column;
    }

    .tour-btn-primary,
    .tour-btn-outline {
        width: 100%;
        text-align: center;
    }

    .tour-hero-card {
        margin-top: 35px;
        padding: 30px;
    }

    .tour-image-wrapper img {
        height: 320px;
    }

    .tour-floating-card {
        right: 10px;
        bottom: -20px;
    }

    .tour-intro-content h2 {
        font-size: 32px;
    }

    .tour-services-section,
    .tour-process {
        padding: 65px 0;
    }

    .tour-section-heading {
        margin-bottom: 35px;
    }

    .tour-section-heading h2 {
        font-size: 31px;
    }

    .tour-section-heading p {
        font-size: 16px;
    }

    .tour-service-card {
        padding: 27px;
    }

    .tour-features-content h2 {
        font-size: 32px;
    }

    .tour-cta {
        padding: 50px 0;
    }

    .tour-cta-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .tour-cta-content h2 {
        font-size: 30px;
    }

    .tour-cta-btn {
        width: 100%;
    }

}


@media (max-width: 480px) {

    .tour-hero h1 {
        font-size: 33px;
    }

    .tour-hero-card {
        padding: 25px;
    }

    .tour-intro-content h2 {
        font-size: 29px;
    }

    .tour-image-wrapper img {
        height: 280px;
    }

    .tour-section-heading h2 {
        font-size: 28px;
    }

    .tour-service-card h3 {
        font-size: 21px;
    }

    .tour-features-content h2 {
        font-size: 29px;
    }

    .tour-cta-content h2 {
        font-size: 27px;
    }

}

/* =========================================
   CAB SERVICES PAGE
========================================= */

:root {
    --cab-blue: #082f63;
    --cab-dark: #061f42;
    --cab-yellow: #ffc21c;
    --cab-text: #102846;
    --cab-muted: #64748b;
    --cab-light: #f6f8fc;
    --cab-border: #dce4ef;
}


/* =========================================
   HERO
========================================= */

.cab-hero {
    padding: 25px 0 75px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 55%,
        #fff8df 100%
    );
    overflow: hidden;
}

.cab-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.cab-breadcrumb a {
    color: var(--cab-blue);
    text-decoration: none;
    font-weight: 600;
}

.cab-tag,
.cab-section-label {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.cab-hero h1 {
    color: var(--cab-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.cab-hero h1 span {
    display: block;
    color: var(--cab-yellow);
}

.cab-hero > .container > .row > .col-lg-7 > p {
    color: #52657c;
    max-width: 650px;
    font-size: 19px;
    line-height: 1.7;
}

.cab-hero-buttons {
    display: flex;
    gap: 15px;
    margin-top: 30px;
}

.cab-btn-primary,
.cab-btn-outline,
.cab-feature-btn,
.cab-booking-btn {
    display: inline-block;
    padding: 15px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.cab-btn-primary {
    background: var(--cab-blue);
    color: #fff;
}

.cab-btn-primary:hover {
    background: var(--cab-yellow);
    color: var(--cab-dark);
}

.cab-btn-outline {
    background: #fff;
    border: 2px solid var(--cab-blue);
    color: var(--cab-blue);
}

.cab-btn-outline:hover {
    background: var(--cab-blue);
    color: #fff;
}


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

.cab-hero-card {
    position: relative;
    overflow: hidden;
    padding: 40px;
    border-radius: 24px;
    background: var(--cab-blue);
    color: #fff;
    box-shadow: 0 20px 45px rgba(8,47,99,.18);
}

.cab-hero-card::after {
    content: "";
    position: absolute;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: var(--cab-yellow);
    right: -70px;
    top: -70px;
    opacity: .18;
}

.cab-hero-icon {
    width: 70px;
    height: 70px;
    border-radius: 16px;
    background: var(--cab-yellow);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    margin-bottom: 25px;
}

.cab-hero-card h3 {
    font-size: 29px;
    font-weight: 800;
    margin-bottom: 15px;
}

.cab-hero-card p {
    color: #fff;
    font-size: 16px;
    line-height: 1.7;
}

.cab-hero-list {
    border-top: 1px solid rgba(255,255,255,.25);
    margin-top: 20px;
    padding-top: 20px;
}

.cab-hero-list div {
    margin-bottom: 12px;
}


/* =========================================
   COMMON
========================================= */

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


/* =========================================
   INTRO
========================================= */

.cab-intro {
    background: #fff;
}

.cab-image-wrapper {
    position: relative;
    padding-right: 35px;
}

.cab-image-wrapper img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.cab-floating-card {
    position: absolute;
    right: 0;
    bottom: -25px;
    padding: 18px 28px;
    background: var(--cab-yellow);
    color: var(--cab-dark);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.cab-floating-card strong {
    font-size: 28px;
}

.cab-floating-card span {
    font-size: 13px;
    font-weight: 600;
}

.cab-intro-content {
    padding-left: 25px;
}

.cab-intro-content h2 {
    color: var(--cab-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 25px;
}

.cab-intro-content h2 span {
    display: block;
    color: var(--cab-yellow);
}

.cab-intro-content p {
    color: var(--cab-muted);
    font-size: 17px;
    line-height: 1.7;
}

.cab-check-list {
    margin-top: 25px;
}

.cab-check-list div {
    color: var(--cab-text);
    font-weight: 600;
    margin-bottom: 13px;
}


/* =========================================
   SERVICES
========================================= */

.cab-services-section {
    padding: 90px 0;
    background: var(--cab-light);
}

.cab-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.cab-section-heading span {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.cab-section-heading h2 {
    color: var(--cab-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.cab-section-heading p {
    color: var(--cab-muted);
    font-size: 18px;
    max-width: 680px;
    margin: auto;
}


/* Service Card */

.cab-service-card {
    height: 100%;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--cab-border);
    border-radius: 17px;
    position: relative;
    overflow: hidden;
    transition: .3s ease;
}

.cab-service-card::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: var(--cab-yellow);
    right: -70px;
    bottom: -70px;
    opacity: .12;
}

.cab-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--cab-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.11);
}

.cab-service-card.featured {
    border-top: 4px solid var(--cab-yellow);
}

.cab-service-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 20px;
}

.cab-service-top > span {
    color: #d6dfe9;
    font-size: 28px;
    font-weight: 800;
}

.cab-service-icon {
    width: 65px;
    height: 65px;
    background: #fff3c7;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
}

.cab-service-card h3 {
    color: var(--cab-dark);
    font-size: 23px;
    font-weight: 800;
    margin-bottom: 13px;
}

.cab-service-card p {
    color: var(--cab-muted);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 18px;
}

.cab-service-card ul {
    padding: 15px 0;
    margin: 0 0 18px;
    border-top: 1px solid var(--cab-border);
    border-bottom: 1px solid var(--cab-border);
    list-style: none;
}

.cab-service-card ul li {
    color: #52657c;
    font-size: 14px;
    margin-bottom: 7px;
}

.cab-service-card ul li:last-child {
    margin-bottom: 0;
}

.cab-service-card ul li::before {
    content: "✓";
    color: #bd8700;
    font-weight: 800;
    margin-right: 8px;
}

.cab-service-card a {
    color: #b57d00;
    text-decoration: none;
    font-weight: 700;
}


/* =========================================
   CAB TYPES
========================================= */

.cab-types-section {
    background: #fff;
}

.cab-type-card {
    background: #fff;
    border: 1px solid var(--cab-border);
    border-radius: 17px;
    overflow: hidden;
    transition: .3s ease;
}

.cab-type-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 18px 35px rgba(8,47,99,.12);
}

.cab-type-image {
    height: 230px;
    overflow: hidden;
}

.cab-type-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.cab-type-card:hover .cab-type-image img {
    transform: scale(1.06);
}

.cab-type-content {
    padding: 22px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cab-type-content h3 {
    color: var(--cab-dark);
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 5px;
}

.cab-type-content span {
    color: var(--cab-muted);
    font-size: 14px;
}

.cab-type-icon {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: #fff3c7;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
}


/* =========================================
   WHY CHOOSE
========================================= */

.cab-why-section {
    padding: 90px 0;
    background: var(--cab-light);
}

.cab-why-content {
    padding-right: 30px;
}

.cab-why-content h2 {
    color: var(--cab-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 20px;
}

.cab-why-content h2 span {
    display: block;
    color: var(--cab-yellow);
}

.cab-why-content p {
    color: var(--cab-muted);
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 28px;
}

.cab-feature-btn {
    background: var(--cab-blue);
    color: #fff;
}

.cab-feature-btn:hover {
    background: var(--cab-yellow);
    color: var(--cab-dark);
}

.cab-feature-box {
    height: 100%;
    padding: 28px;
    background: #fff;
    border: 1px solid var(--cab-border);
    border-radius: 15px;
    transition: .3s ease;
}

.cab-feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.cab-feature-icon {
    width: 55px;
    height: 55px;
    background: #fff3c7;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin-bottom: 17px;
}

.cab-feature-box h3 {
    color: var(--cab-dark);
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.cab-feature-box p {
    color: var(--cab-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   BOOKING CTA
========================================= */

.cab-booking-section {
    padding: 70px 0;
    background: #fff;
}

.cab-booking-box {
    position: relative;
    overflow: hidden;
    padding: 55px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    color: #fff;
}

.cab-booking-box::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: var(--cab-yellow);
    right: -140px;
    top: -150px;
    opacity: .13;
}

.cab-booking-content {
    position: relative;
    z-index: 1;
}

.cab-booking-content span {
    color: var(--cab-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.cab-booking-content h2 {
    font-size: 38px;
    font-weight: 800;
    margin: 10px 0;
}

.cab-booking-content p {
    color: #dce7f5;
    margin: 0;
    line-height: 1.6;
}

.cab-booking-btn {
    position: relative;
    z-index: 1;
    background: var(--cab-yellow);
    color: var(--cab-dark);
    min-width: 180px;
    text-align: center;
}

.cab-booking-btn:hover {
    background: #fff;
    color: var(--cab-dark);
}


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

@media (max-width: 991px) {

    .cab-hero h1 {
        font-size: 46px;
    }

    .cab-hero-card {
        margin-top: 45px;
    }

    .cab-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .cab-intro-content h2 {
        font-size: 38px;
    }

    .cab-image-wrapper {
        padding-right: 0;
    }

    .cab-section-heading h2 {
        font-size: 37px;
    }

    .cab-why-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .cab-booking-box {
        padding: 45px;
    }

}


@media (max-width: 767px) {

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

    .cab-hero {
        padding: 20px 0 55px;
    }

    .cab-breadcrumb {
        margin-bottom: 35px;
    }

    .cab-hero h1 {
        font-size: 38px;
    }

    .cab-hero > .container > .row > .col-lg-7 > p {
        font-size: 16px;
    }

    .cab-hero-buttons {
        flex-direction: column;
    }

    .cab-btn-primary,
    .cab-btn-outline {
        width: 100%;
        text-align: center;
    }

    .cab-hero-card {
        margin-top: 35px;
        padding: 30px;
    }

    .cab-image-wrapper img {
        height: 320px;
    }

    .cab-floating-card {
        right: 10px;
        bottom: -20px;
    }

    .cab-intro-content h2 {
        font-size: 32px;
    }

    .cab-services-section {
        padding: 65px 0;
    }

    .cab-section-heading {
        margin-bottom: 35px;
    }

    .cab-section-heading h2 {
        font-size: 31px;
    }

    .cab-section-heading p {
        font-size: 16px;
    }

    .cab-service-card {
        padding: 27px;
    }

    .cab-type-image {
        height: 220px;
    }

    .cab-why-section {
        padding: 65px 0;
    }

    .cab-why-content h2 {
        font-size: 32px;
    }

    .cab-booking-section {
        padding: 50px 0;
    }

    .cab-booking-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .cab-booking-content h2 {
        font-size: 30px;
    }

    .cab-booking-btn {
        width: 100%;
    }

}


@media (max-width: 480px) {

    .cab-hero h1 {
        font-size: 33px;
    }

    .cab-hero-card {
        padding: 25px;
    }

    .cab-intro-content h2 {
        font-size: 29px;
    }

    .cab-image-wrapper img {
        height: 280px;
    }

    .cab-section-heading h2 {
        font-size: 28px;
    }

    .cab-service-card h3 {
        font-size: 21px;
    }

    .cab-why-content h2 {
        font-size: 29px;
    }

    .cab-booking-content h2 {
        font-size: 27px;
    }

}







/* =========================================
   FLIGHT BOOKING PAGE
========================================= */

:root {
    --flight-blue: #082f63;
    --flight-dark: #061f42;
    --flight-yellow: #ffc21c;
    --flight-text: #102846;
    --flight-muted: #64748b;
    --flight-light: #f6f8fc;
    --flight-border: #dce4ef;
}


/* =========================================
   HERO
========================================= */

.flight-hero {
    padding: 25px 0 80px;
    background:
        linear-gradient(
            135deg,
            #eef5ff 0%,
            #ffffff 55%,
            #fff8df 100%
        );
    overflow: hidden;
}

.flight-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.flight-breadcrumb a {
    color: var(--flight-blue);
    text-decoration: none;
    font-weight: 600;
}

.flight-tag,
.flight-section-label {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.flight-hero h1 {
    color: var(--flight-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.flight-hero h1 span {
    display: block;
    color: var(--flight-yellow);
}

.flight-hero > .container > .row > .col-lg-6:first-child > p {
    color: #52657c;
    max-width: 580px;
    font-size: 19px;
    line-height: 1.7;
}

.flight-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.flight-hero-points span {
    background: #fff;
    border: 1px solid var(--flight-border);
    padding: 9px 14px;
    border-radius: 30px;
    color: var(--flight-blue);
    font-size: 13px;
    font-weight: 600;
}


/* =========================================
   SEARCH BOX
========================================= */

.flight-search-box {
    padding: 30px;
    background: #fff;
    border-radius: 20px;
    border: 1px solid var(--flight-border);
    box-shadow: 0 20px 45px rgba(8,47,99,.12);
}

.flight-search-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
}

.flight-search-heading span {
    color: #bd8700;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.flight-search-heading h3 {
    color: var(--flight-dark);
    font-size: 24px;
    font-weight: 800;
    margin: 5px 0 0;
}

.flight-search-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff3c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
}

.flight-trip-type {
    display: flex;
    gap: 22px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--flight-border);
    margin-bottom: 20px;
}

.flight-trip-type label {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--flight-text);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}

.flight-trip-type input {
    accent-color: var(--flight-blue);
}

.flight-input {
    border: 1px solid var(--flight-border);
    border-radius: 9px;
    padding: 10px 13px;
    transition: .3s ease;
    cursor: pointer;
}

.flight-input:hover {
    border-color: var(--flight-yellow);
}

.flight-input label {
    display: block;
    color: #8794a5;
    font-size: 11px;
    margin-bottom: 5px;
}

.flight-input-inner {
    display: flex;
    align-items: center;
    gap: 10px;
}

.flight-input-inner > span {
    font-size: 20px;
}

.flight-input-inner strong {
    display: block;
    color: var(--flight-dark);
    font-size: 14px;
}

.flight-input-inner small {
    display: block;
    color: var(--flight-muted);
    font-size: 11px;
    margin-top: 2px;
}

.flight-search-btn {
    width: 100%;
    border: 0;
    margin-top: 20px;
    padding: 15px;
    border-radius: 8px;
    background: var(--flight-blue);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.flight-search-btn:hover {
    background: var(--flight-yellow);
    color: var(--flight-dark);
}


/* =========================================
   COMMON
========================================= */

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


/* =========================================
   INTRO
========================================= */

.flight-intro {
    background: #fff;
}

.flight-image-wrapper {
    position: relative;
    padding-right: 35px;
}

.flight-image-wrapper img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.flight-floating-card {
    position: absolute;
    right: 0;
    bottom: -25px;
    padding: 17px 25px;
    background: var(--flight-yellow);
    color: var(--flight-dark);
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.flight-floating-card strong {
    font-size: 25px;
}

.flight-floating-card span {
    font-size: 13px;
    font-weight: 600;
}

.flight-intro-content {
    padding-left: 25px;
}

.flight-intro-content h2 {
    color: var(--flight-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 25px;
}

.flight-intro-content h2 span {
    display: block;
    color: var(--flight-yellow);
}

.flight-intro-content p {
    color: var(--flight-muted);
    font-size: 17px;
    line-height: 1.7;
}

.flight-check-list {
    margin-top: 25px;
}

.flight-check-list div {
    color: var(--flight-text);
    font-weight: 600;
    margin-bottom: 13px;
}


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

.flight-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.flight-section-heading span {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.flight-section-heading h2 {
    color: var(--flight-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.flight-section-heading p {
    color: var(--flight-muted);
    font-size: 18px;
    max-width: 680px;
    margin: auto;
}


/* =========================================
   SERVICES
========================================= */

.flight-services-section {
    padding: 90px 0;
    background: var(--flight-light);
}

.flight-service-card {
    height: 100%;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--flight-border);
    border-radius: 17px;
    position: relative;
    overflow: hidden;
    transition: .3s ease;
}

.flight-service-card::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: var(--flight-yellow);
    right: -60px;
    bottom: -60px;
    opacity: .12;
}

.flight-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--flight-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.11);
}

.flight-service-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 22px;
}

.flight-service-icon {
    width: 65px;
    height: 65px;
    background: #fff3c7;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 29px;
}

.flight-service-top > span {
    color: #d6dfe9;
    font-size: 28px;
    font-weight: 800;
}

.flight-service-card h3 {
    color: var(--flight-dark);
    font-size: 23px;
    font-weight: 800;
    margin-bottom: 13px;
}

.flight-service-card p {
    color: var(--flight-muted);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.flight-service-card a {
    color: #b57d00;
    text-decoration: none;
    font-weight: 700;
}


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

.flight-destinations {
    background: #fff;
}

.flight-destination-card {
    height: 330px;
    border-radius: 17px;
    overflow: hidden;
    position: relative;
}

.flight-destination-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(6,31,66,.85),
        rgba(6,31,66,0) 65%
    );
}

.flight-destination-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.flight-destination-card:hover img {
    transform: scale(1.07);
}

.flight-destination-overlay {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 20px;
    z-index: 2;
    color: #fff;
}

.flight-destination-overlay span {
    color: var(--flight-yellow);
    font-size: 12px;
    font-weight: 700;
}

.flight-destination-overlay h3 {
    font-size: 25px;
    font-weight: 800;
    margin: 4px 0;
}

.flight-destination-overlay p {
    margin: 0;
    color: #e1e8f1;
    font-size: 13px;
}


/* =========================================
   WHY SECTION
========================================= */

.flight-why-section {
    padding: 90px 0;
    background: var(--flight-light);
}

.flight-why-content {
    padding-right: 30px;
}

.flight-why-content h2 {
    color: var(--flight-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 20px;
}

.flight-why-content h2 span {
    display: block;
    color: var(--flight-yellow);
}

.flight-why-content p {
    color: var(--flight-muted);
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 28px;
}

.flight-feature-btn {
    display: inline-block;
    background: var(--flight-blue);
    color: #fff;
    padding: 15px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.flight-feature-btn:hover {
    background: var(--flight-yellow);
    color: var(--flight-dark);
}

.flight-feature-box {
    height: 100%;
    padding: 28px;
    background: #fff;
    border: 1px solid var(--flight-border);
    border-radius: 15px;
    transition: .3s ease;
}

.flight-feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.flight-feature-icon {
    width: 55px;
    height: 55px;
    background: #fff3c7;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin-bottom: 17px;
}

.flight-feature-box h3 {
    color: var(--flight-dark);
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.flight-feature-box p {
    color: var(--flight-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.flight-process {
    background: #fff;
}

.flight-process-card {
    height: 100%;
    padding: 35px;
    background: var(--flight-light);
    border: 1px solid var(--flight-border);
    border-radius: 16px;
}

.flight-process-number {
    color: var(--flight-yellow);
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 20px;
}

.flight-process-card h3 {
    color: var(--flight-dark);
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 12px;
}

.flight-process-card p {
    color: var(--flight-muted);
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   CTA
========================================= */

.flight-cta {
    padding: 70px 0;
    background: #fff;
}

.flight-cta-box {
    position: relative;
    overflow: hidden;
    padding: 55px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.flight-cta-box::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: var(--flight-yellow);
    right: -140px;
    top: -150px;
    opacity: .13;
}

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

.flight-cta-content span {
    color: var(--flight-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.flight-cta-content h2 {
    font-size: 38px;
    font-weight: 800;
    margin: 10px 0;
}

.flight-cta-content p {
    color: #dce7f5;
    margin: 0;
    line-height: 1.6;
}

.flight-cta-btn {
    position: relative;
    z-index: 1;
    min-width: 180px;
    text-align: center;
    padding: 15px 28px;
    border-radius: 8px;
    background: var(--flight-yellow);
    color: var(--flight-dark);
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.flight-cta-btn:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .flight-hero h1 {
        font-size: 46px;
    }

    .flight-search-box {
        margin-top: 45px;
    }

    .flight-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .flight-image-wrapper {
        padding-right: 0;
    }

    .flight-intro-content h2 {
        font-size: 38px;
    }

    .flight-section-heading h2 {
        font-size: 37px;
    }

    .flight-why-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .flight-cta-box {
        padding: 45px;
    }

}


@media (max-width: 767px) {

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

    .flight-hero {
        padding: 20px 0 60px;
    }

    .flight-breadcrumb {
        margin-bottom: 35px;
    }

    .flight-hero h1 {
        font-size: 38px;
    }

    .flight-hero > .container > .row > .col-lg-6:first-child > p {
        font-size: 16px;
    }

    .flight-hero-points {
        gap: 7px;
    }

    .flight-search-box {
        margin-top: 35px;
        padding: 23px;
    }

    .flight-search-heading h3 {
        font-size: 21px;
    }

    .flight-trip-type {
        gap: 13px;
        flex-wrap: wrap;
    }

    .flight-intro-content h2 {
        font-size: 32px;
    }

    .flight-image-wrapper img {
        height: 320px;
    }

    .flight-floating-card {
        right: 10px;
        bottom: -20px;
    }

    .flight-services-section,
    .flight-why-section {
        padding: 65px 0;
    }

    .flight-section-heading {
        margin-bottom: 35px;
    }

    .flight-section-heading h2 {
        font-size: 31px;
    }

    .flight-section-heading p {
        font-size: 16px;
    }

    .flight-service-card {
        padding: 27px;
    }

    .flight-destination-card {
        height: 300px;
    }

    .flight-why-content h2 {
        font-size: 32px;
    }

    .flight-cta {
        padding: 50px 0;
    }

    .flight-cta-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .flight-cta-content h2 {
        font-size: 30px;
    }

    .flight-cta-btn {
        width: 100%;
    }

}


@media (max-width: 480px) {

    .flight-hero h1 {
        font-size: 33px;
    }

    .flight-search-box {
        padding: 20px;
    }

    .flight-search-heading {
        align-items: flex-start;
    }

    .flight-search-heading h3 {
        font-size: 19px;
    }

    .flight-search-icon {
        width: 45px;
        height: 45px;
        font-size: 21px;
    }

    .flight-intro-content h2 {
        font-size: 29px;
    }

    .flight-image-wrapper img {
        height: 280px;
    }

    .flight-section-heading h2 {
        font-size: 28px;
    }

    .flight-service-card h3 {
        font-size: 21px;
    }

    .flight-destination-card {
        height: 280px;
    }

    .flight-why-content h2 {
        font-size: 29px;
    }

    .flight-cta-content h2 {
        font-size: 27px;
    }

}

/* =========================================
   HOTEL BOOKING PAGE
========================================= */

:root {
    --hotel-blue: #082f63;
    --hotel-dark: #061f42;
    --hotel-yellow: #ffc21c;
    --hotel-text: #102846;
    --hotel-muted: #64748b;
    --hotel-light: #f6f8fc;
    --hotel-border: #dce4ef;
}


/* =========================================
   HERO
========================================= */

.hotel-hero {
    padding: 25px 0 80px;
    background:
        linear-gradient(
            135deg,
            #eef5ff 0%,
            #ffffff 55%,
            #fff8df 100%
        );
    overflow: hidden;
}

.hotel-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.hotel-breadcrumb a {
    color: var(--hotel-blue);
    text-decoration: none;
    font-weight: 600;
}

.hotel-tag,
.hotel-section-label {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-hero h1 {
    color: var(--hotel-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.hotel-hero h1 span {
    display: block;
    color: var(--hotel-yellow);
}

.hotel-hero > .container > .row > .col-lg-6:first-child > p {
    color: #52657c;
    max-width: 580px;
    font-size: 19px;
    line-height: 1.7;
}

.hotel-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.hotel-hero-points span {
    background: #fff;
    border: 1px solid var(--hotel-border);
    padding: 9px 14px;
    border-radius: 30px;
    color: var(--hotel-blue);
    font-size: 13px;
    font-weight: 600;
}


/* =========================================
   SEARCH BOX
========================================= */

.hotel-search-box {
    padding: 30px;
    background: #fff;
    border-radius: 20px;
    border: 1px solid var(--hotel-border);
    box-shadow: 0 20px 45px rgba(8,47,99,.12);
}

.hotel-search-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
}

.hotel-search-heading span {
    color: #bd8700;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-search-heading h3 {
    color: var(--hotel-dark);
    font-size: 24px;
    font-weight: 800;
    margin: 5px 0 0;
}

.hotel-search-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff3c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
}

.hotel-input {
    border: 1px solid var(--hotel-border);
    border-radius: 9px;
    padding: 10px 13px;
    transition: .3s ease;
    cursor: pointer;
    background: #fff;
}

.hotel-input:hover {
    border-color: var(--hotel-yellow);
}

.hotel-input label {
    display: block;
    color: #8794a5;
    font-size: 11px;
    margin-bottom: 5px;
}

.hotel-input-inner {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hotel-input-inner > span {
    font-size: 20px;
}

.hotel-input-inner strong {
    display: block;
    color: var(--hotel-dark);
    font-size: 14px;
}

.hotel-input-inner small {
    display: block;
    color: var(--hotel-muted);
    font-size: 11px;
    margin-top: 2px;
}

.hotel-destination-input {
    margin-bottom: 3px;
}

.hotel-search-btn {
    width: 100%;
    border: 0;
    margin-top: 20px;
    padding: 15px;
    border-radius: 8px;
    background: var(--hotel-blue);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.hotel-search-btn:hover {
    background: var(--hotel-yellow);
    color: var(--hotel-dark);
}


/* =========================================
   COMMON
========================================= */

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


/* =========================================
   INTRO
========================================= */

.hotel-intro {
    background: #fff;
}

.hotel-image-wrapper {
    position: relative;
    padding-right: 35px;
}

.hotel-image-wrapper img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.hotel-floating-card {
    position: absolute;
    right: 0;
    bottom: -25px;
    padding: 17px 25px;
    background: var(--hotel-yellow);
    color: var(--hotel-dark);
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.hotel-floating-card strong {
    font-size: 25px;
}

.hotel-floating-card span {
    font-size: 13px;
    font-weight: 600;
}

.hotel-intro-content {
    padding-left: 25px;
}

.hotel-intro-content h2 {
    color: var(--hotel-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 25px;
}

.hotel-intro-content h2 span {
    display: block;
    color: var(--hotel-yellow);
}

.hotel-intro-content p {
    color: var(--hotel-muted);
    font-size: 17px;
    line-height: 1.7;
}

.hotel-check-list {
    margin-top: 25px;
}

.hotel-check-list div {
    color: var(--hotel-text);
    font-weight: 600;
    margin-bottom: 13px;
}


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

.hotel-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.hotel-section-heading span {
    color: #bd8700;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-section-heading h2 {
    color: var(--hotel-dark);
    font-size: 43px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.hotel-section-heading p {
    color: var(--hotel-muted);
    font-size: 18px;
    max-width: 680px;
    margin: auto;
}


/* =========================================
   HOTEL SERVICES
========================================= */

.hotel-services-section {
    padding: 90px 0;
    background: var(--hotel-light);
}

.hotel-service-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--hotel-border);
    border-radius: 17px;
    transition: .3s ease;
}

.hotel-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--hotel-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.11);
}

.hotel-service-image {
    height: 230px;
    overflow: hidden;
}

.hotel-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.hotel-service-card:hover .hotel-service-image img {
    transform: scale(1.07);
}

.hotel-service-content {
    padding: 25px;
}

.hotel-service-content span {
    color: #bd8700;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-service-content h3 {
    color: var(--hotel-dark);
    font-size: 23px;
    font-weight: 800;
    margin: 7px 0 10px;
}

.hotel-service-content p {
    color: var(--hotel-muted);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 18px;
}

.hotel-service-content a {
    color: #b57d00;
    text-decoration: none;
    font-weight: 700;
}


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

.hotel-destinations {
    background: #fff;
}

.hotel-destination-card {
    height: 330px;
    border-radius: 17px;
    overflow: hidden;
    position: relative;
}

.hotel-destination-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(6,31,66,.85),
        rgba(6,31,66,0) 65%
    );
}

.hotel-destination-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.hotel-destination-card:hover img {
    transform: scale(1.07);
}

.hotel-destination-overlay {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 20px;
    z-index: 2;
    color: #fff;
}

.hotel-destination-overlay span {
    color: var(--hotel-yellow);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-destination-overlay h3 {
    font-size: 25px;
    font-weight: 800;
    margin: 4px 0;
}

.hotel-destination-overlay p {
    margin: 0;
    color: #e1e8f1;
    font-size: 13px;
}


/* =========================================
   WHY CHOOSE
========================================= */

.hotel-why-section {
    padding: 90px 0;
    background: var(--hotel-light);
}

.hotel-why-content {
    padding-right: 30px;
}

.hotel-why-content h2 {
    color: var(--hotel-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 15px 0 20px;
}

.hotel-why-content h2 span {
    display: block;
    color: var(--hotel-yellow);
}

.hotel-why-content p {
    color: var(--hotel-muted);
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 28px;
}

.hotel-feature-btn {
    display: inline-block;
    background: var(--hotel-blue);
    color: #fff;
    padding: 15px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.hotel-feature-btn:hover {
    background: var(--hotel-yellow);
    color: var(--hotel-dark);
}

.hotel-feature-box {
    height: 100%;
    padding: 28px;
    background: #fff;
    border: 1px solid var(--hotel-border);
    border-radius: 15px;
    transition: .3s ease;
}

.hotel-feature-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.hotel-feature-icon {
    width: 55px;
    height: 55px;
    background: #fff3c7;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin-bottom: 17px;
}

.hotel-feature-box h3 {
    color: var(--hotel-dark);
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

.hotel-feature-box p {
    color: var(--hotel-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.hotel-process {
    background: #fff;
}

.hotel-process-card {
    height: 100%;
    padding: 35px;
    background: var(--hotel-light);
    border: 1px solid var(--hotel-border);
    border-radius: 16px;
}

.hotel-process-number {
    color: var(--hotel-yellow);
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 20px;
}

.hotel-process-card h3 {
    color: var(--hotel-dark);
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 12px;
}

.hotel-process-card p {
    color: var(--hotel-muted);
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   CTA
========================================= */

.hotel-cta {
    padding: 70px 0;
    background: #fff;
}

.hotel-cta-box {
    position: relative;
    overflow: hidden;
    padding: 55px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.hotel-cta-box::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: var(--hotel-yellow);
    right: -140px;
    top: -150px;
    opacity: .13;
}

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

.hotel-cta-content span {
    color: var(--hotel-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.hotel-cta-content h2 {
    font-size: 38px;
    font-weight: 800;
    margin: 10px 0;
}

.hotel-cta-content p {
    color: #dce7f5;
    margin: 0;
    line-height: 1.6;
}

.hotel-cta-btn {
    position: relative;
    z-index: 1;
    min-width: 180px;
    text-align: center;
    padding: 15px 28px;
    border-radius: 8px;
    background: var(--hotel-yellow);
    color: var(--hotel-dark);
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.hotel-cta-btn:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .hotel-hero h1 {
        font-size: 46px;
    }

    .hotel-search-box {
        margin-top: 45px;
    }

    .hotel-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .hotel-image-wrapper {
        padding-right: 0;
    }

    .hotel-intro-content h2 {
        font-size: 38px;
    }

    .hotel-section-heading h2 {
        font-size: 37px;
    }

    .hotel-why-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .hotel-cta-box {
        padding: 45px;
    }

}


@media (max-width: 767px) {

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

    .hotel-hero {
        padding: 20px 0 60px;
    }

    .hotel-breadcrumb {
        margin-bottom: 35px;
    }

    .hotel-hero h1 {
        font-size: 38px;
    }

    .hotel-hero > .container > .row > .col-lg-6:first-child > p {
        font-size: 16px;
    }

    .hotel-search-box {
        margin-top: 35px;
        padding: 23px;
    }

    .hotel-search-heading h3 {
        font-size: 21px;
    }

    .hotel-intro-content h2 {
        font-size: 32px;
    }

    .hotel-image-wrapper img {
        height: 320px;
    }

    .hotel-floating-card {
        right: 10px;
        bottom: -20px;
    }

    .hotel-services-section,
    .hotel-why-section {
        padding: 65px 0;
    }

    .hotel-section-heading {
        margin-bottom: 35px;
    }

    .hotel-section-heading h2 {
        font-size: 31px;
    }

    .hotel-section-heading p {
        font-size: 16px;
    }

    .hotel-service-card {
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
    }

    .hotel-destination-card {
        height: 300px;
    }

    .hotel-why-content h2 {
        font-size: 32px;
    }

    .hotel-cta {
        padding: 50px 0;
    }

    .hotel-cta-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .hotel-cta-content h2 {
        font-size: 30px;
    }

    .hotel-cta-btn {
        width: 100%;
    }

}


@media (max-width: 480px) {

    .hotel-hero h1 {
        font-size: 33px;
    }

    .hotel-search-box {
        padding: 20px;
    }

    .hotel-search-heading h3 {
        font-size: 19px;
    }

    .hotel-search-icon {
        width: 45px;
        height: 45px;
        font-size: 21px;
    }

    .hotel-intro-content h2 {
        font-size: 29px;
    }

    .hotel-image-wrapper img {
        height: 280px;
    }

    .hotel-section-heading h2 {
        font-size: 28px;
    }

    .hotel-service-card h3 {
        font-size: 21px;
    }

    .hotel-destination-card {
        height: 280px;
    }

    .hotel-why-content h2 {
        font-size: 29px;
    }

    .hotel-cta-content h2 {
        font-size: 27px;
    }

}





/* =========================================
   BECOME A PARTNER PAGE
========================================= */

:root {
    --partner-blue: #082f63;
    --partner-dark: #061f42;
    --partner-yellow: #ffc21c;
    --partner-text: #102846;
    --partner-muted: #64748b;
    --partner-light: #f6f8fc;
    --partner-border: #dce4ef;
}


/* =========================================
   COMMON
========================================= */

.partner-hero,
.partner-types,
.partner-benefits,
.partner-process,
.partner-form-section,
.partner-final-cta {
    overflow: hidden;
}

.partner-hero .container,
.partner-types .container,
.partner-benefits .container,
.partner-process .container,
.partner-form-section .container,
.partner-final-cta .container {
    position: relative;
}

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


/* =========================================
   HERO
========================================= */

.partner-hero {
    padding: 25px 0 85px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 55%,
        #fff8df 100%
    );
}

.partner-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    font-size: 15px;
    color: #66758a;
}

.partner-breadcrumb a {
    color: var(--partner-blue);
    font-weight: 600;
    text-decoration: none;
}

.partner-tag,
.partner-section-label {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.partner-hero h1 {
    color: var(--partner-dark);
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 25px;
}

.partner-hero h1 span {
    display: block;
    color: var(--partner-yellow);
}

.partner-hero > .container > .row > .col-lg-6:first-child > p {
    max-width: 580px;
    color: var(--partner-muted);
    font-size: 18px;
    line-height: 1.75;
}

.partner-points {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.partner-points div {
    padding: 10px 15px;
    background: #fff;
    border: 1px solid var(--partner-border);
    border-radius: 30px;
    color: var(--partner-text);
    font-size: 13px;
    font-weight: 600;
}

.partner-points span {
    color: #c28b00;
    margin-right: 5px;
}


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

.partner-hero-card {
    margin-left: auto;
    max-width: 500px;
    padding: 42px;
    background: var(--partner-blue);
    border-radius: 22px;
    color: #fff;
    box-shadow: 0 25px 50px rgba(8,47,99,.18);
    position: relative;
    overflow: hidden;
}

.partner-hero-card::after {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    right: -100px;
    top: -100px;
    background: var(--partner-yellow);
    opacity: .15;
}

.partner-card-icon {
    width: 65px;
    height: 65px;
    background: var(--partner-yellow);
    color: var(--partner-dark);
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 31px;
    margin-bottom: 25px;
}

.partner-hero-card > span {
    color: var(--partner-yellow);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.partner-hero-card h3 {
    font-size: 31px;
    line-height: 1.2;
    font-weight: 800;
    margin: 12px 0 17px;
}

.partner-hero-card p {
    color: #d8e4f3;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 25px;
}

.partner-card-btn {
    display: inline-block;
    padding: 14px 23px;
    background: var(--partner-yellow);
    color: var(--partner-dark);
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    transition: .3s ease;
}

.partner-card-btn:hover {
    background: #fff;
    color: var(--partner-dark);
}


/* =========================================
   INTRO
========================================= */

.partner-intro {
    background: #fff;
}

.partner-image-wrap {
    position: relative;
    padding-right: 35px;
}

.partner-image-wrap img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 20px;
    display: block;
}

.partner-experience-card {
    position: absolute;
    right: 0;
    bottom: -22px;
    background: var(--partner-yellow);
    color: var(--partner-dark);
    border-radius: 12px;
    padding: 17px 22px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 12px 30px rgba(0,0,0,.15);
}

.partner-experience-card strong {
    font-size: 26px;
}

.partner-experience-card b,
.partner-experience-card small {
    display: block;
}

.partner-experience-card b {
    font-size: 14px;
}

.partner-experience-card small {
    font-size: 11px;
    margin-top: 3px;
}

.partner-intro-content {
    padding-left: 25px;
}

.partner-intro-content h2 {
    color: var(--partner-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 14px 0 23px;
}

.partner-intro-content h2 span {
    display: block;
    color: var(--partner-yellow);
}

.partner-intro-content p {
    color: var(--partner-muted);
    font-size: 16px;
    line-height: 1.75;
}

.partner-check-list {
    margin-top: 25px;
}

.partner-check-list div {
    margin-bottom: 13px;
    color: var(--partner-text);
    font-size: 15px;
    font-weight: 600;
}

.partner-check-list span {
    color: #bd8700;
    margin-right: 8px;
}


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

.partner-section-heading {
    text-align: center;
    margin-bottom: 55px;
}

.partner-section-heading span {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.partner-section-heading h2 {
    color: var(--partner-dark);
    font-size: 43px;
    line-height: 1.2;
    font-weight: 800;
    margin: 10px 0 13px;
}

.partner-section-heading p {
    max-width: 680px;
    margin: auto;
    color: var(--partner-muted);
    font-size: 17px;
    line-height: 1.7;
}


/* =========================================
   PARTNER TYPES
========================================= */

.partner-types {
    padding: 90px 0;
    background: var(--partner-light);
}

.partner-type-card {
    height: 100%;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--partner-border);
    border-radius: 17px;
    transition: .3s ease;
}

.partner-type-card:hover {
    transform: translateY(-7px);
    border-color: var(--partner-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.09);
}

.partner-type-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 13px;
    font-size: 27px;
    margin-bottom: 20px;
}

.partner-type-card h3 {
    color: var(--partner-dark);
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 11px;
}

.partner-type-card p {
    color: var(--partner-muted);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.partner-type-card a {
    color: #b27d00;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}


/* =========================================
   BENEFITS
========================================= */

.partner-benefits {
    background: #fff;
}

.partner-benefit-box {
    height: 100%;
    padding: 30px;
    border: 1px solid var(--partner-border);
    border-radius: 16px;
    background: #fff;
    transition: .3s ease;
}

.partner-benefit-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(8,47,99,.08);
}

.partner-benefit-number {
    color: var(--partner-yellow);
    font-size: 38px;
    line-height: 1;
    font-weight: 800;
    margin-bottom: 23px;
}

.partner-benefit-box h3 {
    color: var(--partner-dark);
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.partner-benefit-box p {
    color: var(--partner-muted);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.partner-process {
    padding: 90px 0;
    background: var(--partner-light);
}

.partner-process-card {
    height: 100%;
    padding: 35px;
    border-radius: 17px;
    background: #fff;
    border: 1px solid var(--partner-border);
    text-align: center;
}

.partner-process-icon {
    width: 65px;
    height: 65px;
    margin: 0 auto 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--partner-blue);
    color: var(--partner-yellow);
    font-size: 18px;
    font-weight: 800;
}

.partner-process-card h3 {
    color: var(--partner-dark);
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 12px;
}

.partner-process-card p {
    color: var(--partner-muted);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   FORM SECTION
========================================= */

.partner-form-section {
    padding: 90px 0;
    background: #fff;
}

.partner-form-content {
    padding-right: 35px;
}

.partner-form-content h2 {
    color: var(--partner-dark);
    font-size: 43px;
    line-height: 1.15;
    font-weight: 800;
    margin: 14px 0 20px;
}

.partner-form-content h2 span {
    display: block;
    color: var(--partner-yellow);
}

.partner-form-content > p {
    color: var(--partner-muted);
    font-size: 16px;
    line-height: 1.75;
}

.partner-contact-points {
    margin-top: 25px;
}

.partner-contact-points div {
    color: var(--partner-text);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 13px;
}

.partner-contact-points span {
    color: #b68100;
    margin-right: 8px;
}


/* CF7 WRAPPER */

.partner-form-box {
    padding: 35px;
    border-radius: 18px;
    background: var(--partner-light);
    border: 1px solid var(--partner-border);
}


/* =========================================
   CONTACT FORM 7 STYLING
========================================= */

.partner-form-box .wpcf7-form p {
    margin: 0;
}

.partner-form-box .wpcf7-form label {
    display: block;
    color: var(--partner-text);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
}

.partner-form-box .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 18px;
}

.partner-form-box input[type="text"],
.partner-form-box input[type="email"],
.partner-form-box input[type="tel"],
.partner-form-box input[type="url"],
.partner-form-box select,
.partner-form-box textarea {
    width: 100%;
    padding: 13px 15px;
    border: 1px solid var(--partner-border);
    border-radius: 8px;
    background: #fff;
    color: var(--partner-text);
    font-size: 14px;
    outline: none;
    transition: .3s ease;
    box-sizing: border-box;
}

.partner-form-box input:focus,
.partner-form-box select:focus,
.partner-form-box textarea:focus {
    border-color: var(--partner-yellow);
    box-shadow: 0 0 0 3px rgba(255,194,28,.12);
}

.partner-form-box textarea {
    min-height: 120px;
    resize: vertical;
}

.partner-form-box input[type="submit"] {
    width: 100%;
    padding: 14px 25px;
    border: 0;
    border-radius: 8px;
    background: var(--partner-blue);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.partner-form-box input[type="submit"]:hover {
    background: var(--partner-yellow);
    color: var(--partner-dark);
}

.partner-form-box .wpcf7-not-valid-tip {
    font-size: 11px;
    margin-top: 5px;
}

.partner-form-box .wpcf7-response-output {
    margin: 15px 0 0 !important;
    padding: 10px !important;
    border-radius: 7px;
    font-size: 13px;
}


/* =========================================
   FINAL CTA
========================================= */

.partner-final-cta {
    padding: 70px 0;
    background: #fff;
}

.partner-final-box {
    padding: 52px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    position: relative;
    overflow: hidden;
}

.partner-final-box::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    background: var(--partner-yellow);
    right: -150px;
    top: -170px;
    opacity: .13;
}

.partner-final-box > div {
    position: relative;
    z-index: 1;
}

.partner-final-box span {
    color: var(--partner-yellow);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.partner-final-box h2 {
    max-width: 700px;
    font-size: 35px;
    line-height: 1.25;
    font-weight: 800;
    margin: 10px 0 0;
}

.partner-final-box > a {
    position: relative;
    z-index: 1;
    min-width: 190px;
    padding: 15px 22px;
    text-align: center;
    background: var(--partner-yellow);
    color: var(--partner-dark);
    text-decoration: none;
    border-radius: 8px;
    font-weight: 700;
    transition: .3s ease;
}

.partner-final-box > a:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .partner-hero h1 {
        font-size: 47px;
    }

    .partner-hero-card {
        margin: 45px 0 0;
        max-width: none;
    }

    .partner-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .partner-image-wrap {
        padding-right: 0;
    }

    .partner-intro-content h2,
    .partner-form-content h2 {
        font-size: 38px;
    }

    .partner-section-heading h2 {
        font-size: 38px;
    }

    .partner-form-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .partner-final-box {
        padding: 45px;
    }

}


@media (max-width: 767px) {

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

    .partner-hero {
        padding: 20px 0 65px;
    }

    .partner-breadcrumb {
        margin-bottom: 35px;
    }

    .partner-hero h1 {
        font-size: 38px;
    }

    .partner-hero > .container > .row > .col-lg-6:first-child > p {
        font-size: 16px;
    }

    .partner-points {
        gap: 8px;
    }

    .partner-points div {
        font-size: 12px;
        padding: 8px 12px;
    }

    .partner-hero-card {
        padding: 30px;
    }

    .partner-hero-card h3 {
        font-size: 27px;
    }

    .partner-image-wrap img {
        height: 320px;
    }

    .partner-intro-content h2,
    .partner-form-content h2 {
        font-size: 32px;
    }

    .partner-section-heading {
        margin-bottom: 35px;
    }

    .partner-section-heading h2 {
        font-size: 31px;
    }

    .partner-section-heading p {
        font-size: 15px;
    }

    .partner-types,
    .partner-process,
    .partner-form-section {
        padding: 65px 0;
    }

    .partner-type-card,
    .partner-benefit-box {
        padding: 27px;
    }

    .partner-form-box {
        padding: 23px;
    }

    .partner-final-cta {
        padding: 50px 0;
    }

    .partner-final-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .partner-final-box h2 {
        font-size: 29px;
    }

    .partner-final-box > a {
        width: 100%;
    }

}


@media (max-width: 480px) {

    .partner-hero h1 {
        font-size: 33px;
    }

    .partner-hero-card {
        padding: 25px;
    }

    .partner-hero-card h3 {
        font-size: 24px;
    }

    .partner-image-wrap img {
        height: 280px;
    }

    .partner-experience-card {
        right: 8px;
        padding: 13px 16px;
    }

    .partner-intro-content h2,
    .partner-form-content h2 {
        font-size: 29px;
    }

    .partner-section-heading h2 {
        font-size: 28px;
    }

    .partner-final-box h2 {
        font-size: 26px;
    }

}



/* =========================================
   CORPORATE PARTNERSHIP PAGE
========================================= */

:root {
    --corp-blue: #082f63;
    --corp-dark: #061f42;
    --corp-yellow: #ffc21c;
    --corp-text: #102846;
    --corp-muted: #64748b;
    --corp-light: #f6f8fc;
    --corp-border: #dce4ef;
}

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


/* =========================================
   HERO
========================================= */

.corp-partner-hero {
    padding: 25px 0 85px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 55%,
        #fff8df 100%
    );
}

.corp-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    font-size: 15px;
    color: #66758a;
}

.corp-breadcrumb a {
    color: var(--corp-blue);
    text-decoration: none;
    font-weight: 600;
}

.corp-eyebrow {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.corp-partner-hero h1 {
    color: var(--corp-dark);
    font-size: 57px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 24px;
}

.corp-partner-hero h1 span {
    display: block;
    color: var(--corp-yellow);
}

.corp-partner-hero > .container > .row > .col-lg-6:first-child > p {
    max-width: 580px;
    color: var(--corp-muted);
    font-size: 18px;
    line-height: 1.75;
}

.corp-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 28px;
}

.corp-btn-primary,
.corp-btn-outline {
    display: inline-block;
    padding: 14px 21px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.corp-btn-primary {
    background: var(--corp-blue);
    color: #fff;
}

.corp-btn-primary:hover {
    background: var(--corp-yellow);
    color: var(--corp-dark);
}

.corp-btn-outline {
    border: 1px solid var(--corp-blue);
    color: var(--corp-blue);
}

.corp-btn-outline:hover {
    background: var(--corp-blue);
    color: #fff;
}


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

.corp-hero-card {
    max-width: 510px;
    margin-left: auto;
    padding: 40px;
    background: var(--corp-blue);
    border-radius: 22px;
    color: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 55px rgba(8,47,99,.18);
}

.corp-hero-card::after {
    content: "";
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: var(--corp-yellow);
    position: absolute;
    top: -140px;
    right: -110px;
    opacity: .14;
}

.corp-card-top {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 27px;
}

.corp-card-icon {
    width: 62px;
    height: 62px;
    border-radius: 14px;
    background: var(--corp-yellow);
    color: var(--corp-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 29px;
}

.corp-card-top > span {
    color: var(--corp-yellow);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-hero-card h3 {
    max-width: 400px;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 800;
    margin-bottom: 17px;
}

.corp-hero-card p {
    color: #d6e3f3;
    font-size: 15px;
    line-height: 1.7;
}

.corp-mini-stats {
    display: flex;
    gap: 0;
    margin-top: 30px;
    border-top: 1px solid rgba(255,255,255,.18);
    padding-top: 22px;
}

.corp-mini-stats div {
    width: 33.33%;
    border-right: 1px solid rgba(255,255,255,.18);
    padding-left: 18px;
}

.corp-mini-stats div:first-child {
    padding-left: 0;
}

.corp-mini-stats div:last-child {
    border-right: 0;
}

.corp-mini-stats strong,
.corp-mini-stats small {
    display: block;
}

.corp-mini-stats strong {
    color: var(--corp-yellow);
    font-size: 23px;
}

.corp-mini-stats small {
    margin-top: 3px;
    color: #d6e3f3;
    font-size: 11px;
}


/* =========================================
   INTRO
========================================= */

.corp-intro {
    background: #fff;
}

.corp-image-wrap {
    padding-right: 35px;
    position: relative;
}

.corp-image-wrap img {
    width: 100%;
    height: 460px;
    display: block;
    object-fit: cover;
    border-radius: 20px;
}

.corp-floating-card {
    position: absolute;
    right: 0;
    bottom: -20px;
    padding: 18px 23px;
    background: var(--corp-yellow);
    border-radius: 12px;
    color: var(--corp-dark);
    box-shadow: 0 15px 35px rgba(0,0,0,.15);
}

.corp-floating-card span,
.corp-floating-card strong,
.corp-floating-card small {
    display: block;
}

.corp-floating-card span {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.corp-floating-card strong {
    font-size: 20px;
    margin-top: 5px;
}

.corp-floating-card small {
    font-size: 12px;
}

.corp-intro-content {
    padding-left: 25px;
}

.corp-section-label {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-intro-content h2 {
    color: var(--corp-dark);
    font-size: 42px;
    line-height: 1.17;
    font-weight: 800;
    margin: 13px 0 22px;
}

.corp-intro-content h2 span {
    display: block;
    color: var(--corp-yellow);
}

.corp-intro-content p {
    color: var(--corp-muted);
    font-size: 16px;
    line-height: 1.75;
}

.corp-check-list {
    margin-top: 25px;
}

.corp-check-list div {
    color: var(--corp-text);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 12px;
}

.corp-check-list span {
    color: #b68100;
    margin-right: 8px;
}


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

.corp-section-heading {
    text-align: center;
    max-width: 780px;
    margin: 0 auto 55px;
}

.corp-section-heading > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-section-heading h2 {
    color: var(--corp-dark);
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
    margin: 10px 0 14px;
}

.corp-section-heading h2 span {
    color: var(--corp-yellow);
}

.corp-section-heading p {
    color: var(--corp-muted);
    font-size: 16px;
    line-height: 1.7;
    margin: 0 auto;
}


/* =========================================
   SERVICES
========================================= */

.corp-services {
    padding: 90px 0;
    background: var(--corp-light);
}

.corp-service-card {
    height: 100%;
    padding: 30px;
    background: #fff;
    border: 1px solid var(--corp-border);
    border-radius: 17px;
    position: relative;
    transition: .3s ease;
}

.corp-service-card:hover {
    transform: translateY(-7px);
    border-color: var(--corp-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.09);
}

.corp-service-number {
    position: absolute;
    top: 25px;
    right: 25px;
    color: #d9e3ef;
    font-size: 28px;
    font-weight: 800;
}

.corp-service-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 13px;
    font-size: 26px;
    margin-bottom: 21px;
}

.corp-service-card h3 {
    color: var(--corp-dark);
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 11px;
}

.corp-service-card p {
    color: var(--corp-muted);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.corp-service-card a {
    color: #ae7b00;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
}


/* =========================================
   BENEFITS
========================================= */

.corp-benefits {
    background: #fff;
}

.corp-benefit-box {
    height: 100%;
    padding: 30px;
    border: 1px solid var(--corp-border);
    border-radius: 16px;
    transition: .3s ease;
}

.corp-benefit-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(8,47,99,.08);
}

.corp-benefit-icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: #fff4ca;
    font-size: 25px;
    margin-bottom: 20px;
}

.corp-benefit-box h3 {
    color: var(--corp-dark);
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.corp-benefit-box p {
    color: var(--corp-muted);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   USE CASES
========================================= */

.corp-usecases {
    padding: 90px 0;
    background: var(--corp-light);
}

.corp-usecase-heading {
    padding-right: 35px;
}

.corp-usecase-heading > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-usecase-heading h2 {
    color: var(--corp-dark);
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
    margin: 13px 0 18px;
}

.corp-usecase-heading h2 span {
    color: var(--corp-yellow);
    display: block;
}

.corp-usecase-heading p {
    color: var(--corp-muted);
    font-size: 15px;
    line-height: 1.75;
}

.corp-usecase-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.corp-usecase {
    display: flex;
    gap: 18px;
    padding: 25px;
    background: #fff;
    border: 1px solid var(--corp-border);
    border-radius: 15px;
}

.corp-usecase > span {
    color: var(--corp-yellow);
    font-size: 20px;
    font-weight: 800;
}

.corp-usecase h3 {
    color: var(--corp-dark);
    font-size: 17px;
    font-weight: 800;
    margin: 0 0 7px;
}

.corp-usecase p {
    color: var(--corp-muted);
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.corp-process {
    background: #fff;
}

.corp-process-card {
    height: 100%;
    padding: 35px;
    text-align: center;
    border: 1px solid var(--corp-border);
    border-radius: 17px;
}

.corp-process-number {
    width: 65px;
    height: 65px;
    margin: 0 auto 22px;
    border-radius: 50%;
    background: var(--corp-blue);
    color: var(--corp-yellow);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 800;
}

.corp-process-card h3 {
    color: var(--corp-dark);
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 12px;
}

.corp-process-card p {
    color: var(--corp-muted);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   ENQUIRY
========================================= */

.corp-enquiry {
    padding: 90px 0;
    background: linear-gradient(
        135deg,
        #eef5ff,
        #fff
    );
}

.corp-enquiry-content {
    padding-right: 35px;
}

.corp-enquiry-content > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-enquiry-content h2 {
    color: var(--corp-dark);
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    margin: 13px 0 20px;
}

.corp-enquiry-content h2 span {
    display: block;
    color: var(--corp-yellow);
}

.corp-enquiry-content > p {
    color: var(--corp-muted);
    font-size: 16px;
    line-height: 1.75;
}

.corp-enquiry-points {
    margin-top: 25px;
}

.corp-enquiry-points div {
    margin-bottom: 13px;
    color: var(--corp-text);
    font-size: 14px;
    font-weight: 600;
}

.corp-enquiry-points b {
    color: #b68100;
    margin-right: 8px;
}


/* =========================================
   CONTACT FORM 7
========================================= */

.corp-form-box {
    padding: 35px;
    background: #fff;
    border: 1px solid var(--corp-border);
    border-radius: 18px;
    box-shadow: 0 15px 40px rgba(8,47,99,.06);
}

.corp-form-box .wpcf7-form p {
    margin: 0;
}

.corp-form-box label {
    display: block;
    color: var(--corp-text);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
}

.corp-form-box .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 17px;
}

.corp-form-box input[type="text"],
.corp-form-box input[type="email"],
.corp-form-box input[type="tel"],
.corp-form-box input[type="url"],
.corp-form-box select,
.corp-form-box textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 15px;
    border: 1px solid var(--corp-border);
    border-radius: 8px;
    background: #fff;
    color: var(--corp-text);
    font-size: 14px;
    outline: none;
    transition: .3s ease;
}

.corp-form-box input:focus,
.corp-form-box select:focus,
.corp-form-box textarea:focus {
    border-color: var(--corp-yellow);
    box-shadow: 0 0 0 3px rgba(255,194,28,.12);
}

.corp-form-box textarea {
    min-height: 115px;
    resize: vertical;
}

.corp-form-box input[type="submit"] {
    width: 100%;
    padding: 14px 20px;
    border: 0;
    border-radius: 8px;
    background: var(--corp-blue);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.corp-form-box input[type="submit"]:hover {
    background: var(--corp-yellow);
    color: var(--corp-dark);
}

.corp-form-box .wpcf7-not-valid-tip {
    font-size: 11px;
    margin-top: 4px;
}

.corp-form-box .wpcf7-response-output {
    margin: 15px 0 0 !important;
    padding: 10px !important;
    border-radius: 7px;
    font-size: 12px;
}


/* =========================================
   FINAL CTA
========================================= */

.corp-final-cta {
    padding: 70px 0;
    background: #fff;
}

.corp-final-box {
    padding: 52px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    position: relative;
    overflow: hidden;
}

.corp-final-box::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    right: -150px;
    top: -170px;
    background: var(--corp-yellow);
    opacity: .13;
}

.corp-final-box > div {
    position: relative;
    z-index: 1;
}

.corp-final-box span {
    color: var(--corp-yellow);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.corp-final-box h2 {
    max-width: 680px;
    font-size: 35px;
    line-height: 1.25;
    font-weight: 800;
    margin: 10px 0 0;
}

.corp-final-box > a {
    min-width: 190px;
    padding: 15px 20px;
    text-align: center;
    background: var(--corp-yellow);
    color: var(--corp-dark);
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    position: relative;
    z-index: 1;
    transition: .3s ease;
}

.corp-final-box > a:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .corp-partner-hero h1 {
        font-size: 47px;
    }

    .corp-hero-card {
        max-width: none;
        margin-top: 45px;
    }

    .corp-image-wrap {
        padding-right: 0;
    }

    .corp-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .corp-usecase-heading {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .corp-enquiry-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .corp-final-box {
        padding: 45px;
    }
}


@media (max-width: 767px) {

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

    .corp-partner-hero {
        padding: 20px 0 65px;
    }

    .corp-breadcrumb {
        margin-bottom: 35px;
    }

    .corp-partner-hero h1 {
        font-size: 37px;
    }

    .corp-partner-hero > .container > .row > .col-lg-6:first-child > p {
        font-size: 16px;
    }

    .corp-hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .corp-btn-primary,
    .corp-btn-outline {
        text-align: center;
    }

    .corp-hero-card {
        padding: 30px;
    }

    .corp-hero-card h3 {
        font-size: 27px;
    }

    .corp-image-wrap img {
        height: 320px;
    }

    .corp-intro-content h2,
    .corp-enquiry-content h2 {
        font-size: 32px;
    }

    .corp-section-heading {
        margin-bottom: 35px;
    }

    .corp-section-heading h2 {
        font-size: 31px;
    }

    .corp-services,
    .corp-usecases,
    .corp-enquiry {
        padding: 65px 0;
    }

    .corp-usecase-grid {
        grid-template-columns: 1fr;
    }

    .corp-form-box {
        padding: 24px;
    }

    .corp-final-cta {
        padding: 50px 0;
    }

    .corp-final-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .corp-final-box h2 {
        font-size: 28px;
    }

    .corp-final-box > a {
        width: 100%;
    }
}


@media (max-width: 480px) {

    .corp-partner-hero h1 {
        font-size: 32px;
    }

    .corp-hero-card {
        padding: 25px;
    }

    .corp-hero-card h3 {
        font-size: 24px;
    }

    .corp-image-wrap img {
        height: 280px;
    }

    .corp-floating-card {
        right: 8px;
        padding: 14px 16px;
    }

    .corp-intro-content h2,
    .corp-enquiry-content h2 {
        font-size: 29px;
    }

    .corp-section-heading h2 {
        font-size: 28px;
    }

    .corp-final-box h2 {
        font-size: 25px;
    }
}



/* =========================================
   CAREERS PAGE
========================================= */

:root {
    --career-blue: #082f63;
    --career-dark: #061f42;
    --career-yellow: #ffc21c;
    --career-text: #102846;
    --career-muted: #64748b;
    --career-light: #f6f8fc;
    --career-border: #dce4ef;
}

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


/* =========================================
   HERO
========================================= */

.career-hero {
    padding: 25px 0 85px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 55%,
        #fff8df 100%
    );
}

.career-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.career-breadcrumb a {
    color: var(--career-blue);
    text-decoration: none;
    font-weight: 600;
}

.career-eyebrow {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.career-hero h1 {
    color: var(--career-dark);
    font-size: 57px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 23px;
}

.career-hero h1 span {
    display: block;
    color: var(--career-yellow);
}

.career-hero > .container > .row > .col-lg-6:first-child > p {
    max-width: 570px;
    color: var(--career-muted);
    font-size: 18px;
    line-height: 1.75;
}

.career-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 28px;
}

.career-btn-primary,
.career-btn-outline {
    display: inline-block;
    padding: 14px 21px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: .3s ease;
}

.career-btn-primary {
    background: var(--career-blue);
    color: #fff;
}

.career-btn-primary:hover {
    background: var(--career-yellow);
    color: var(--career-dark);
}

.career-btn-outline {
    border: 1px solid var(--career-blue);
    color: var(--career-blue);
}

.career-btn-outline:hover {
    background: var(--career-blue);
    color: #fff;
}


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

.career-hero-card {
    max-width: 510px;
    margin-left: auto;
    padding: 40px;
    background: var(--career-blue);
    color: #fff;
    border-radius: 22px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 55px rgba(8,47,99,.18);
}

.career-hero-card::after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: var(--career-yellow);
    right: -110px;
    top: -130px;
    opacity: .14;
}

.career-hero-icon {
    width: 65px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--career-yellow);
    color: var(--career-dark);
    border-radius: 15px;
    font-size: 29px;
    margin-bottom: 25px;
}

.career-hero-card > span {
    color: var(--career-yellow);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-hero-card h3 {
    max-width: 410px;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 800;
    margin: 13px 0 17px;
}

.career-hero-card p {
    color: #d6e3f3;
    font-size: 15px;
    line-height: 1.7;
}

.career-card-line {
    height: 1px;
    background: rgba(255,255,255,.18);
    margin: 28px 0 20px;
}

.career-card-bottom {
    display: flex;
    gap: 45px;
}

.career-card-bottom strong,
.career-card-bottom small {
    display: block;
}

.career-card-bottom strong {
    color: var(--career-yellow);
    font-size: 15px;
}

.career-card-bottom small {
    color: #d6e3f3;
    font-size: 11px;
    margin-top: 3px;
}


/* =========================================
   INTRO
========================================= */

.career-intro {
    background: #fff;
}

.career-image-wrap {
    padding-right: 35px;
    position: relative;
}

.career-image-wrap img {
    width: 100%;
    height: 460px;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.career-floating-card {
    position: absolute;
    right: 0;
    bottom: -20px;
    padding: 18px 23px;
    background: var(--career-yellow);
    color: var(--career-dark);
    border-radius: 12px;
    box-shadow: 0 15px 35px rgba(0,0,0,.15);
}

.career-floating-card span,
.career-floating-card strong {
    display: block;
}

.career-floating-card span {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.career-floating-card strong {
    font-size: 18px;
    margin-top: 5px;
}

.career-intro-content {
    padding-left: 25px;
}

.career-section-label {
    color: #b68100;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-intro-content h2 {
    color: var(--career-dark);
    font-size: 42px;
    line-height: 1.17;
    font-weight: 800;
    margin: 13px 0 22px;
}

.career-intro-content h2 span {
    display: block;
    color: var(--career-yellow);
}

.career-intro-content p {
    color: var(--career-muted);
    font-size: 16px;
    line-height: 1.75;
}

.career-check-list {
    margin-top: 25px;
}

.career-check-list div {
    color: var(--career-text);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 12px;
}

.career-check-list span {
    color: #b68100;
    margin-right: 8px;
}


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

.career-section-heading {
    max-width: 760px;
    text-align: center;
    margin: 0 auto 55px;
}

.career-section-heading > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-section-heading h2 {
    color: var(--career-dark);
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
    margin: 10px 0 14px;
}

.career-section-heading h2 span {
    color: var(--career-yellow);
}

.career-section-heading p {
    color: var(--career-muted);
    font-size: 16px;
    line-height: 1.7;
}


/* =========================================
   BENEFITS
========================================= */

.career-benefits {
    padding: 90px 0;
    background: var(--career-light);
}

.career-benefit-card {
    height: 100%;
    padding: 30px;
    background: #fff;
    border: 1px solid var(--career-border);
    border-radius: 16px;
    transition: .3s ease;
}

.career-benefit-card:hover {
    transform: translateY(-7px);
    border-color: var(--career-yellow);
    box-shadow: 0 18px 40px rgba(8,47,99,.09);
}

.career-benefit-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 13px;
    font-size: 25px;
    margin-bottom: 20px;
}

.career-benefit-card h3 {
    color: var(--career-dark);
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.career-benefit-card p {
    color: var(--career-muted);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   JOB OPENINGS
========================================= */

.career-openings {
    background: #fff;
}

.career-job-list {
    max-width: 1000px;
    margin: auto;
}

.career-job-card {
    padding: 24px 27px;
    margin-bottom: 17px;
    border: 1px solid var(--career-border);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    transition: .3s ease;
}

.career-job-card:hover {
    border-color: var(--career-yellow);
    box-shadow: 0 12px 30px rgba(8,47,99,.07);
}

.career-job-info {
    display: flex;
    align-items: center;
    gap: 18px;
}

.career-job-icon {
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 12px;
    font-size: 24px;
}

.career-job-info h3 {
    color: var(--career-dark);
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 8px;
}

.career-job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.career-job-meta span {
    color: var(--career-muted);
    font-size: 12px;
}

.career-job-btn {
    flex-shrink: 0;
    padding: 12px 19px;
    background: var(--career-blue);
    color: #fff;
    text-decoration: none;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 700;
    transition: .3s ease;
}

.career-job-btn:hover {
    background: var(--career-yellow);
    color: var(--career-dark);
}


/* =========================================
   CULTURE
========================================= */

.career-culture {
    padding: 90px 0;
    background: var(--career-light);
}

.career-culture-content {
    padding-right: 35px;
}

.career-culture-content > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-culture-content h2 {
    color: var(--career-dark);
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
    margin: 13px 0 18px;
}

.career-culture-content h2 span {
    display: block;
    color: var(--career-yellow);
}

.career-culture-content p {
    color: var(--career-muted);
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 27px;
}

.career-culture-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.career-culture-item {
    padding: 25px;
    background: #fff;
    border: 1px solid var(--career-border);
    border-radius: 15px;
}

.career-culture-item strong {
    color: var(--career-yellow);
    font-size: 20px;
}

.career-culture-item h3 {
    color: var(--career-dark);
    font-size: 17px;
    font-weight: 800;
    margin: 8px 0;
}

.career-culture-item p {
    color: var(--career-muted);
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   PROCESS
========================================= */

.career-process {
    background: #fff;
}

.career-process-card {
    height: 100%;
    text-align: center;
    padding: 32px 25px;
    border: 1px solid var(--career-border);
    border-radius: 16px;
}

.career-process-number {
    width: 62px;
    height: 62px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--career-blue);
    color: var(--career-yellow);
    border-radius: 50%;
    font-size: 17px;
    font-weight: 800;
}

.career-process-card h3 {
    color: var(--career-dark);
    font-size: 19px;
    font-weight: 800;
    margin-bottom: 10px;
}

.career-process-card p {
    color: var(--career-muted);
    font-size: 13px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   APPLY SECTION
========================================= */

.career-apply {
    padding: 90px 0;
    background: linear-gradient(
        135deg,
        #eef5ff,
        #fff
    );
}

.career-apply-content {
    padding-right: 35px;
}

.career-apply-content > span {
    color: #b68100;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-apply-content h2 {
    color: var(--career-dark);
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    margin: 13px 0 20px;
}

.career-apply-content h2 span {
    display: block;
    color: var(--career-yellow);
}

.career-apply-content > p {
    color: var(--career-muted);
    font-size: 16px;
    line-height: 1.75;
}

.career-apply-points {
    margin-top: 25px;
}

.career-apply-points div {
    color: var(--career-text);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 13px;
}

.career-apply-points b {
    color: #b68100;
    margin-right: 8px;
}


/* =========================================
   CONTACT FORM 7
========================================= */

.career-form-box {
    padding: 35px;
    background: #fff;
    border: 1px solid var(--career-border);
    border-radius: 18px;
    box-shadow: 0 15px 40px rgba(8,47,99,.06);
}

.career-form-box .wpcf7-form p {
    margin: 0;
}

.career-form-box label {
    display: block;
    color: var(--career-text);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
}

.career-form-box .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 17px;
}

.career-form-box input[type="text"],
.career-form-box input[type="email"],
.career-form-box input[type="tel"],
.career-form-box select,
.career-form-box textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 15px;
    border: 1px solid var(--career-border);
    border-radius: 8px;
    background: #fff;
    color: var(--career-text);
    font-size: 14px;
    outline: none;
    transition: .3s ease;
}

.career-form-box input:focus,
.career-form-box select:focus,
.career-form-box textarea:focus {
    border-color: var(--career-yellow);
    box-shadow: 0 0 0 3px rgba(255,194,28,.12);
}

.career-form-box textarea {
    min-height: 110px;
    resize: vertical;
}

.career-form-box input[type="file"] {
    width: 100%;
    padding: 10px;
    border: 1px dashed var(--career-border);
    border-radius: 8px;
    font-size: 13px;
}

.career-form-box input[type="submit"] {
    width: 100%;
    padding: 14px 20px;
    border: 0;
    border-radius: 8px;
    background: var(--career-blue);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.career-form-box input[type="submit"]:hover {
    background: var(--career-yellow);
    color: var(--career-dark);
}

.career-form-box .wpcf7-not-valid-tip {
    font-size: 11px;
    margin-top: 4px;
}

.career-form-box .wpcf7-response-output {
    margin: 15px 0 0 !important;
    padding: 10px !important;
    border-radius: 7px;
    font-size: 12px;
}


/* =========================================
   FINAL CTA
========================================= */

.career-final-cta {
    padding: 70px 0;
    background: #fff;
}

.career-final-box {
    padding: 52px 60px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    color: #fff;
    border-radius: 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    overflow: hidden;
    position: relative;
}

.career-final-box::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    right: -150px;
    top: -170px;
    background: var(--career-yellow);
    opacity: .13;
}

.career-final-box > div {
    position: relative;
    z-index: 1;
}

.career-final-box span {
    color: var(--career-yellow);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.career-final-box h2 {
    max-width: 650px;
    font-size: 35px;
    line-height: 1.25;
    font-weight: 800;
    margin: 10px 0 0;
}

.career-final-box > a {
    min-width: 170px;
    padding: 15px 20px;
    background: var(--career-yellow);
    color: var(--career-dark);
    text-align: center;
    text-decoration: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    position: relative;
    z-index: 1;
    transition: .3s ease;
}

.career-final-box > a:hover {
    background: #fff;
}


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

@media (max-width: 991px) {

    .career-hero h1 {
        font-size: 47px;
    }

    .career-hero-card {
        max-width: none;
        margin-top: 45px;
    }

    .career-image-wrap {
        padding-right: 0;
    }

    .career-intro-content {
        padding-left: 0;
        margin-top: 60px;
    }

    .career-culture-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .career-apply-content {
        padding-right: 0;
        margin-bottom: 45px;
    }

    .career-final-box {
        padding: 45px;
    }
}


@media (max-width: 767px) {

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

    .career-hero {
        padding: 20px 0 65px;
    }

    .career-breadcrumb {
        margin-bottom: 35px;
    }

    .career-hero h1 {
        font-size: 37px;
    }

    .career-hero > .container > .row > .col-lg-6:first-child > p {
        font-size: 16px;
    }

    .career-hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .career-btn-primary,
    .career-btn-outline {
        text-align: center;
    }

    .career-hero-card {
        padding: 30px;
    }

    .career-hero-card h3 {
        font-size: 27px;
    }

    .career-image-wrap img {
        height: 320px;
    }

    .career-intro-content h2,
    .career-apply-content h2 {
        font-size: 32px;
    }

    .career-section-heading {
        margin-bottom: 35px;
    }

    .career-section-heading h2 {
        font-size: 31px;
    }

    .career-benefits,
    .career-culture,
    .career-apply {
        padding: 65px 0;
    }

    .career-job-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .career-job-btn {
        width: 100%;
        text-align: center;
    }

    .career-culture-grid {
        grid-template-columns: 1fr;
    }

    .career-form-box {
        padding: 24px;
    }

    .career-final-cta {
        padding: 50px 0;
    }

    .career-final-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .career-final-box h2 {
        font-size: 28px;
    }

    .career-final-box > a {
        width: 100%;
    }
}


@media (max-width: 480px) {

    .career-hero h1 {
        font-size: 32px;
    }

    .career-hero-card {
        padding: 25px;
    }

    .career-hero-card h3 {
        font-size: 24px;
    }

    .career-image-wrap img {
        height: 280px;
    }

    .career-floating-card {
        right: 8px;
        padding: 14px 16px;
    }

    .career-intro-content h2,
    .career-apply-content h2 {
        font-size: 29px;
    }

    .career-section-heading h2 {
        font-size: 28px;
    }

    .career-job-info {
        align-items: flex-start;
    }

    .career-job-meta {
        gap: 8px;
        flex-direction: column;
    }

    .career-final-box h2 {
        font-size: 25px;
    }
}


/* =========================================
   CONTACT US PAGE
========================================= */

:root {
    --contact-blue: #082f63;
    --contact-dark: #061f42;
    --contact-yellow: #ffc21c;
    --contact-text: #102846;
    --contact-muted: #64748b;
    --contact-light: #f6f8fc;
    --contact-border: #dce4ef;
}

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


/* =========================================
   HERO
========================================= */

.contact-hero {
    padding: 25px 0 85px;
    background: linear-gradient(
        135deg,
        #eef5ff 0%,
        #ffffff 58%,
        #fff8df 100%
    );
}

.contact-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 55px;
    color: #66758a;
    font-size: 15px;
}

.contact-breadcrumb a {
    color: var(--contact-blue);
    text-decoration: none;
    font-weight: 600;
}

.contact-eyebrow {
    color: #b68100;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.3px;
}

.contact-hero h1 {
    color: var(--contact-dark);
    font-size: 57px;
    line-height: 1.1;
    font-weight: 800;
    margin: 15px 0 22px;
}

.contact-hero h1 span {
    display: block;
    color: var(--contact-yellow);
}

.contact-hero p {
    max-width: 620px;
    color: var(--contact-muted);
    font-size: 18px;
    line-height: 1.75;
    margin: 0;
}


/* HERO CARD */

.contact-hero-card {
    padding: 38px;
    background: var(--contact-blue);
    border-radius: 22px;
    color: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 55px rgba(8,47,99,.18);
}

.contact-hero-card::after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    right: -100px;
    top: -130px;
    background: var(--contact-yellow);
    opacity: .13;
}

.contact-hero-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--contact-yellow);
    color: var(--contact-dark);
    border-radius: 15px;
    font-size: 28px;
    margin-bottom: 23px;
}

.contact-hero-card > span {
    color: var(--contact-yellow);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-hero-card h3 {
    font-size: 31px;
    line-height: 1.2;
    font-weight: 800;
    margin: 12px 0 15px;
}

.contact-hero-card p {
    color: #d5e2f1;
    font-size: 14px;
    line-height: 1.7;
}


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

.contact-info-section {
    padding: 0 0 20px;
    margin-top: -35px;
    position: relative;
    z-index: 3;
}

.contact-info-card {
    height: 100%;
    min-height: 120px;
    padding: 24px;
    background: #fff;
    border: 1px solid var(--contact-border);
    border-radius: 14px;
    display: flex;
    align-items: center;
    gap: 17px;
    box-shadow: 0 12px 30px rgba(8,47,99,.07);
}

.contact-info-icon {
    width: 53px;
    height: 53px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 12px;
    color: var(--contact-dark);
    font-size: 22px;
}

.contact-info-card span {
    display: block;
    color: #b68100;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

.contact-info-card h3 {
    color: var(--contact-dark);
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 5px;
}

.contact-info-card p {
    color: var(--contact-muted);
    font-size: 11px;
    margin: 0;
}


/* =========================================
   MAIN CONTACT
========================================= */

.contact-main {
    background: #fff;
}

.contact-section-label {
    color: #b68100;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-content h2 {
    color: var(--contact-dark);
    font-size: 42px;
    line-height: 1.18;
    font-weight: 800;
    margin: 13px 0 20px;
}

.contact-content h2 span {
    display: block;
    color: var(--contact-yellow);
}

.contact-content > p {
    color: var(--contact-muted);
    font-size: 16px;
    line-height: 1.75;
    max-width: 500px;
}


/* DETAILS */

.contact-detail-list {
    margin-top: 30px;
}

.contact-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 22px;
}

.contact-detail-icon {
    width: 31px;
    height: 31px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    color: #a67500;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 800;
}

.contact-detail-item strong {
    color: var(--contact-dark);
    font-size: 15px;
    display: block;
    margin-bottom: 5px;
}

.contact-detail-item p {
    color: var(--contact-muted);
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}


/* =========================================
   FORM
========================================= */

.contact-form-box {
    padding: 38px;
    background: #fff;
    border: 1px solid var(--contact-border);
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(8,47,99,.07);
}

.contact-form-heading {
    margin-bottom: 25px;
}

.contact-form-heading > span {
    color: #b68100;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-form-heading h3 {
    color: var(--contact-dark);
    font-size: 27px;
    font-weight: 800;
    margin: 7px 0 7px;
}

.contact-form-heading p {
    color: var(--contact-muted);
    font-size: 13px;
    margin: 0;
}


/* CF7 */

.contact-form-box .wpcf7-form p {
    margin: 0;
}

.contact-form-box label {
    display: block;
    color: var(--contact-text);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
}

.contact-form-box .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 16px;
}

.contact-form-box input[type="text"],
.contact-form-box input[type="email"],
.contact-form-box input[type="tel"],
.contact-form-box select,
.contact-form-box textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 14px;
    background: #fff;
    border: 1px solid var(--contact-border);
    border-radius: 8px;
    color: var(--contact-text);
    font-size: 14px;
    outline: none;
    transition: .3s ease;
}

.contact-form-box input:focus,
.contact-form-box select:focus,
.contact-form-box textarea:focus {
    border-color: var(--contact-yellow);
    box-shadow: 0 0 0 3px rgba(255,194,28,.12);
}

.contact-form-box textarea {
    min-height: 125px;
    resize: vertical;
}

.contact-form-box input[type="submit"] {
    width: 100%;
    padding: 14px 20px;
    background: var(--contact-blue);
    border: 0;
    border-radius: 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: .3s ease;
}

.contact-form-box input[type="submit"]:hover {
    background: var(--contact-yellow);
    color: var(--contact-dark);
}

.contact-form-box .wpcf7-not-valid-tip {
    font-size: 11px;
    margin-top: 4px;
}

.contact-form-box .wpcf7-response-output {
    margin: 15px 0 0 !important;
    padding: 10px !important;
    border-radius: 7px;
    font-size: 12px;
}


/* =========================================
   MAP
========================================= */

.contact-map-section {
    padding: 85px 0;
    background: var(--contact-light);
}

.contact-section-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 40px;
}

.contact-section-heading > span {
    color: #b68100;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-section-heading h2 {
    color: var(--contact-dark);
    font-size: 40px;
    font-weight: 800;
    margin: 10px 0 12px;
}

.contact-section-heading h2 span {
    color: var(--contact-yellow);
}

.contact-section-heading p {
    color: var(--contact-muted);
    font-size: 15px;
}

.contact-map-wrapper {
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid var(--contact-border);
    box-shadow: 0 15px 40px rgba(8,47,99,.08);
}

.contact-map-wrapper iframe {
    display: block;
}


/* =========================================
   SERVICES
========================================= */

.contact-services {
    padding: 90px 0;
    background: #fff;
}

.contact-service-card {
    height: 100%;
    display: block;
    padding: 28px;
    border: 1px solid var(--contact-border);
    border-radius: 15px;
    text-decoration: none;
    transition: .3s ease;
}

.contact-service-card:hover {
    transform: translateY(-7px);
    border-color: var(--contact-yellow);
    box-shadow: 0 15px 35px rgba(8,47,99,.08);
}

.contact-service-icon {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4ca;
    border-radius: 12px;
    font-size: 23px;
    margin-bottom: 18px;
}

.contact-service-card h3 {
    color: var(--contact-dark);
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 9px;
}

.contact-service-card p {
    color: var(--contact-muted);
    font-size: 13px;
    line-height: 1.65;
    margin-bottom: 17px;
}

.contact-service-card > span {
    color: #b68100;
    font-size: 12px;
    font-weight: 800;
}


/* =========================================
   FINAL CTA
========================================= */

.contact-final-cta {
    padding: 70px 0;
    background: #fff;
}

.contact-final-box {
    padding: 50px 60px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #082f63,
        #0d4d91
    );
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    position: relative;
    overflow: hidden;
}

.contact-final-box::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border-radius: 50%;
    right: -150px;
    top: -170px;
    background: var(--contact-yellow);
    opacity: .13;
}

.contact-final-box > div:first-child {
    position: relative;
    z-index: 1;
}

.contact-final-box span {
    color: var(--contact-yellow);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-final-box h2 {
    color: #fff;
    font-size: 34px;
    line-height: 1.25;
    font-weight: 800;
    margin: 10px 0 0;
}

.contact-final-buttons {
    display: flex;
    gap: 10px;
    position: relative;
    z-index: 1;
}

.contact-final-buttons a {
    min-width: 130px;
    padding: 14px 20px;
    border-radius: 8px;
    background: var(--contact-yellow);
    color: var(--contact-dark);
    text-align: center;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
    transition: .3s ease;
}

.contact-final-buttons a:last-child {
    background: transparent;
    border: 1px solid rgba(255,255,255,.5);
    color: #fff;
}

.contact-final-buttons a:hover {
    background: #fff;
    color: var(--contact-dark);
}


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

@media (max-width: 991px) {

    .contact-hero h1 {
        font-size: 47px;
    }

    .contact-hero-card {
        margin-top: 40px;
    }

    .contact-content {
        margin-bottom: 10px;
    }

    .contact-final-box {
        padding: 45px;
    }
}


@media (max-width: 767px) {

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

    .contact-hero {
        padding: 20px 0 65px;
    }

    .contact-breadcrumb {
        margin-bottom: 35px;
    }

    .contact-hero h1 {
        font-size: 37px;
    }

    .contact-hero p {
        font-size: 16px;
    }

    .contact-hero-card {
        padding: 28px;
    }

    .contact-hero-card h3 {
        font-size: 27px;
    }

    .contact-info-section {
        margin-top: -20px;
        padding-bottom: 10px;
    }

    .contact-content h2 {
        font-size: 32px;
    }

    .contact-form-box {
        padding: 25px;
    }

    .contact-map-section,
    .contact-services {
        padding: 65px 0;
    }

    .contact-section-heading h2 {
        font-size: 31px;
    }

    .contact-map-wrapper iframe {
        height: 330px;
    }

    .contact-final-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .contact-final-box h2 {
        font-size: 28px;
    }

    .contact-final-buttons {
        width: 100%;
        flex-direction: column;
    }

    .contact-final-buttons a {
        width: 100%;
    }
}


@media (max-width: 480px) {

    .contact-hero h1 {
        font-size: 32px;
    }

    .contact-hero-card {
        padding: 24px;
    }

    .contact-hero-card h3 {
        font-size: 24px;
    }

    .contact-info-card {
        padding: 20px;
    }

    .contact-info-card h3 {
        font-size: 14px;
    }

    .contact-content h2 {
        font-size: 29px;
    }

    .contact-section-heading h2 {
        font-size: 28px;
    }

    .contact-final-box h2 {
        font-size: 25px;
    }
}


/* =========================================================
   TRAVELX24 - CAB ATTACHMENT PAGE
   Bootstrap Compatible + Fully Responsive
   ========================================================= */


.cab-attachment-page *,
.cab-attachment-page *::before,
.cab-attachment-page *::after {
    box-sizing: border-box;
}


/* =========================
   BREADCRUMB
   ========================= */

.cab-page-breadcrumb {
    background: #f5f7fb;
    padding: 14px 0;
    border-bottom: 1px solid #e5eaf1;
}

.cab-breadcrumb-content {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #667085;
}

.cab-breadcrumb-content a {
    color: var(--cab-blue);
    text-decoration: none;
    font-weight: 600;
}

.cab-breadcrumb-content span {
    color: #7b8798;
}


/* =========================
   HERO
   ========================= */

.cab-attachment-hero {
    position: relative;
    padding: 80px 0;
    background:
        linear-gradient(
            110deg,
            #f5f8fc 0%,
            #ffffff 52%,
            #fff7df 100%
        );
}

.cab-hero-content {
    max-width: 720px;
}

.cab-section-tag {
    display: inline-block;
    color: #c28b00;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-bottom: 14px;
}

.cab-hero-content h1 {
    font-size: 56px;
    line-height: 1.12;
    font-weight: 800;
    margin: 0 0 22px;
    color: var(--cab-blue);
}

.cab-hero-content h1 span {
    color: var(--cab-yellow-dark);
}

.cab-hero-content p {
    max-width: 650px;
    font-size: 19px;
    line-height: 1.7;
    color: #53657d;
    margin-bottom: 28px;
}

.cab-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
}

.cab-hero-points div {
    font-size: 16px;
    font-weight: 600;
    color: var(--cab-blue);
}

.cab-hero-points span {
    color: #d99d00;
    font-weight: 900;
    margin-right: 5px;
}


/* HERO CARD */

.cab-hero-card {
    background: var(--cab-blue);
    border-radius: 22px;
    padding: 42px 38px;
    color: #fff;
    box-shadow: 0 18px 45px rgba(9, 47, 102, 0.18);
    position: relative;
    overflow: hidden;
}

.cab-hero-card::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(255, 195, 41, 0.1);
    right: -70px;
    top: -70px;
}

.cab-card-icon {
    width: 65px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cab-yellow);
    border-radius: 15px;
    font-size: 32px;
    margin-bottom: 22px;
}

.cab-hero-card h3 {
    font-size: 30px;
    color: #fff;
    font-weight: 800;
    margin: 0 0 14px;
}

.cab-hero-card p {
    font-size: 16px;
    line-height: 1.6;
    color: #e5edf8;
    margin-bottom: 25px;
}


/* BUTTON */

.cab-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: var(--cab-yellow);
    color: #092f66 !important;
    text-decoration: none !important;
    border-radius: 9px;
    padding: 14px 25px;
    font-size: 16px;
    font-weight: 800;
    transition: all 0.3s ease;
    border: 0;
}

.cab-primary-btn:hover {
    background: #ffcf4d;
    color: #062650 !important;
    transform: translateY(-2px);
}

.cab-primary-btn span {
    font-size: 20px;
}


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

.cab-section-heading {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 50px;
}

.cab-section-heading > span {
    display: block;
    color: #c38c00;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.cab-section-heading h2 {
    color: var(--cab-blue);
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
    margin: 0 0 14px;
}

.cab-section-heading p {
    color: #64748b;
    font-size: 17px;
    line-height: 1.6;
    margin: 0;
}


/* =========================
   BENEFITS
   ========================= */

.cab-benefits-section {
    padding: 85px 0;
    background: #fff;
}

.cab-benefit-box {
    height: 100%;
    padding: 32px 25px;
    text-align: center;
    border: 1px solid var(--cab-border);
    border-radius: 15px;
    background: #fff;
    transition: all 0.3s ease;
}

.cab-benefit-box:hover {
    transform: translateY(-7px);
    border-color: var(--cab-yellow);
    box-shadow: 0 15px 35px rgba(20, 50, 90, 0.1);
}

.cab-benefit-icon {
    width: 65px;
    height: 65px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff4cf;
    font-size: 29px;
}

.cab-benefit-box h3 {
    color: var(--cab-blue);
    font-size: 21px;
    font-weight: 750;
    margin: 0 0 12px;
}

.cab-benefit-box p {
    color: #66758a;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}


/* =========================
   FORM SECTION
   ========================= */

.cab-form-section {
    padding: 90px 0;
    background: var(--cab-light);
}

.cab-form-wrapper {
    max-width: 1050px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid var(--cab-border);
    border-radius: 20px;
    padding: 45px;
    box-shadow: 0 15px 45px rgba(20, 50, 90, 0.07);
}


/* =========================
   CONTACT FORM 7
   ========================= */

.cab-form-wrapper .wpcf7 {
    width: 100%;
}

.cab-form-wrapper .wpcf7 form {
    width: 100%;
}

.cab-form-wrapper .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.cab-form-wrapper p {
    margin: 0;
}


/* Form headings */

.cab-form-wrapper .cab-form-title {
    color: var(--cab-blue);
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 25px;
}


/* Labels */

.cab-form-wrapper label {
    display: block;
    color: #183657;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 8px;
}


/* Inputs */

.cab-form-wrapper input[type="text"],
.cab-form-wrapper input[type="tel"],
.cab-form-wrapper input[type="email"],
.cab-form-wrapper input[type="number"],
.cab-form-wrapper input[type="date"],
.cab-form-wrapper input[type="file"],
.cab-form-wrapper select,
.cab-form-wrapper textarea {
    width: 100%;
    min-height: 50px;
    border: 1px solid #d5deea;
    border-radius: 8px;
    padding: 12px 14px;
    background: #fff;
    color: #1d3553;
    font-size: 15px;
    outline: none;
    transition: all 0.25s ease;
}

.cab-form-wrapper textarea {
    min-height: 120px;
    resize: vertical;
}

.cab-form-wrapper input:focus,
.cab-form-wrapper select:focus,
.cab-form-wrapper textarea:focus {
    border-color: var(--cab-yellow-dark);
    box-shadow: 0 0 0 3px rgba(255, 195, 41, 0.14);
}


/* File inputs */

.cab-form-wrapper input[type="file"] {
    padding: 9px;
    min-height: 50px;
    background: #fafbfd;
}


/* Submit */

.cab-form-wrapper input[type="submit"],
.cab-form-wrapper button[type="submit"] {
    width: 100%;
    min-height: 54px;
    border: 0;
    border-radius: 9px;
    background: var(--cab-blue);
    color: #fff;
    font-size: 17px;
    font-weight: 800;
    padding: 14px 25px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.cab-form-wrapper input[type="submit"]:hover,
.cab-form-wrapper button[type="submit"]:hover {
    background: var(--cab-yellow);
    color: var(--cab-blue);
}


/* CF7 validation */

.cab-form-wrapper .wpcf7-not-valid {
    border-color: #dc3545 !important;
}

.cab-form-wrapper .wpcf7-not-valid-tip {
    font-size: 12px;
    color: #dc3545;
    margin-top: 5px;
}

.cab-form-wrapper .wpcf7-response-output {
    margin: 20px 0 0 !important;
    padding: 12px 15px !important;
    border-radius: 8px;
}


/* =========================
   PROCESS
   ========================= */

.cab-process-section {
    padding: 90px 0;
    background: #fff;
}

.cab-process-box {
    height: 100%;
    position: relative;
    padding: 30px;
    border-radius: 15px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.cab-process-number {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cab-yellow);
    color: var(--cab-blue);
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 20px;
}

.cab-process-box h3 {
    color: var(--cab-blue);
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.cab-process-box p {
    color: #66758a;
    line-height: 1.6;
    font-size: 15px;
    margin: 0;
}


/* =========================
   BOTTOM CTA
   ========================= */

.cab-bottom-cta {
    padding: 75px 0;
    background: var(--cab-blue);
}

.cab-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
}

.cab-cta-inner > div {
    max-width: 750px;
}

.cab-cta-inner > div > span {
    color: var(--cab-yellow);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.cab-cta-inner h2 {
    color: #fff;
    font-size: 38px;
    line-height: 1.25;
    font-weight: 800;
    margin: 10px 0 10px;
}

.cab-cta-inner p {
    color: #dce6f4;
    font-size: 16px;
    margin: 0;
}


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

@media (max-width: 991px) {

    .cab-attachment-hero {
        padding: 60px 0;
    }

    .cab-hero-content {
        margin-bottom: 40px;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .cab-hero-content p {
        margin-left: auto;
        margin-right: auto;
    }

    .cab-hero-points {
        justify-content: center;
    }

    .cab-hero-card {
        max-width: 600px;
        margin: 0 auto;
    }

    .cab-section-heading h2 {
        font-size: 34px;
    }

    .cab-form-wrapper {
        padding: 35px;
    }

    .cab-cta-inner {
        flex-direction: column;
        text-align: center;
    }
}


@media (max-width: 767px) {

    .cab-page-breadcrumb {
        padding: 12px 0;
    }

    .cab-breadcrumb-content {
        font-size: 13px;
    }

    .cab-attachment-hero {
        padding: 50px 0;
    }

    .cab-hero-content h1 {
        font-size: 38px;
    }

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

    .cab-hero-points {
        flex-direction: column;
        gap: 10px;
        align-items: center;
    }

    .cab-hero-card {
        padding: 30px 25px;
    }

    .cab-hero-card h3 {
        font-size: 26px;
    }

    .cab-benefits-section,
    .cab-form-section,
    .cab-process-section {
        padding: 65px 0;
    }

    .cab-section-heading {
        margin-bottom: 35px;
    }

    .cab-section-heading h2 {
        font-size: 30px;
    }

    .cab-section-heading p {
        font-size: 15px;
    }

    .cab-form-wrapper {
        padding: 25px 18px;
        border-radius: 14px;
    }

    .cab-cta-inner h2 {
        font-size: 29px;
    }

    .cab-bottom-cta {
        padding: 60px 0;
    }

}


@media (max-width: 480px) {

    .cab-hero-content h1 {
        font-size: 32px;
    }

    .cab-hero-card {
        padding: 25px 20px;
    }

    .cab-section-heading h2 {
        font-size: 27px;
    }

    .cab-benefit-box {
        padding: 25px 20px;
    }

    .cab-form-wrapper {
        padding: 22px 15px;
    }

    .cab-primary-btn {
        width: 100%;
    }

    .cab-cta-inner .cab-primary-btn {
        width: 100%;
    }
}





/* =========================================
   TRAVELX24 - JOIN AS DRIVER
========================================= */

.tx24-driver-page {
    color: #09284f;
    overflow: hidden;
}


/* =========================================
   BREADCRUMB
========================================= */

.tx24-breadcrumb {
    background: #f5f8fc;
    padding: 15px 0;
    border-bottom: 1px solid #e5eaf0;
}

.tx24-breadcrumb .container {
    max-width: 1200px;
}

.tx24-breadcrumb a {
    color: #092f67;
    text-decoration: none;
    font-weight: 600;
}

.tx24-breadcrumb span {
    color: #68798f;
}


/* =========================================
   HERO
========================================= */

.tx24-driver-hero {
    padding: 85px 0;
    background:
        linear-gradient(
            90deg,
            #f8fbff 0%,
            #ffffff 55%,
            #eef5fc 100%
        );
}

.tx24-driver-hero .container {
    max-width: 1200px;
}

.tx24-section-tag {
    display: inline-block;
    color: #c99800;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 12px;
}

.tx24-driver-hero h1 {
    margin: 0 0 20px;
    font-size: 58px;
    line-height: 1.1;
    font-weight: 800;
    color: #082d60;
}

.tx24-hero-text {
    max-width: 680px;
    margin-bottom: 35px;
    color: #52657d;
    font-size: 19px;
    line-height: 1.7;
}


/* =========================================
   POINTS
========================================= */

.tx24-driver-points {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 30px;
}

.tx24-point {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.tx24-point > span {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffbf19;
    color: #062d61;
    border-radius: 50%;
    font-size: 17px;
    font-weight: 800;
}

.tx24-point strong {
    display: block;
    color: #092f67;
    font-size: 17px;
    margin-bottom: 5px;
}

.tx24-point p {
    margin: 0;
    color: #68798f;
    font-size: 14px;
    line-height: 1.5;
}


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

.tx24-driver-hero-card {
    padding: 45px 40px;
    background: #092f67;
    border-radius: 25px;
    box-shadow: 0 20px 50px rgba(9, 47, 103, 0.20);
    color: #fff;
    position: relative;
    overflow: hidden;
}

.tx24-driver-hero-card::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    right: -80px;
    bottom: -80px;
    border-radius: 50%;
    background: rgba(255, 193, 7, 0.15);
}

.tx24-card-icon {
    width: 65px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffbf19;
    color: #092f67;
    border-radius: 16px;
    font-size: 30px;
    margin-bottom: 25px;
}

.tx24-driver-hero-card h3 {
    font-size: 30px;
    line-height: 1.25;
    margin-bottom: 18px;
    color: #fff;
}

.tx24-driver-hero-card p {
    color: #e3ebf5;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 30px;
}


/* =========================================
   BUTTON
========================================= */

.tx24-yellow-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 15px 28px;
    background: #ffbf19;
    color: #082d60 !important;
    text-decoration: none !important;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 700;
    transition: all 0.3s ease;
}

.tx24-yellow-btn:hover {
    background: #ffca35;
    transform: translateY(-2px);
    color: #082d60 !important;
}

.tx24-yellow-btn span {
    font-size: 20px;
}


/* =========================================
   BENEFITS
========================================= */

.tx24-driver-benefits {
    padding: 90px 0;
    background: #fff;
}

.tx24-driver-benefits .container {
    max-width: 1200px;
}

.tx24-section-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 55px;
}

.tx24-section-heading > span,
.tx24-form-heading > span,
.tx24-cta-inner > div > span {
    color: #c99700;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.tx24-section-heading h2 {
    margin: 10px 0 12px;
    color: #09284f;
    font-size: 42px;
    font-weight: 800;
}

.tx24-section-heading p {
    margin: 0;
    color: #65768b;
    font-size: 17px;
    line-height: 1.6;
}


.tx24-benefit-box {
    height: 100%;
    padding: 32px 25px;
    border: 1px solid #e1e8f0;
    border-radius: 18px;
    text-align: center;
    background: #fff;
    transition: all 0.3s ease;
}

.tx24-benefit-box:hover {
    transform: translateY(-7px);
    box-shadow: 0 15px 35px rgba(8, 45, 96, 0.10);
    border-color: #ffbf19;
}

.tx24-benefit-icon {
    width: 65px;
    height: 65px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff5d8;
    font-size: 28px;
}

.tx24-benefit-box h3 {
    font-size: 20px;
    color: #092f67;
    margin-bottom: 12px;
}

.tx24-benefit-box p {
    margin: 0;
    color: #68798f;
    font-size: 15px;
    line-height: 1.6;
}


/* =========================================
   FORM SECTION
========================================= */

.tx24-driver-form-section {
    padding: 90px 0;
    background: #f5f8fc;
}

.tx24-driver-form-section .container {
    max-width: 1000px;
}

.tx24-form-heading {
    text-align: center;
    margin-bottom: 45px;
}

.tx24-form-heading h2 {
    color: #09284f;
    font-size: 42px;
    font-weight: 800;
    margin: 10px 0;
}

.tx24-form-heading p {
    margin: 0;
    color: #65768b;
    font-size: 17px;
}


.tx24-driver-form-wrapper {
    background: #fff;
    padding: 45px;
    border-radius: 22px;
    box-shadow: 0 15px 45px rgba(8, 45, 96, 0.09);
}


/* =========================================
   CF7 FORM
========================================= */

.tx24-cf7-form {
    width: 100%;
}

.tx24-form-section-title {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-bottom: 20px;
    margin-bottom: 28px;
    border-bottom: 1px solid #e5eaf0;
}

.tx24-form-section-title > span {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #092f67;
    color: #fff;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 700;
}

.tx24-form-section-title h3 {
    margin: 0 0 3px;
    font-size: 23px;
    color: #092f67;
}

.tx24-form-section-title p {
    margin: 0;
    color: #7a8899;
    font-size: 14px;
}

.tx24-doc-title {
    margin-top: 35px;
}


/* =========================================
   INPUTS
========================================= */

.tx24-field {
    margin-bottom: 25px;
}

.tx24-field label,
.tx24-upload-content label {
    display: block;
    color: #092f67;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 9px;
}

.tx24-field label span,
.tx24-upload-content label span {
    color: #e63946;
}

.tx24-input {
    width: 100%;
    height: 52px;
    padding: 0 16px;
    border: 1px solid #d9e1eb;
    border-radius: 9px;
    background: #fff;
    color: #17385f;
    font-size: 15px;
    outline: none;
    transition: 0.3s ease;
    box-sizing: border-box;
}

.tx24-input:focus {
    border-color: #092f67;
    box-shadow: 0 0 0 3px rgba(9, 47, 103, 0.08);
}


/* =========================================
   UPLOAD BOX
========================================= */

.tx24-upload-box {
    min-height: 115px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    margin-bottom: 20px;
    border: 1px dashed #cbd6e3;
    border-radius: 12px;
    background: #f9fbfd;
    transition: all 0.3s ease;
}

.tx24-upload-box:hover {
    border-color: #ffbf19;
    background: #fffdf5;
}

.tx24-upload-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff3cc;
    border-radius: 10px;
    font-size: 24px;
}

.tx24-upload-content {
    width: 100%;
}

.tx24-upload-content label {
    margin-bottom: 2px;
}

.tx24-upload-content small {
    display: block;
    color: #8290a0;
    margin-bottom: 8px;
}

.tx24-file {
    width: 100%;
    font-size: 13px;
    color: #5f6f81;
}


/* =========================================
   FORM NOTE
========================================= */

.tx24-form-note {
    padding: 18px 20px;
    margin-top: 12px;
    background: #f1f6fb;
    border-left: 4px solid #ffbf19;
    border-radius: 6px;
}

.tx24-form-note strong {
    color: #092f67;
    font-size: 14px;
}

.tx24-form-note p {
    margin: 5px 0 0;
    color: #68798f;
    font-size: 13px;
    line-height: 1.5;
}


/* =========================================
   SUBMIT
========================================= */

.tx24-submit-wrapper {
    margin-top: 30px;
    text-align: center;
}

.tx24-submit {
    border: 0 !important;
    padding: 16px 35px !important;
    background: #ffbf19 !important;
    color: #082d60 !important;
    border-radius: 9px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: all 0.3s ease;
}

.tx24-submit:hover {
    background: #092f67 !important;
    color: #fff !important;
    transform: translateY(-2px);
}


/* =========================================
   CF7 MESSAGES
========================================= */

.tx24-cf7-form .wpcf7-not-valid-tip {
    font-size: 12px;
    margin-top: 5px;
}

.tx24-cf7-form .wpcf7-response-output {
    margin: 20px 0 0 !important;
    padding: 12px 15px !important;
    border-radius: 6px;
    font-size: 14px;
}


/* =========================================
   CTA
========================================= */

.tx24-driver-cta {
    padding: 70px 0;
    background: #092f67;
}

.tx24-driver-cta .container {
    max-width: 1200px;
}

.tx24-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.tx24-cta-inner h2 {
    color: #fff;
    font-size: 36px;
    margin: 10px 0;
    font-weight: 800;
}

.tx24-cta-inner p {
    color: #dce7f3;
    margin: 0;
    max-width: 650px;
    line-height: 1.6;
}


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

@media (max-width: 991px) {

    .tx24-driver-hero {
        padding: 65px 0;
    }

    .tx24-driver-hero h1 {
        font-size: 46px;
    }

    .tx24-driver-hero-card {
        margin-top: 45px;
    }

    .tx24-section-heading h2,
    .tx24-form-heading h2 {
        font-size: 36px;
    }

    .tx24-driver-form-wrapper {
        padding: 35px;
    }

}


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

@media (max-width: 767px) {

    .tx24-driver-hero {
        padding: 50px 0;
    }

    .tx24-driver-hero h1 {
        font-size: 38px;
    }

    .tx24-hero-text {
        font-size: 16px;
    }

    .tx24-driver-points {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .tx24-driver-hero-card {
        padding: 30px 25px;
        margin-top: 35px;
    }

    .tx24-driver-hero-card h3 {
        font-size: 25px;
    }

    .tx24-driver-benefits,
    .tx24-driver-form-section {
        padding: 60px 0;
    }

    .tx24-section-heading h2,
    .tx24-form-heading h2 {
        font-size: 31px;
    }

    .tx24-section-heading p,
    .tx24-form-heading p {
        font-size: 15px;
    }

    .tx24-driver-form-wrapper {
        padding: 25px 18px;
        border-radius: 15px;
    }

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

    .tx24-upload-box {
        align-items: flex-start;
        padding: 16px;
    }

    .tx24-upload-icon {
        width: 45px;
        height: 45px;
        flex: 0 0 45px;
        font-size: 20px;
    }

    .tx24-file {
        font-size: 11px;
    }

    .tx24-submit {
        width: 100%;
    }

    .tx24-cta-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .tx24-cta-inner h2 {
        font-size: 29px;
    }

    .tx24-yellow-btn {
        width: 100%;
    }

}


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

@media (max-width: 480px) {

    .tx24-driver-hero h1 {
        font-size: 33px;
    }

    .tx24-driver-hero-card {
        padding: 25px 20px;
    }

    .tx24-driver-form-wrapper {
        padding: 22px 14px;
    }

    .tx24-form-section-title {
        gap: 10px;
    }

    .tx24-form-section-title > span {
        width: 36px;
        height: 36px;
        flex: 0 0 36px;
    }

    .tx24-upload-box {
        gap: 10px;
    }

}


/* =========================================
   TRAVELX24 - BOOK A CAB PAGE
========================================= */

.tx24-book-cab-page {
    
    color: #082852;
    background: #fff;
}


/* =========================================
   HERO / BREADCRUMB
========================================= */

.tx24-page-hero {
    background: linear-gradient(135deg, #062957, #104d89);
    padding: 65px 0 70px;
    position: relative;
    overflow: hidden;
}

.tx24-page-hero::after {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    right: -180px;
    top: -250px;
    border-radius: 50%;
    background: rgba(255, 193, 7, 0.12);
}

.tx24-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    color: #fff;
    font-size: 15px;
    position: relative;
    z-index: 2;
}

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

.tx24-breadcrumb span:last-child {
    color: #ffc21c;
}

.tx24-page-hero h1 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 48px;
    line-height: 1.15;
    font-weight: 700;
    position: relative;
    z-index: 2;
}

.tx24-page-hero p {
    margin: 0;
    color: #fff;
    font-size: 19px;
    position: relative;
    z-index: 2;
}


/* =========================================
   BOOKING SECTION
========================================= */

.tx24-booking-section {
    padding: 90px 0;
    background: #fff;
}

.tx24-small-title {
    display: inline-block;
    color: #c89400;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 14px;
}

.tx24-booking-content h2 {
    color: #102746;
    font-size: 44px;
    line-height: 1.15;
    font-weight: 700;
    margin: 0 0 22px;
}

.tx24-booking-content h2 span {
    color: #eeb518;
}

.tx24-booking-content > p {
    color: #5d6d82;
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 35px;
}


/* Features */

.tx24-booking-features {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.tx24-feature {
    display: flex;
    align-items: center;
    gap: 16px;
}

.tx24-feature-icon {
    width: 55px;
    height: 55px;
    min-width: 55px;
    border-radius: 12px;
    background: #fff4c9;
    color: #d59c00;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 21px;
    font-weight: 700;
}

.tx24-feature h4 {
    margin: 0 0 4px;
    color: #092b55;
    font-size: 17px;
}

.tx24-feature p {
    margin: 0;
    color: #68798d;
    font-size: 14px;
}


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

.tx24-booking-form-card {
    background: #fff;
    border: 1px solid #e0e7ef;
    border-radius: 18px;
    padding: 38px;
    box-shadow: 0 15px 45px rgba(8, 40, 82, 0.10);
}

.tx24-form-heading {
    margin-bottom: 28px;
}

.tx24-form-heading > span {
    color: #c89400;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tx24-form-heading h3 {
    margin: 8px 0 8px;
    color: #082852;
    font-size: 30px;
    font-weight: 700;
}

.tx24-form-heading p {
    color: #718096;
    font-size: 15px;
    margin: 0;
}


/* =========================================
   CF7 FORM
========================================= */

.tx24-form-row {
    display: flex;
    gap: 18px;
    margin-bottom: 18px;
}

.tx24-form-group {
    flex: 1;
    width: 100%;
}

.tx24-form-group label {
    display: block;
    margin-bottom: 7px;
    color: #092b55;
    font-size: 14px;
    font-weight: 600;
}

.tx24-form-group input,
.tx24-form-group select,
.tx24-form-group textarea {
    width: 100%;
    border: 1px solid #d7e0ea;
    border-radius: 8px;
    background: #fff;
    color: #17365d;
    font-size: 15px;
    padding: 13px 14px;
    outline: none;
    transition: all 0.25s ease;
    box-sizing: border-box;
}

.tx24-form-group input,
.tx24-form-group select {
    height: 48px;
}

.tx24-form-group textarea {
    min-height: 110px;
    resize: vertical;
}

.tx24-form-group input:focus,
.tx24-form-group select:focus,
.tx24-form-group textarea:focus {
    border-color: #ffc21c;
    box-shadow: 0 0 0 3px rgba(255, 194, 28, 0.13);
}

.tx24-form-group input::placeholder,
.tx24-form-group textarea::placeholder {
    color: #9aa7b6;
}

.tx24-full-width {
    margin-bottom: 20px;
}


/* Submit */

.tx24-form-submit input[type="submit"] {
    width: 100%;
    border: 0;
    border-radius: 9px;
    background: #ffc21c;
    color: #062957;
    font-size: 17px;
    font-weight: 700;
    padding: 15px 25px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.tx24-form-submit input[type="submit"]:hover {
    background: #e9aa00;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 160, 0, 0.25);
}


/* CF7 messages */

.tx24-cf7-form .wpcf7-not-valid-tip {
    font-size: 12px;
    margin-top: 4px;
}

.tx24-cf7-form .wpcf7-response-output {
    margin: 20px 0 0 !important;
    padding: 12px 15px !important;
    border-radius: 7px;
}


/* =========================================
   CAB TYPES
========================================= */

.tx24-cab-types {
    padding: 85px 0;
    background: #f7f9fc;
}

.tx24-section-heading {
    margin-bottom: 45px;
}

.tx24-section-heading > span {
    color: #c89400;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tx24-section-heading h2 {
    color: #102746;
    font-size: 40px;
    margin: 8px 0 10px;
    font-weight: 700;
}

.tx24-section-heading p {
    color: #718096;
    font-size: 17px;
    margin: 0;
}

.tx24-cab-card {
    height: 100%;
    background: #fff;
    border: 1px solid #e1e7ef;
    border-radius: 14px;
    padding: 30px 25px;
    transition: all 0.3s ease;
}

.tx24-cab-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 15px 35px rgba(8, 40, 82, 0.10);
    border-color: #ffc21c;
}

.tx24-cab-icon {
    width: 58px;
    height: 58px;
    border-radius: 12px;
    background: #fff4c9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 27px;
    margin-bottom: 20px;
}

.tx24-cab-card h3 {
    color: #082852;
    font-size: 20px;
    margin-bottom: 12px;
}

.tx24-cab-card p {
    color: #68798d;
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   CTA
========================================= */

.tx24-booking-cta {
    padding: 60px 0;
    background: #fff;
}

.tx24-cta-inner {
    background: #082f63;
    border-radius: 18px;
    padding: 38px 45px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.tx24-cta-inner span {
    color: #ffc21c;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}

.tx24-cta-inner h2 {
    color: #fff;
    font-size: 30px;
    margin: 7px 0;
}

.tx24-cta-inner p {
    color: #dbe5f2;
    margin: 0;
    font-size: 16px;
}

.tx24-yellow-btn {
    display: inline-block;
    background: #ffc21c;
    color: #082852;
    text-decoration: none;
    font-weight: 700;
    padding: 15px 28px;
    border-radius: 8px;
    white-space: nowrap;
    transition: all 0.3s ease;
}

.tx24-yellow-btn:hover {
    background: #fff;
    color: #082852;
}


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

@media (max-width: 991px) {

    .tx24-page-hero {
        padding: 50px 0 55px;
    }

    .tx24-page-hero h1 {
        font-size: 40px;
    }

    .tx24-booking-section {
        padding: 65px 0;
    }

    .tx24-booking-content {
        margin-bottom: 15px;
    }

    .tx24-booking-content h2 {
        font-size: 38px;
    }

    .tx24-booking-form-card {
        padding: 30px;
    }

    .tx24-section-heading h2 {
        font-size: 34px;
    }

    .tx24-cta-inner {
        padding: 35px;
    }

}


@media (max-width: 767px) {

    .tx24-page-hero {
        padding: 40px 0 45px;
    }

    .tx24-page-hero h1 {
        font-size: 34px;
    }

    .tx24-page-hero p {
        font-size: 16px;
    }

    .tx24-booking-section {
        padding: 50px 0;
    }

    .tx24-booking-content h2 {
        font-size: 32px;
    }

    .tx24-booking-content > p {
        font-size: 15px;
        line-height: 1.7;
    }

    .tx24-booking-form-card {
        padding: 22px 18px;
        border-radius: 13px;
    }

    .tx24-form-heading h3 {
        font-size: 25px;
    }

    .tx24-form-row {
        flex-direction: column;
        gap: 18px;
        margin-bottom: 18px;
    }

    .tx24-cab-types {
        padding: 55px 0;
    }

    .tx24-section-heading h2 {
        font-size: 29px;
    }

    .tx24-section-heading p {
        font-size: 15px;
    }

    .tx24-cta-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 30px 25px;
    }

    .tx24-cta-inner h2 {
        font-size: 26px;
    }

    .tx24-yellow-btn {
        width: 100%;
        text-align: center;
        box-sizing: border-box;
    }

}


@media (max-width: 480px) {

    .tx24-page-hero h1 {
        font-size: 30px;
    }

    .tx24-breadcrumb {
        font-size: 13px;
    }

    .tx24-booking-content h2 {
        font-size: 28px;
    }

    .tx24-feature-icon {
        width: 48px;
        min-width: 48px;
        height: 48px;
    }

    .tx24-feature h4 {
        font-size: 15px;
    }

    .tx24-feature p {
        font-size: 13px;
    }

}







