/* 
=========================================================
REDESIGN CSS
=========================================================
This file contains all custom CSS for the site redesign.
It is loaded last, so styles here will override existing
theme styles in style.css.
*/

:root {
    --primary-font: 'Poppins', sans-serif;
    --color-white: #ffffff;
    --color-white-92: rgba(255, 255, 255, 0.92);
    --color-white-10: rgba(255, 255, 255, 0.1);
    --color-teal-400: #4fd1c5;
    --color-primary-dark: #274e5e;
    --color-primary-darker: #1e3a47;
    --color-teal-500: #0C3E3E;
    --color-slate-500: #64748b;
    --color-coral: #fb6d61;
    --theme-color: #0F4C4C;
    --color-slate-blue: #4a6572;
    --color-slate-800: #1e293b;

    /* Contact Page Color Palette */
    --fleet-primary: var(--newdesign-accent);
    --fleet-primary-light: rgba(46, 194, 162, 0.1);
    --fleet-secondary: var(--newdesign-brand-primary);
    --fleet-dark: var(--newdesign-text-primary);
    --fleet-muted: var(--newdesign-text-secondary);
    --fleet-light-muted: var(--newdesign-text-muted);
    --fleet-border: var(--newdesign-neturals-border);
    --fleet-bg-light: var(--newdesign-neturals-soft-bg);
    --fleet-white: var(--color-white);
    --fleet-shadow: rgba(0, 0, 0, 0.04);

    /* New Design Color */
    --newdesign-accent: #2FBF9F;

    /* New Design Color */
    --newdesign-brand-primary: #0F4C4C;
    --newdesign-primary-dark: #0C3E3E;
    --newdesign-accent: #2FBF9F;

    /* Text Color */
    --newdesign-text-primary: #1C1C1E;
    --newdesign-text-secondary: #6B7280;
    --newdesign-text-muted: #9CA3AF;
    --newdesign-text-white: #FFFFFF;

    /* Neatural Color */
    --newdesign-neturals-background: #D9D9D9;
    --newdesign-neturals-soft-bg: #F3F7F6;
    --newdesign-neturals-muted-bg: #F9FAFB;
    --newdesign-neturals-border: #E5E7EB;

    /* Status Color */
    --newdesign-status-success: #2FBF9F;
    --newdesign-status-warning: #F59E0B;
    --newdesign-status-error: #EF4444;
    --newdesign-status-info: #3B82F6;

    /* Font Weights */
    --font-weight-thin: 100;
    --font-weight-extra-light: 200;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semi-bold: 600;
    --font-weight-bold: 700;
    --font-weight-extra-bold: 800;
    --font-weight-black: 900;
}

/* Global Poppins Font Enforcement */

body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
span,
a,
div,
li,
td,
th,
label,
input,
button,
textarea,
select {
    font-family: var(--primary-font);
}

/* Protect Icon Fonts from being overridden */

.fa,
.fas,
.far,
.fal,
.fad,
.fab,
.fa-solid,
.fa-regular,
.fa-light,
.fa-duotone,
.fa-brands,
[class^="icon-"],
[class*=" icon-"],
.dashicons {
    font-family: "Font Awesome 5 Free", dashicons !important;
}

body {
    overflow-x: hidden;
}

.bg-light-gray {
    background-color: #f9fafb;
}

/*-----french lang site css-----*/

.fleet-header__user-block button {
    white-space: nowrap;
    padding: 12px 12px;
    font-size: 12px !important;
}

.fleet-header__btn {
    padding: 14px 20px !important;
    font-size: 12px !important;
}

.fleet-header__menu-link {
    font-size: 14px !important;
}

.fleet-header__menu {
    gap: 30px !important;
}

/*-----end---french-lang-site-css-----*/

.theme-btn-outline,
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
    background-color: transparent;
    border: 1px solid #E5E7EB;
    color: var(--theme-color) !important;
    padding: 12px 28px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    /* box-shadow: 0 4px 12px rgba(95, 219, 200, 0.15); */
}

.app-input--centered:hover,
.app-input--centered:focus,
.app-input:hover {
    background-color: rgb(255 255 255) !important;
}

/*---usefull-link-page---*/


.testimonial-card__author a {
    width: max-content !important;
}

.testimonial-card {
    border-radius: 8px !important;
    height: 100% !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .1) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.testimonial-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, .15) !important;
}

.testimonial-card__description {
    font-size: 14px;
    color: #6B7280;
    line-height: 1.6;
}

.testimonial-card:hover .testimonial-card__author a {
    background-color: var(--theme-color);
    color: #fff !important;
}

.testimonial-card .feature-icon {
    width: fit-content;
    height: 85px;
    object-fit: scale-down;
    max-width: 200px;
}

/*----usefull-link-page----finished*/

.franchise-submit {
    color: var(--theme-color) !important;
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
    padding: 16px 10px;
}

.wpml-ls-legacy-dropdown .wpml-ls-item {
    width: 55px;
}

.wpml-ls-legacy-dropdown a:hover {

    background: transparent;
    border-radius: 1px;
    border-color: #E5E7EB;
}

.wpml-ls-legacy-dropdown:hover a.wpml-ls-item-toggle {
    background-color: transparent !important;
}

.wpml-ls-sub-menu {
    border: none !important;
    background-color: var(--color-white) !important;
}

.wpml-ls-sub-menu .wpml-ls-legacy-dropdown a {
    background: transparent !important;
    border: none !important;
}

.admin-bar .fleet-header {
    top: 30px;
}

.to-v5-stepper-header {
    position: relative;
    max-width: 400px;
    margin: 0 auto 3rem;
}

.to-v5-stepper-progress {
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: 4px;
    background: #f1f5f9;
    border-radius: 10px;
    z-index: 1;
}

.to-v5-progress-bar {
    height: 100%;
    background: var(--newdesign-brand-primary);
    width: 0%;
    /* Dynamic */
    border-radius: 10px;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.to-v5-stepper-nodes {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
}

.to-v5-node {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.to-v5-node span {
    width: 40px;
    height: 40px;
    background: #f1f5f9;
    border: 2px solid #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    color: #94a3b8;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 4px #fff;
}

.to-v5-node label {
    font-size: 12px;
    font-weight: 600;
    color: #94a3b8;
    margin: 0;
    transition: all 0.3s ease;
}

.to-v5-node.active span {
    background: var(--newdesign-brand-primary);
    color: #fff;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.1);
}

.to-v5-node.active label {
    color: var(--newdesign-brand-primary);
}

.to-v5-node.completed span {
    background: #10b981;
    color: #fff;
}

.to-v5-step-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    letter-spacing: -0.02em;
}

.to-v5-step {
    animation: to-step-fade 0.4s ease-out;
}

@keyframes to-step-fade {
    from {
        opacity: 0;
        transform: translateX(10px);
    }

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

.gap-3 {
    gap: 1rem;
}

/* Contact Page Refactoring */

.contact-section-relative {
    position: relative;
}

.contact-intro-text {
    font-size: 1.05rem;
    max-width: 550px;
}

.contact-social-icon {
    width: 28px;
    height: 28px;
    object-fit: contain;
    z-index: 2;
    position: relative;
    transition: transform 0.4s ease;
}

.contact-map-container {
    padding: 20px;
}

.contact-map-wrapper {
    width: 100%;
    height: 600px;
    border-radius: 20px;
    overflow: hidden;
}

.contact-map-iframe {
    border: 0;
    border-radius: 20px;
}

.contact-bg-shape-1 {
    top: -15%;
    right: -10%;
    width: 500px;
    height: 500px;
    background: rgba(39, 78, 94, 0.45);
}

.contact-bg-shape-2 {
    bottom: -20%;
    left: -10%;
    width: 600px;
    height: 600px;
    background: var(--color-white-10);
}

.contact-hero-heading {
    font-size: 3rem;
    line-height: 1.2;
    color: var(--color-white);
}

.contact-hero-subtext {
    font-size: 1.15rem;
    color: var(--color-white-92);
    line-height: 1.6;
    max-width: 90%;
}

.contact-info-title {
    font-weight: 600;
    font-family: var(--primary-font);
    color: var(--color-white);
}

.contact-info-text {
    color: var(--color-white-92);
}

.contact-form-subtext {
    color: #64748b;
    font-size: 0.95rem;
}

.contact-help-icon {
    width: 32px;
    height: 32px;
}

.contact-arrow-icon {
    margin-left: 10px;
    width: 20px;
    height: 20px;
}

/* Footer Redesign (v1) */

.footer-modern {
    background-color: var(--color-teal-500) !important;
    padding: 80px 0 0 !important;
    color: var(--color-white) !important;
    display: none;
}

.footer-modern .footer-logo {
    margin-bottom: 30px;
}

.footer-modern .footer-logo img {
    filter: brightness(0) invert(1);
}

.footer-modern .footer-logo img {
    filter: brightness(0) invert(1);
}

.footer-modern h5.accent-color {
    color: var(--color-white) !important;
    font-weight: 600;
    font-size: 1.2rem;
    margin-bottom: 2rem !important;
}

.footer-modern .footer-nav ul li a {
    color: var(--color-white-92) !important;
    text-decoration: none;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    font-weight: 400;
}

.footer-modern .footer-nav ul li a:hover {
    color: var(--color-teal-400) !important;
    transform: translateX(5px);
}

.footer-modern .footer-info-section,
.footer-modern .footer-open-time {
    color: var(--color-white-92);
    font-size: 15px;
    line-height: 1.8;
}

.footer-modern .footer-info-section p {
    color: var(--color-white-92) !important;
}

.footer-bottom {
    background-color: #082d2d !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding: 25px 0;
    margin-top: 60px;
}

.footer-bottom p {
    margin-bottom: 0;
    font-size: 14px;
    color: var(--color-white-92) !important;
}

.footer-bottom-links a {
    color: var(--color-white-92) !important;
    font-size: 14px;
    text-decoration: none;
}

.footer-bottom-links a:hover {
    color: var(--color-teal-400) !important;
}

.footer-bottom-links span {
    color: rgba(255, 255, 255, 0.3) !important;
}

/* Footer v2 Redesign */

.footer-v2 {
    background-color: #0C3E3E !important;
    color: #ffffff !important;
    padding: 40px 0 0;
    font-family: 'Poppins', sans-serif;
}

.footer-v2-logo img {
    filter: brightness(0) invert(1);
}

.footer-v2-tagline {
    font-size: 14px;
    line-height: 1.6;
    opacity: 0.8;
    max-width: 280px;
    color: var(--color-white);
}

.footer-v2-title {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 8px;
}

.footer-v2-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 35px;
    height: 3px;
    background-color: #2cc2ab;
}

.footer-v2-links li a {
    color: #ffffff;
    text-decoration: none;
    font-size: 14px;
    transition: all 0.3s ease;
}

.footer-v2-links li a:hover {
    padding-left: 2px;
    color: var(--color-teal-400);
}

.footer-v2-socials .footer-icons img {
    filter: brightness(0) invert(1);
}

.footer-v2-contact p,
.footer-v2-contact a {
    color: #ffffff;
    text-decoration: none;
    font-size: 14px;
}

.footer-v2-socials .social-icon {
    color: #ffffff;
    font-size: 18px;
    opacity: 0.8;
    transition: all 0.3s ease;
}

.btn-chat-v2 {

    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    padding: 12px 25px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.btn-chat-v2:hover {
    background-color: rgba(0, 0, 0, 0.2);
    color: #ffffff;
}

.btn-chat-v2 svg {
    height: 22px;
    min-width: 22px;
}

.payment-icons {
    opacity: 0.9;
}

.payment-icons i {
    font-size: 28px;
}

.footer-v2-bottom {
    background-color: #0a3232;
    margin-top: 50px;
}

.footer-v2-bottom p {
    font-size: 13px;
    letter-spacing: 0.5px;
}

/* Responsive Footer v2 */

/* CTA v2 Styles */

.cta-v2 {
    background-color: #f9fafb !important;
    padding: 20px 0px;
}

.container-cta {
    /* background-color: #F3F7F7 !important; */
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px 30px;
}

.cta-v2-wrapper {
    background: transparent;
}

.cta-v2-title {
    font-size: 24px;
    font-weight: 600;
    color: #0C3E3E;
    margin-bottom: 5px;
}

.cta-v2-subtitle {
    font-size: 16px;
    color: #64748b;
    font-weight: 400;
}

.btn-cta-v2 {
    background-color: #0C3E3E;
    color: #ffffff !important;
    padding: 14px 18px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 15px;
    white-space: nowrap;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(12, 62, 62, 0.15);
}

.btn-cta-v2:hover {
    background-color: #082d2d;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(12, 62, 62, 0.2);
}

.cta-v2-icon img {
    object-fit: contain;
}

.cta-v2-card {
    background-color: #ffffff;
    padding: 40px 60px;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
}

.cta-v2-title {
    font-size: 28px;
    font-weight: 600;
    color: #0C3E3E;
    margin-bottom: 8px;
}

.cta-v2-subtitle {
    font-size: 16px;
    color: #64748b;
    font-weight: 400;
}

.btn-cta-v2 {
    background-color: #0C3E3E;
    color: #ffffff !important;
    padding: 16px 40px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 16px;
    transition: all 0.3s ease;
}

.btn-cta-v2:hover {
    background-color: #082d2d;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(12, 62, 62, 0.2);
}

.cta-v2-card {
    background-color: #ffffff;
    padding: 40px 60px;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.cta-v2-title {
    font-size: 28px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 8px;
}

.cta-v2-subtitle {
    font-size: 16px;
    color: #4b5563;
    font-weight: 400;
}

.btn-cta-v2 {
    background-color: #0C3E3E;
    color: #ffffff !important;
    padding: 16px 40px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 16px;
    transition: all 0.3s ease;
}

.btn-cta-v2:hover {
    background-color: #082d2d;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(12, 62, 62, 0.2);
}

.cta-v2-icon {
    flex-shrink: 0;
}

.cta-v2-wrapper {
    background: transparent;
}

.cta-v2-title {
    font-size: 24px;
    font-weight: 600;
    color: #0C3E3E;
    margin-bottom: 5px;
}

.cta-v2-subtitle {
    font-size: 16px;
    color: #64748b;
    font-weight: 400;
}

.btn-cta-v2 {
    background-color: #0C3E3E;
    color: #ffffff !important;
    padding: 14px 32px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(12, 62, 62, 0.15);
}

.btn-cta-v2:hover {
    background-color: #082d2d;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(12, 62, 62, 0.2);
}

.cta-v2-icon img {
    object-fit: contain;
}

.license-acceptance-bar {
    background-color: #fff;
    border: 1px solid #E5E7EB;
    border-radius: 50px;
    width: max-content;
}

.license-acceptance-bar p {
    font-size: 12px;
    font-weight: 400;
    color: #1C1C1E;
}

.license-acceptance-bar i {
    width: 22px;
    height: 22px;
    color: var(--color-teal-400);
    margin-bottom: 5px;
}

#booking-form {
    margin-top: -210px;
    z-index: 1;
    background-color: #f9fafb;
}

.confirmation-icon {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.confirmation-content {
    line-height: 1.1;
}

.confirmation-title {
    font-size: 12px;
    font-weight: 600;
    color: #111;
    margin-bottom: 4px;
    text-align: left;
}

.confirmation-subtitle {
    font-size: 12px;
    color: #6B7280;
    font-weight: 500;
    text-align: left;
}

.floating-icon-wrap.pos-3,
.floating-icon-wrap.pos-4 {
    border-radius: 8px !important;
}

.driver-age-label {
    font-size: 13px;
    color: #1C1C1E;
    margin-bottom: 8px;
    font-weight: 600;
}

.bf-container {
    box-shadow: rgba(0, 0, 0, 0.05) 0px 20px 20px 0px;
    border: 1px solid #edecec;
}

/* ══════════════════════════════════════════════════════════════════
   CONTACT PAGE — HEADER SECTION (Redesign)
   ══════════════════════════════════════════════════════════════════ */

.pingouin-contact-redesign {
    overflow-x: hidden;
    width: 100%;
}

.pingouin-contact-redesign .contact-header-section {
    position: relative;
    overflow: hidden;
    padding-top: 30px !important;
    padding-bottom: 80px !important;
}

.pingouin-contact-redesign .breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 1.5rem !important;
}

.pingouin-contact-redesign .breadcrumb-item,
.pingouin-contact-redesign .breadcrumb-item a {
    color: #1C1C1E;
    text-decoration: none;
    font-size: 14px;
    font-weight: var(--font-weight-medium);
}

.pingouin-contact-redesign .breadcrumb-item.active {
    color: var(--fleet-muted);
}

.pingouin-contact-redesign .breadcrumb-item+.breadcrumb-item::before {
    content: ">";
    color: #cbd5e1;
    font-size: inherit;
    padding: 0 10px;
}

.pingouin-contact-redesign .title-wrapper {
    position: relative;
    display: inline-block;
    width: calc(100% - 110px);
}

.pingouin-contact-redesign .contact-main-title {
    font-family: 'Poppins', sans-serif;
    color: var(--fleet-dark) !important;
    font-size: 60px;
    letter-spacing: -1px;
    font-weight: var(--font-weight-semi-bold) !important;
}

.pingouin-contact-redesign .title-underline {
    width: 70px;
    height: 5px;
    background-color: var(--fleet-primary);
    border-radius: 10px;
    margin-top: 5px;
}

.pingouin-contact-redesign .contact-subtitle {
    font-family: 'Inter', sans-serif;
    color: var(--fleet-muted) !important;
    max-width: 500px;
    font-size: 18px !important;
}

.pingouin-contact-redesign .contact-feature-box {
    transition: transform 0.3s ease;
}

.pingouin-contact-redesign .contact-feature-box:hover {
    transform: translateY(-5px);
}

.pingouin-contact-redesign .contact-feature-icon {
    width: 60px;
    height: 60px;
    background-color: var(--fleet-primary-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--fleet-primary);
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.pingouin-contact-redesign .contact-feature-icon img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.pingouin-contact-redesign .contact-feature-text h6 {
    text-align: left;
}

.pingouin-contact-redesign .contact-feature-text h6 {
    font-family: 'Poppins', sans-serif;
    color: var(--theme-color);
    margin-bottom: 2px;
    font-size: 16px;
    font-weight: var(--font-weight-bold) !important;
}

.pingouin-contact-redesign .contact-feature-text p {
    font-size: 14px;
    font-weight: var(--font-weight-medium);
}

.pingouin-contact-redesign .contact-header-visual {
    position: relative;
    padding: 30px;
}

.pingouin-contact-redesign .visual-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    z-index: 0;
    opacity: 0.6;
}

.pingouin-contact-redesign .visual-circle-1 {
    width: 350px;
    height: 350px;
    background: rgba(44, 194, 171, 0.15);
    top: -20%;
    right: -10%;
}

.pingouin-contact-redesign .visual-circle-2 {
    width: 250px;
    height: 250px;
    background: rgba(39, 78, 94, 0.08);
    bottom: -10%;
    left: 10%;
}

.pingouin-contact-redesign .contact-header-visual img {
    border: 8px solid var(--fleet-white);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.1);
    transition: transform 0.5s ease;
}

.pingouin-contact-redesign .contact-header-visual:hover img {
    transform: scale(1.02);
}

/* Contact Cards Section */

.pingouin-contact-redesign .contact-cards-section {
    padding-bottom: 80px;
    background: var(--fleet-white);
}

.pingouin-contact-redesign .contact-info-card {
    background: var(--fleet-white);
    border-radius: 20px;
    padding: 50px 30px;
    text-align: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.02);
}

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

.pingouin-contact-redesign .card-icon-wrapper {
    width: 80px;
    height: 80px;
    background-color: var(--fleet-primary-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--fleet-primary);
    margin: 0 auto 25px;
}

.pingouin-contact-redesign .card-icon-wrapper img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.pingouin-contact-redesign .card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: var(--font-weight-bold);
    font-size: 20px;
    color: var(--fleet-dark);
    margin-bottom: 10px;
}

.pingouin-contact-redesign .card-desc {
    color: var(--newdesign-text-secondary);
    font-size: 16px;
    font-weight: var(--font-weight-medium);
    margin-bottom: 20px;
}

.pingouin-contact-redesign .card-main-info {
    color: var(--theme-color);
    font-weight: var(--font-weight-semi-bold);
    font-size: 22px;
    margin-bottom: 15px;
    display: block;
    text-decoration: none !important;
}

.pingouin-contact-redesign .card-sub-info {
    color: var(--newdesign-text-secondary);
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 0;
    font-weight: var(--font-weight-medium);
}

/* ══════════════════════════════════════════════════════════════════
   MODERN MAP SECTION
   ══════════════════════════════════════════════════════════════════ */

.pingouin-contact-redesign .pingouin-redesign-map-section {
    padding: 80px 0;
    background: var(--newdesign-neturals-muted-bg);
}

.pingouin-contact-redesign .pingouin-redesign-map-container {
    position: relative;
    height: 550px;
    border-radius: 30px;
    overflow: visible;
}

.pingouin-contact-redesign .pingouin-redesign-map-iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 30px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
}

.pingouin-contact-redesign .pingouin-redesign-map-card {
    position: absolute;
    top: 5%;
    left: 30px;
    transform: translateY(-50%);
    background: var(--fleet-white);
    padding: 35px 30px;
    border-radius: 8px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
    width: 100%;
    max-width: 360px;
    z-index: 10;
    border: 1px solid rgba(0, 0, 0, 0.03);
}

.pingouin-contact-redesign .pingouin-redesign-map-title {
    font-family: 'Poppins', sans-serif;
    font-weight: var(--font-weight-bold);
    font-size: 20px;
    color: var(--theme-color);
    margin-bottom: 15px;
}

.pingouin-contact-redesign .pingouin-redesign-map-details {
    color: var(--newdesign-text-secondary);
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 30px;
}

.pingouin-contact-redesign .pingouin-redesign-map-details p {
    margin-bottom: 4px;
}

.pingouin-contact-redesign .pingouin-redesign-map-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 25px;
    background: transparent;
    border: 1.5px solid var(--theme-color);
    color: var(--theme-color);
    font-weight: var(--font-weight-semi-bold);
    font-family: 'Poppins', sans-serif;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    gap: 10px;
    font-size: 15px;
}

.pingouin-contact-redesign .pingouin-redesign-map-btn:hover {
    background: var(--theme-color);
    color: var(--fleet-white);
    transform: translateY(-3px);
}

.pingouin-contact-redesign .pingouin-redesign-map-btn img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.pingouin-contact-redesign .pingouin-redesign-map-btn:hover img {
    filter: brightness(0) invert(1);
}

/* Centered Modern Form Section with Unique Classes */

.pingouin-contact-redesign .pingouin-redesign-form-section {
    padding: 100px 0;
}

.pingouin-contact-redesign .pingouin-redesign-form-card {
    background: var(--fleet-white);
    border-radius: 30px;
    padding: 70px 80px;
    box-shadow: 0 15px 60px rgba(0, 0, 0, 0.04);
    max-width: 100%;
    margin: 0 auto;
    border: 1px solid rgba(0, 0, 0, 0.02);
}

.pingouin-contact-redesign .pingouin-redesign-form-title {
    font-family: 'Poppins', sans-serif;
    font-weight: var(--font-weight-bold);
    font-size: 2.4rem;
    color: var(--fleet-dark);
    margin-bottom: 12px;
    letter-spacing: -0.5px;
}

.pingouin-contact-redesign .pingouin-redesign-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    margin-bottom: 50px;
    font-weight: var(--font-weight-regular);
}

.pingouin-contact-redesign .pingouin-redesign-form-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--theme-color);
    margin-bottom: 12px;
    letter-spacing: 0.5px;
    text-align: left;
}

.pingouin-contact-redesign .required-star {
    color: #EF4444;
    margin-left: 2px;
}

.pingouin-contact-redesign .pingouin-redesign-form-input-wrap {
    position: relative;
    margin-bottom: 30px;
}

.pingouin-contact-redesign .pingouin-redesign-form-input,
.pingouin-contact-redesign .pingouin-redesign-form-textarea {
    width: 100%;
    padding: 18px 50px 18px 20px;
    border: 1px solid var(--newdesign-neturals-border);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 400;
    color: var(--newdesign-text-primary);
    background: var(--fleet-white);
    transition: all 0.3s ease;
    box-sizing: border-box;
    display: block;
}

.pingouin-contact-redesign .pingouin-redesign-form-input::placeholder,
.pingouin-contact-redesign .pingouin-redesign-form-textarea::placeholder {
    color: var(--newdesign-text-secondary);
    opacity: 0.8;
}

.pingouin-contact-redesign .pingouin-redesign-form-input:focus,
.pingouin-contact-redesign .pingouin-redesign-form-textarea:focus {
    outline: none;
    border-color: var(--theme-color);
    box-shadow: 0 0 0 5px rgba(15, 76, 76, 0.05);
}

.pingouin-contact-redesign .pingouin-redesign-form-input.error,
.pingouin-contact-redesign .pingouin-redesign-form-textarea.error {
    border-color: #EF4444 !important;
    background-color: rgba(239, 68, 68, 0.02) !important;
}

.pingouin-contact-redesign .pingouin-redesign-form-icon {
    position: absolute;
    right: 20px;
    top: 20px;
    color: var(--newdesign-text-secondary);
    width: 20px;
    height: 20px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

.pingouin-contact-redesign .pingouin-redesign-form-select-icon {
    width: 24px;
    height: 24px;
}

.pingouin-contact-redesign .pingouin-redesign-form-textarea {
    min-height: 180px;
}

.pingouin-contact-redesign .pingouin-redesign-form-textarea-icon {
    top: 20px;
    bottom: auto;
    transform: none;
    right: 20px;
}

.pingouin-redesign-success-box {
    justify-content: center;
    text-align: center;
}

#contact_success_data .primary-bg {
    background-color: var(--newdesign-status-success) !important;
    border-radius: 8px;
    padding: 20px !important;
}

#contact_error_data .accent-bg {
    background-color: var(--newdesign-status-error) !important;
    border-radius: 8px;
    padding: 20px !important;
}

.pingouin-contact-redesign .pingouin-redesign-form-error {
    display: block;
    text-align: left;
    margin-top: 8px;
    color: #EF4444;
    font-size: 13px;
    font-weight: 500;
}

.pingouin-contact-redesign .pingouin-redesign-form-error label.error {
    color: #EF4444;
    margin-bottom: 0;
    font-size: 13px;
    font-weight: 500;
    display: block;
}

.pingouin-contact-redesign .pingouin-redesign-form-submit-wrap {
    text-align: center;
    margin-top: 25px;
}

.pingouin-contact-redesign .pingouin-redesign-form-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: var(--theme-color);
    color: #FFFFFF !important;
    padding: 15px 45px;
    border-radius: 8px;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    border: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    font-size: 16px;
    text-decoration: none !important;
}

.pingouin-contact-redesign .pingouin-redesign-form-submit:hover {
    background: var(--color-teal-500);
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(15, 76, 76, 0.2);
}

.pingouin-contact-redesign .pingouin-redesign-form-btn-arrow {
    width: 25px;
    height: 25px;
    filter: brightness(0) invert(1);
    transition: transform 0.3s ease;
}

.pingouin-contact-redesign .pingouin-redesign-form-footer {
    text-align: center;
    margin-top: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--newdesign-text-secondary);
    font-size: 12px;
    font-weight: 400;
}

.pingouin-contact-redesign .pingouin-redesign-form-footer-icon {
    width: 22px;
    height: 22px;
    filter: invert(61%) sepia(50%) saturate(614%) hue-rotate(119deg) brightness(93%) contrast(88%);
    flex-shrink: 0;
}

/* Help Center CTA Section */

.pingouin-contact-redesign .help-center-cta-section {
    padding-bottom: 100px;
}

.pingouin-contact-redesign .help-banner {
    background: #f1f5f9;
    border-radius: 8px;
    padding: 0px 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    max-width: 1000px;
    margin: 0 auto;
    transition: all 0.3s ease;
    height: 130px;
}

.pingouin-contact-redesign .help-banner {
    background: var(--newdesign-neturals-soft-bg);
}

.pingouin-contact-redesign .help-banner:hover {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.pingouin-contact-redesign .help-content-wrap {
    display: flex;
    align-items: center;
    gap: 25px;
}

.pingouin-contact-redesign .help-icon-circle {
    width: 65px;
    height: 65px;
    background: var(--fleet-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--fleet-primary);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);
    flex-shrink: 0;
}

.pingouin-contact-redesign .help-icon-circle img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.pingouin-contact-redesign .help-text h4 {
    font-family: 'Poppins', sans-serif;
    font-weight: var(--font-weight-bold);
    font-size: 24px;
    color: var(--newdesign-text-primary);
    margin-bottom: 6px;
    letter-spacing: -0.5px;
}

.pingouin-contact-redesign .help-text p {
    color: var(--newdesign-text-secondary);
    font-size: 18px;
    margin-bottom: 0;
    font-weight: var(--font-weight-regular);
}

.pingouin-contact-redesign .btn-help-center {
    background: var(--theme-color);
    color: var(--fleet-white) !important;
    padding: 14px 30px;
    border-radius: 8px;
    font-weight: var(--font-weight-semi-bold);
    font-family: 'Poppins', sans-serif;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    white-space: nowrap;
    font-size: 0.95rem;
}

.pingouin-contact-redesign .btn-help-center:hover {
    background: var(--color-teal-500);
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(15, 76, 76, 0.2);
}

.pingouin-contact-redesign .btn-help-center .btn-icon-right {
    width: 24px;
    height: 24px;
    filter: brightness(0) invert(1);
    transition: transform 0.3s ease;
}

/* Large Decorative Icon Visual */

.pingouin-contact-redesign .contact-header-icon-visual {
    position: relative;
    padding: 30px;
    z-index: 1;
}

.pingouin-contact-redesign .contact-header-icon-visual {
    position: relative;
    display: inline-block;
}

.pingouin-contact-redesign .visual-circle-large {
    width: 320px;
    height: 320px;
    background: hsl(180, 68%, 15%, 0.05);
    border-radius: 50%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-color);
    box-shadow: 0 30px 60px rgba(44, 194, 171, 0.05);
    position: relative;
    z-index: 2;
}

.pingouin-contact-redesign .visual-dot {
    position: absolute;
    border-radius: 50%;
    z-index: 1;
}

.pingouin-contact-redesign .visual-dot-1 {
    width: 80px;
    height: 80px;
    background: rgba(15, 76, 76, 0.04);
    bottom: 20px;
    right: -20px;
}

.pingouin-contact-redesign .visual-dot-2 {
    width: 45px;
    height: 45px;
    background: rgba(44, 194, 171, 0.06);
    bottom: 90px;
    right: -45px;
}

.pingouin-contact-redesign .contact-hero-img {
    width: 180px;
    height: auto;
    object-fit: contain;
}

/* Background blob */

.pingouin-contact-redesign .contact-header-section::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(44, 194, 171, 0.04) 0%, transparent 70%);
    top: -200px;
    right: -100px;
    z-index: 0;
    pointer-events: none;
}

/* ══════════════════════════════════════════════════════════════════
   ABOUT PAGE — REDESIGN
   ══════════════════════════════════════════════════════════════════ */

.pingouin-about-redesign {
    font-family: 'Poppins', sans-serif;
    color: var(--newdesign-text-primary);
}

/* Header Section */

.pingouin-about-redesign .about-header-section {
    padding: 50px 0 70px;
    background: var(--newdesign-neturals-muted-bg);
}

/* Booking Flow Hero breakout */

.booking-flow-hero {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    margin-top: -3rem !important;
    margin-bottom: 2rem !important;
}

.booking-flow-hero .about-header-section {
    background-color: #fff !important;
}

/* Global Breadcrumb */

.pingouin-global-breadcrumb {
    background-color: transparent;
    padding-bottom: 0px;
}

.pingouin-global-breadcrumb .breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 0.5rem;
}

.pingouin-global-breadcrumb .breadcrumb-item,
.pingouin-global-breadcrumb .breadcrumb-item a {
    color: var(--newdesign-text-primary);
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    font-family: 'Poppins', sans-serif;
}

.pingouin-global-breadcrumb .breadcrumb-item+.breadcrumb-item,
.pingouin-global-breadcrumb .breadcrumb-item+.breadcrumb-item a {
    color: var(--newdesign-text-secondary);
    font-weight: 400;
}

.pingouin-global-breadcrumb .breadcrumb-item.active {
    color: var(--newdesign-text-secondary);
    font-weight: 400;
}

.pingouin-global-breadcrumb .breadcrumb-item+.breadcrumb-item::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='12' viewBox='0 0 7 12' fill='none'%3E%3Cpath d='M6.7075 5.65289L1.05375 11.3066L0 10.2529L4.6 5.65289L0 1.05289L1.05375 -0.000860214L6.7075 5.65289Z' fill='%230F4C4C'/%3E%3C/svg%3E");
    vertical-align: middle;
}

.pingouin-global-breadcrumb .breadcrumb-item+.breadcrumb-item+.breadcrumb-item::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='12' viewBox='0 0 7 12' fill='none'%3E%3Cpath d='M6.7075 5.65289L1.05375 11.3066L0 10.2529L4.6 5.65289L0 1.05289L1.05375 -0.000860214L6.7075 5.65289Z' fill='%236B7280'/%3E%3C/svg%3E");
}

.pingouin-about-redesign .title-wrapper {
    position: relative;
    display: inline-block;
}

.pingouin-about-redesign .about-main-title {
    font-family: 'Poppins', sans-serif;
    color: var(--newdesign-text-primary);
    font-size: 50px;
    font-weight: 600;
    margin-bottom: 0;
    letter-spacing: -1px;
}

.pingouin-about-redesign .title-underline {
    width: 65px;
    height: 4px;
    background-color: var(--newdesign-accent);
    border-radius: 4px;
    margin-top: 15px;
}

.pingouin-about-redesign .about-subtitle {
    font-family: 'Poppins', sans-serif;
    color: var(--newdesign-text-secondary);
    max-width: 830px;
    width: 100%;
    font-size: 16px;
    line-height: 1.6;
    margin-top: 0px;
}

/* Feature Cards */

.pingouin-about-redesign .about-features-row {
    margin-top: 40px;
    padding-top: 40px;
}

.pingouin-about-redesign .feature-col {
    position: relative;
    border-right: 1px solid rgba(0, 0, 0, 0.05);
}

.pingouin-about-redesign .feature-col:last-child,
.pingouin-about-redesign .feature-col.border-0 {
    border-right: none;
}

.pingouin-about-redesign .about-feature-item {
    text-align: center;
    padding: 10px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.pingouin-about-redesign .afi-divider {
    width: 30px;
    height: 3px;
    background-color: var(--newdesign-accent);
    margin: 20px auto 25px;
    border-radius: 2px;
}

.pingouin-about-redesign .afi-title {
    font-weight: 600;
    font-size: 15px;
    color: var(--newdesign-text-primary);
    line-height: 1.5;
    margin: 0;
    font-family: 'Poppins', sans-serif;
}

/* Discover Section */

.pingouin-about-redesign .discover-subtitle {
    font-size: 16px;
    color: var(--newdesign-text-secondary);
    max-width: 500px;
    font-weight: var(--font-weight-regular);
}

.pingouin-about-redesign .discover-subtitle span {
    color: var(--newdesign-accent);
}

.pingouin-about-redesign .discover-card-link {
    text-decoration: none !important;
    display: block;
    height: 100%;
}

.pingouin-about-redesign .discover-card {
    background: var(--color-white);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease;
}

.pingouin-about-redesign .dc-img-wrap {
    position: relative;
    overflow: hidden;
}

.pingouin-about-redesign .dc-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.pingouin-about-redesign .discover-card-link:hover .dc-img-wrap .dc-icon-badge+img {
    transform: scale(1.05);
}

.pingouin-about-redesign .dc-icon-badge {
    position: absolute;
    top: 20px;
    left: 20px;
    background: var(--color-white);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--newdesign-accent);
    z-index: 2;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.pingouin-about-redesign .dc-icon-badge img {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.pingouin-about-redesign .dc-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.pingouin-about-redesign .dc-category {
    color: var(--newdesign-accent);
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 10px;
}

.pingouin-about-redesign .dc-title {
    font-size: 22px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    margin-bottom: 10px;
}

.pingouin-about-redesign .dc-title-underline {
    width: 40px;
    height: 3px;
    background-color: var(--newdesign-accent);
    border-radius: 2px;
    margin-bottom: 20px;
}

.pingouin-about-redesign .dc-desc {
    color: var(--newdesign-text-secondary);
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 25px;
    flex-grow: 1;
}

.pingouin-about-redesign .dc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    border: 1px solid var(--theme-color);
    border-radius: 8px;
    color: var(--theme-color);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
    align-self: flex-start;
    gap: 10px;
}

.pingouin-about-redesign .discover-card-link:hover .dc-btn,
.pingouin-about-redesign .dc-btn:hover {
    background: var(--theme-color);
    color: var(--color-white);
}

.pingouin-about-redesign .dc-btn i {
    width: 16px;
    height: 16px;
    margin-left: 8px;
}

/* Values Section */

.pingouin-about-redesign .values-section {
    background-color: var(--newdesign-neturals-muted-bg);
    padding-bottom: 80px;
}

.pingouin-about-redesign .values-subtitle {
    font-size: 16px;
    color: var(--newdesign-text-secondary);
    max-width: 390px;
}

.pingouin-about-redesign .values-row {
    margin-top: 40px;
}

.pingouin-about-redesign .value-col {
    position: relative;
    border-right: 1px solid var(--newdesign-neturals-border);
}

.pingouin-about-redesign .value-col:last-child,
.pingouin-about-redesign .value-col.border-0 {
    border-right: none;
}

.pingouin-about-redesign .value-item {
    background: transparent;
    padding: 10px 15px;
}

.pingouin-about-redesign .vi-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    flex-shrink: 0;
}

.pingouin-about-redesign .vi-icon img {
    width: 70px;
}

.pingouin-about-redesign .vi-title {
    font-weight: 600;
    font-size: 15px;
    color: var(--newdesign-text-primary);
    margin-bottom: 4px;
}

.pingouin-about-redesign .vi-desc {
    color: var(--newdesign-text-secondary);
    font-size: 13px;
    line-height: 1.5;
    margin: 0;
}

/* Our story page */

/* Story Section */

.story-section {
    padding: 60px 0 75px;
}

.story-label {
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #2FBF9F;
}

.story-title,
.journey-title {
    margin: 0 0 18px;
    color: #1C1C1E;
    font-size: 32px;
    font-weight: 600;

}

.story-intro,
.story-copy,
.story-outro {
    color: #6B7280;
    font-size: 18px;
    font-weight: 500;
}

.story-intro {
    display: inline-block;
    max-width: 520px;
    margin-bottom: 18px;
    line-height: 1.65;
    text-decoration: none;
}

.story-copy {
    max-width: 540px;
    margin-bottom: 0;
    line-height: 1.55;
}

.story-copy p {
    margin-bottom: 12px;
}

.story-copy p:last-child {
    margin-bottom: 0;
}

.story-image-wrap {
    height: 100%;
}

.story-image {
    width: 100%;
    height: auto;
    min-height: 0;
    object-fit: cover;
    display: block;
}

.story-features {
    margin: 40px 0;
    max-width: 850px;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    width: 100%;
    justify-content: flex-start;
    column-gap: 0;
    align-items: start;
}

.story-feature-item {
    min-width: 0;
    padding: 14px 18px 12px;
    text-align: center;
    border-right: 1px solid #eceff3;
}

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

.story-feature-icon {
    width: 58px;
    height: 58px;
    margin-bottom: 8px;
    object-fit: contain;
}

.story-feature-title {
    margin: 0;
    color: #1C1C1E;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
}

.story-outro {
    max-width: 760px !important;
    margin: 0;
    width: 100%;
    line-height: 1.6;
}

.story-outro .highlight {
    color: #2FBF9F;
}

/* Journey Section */

.journey-section {
    padding: 75px 0;
}

.story-journey {
    padding-bottom: 20px;
}

.journey-quote-icon {
    width: 48px;
    height: auto;
    margin-bottom: 24px;
}

.journey-title {
    margin-bottom: 24px;
}

.journey-description {
    color: #6B7280;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 30px;
}

.journey-link {
    color: #2FBF9F;
    font-size: 24px;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.journey-link:hover {
    opacity: 0.8;
}

/* History Section */

.history-section {
    padding: 75px 0;
    background-color: #ffffff;
}

.history-image-wrap {
    max-width: 420px;
}

.timeline-wrapper {
    padding-left: 30px;
}

.timeline-container {
    position: relative;
    padding-left: 60px;
}

.timeline-container::before {
    content: '';
    position: absolute;
    left: 0;
    top: 42px;
    /* Start at the center of the first icon */
    bottom: 42px;
    /* End at the center of the last icon */
    width: 1px;
    background-color: #eceff3;
}

.history-content .sec-description {
    max-width: 388px !important;
    width: 100%;
}

.timeline-item {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 140px;
}

.timeline-item:last-child {
    margin-bottom: 0;
}

.timeline-item::before {
    content: '';
    position: absolute;
    left: -65px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    border-radius: 50px;
    background-color: #2FBF9F;
}

/* ==========================================================================
   PRINT INVOICE MODAL - PREMIUM NEUTRAL REDESIGN
   ========================================================================== */

.pi-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

/* Equal width columns logic */

.pi-v5-modal .row.g-0 {
    display: flex;
    min-height: 520px;
}

.pi-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    /* Brand background */
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

/* Optional: Add a subtle decorative element like the blobs in the reference */

.pi-v5-side-panel::before {
    content: '';
    position: absolute;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
    top: -50px;
    right: -50px;
}

.pi-v5-logo {
    height: auto;
    margin-bottom: 2.5rem;
    transition: transform 0.3s ease;
    filter: brightness(0) invert(1);
    /* Make SVG logo white */
}

.pi-v5-illustration {
    margin-bottom: 2rem;
    position: relative;
    z-index: 2;
}

.pi-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.1));
}

.pi-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
    position: relative;
    z-index: 2;
}

.pi-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 260px;
    position: relative;
    z-index: 2;
}

.pi-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pi-v5-form-icon-circle {
    width: 60px;
    height: 60px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.pi-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 30px;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
}

.pi-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

.pi-v5-input-group {
    position: relative;
    margin-bottom: 1.5rem;
}

.pi-v5-input-icon {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--newdesign-text-muted);
    pointer-events: none;
    transition: all 0.3s ease;
}

.pi-v5-input {
    width: 100% !important;
    height: 60px !important;
    padding-left: 54px !important;
    border: 1.5px solid var(--newdesign-neturals-border) !important;
    border-radius: 8px !important;
    font-size: 16px !important;
    font-weight: var(--font-weight-medium) !important;
    color: var(--newdesign-text-primary) !important;
    background: #fcfdfe !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.pi-v5-input::placeholder {
    color: var(--newdesign-text-muted);
    font-weight: var(--font-weight-regular);
}

.pi-v5-input:focus {
    background: var(--color-white) !important;
    border-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.08) !important;
    outline: none;
}

.pi-v5-input:focus+.pi-v5-input-icon {
    color: var(--newdesign-brand-primary);
    transform: translateY(-50%) scale(1.1);
}

.pi-v5-btn {
    height: 60px;
    background: var(--newdesign-brand-primary) !important;
    border: none !important;
    border-radius: 8px !important;
    color: var(--color-white) !important;
    font-weight: var(--font-weight-medium) !important;
    font-size: 17px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.2) !important;
}

.pi-v5-btn:hover {
    background: var(--newdesign-primary-dark) !important;
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(15, 76, 76, 0.25) !important;
}

.pi-v5-btn:active {
    transform: translateY(0);
}

.pi-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: var(--color-white);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--newdesign-text-secondary);
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100;
    border: 1px solid var(--newdesign-neturals-border);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.pi-v5-close-btn:hover {
    background: #fee2e2;
    color: var(--newdesign-status-error);
    border-color: #fecaca;
    transform: rotate(90deg);
}

/* Responsive adjustments */

/* ==========================================================================
   PRINT INVOICE - ERROR MESSAGING (v3)
   ========================================================================== */

#print_generalError {
    margin-bottom: 0;
    transition: all 0.3s ease;
}

/* Unified V5 Alert Box for General/Server Errors */

.v5-error-alert,
.pi-v5-error-alert,
.mb-v5-error-alert {
    background: #fff5f5 !important;
    border: 1px solid #feb2b2 !important;
    color: #c53030 !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: left !important;
    box-shadow: 0 4px 6px -1px rgba(197, 48, 48, 0.05) !important;
    animation: v5-error-in 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    margin-bottom: 1.5rem;
}

.v5-error-alert svg,
.pi-v5-error-alert svg,
.mb-v5-error-alert svg {
    flex-shrink: 0;
    color: #e53e3e;
}

@keyframes v5-error-in {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

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

/* Field Highlight on Error */

.pi-v5-input.error {
    border-color: #ef4444 !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.08) !important;
}

/* Focus state on Error (Maintain red) */

.pi-v5-input.error:focus {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.15) !important;
}

/* Small Red Message Below Field */

#print_bookingNumberError label.error {
    color: #ef4444;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 4px 0 0 0;
    text-align: left;
    background: transparent;
    border: none;
    padding: 0;
}

#print_bookingNumberError label.error:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

@keyframes pi-error-in {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }

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

/* ==========================================================================
   PROFESSIONAL LOGIN REDESIGN (v5)
   ========================================================================== */

.pl-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.pl-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.pl-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.timeline-icon {
    width: 84px;
    height: 84px;
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 30px;
    flex-shrink: 0;
    z-index: 2;
}

.timeline-icon img {
    width: 38px;
    height: 38px;
    object-fit: contain;
}

.timeline-year {
    font-size: 13px;
    font-weight: 600;
    color: #2FBF9F;
    margin-bottom: 6px;
    letter-spacing: 0.02em;
}

.timeline-title {
    font-size: 16px;
    font-weight: 600;
    color: #1C1C1E;
    margin-bottom: 6px;
    line-height: 1.3;
}

.timeline-desc {
    font-size: 15px;
    color: #6B7280;
    margin: 0;
    line-height: 1.5;
    max-width: 320px;
}

/*---Who-we-are-page */

.who-we-are-section {
    background-image: url('../images/new/who-we-bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top right 30%;
    padding: 60px 0;
}

.who-we-are-section .sec-description {
    max-width: 475px !important;
    width: 100%;
    margin-bottom: 24px;
}

.who-we-are-features {
    padding: 80px 0;
    background-color: #f9fafc;
}

.features-grid {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 1200px;
    margin: 0 auto;
}

.who-we-are-features .features-grid .feature-award-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 1;
    padding: 0 30px;
    text-align: left;
}

.who-we-are-features .fi-icon-wrap {
    align-items: center;
    justify-content: center;
    margin-right: 25px;
    flex-shrink: 0;
}

.who-we-are-features .fi-icon-wrap img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    /* Precise teal filter for #2FBF9F */

}

.who-we-are-features .fi-text {
    font-size: 16px;
    font-weight: 500;
    color: #1C1C1E;
    line-height: 1.35;
    max-width: 260px;
    margin: 0;
}

.feature-divider {
    width: 1px;
    height: 80px;
    background-color: #ECECEF;
}

.who-we-are-vision-mission {
    padding: 80px 0;
    background-color: #fff;
}

.vm-grid {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 50px;
}

.vm-item {
    display: flex;
    gap: 30px;
    flex: 1;
}

.who-we-are-vision-mission .vm-icon-wrap {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.who-we-are-vision-mission .vm-icon-wrap img {
    width: 88px;
    height: 88px;
    object-fit: contain;
}

.vm-label {
    font-size: 14px;
    font-weight: 600;
    color: #2FBF9F;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
    text-transform: uppercase;
    text-align: left;
}

.vm-title {
    font-size: 26px;
    font-weight: 600;
    color: #1C1C1E;
    margin-bottom: 12px;
    text-align: left;
}

.vm-underline {
    width: 100%;
    max-width: 200px;
    height: 4px;
    background-color: #2FBF9F;
    border-radius: 2px;
    margin-bottom: 25px;
}

.vm-desc {
    font-size: 16px;
    color: #6B7280;
    line-height: 1.6;
    margin: 0;
    text-align: left;
}

.vm-divider {
    width: 1px;
    height: 250px;
    background-color: #ECECEF;
    align-self: center;
}

/* Our Values Section */

.who-we-are-values {
    padding: 100px 0;
    background-color: #f9fafc;
}

.values-header {
    text-align: left;
    margin-bottom: 60px;
}

.values-main-title {
    font-size: 32px;
    font-weight: 600;
    color: #1C1C1E;
    margin-top: 10px;
}

.values-nav-wrapper {
    margin-bottom: 60px;
}

.values-nav-grid {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    max-width: 100%;
    margin: 0 auto;
}

.val-nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    transition: all 0.3s ease;
    flex: 1;
}

.val-nav-icon {
    width: 90px;
    height: 90px;
    background-color: #e5f4f1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.val-nav-icon img {
    width: 45px;
    height: 45px;
    object-fit: contain;
}

.val-nav-item span {
    font-size: 15px;
    font-weight: 600;
    color: #1C1C1E;
}

.val-nav-item.active .val-nav-icon {
    background-color: #fff;
    border-color: #2FBF9F;
    box-shadow: 0 10px 25px rgba(47, 191, 159, 0.15);
    transform: translateY(-5px);
}

.val-nav-item:hover .val-nav-icon {
    transform: translateY(-5px);
}

/* Slider Content */

.values-slider-container {
    background-color: #fff;
    border-radius: 4px;
    padding: 40px;
}

.value-slide-inner {
    display: flex;
    align-items: center;
    gap: 50px;
}

.values-slick-slider .slick-list {
    padding-bottom: 10px !important;
}

.values-slick-slider {
    margin-bottom: 0 !important;
}

.vs-left {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 30px;
}

.vs-icon-wrap {
    width: 100px;
    height: 100px;
    background-color: #e6f6f3;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.vs-icon-wrap img {
    width: 55px;
    height: 55px;
}

.vs-intro h4 {
    font-size: 20px;
    font-weight: 600;
    color: #1C1C1E;
    margin-bottom: 10px;
    text-align: left;
}

.vs-intro p {
    font-size: 16px;
    color: #6B7280;
    line-height: 1.5;
    margin: 0;
    text-align: left;
}

.vs-right {
    flex: 1.2;
}

.vs-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.vs-list li {
    position: relative;
    padding-left: 40px;
    font-size: 16px;
    color: #1C1C1E;
    font-weight: 500;
    text-align: left;
    line-height: 1.4;
}

.vs-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='11' stroke='%232FBF9F' stroke-width='2'/%3E%3Cpath d='M8 12L11 15L16 9' stroke='%232FBF9F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
}

/* Slider Pagination */

.values-slick-slider .slick-dots {
    bottom: -80px;
}

.values-slick-slider .slick-dots li button:before {
    font-size: 12px;
    color: #D1D5DB;
    opacity: 1;
}

.values-slick-slider .slick-dots li.slick-active button:before {
    color: #2FBF9F;
}

.our-promise {
    padding: 80px 0;
    background-color: #f9fafc;
}

.promise-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
    max-width: 800px;
}

.promise-item {
    display: flex;
    align-items: center;
    gap: 30px;
}

.promise-icon {
    width: 68px;
    height: 68px;
    background-color: #e5f4f1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.promise-icon img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.promise-title {
    font-size: 16px;
    font-weight: 600;
    color: #1C1C1E;
    margin-bottom: 2px;
}

.promise-desc {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
    line-height: 1.4;
}

/* Our commitment page */

.our-commitment-hero {
    background-image: url('../images/new/commitment-web.jpg');
}

.commitment-award {
    background-color: #f9fafc;
}

.award-card {
    background: #ffffff;
    padding: 50px 30px;
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease;
}

.recognition-box {
    background: #ffffff;
    padding: 50px 30px;
    border-radius: 8px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.01);
    transition: transform 0.3s ease;
}

.recognition-content p {
    color: #6B7280;
}

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

.award-trophy {
    width: 100%;
    max-width: 240px;
    height: auto;
}

.nonimi-text {
    font-size: 22px;
    font-weight: 600;
    color: #2FBF9F;
}

.declared-text {
    font-size: 18px;
    color: #1C1C1E;
}

.award-year {
    font-size: 22px;
    font-weight: 600;
    color: #2FBF9F;
}

.award-footer p {
    margin-bottom: 2px;
    line-height: 1.4;
}

.award-footer-secondary {
    font-size: 20px;
    font-weight: 600;
    color: #6B7280;
}

.dedicate-text {
    font-size: 18px;
    font-weight: 600;
    color: #2FBF9F;
}

.signature-line {
    width: 60px;
    height: 2px;
    background-color: #2FBF9F;
}

/* Commitment Action Section */

.commitment-action {
    background-color: #f9fafc;
    padding-bottom: 80px;
}

.action-mini-title {
    font-size: 16px;
    color: #6B7280;
    font-weight: 500;
}

.action-main-title {
    font-size: 32px;
    font-weight: 600;
    color: #1C1C1E;
}

.action-subtitle {
    font-size: 18px;
    color: #6B7280;
}

.action-grid-wrapper {
    margin-top: 60px;
}

.action-row {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.top-row {
    margin-bottom: 40px;
}

.bottom-row {
    max-width: 800px;
    margin: 0 auto;
}

.action-item {
    flex: 1;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 20px;
}

.ai-icon-wrap {
    width: 70px;
    height: 70px;
    background-color: #e5f4f1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ai-icon-wrap img {
    width: 35px;
    height: 35px;
    object-fit: contain;
}

.ai-content h4 {
    font-size: 18px;
    font-weight: 600;
    color: #1C1C1E;
    margin-bottom: 15px;
}

.ai-content p {
    font-size: 16px;
    color: #6B7280;
    line-height: 1.5;
    margin: 0;
}

.action-divider {
    width: 1px;
    height: 120px;
    background-color: #E5E7EB;
    align-self: center;
}

/* Terms Hero Section */

.terms-hero {
    background-color: #f0fbfa;
    padding: 80px 0;

}

.terms-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.faq-hero-icon {
    width: 64px;
    height: 64px;
    background-color: #e5f4f1;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
}

/* Still Need Help Section */
.faq-still-help-section {
    padding: 80px 0;
}

.faq-still-title {
    font-size: 28px;
    font-weight: 600;
    color: #1c1c1e;
}

.faq-still-subtitle {
    font-size: 16px;
    color: #64748b;
}

.faq-support-card {
    background: #ffffff;
    border-radius: 8px;
    padding: 30px 24px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    transition: transform 0.2s, box-shadow 0.2s;
    height: 100%;
}

.faq-support-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(15, 76, 76, 0.05);
}

.faq-support-icon {
    width: 56px;
    height: 56px;
    background-color: #e5f4f1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.faq-support-content {
    flex: 1;
}

.faq-support-label {
    font-size: 14px;
    font-weight: 600;
    color: #1c1c1e;
    margin-bottom: 4px;
}

.faq-support-value {
    font-size: 17px;
    font-weight: 500;
    margin-bottom: 4px;
    color: #6B7280;
}

.faq-support-value a {
    color: #6B7280 !important;
    text-decoration: none !important;
    font-weight: 500;
    word-break: break-word;
}

.faq-support-value a:hover {
    color: var(--theme-color) !important;

}

.faq-support-note {
    font-size: 13px;
    color: #6B7280;
}

.faq-section-title {
    font-size: 28px;
    font-weight: 600;
    color: #1c1c1e;
}

.faq-topic-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 30px 20px !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    text-decoration: none !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02) !important;
}

.faq-topic-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(47, 191, 159, 0.08) !important;
    border-color: #2fbf9f !important;
}

.faq-topic-card.active {
    background: #f0fbfa !important;
    border: 1.5px solid #2fbf9f !important;
}

.faq-nav-container {
    max-width: 100% !important;
}

.faq-topic-icon-wrap {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}

.faq-topic-icon {
    max-width: 85px;
    max-height: 85px;
    object-fit: contain;
}

.faq-topic-name {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1c1c1e !important;
    margin-top: 0 !important;
}

.faq-accordion-container {
    background: #ffffff;
    border-radius: 8px;
    padding: 30px 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.faq-accordion-header {
    font-size: 20px;
    font-weight: 600;
    color: #1c1c1e;
    margin-bottom: 24px;
}

.faq-accordion-item {
    border: 1px solid transparent;
    border-bottom: 1px solid #f1f5f9;
    padding: 18px 20px !important;
    transition: all 0.2s ease;
    background: transparent;
}

.faq-accordion-item:last-child {
    border-bottom: 1px solid #f1f5f9;
}

.faq-accordion-item.active {
    border: 1px solid #2fbf9f !important;
    background-color: #f0fbfa !important;
    border-radius: 8px !important;
    padding: 16px 20px !important;
    margin: 12px 0;
}

.faq-accordion-btn {
    display: flex;
    align-items: center;
    width: 100%;
    text-align: left;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    gap: 16px;
    color: #1c1c1e !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    cursor: pointer;
}

.faq-accordion-icon-wrap {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: #6b7280;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

/* Toggle plus/minus based on active class */
.faq-accordion-item .faq-icon-minus {
    display: none;
}

.faq-accordion-item .faq-icon-plus {
    display: block;
}

.faq-accordion-item.active .faq-accordion-icon-wrap {
    background-color: #2fbf9f;
}

.faq-accordion-item.active .faq-icon-minus {
    display: block;
}

.faq-accordion-item.active .faq-icon-plus {
    display: none;
}

.faq-accordion-body {
    padding: 0 0 0 20px;
    color: #475569;
    font-size: 15px;
    line-height: 1.6;
    margin-top: 10px;
}

.faq-accordion-body ol li {
    margin-bottom: 10px;
}

.faq-accordion-body p {
    margin-bottom: 0;
}

.terms-search-form {
    max-width: 450px;
}

.ts-input-wrap .ts-icon {
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #64748b;
}

.ts-input {
    padding-left: 45px !important;
    padding-right: 45px !important;
    height: 48px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 15px !important;
    color: #1e293b;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
    transition: border-color 0.2s, box-shadow 0.2s;
}

.ts-input:focus {
    border-color: #31c3a6 !important;
    box-shadow: 0 0 0 3px rgba(49, 195, 166, 0.15) !important;
    outline: none !important;
}

.terms-buttons {
    display: flex;
    gap: 1rem;
}

.terms-btn-outline {
    height: 48px;
    padding: 0 20px;
    border-radius: 8px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    color: #1e293b;
    font-weight: 500;
    font-size: 15px;
    transition: all 0.2s;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
    gap: 8px;
}

.terms-btn-outline:hover {
    background: #f8fafc;
    border-color: #cbd5e1;
    color: #0c3e3e;
}

.ts-clear-btn {
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #64748b;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
    z-index: 10;
}

.ts-clear-btn:hover {
    color: #ef4444;
}

/* Styled search results list */

.ts-results-box {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    max-width: 800px;
    margin: 20px auto 0;
    overflow: hidden;
}

.ts-result-link {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    padding: 16px 20px;
    border-bottom: 1px solid #e2e8f0;
    color: #0c3e3e !important;
    text-decoration: none !important;
    font-weight: 500;
    font-size: 15px;
    transition: all 0.2s;
}

.ts-result-link:last-child {
    border-bottom: none;
}

.ts-result-link:hover {
    background: #f8fafc;
    color: #31c3a6 !important;
}

.ts-result-icon {
    position: absolute;
    right: 20px;
    color: #64748b;
    transition: transform 0.2s, color 0.2s;
}

.ts-result-link:hover .ts-result-icon {
    transform: translateX(3px);
    color: #31c3a6;
}

.ts-result-empty {
    padding: 20px;
    color: #64748b;
    text-align: center;
    font-size: 15px;
}

/* Table of Contents Sticky Sidebar */

.sticky-sidebar {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 20px 20px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02) !important;
    position: sticky !important;
    top: 100px !important;
}

.toc-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #0c3e3e !important;
    margin-bottom: 12px !important;
    padding-left: 8px !important;
}

.sticky-sidebar .side-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    max-height: calc(100vh - 220px) !important;
    overflow-y: auto !important;
    background-color: transparent !important;
}

.sticky-sidebar .side-list li {
    margin-bottom: 6px !important;
    padding: 0 !important;
    border: none !important;
}

.sticky-sidebar .side-list li a {
    display: block !important;
    padding: 10px 14px !important;
    color: #475569 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 8px !important;
    border-left: 3px solid transparent !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.sticky-sidebar .side-list li.active a,
.sticky-sidebar .side-list li a:hover {
    background-color: #eafaf5 !important;
    color: #0c3e3e !important;
    border-left: 3px solid #31c3a6 !important;
}

.terms-content * {
    color: #6B7280;
}

.detail-title {
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #0c3e3e !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 20px !important;
}

.detail-title-num {
    width: 48px;
    height: 48px;
    min-width: 48px;
    background-color: #e5f4f1;
    color: #31c3a6;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.detail-title-text {
    color: #1e293b;
    font-size: 22px;
    font-weight: 600;
}

.terms-content p strong {
    display: initial !important;
}

.terms-content p span b {
    color: #6B7280 !important;
}

.terms-content h4,
.terms-content h5,
.terms-content p strong,
.terms-subheading,
.terms-subheading * {
    display: block;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin-top: 24px !important;
    margin-bottom: 12px !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
}

.terms-content ul,
.onlyPrintable ul {
    background: #ffffff !important;
    border: 1px solid #f0f3f6 !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
    padding: 12px 12px !important;
    margin: 16px 0 28px !important;
    list-style-type: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
}

.terms-content ul li,
.onlyPrintable ul li,
.terms-bullet-list li {
    position: relative !important;
    padding-left: 36px !important;
    margin-bottom: 18px !important;
    color: #6B7280 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    list-style-type: none !important;
}

.terms-content ul li:last-child,
.onlyPrintable ul li:last-child,
.terms-bullet-list li:last-child {
    margin-bottom: 0 !important;
}

.terms-content ul li::before,
.onlyPrintable ul li::before,
.terms-bullet-list li::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 3px !important;
    width: 22px !important;
    height: 22px !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.terms-content ul li::before,
.onlyPrintable ul li::before,
.terms-content ul li.term-li-check::before,
.onlyPrintable ul li.term-li-check::before,
.terms-bullet-list li.term-li-check::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2331c3a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='8 12 11 15 16 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

.terms-content ul li.term-li-cross::before,
.onlyPrintable ul li.term-li-cross::before,
.terms-bullet-list li.term-li-cross::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='15' y1='9' x2='9' y2='15'%3E%3C/line%3E%3Cline x1='9' y1='9' x2='15' y2='15'%3E%3C/line%3E%3C/svg%3E") !important;
}

.summary-table-data table {
    background-color: #fff;
    width: 100%;
}

/*----------- Responsive----CSS-------*/

/* Specific feature layout for mid-range tablets */

.pl-v5-side-content {
    position: relative;
    z-index: 2;
    width: 100%;
}

.pl-v5-logo {
    height: auto;
    margin-bottom: 2.5rem;
    filter: brightness(0) invert(1);
}

.pl-v5-illustration {
    margin-bottom: 2rem;
}

.pl-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.1));
}

.pl-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
}

.pl-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

.pl-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pl-v5-form-icon-circle {
    width: 60px;
    height: 60px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.pl-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 30px;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
}

.pl-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

/* Choice Cards Styling */

.pl-v5-choice-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pl-v5-choice-card {
    background: #f8fafc !important;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px;
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    text-align: left;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    outline: none;
}

.pl-v5-choice-card:hover {
    background: #fff;
    border-color: var(--newdesign-brand-primary);
    box-shadow: 0 10px 25px -5px rgba(15, 76, 76, 0.1);
}

.pl-v5-choice-icon {
    width: 52px;
    height: 52px;
    background: var(--color-white) !important;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.pl-v5-choice-card:hover .pl-v5-choice-icon {
    background: var(--newdesign-brand-primary) !important;
    color: var(--color-white) !important;
}

.pl-v5-choice-info {
    flex: 1;
}

.pl-v5-choice-label {
    display: block;
    font-size: 17px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    margin-bottom: 2px;
}

.pl-v5-choice-desc {
    display: block;
    font-size: 14px;
    color: var(--newdesign-text-secondary);
}

.pl-v5-choice-arrow {
    color: #cbd5e1;
    transition: all 0.3s ease;
}

.pl-v5-choice-card:hover .pl-v5-choice-arrow {
    color: var(--newdesign-brand-primary);
    transform: translateX(4px);
}

.pl-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: var(--color-white);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--newdesign-text-secondary);
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100;
    border: 1px solid var(--newdesign-neturals-border);
}

.pl-v5-close-btn:hover {
    background: #fee2e2;
    color: var(--newdesign-status-error);
    border-color: #fecaca;
    transform: rotate(90deg);
}

/* Responsive for Professional Login */

/* Staff Login Version 5 (sl-v5) Styles */

.sl-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.sl-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.sl-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.sl-v5-side-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.sl-v5-logo {
    margin-bottom: 2.5rem;
    filter: brightness(0) invert(1);
}

.sl-v5-illustration {
    margin-bottom: 2rem;
}

.sl-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.2));
}

.sl-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

/* Big Alert Box for General Errors */

.sl-v5-error-alert {
    background: #fff5f5 !important;
    border: 1px solid #feb2b2 !important;
    color: #c53030 !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: left !important;
    box-shadow: 0 4px 6px -1px rgba(197, 48, 48, 0.05) !important;
    margin-bottom: 20px;
    animation: sl-error-in 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.sl-v5-error-alert svg {
    flex-shrink: 0;
    color: #e53e3e;
}

@keyframes sl-error-in {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }

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

.sl-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 30px;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
}

.sl-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

.sl-v5-form-group {
    margin-bottom: 1.5rem;
    position: relative;
}

/* Field Highlight on Error */

.sl-v5-input.error {
    border-color: #ef4444 !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.08) !important;
}

.sl-v5-input.error:focus {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.15) !important;
}

/* Small Red Message Below Field */

.sl-v5-form-group label.error {
    color: #ef4444;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 4px 0 0 0;
    text-align: left;
    background: transparent;
    border: none;
    padding: 0;
}

.sl-v5-form-group label.error:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

.sl-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.sl-v5-back-btn {
    position: absolute;
    top: 32px;
    left: 40px;
    background: transparent;
    border: none;
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--newdesign-text-secondary);
    font-weight: 600;
    font-size: 14px;
    padding: 0;
    transition: all 0.3s ease;
    cursor: pointer;
}

.sl-v5-back-btn:hover {
    color: var(--newdesign-brand-primary);
    transform: translateX(-4px);
}

.sl-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 100;
}

.sl-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    border-color: #fecaca;
    transform: rotate(90deg);
}

.sl-v5-form-icon-circle {
    width: 64px;
    height: 64px;
    background: #f0fdfa;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 12px rgba(15, 76, 76, 0.08);
}

.sl-v5-form-title {
    color: #1e293b;
    font-weight: 600;
    font-size: 28px;
    letter-spacing: -0.02em;
    margin-bottom: 0.5rem;
}

.sl-v5-form-subtitle {
    color: #64748b;
    font-size: 15px;
}

.sl-v5-form-group {
    margin-bottom: 1.5rem;
}

.sl-v5-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #475569;
    margin-bottom: 8px;
    padding-left: 4px;
}

.sl-v5-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.sl-v5-input-icon {
    position: absolute;
    left: 16px;
    color: #94a3b8;
    transition: all 0.3s ease;
}

.sl-v5-input {
    width: 100%;
    height: 52px;
    background: #f8fafc;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    padding: 0 16px 0 48px;
    font-size: 15px;
    color: #1e293b;
    transition: all 0.3s ease;
}

.sl-v5-input:focus {
    background: #fff;
    border-color: var(--newdesign-brand-primary);
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.05);
    outline: none;
}

.sl-v5-input:focus+.sl-v5-input-icon,
.sl-v5-input-wrapper:focus-within .sl-v5-input-icon {
    color: var(--newdesign-brand-primary);
}

.sl-v5-submit-btn {
    width: 100%;
    height: 60px;
    background: var(--newdesign-brand-primary);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 17px;
    font-weight: var(--font-weight-medium);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.2);
}

.sl-v5-submit-btn:hover {
    background: #0d4242;
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(15, 76, 76, 0.25);
}

.sl-v5-submit-btn:active {
    transform: translateY(0);
}

/* Responsive Adjustments */

/* ==========================================================================
   STAFF LOGIN REDESIGN (v5)
   ========================================================================== */

.sl-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.sl-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.sl-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.sl-v5-side-content {
    position: relative;
    z-index: 2;
    width: 100%;
}

.sl-v5-logo {
    height: auto;
    margin-bottom: 2.5rem;
    filter: brightness(0) invert(1);
}

.sl-v5-illustration {
    margin-bottom: 2rem;
}

.sl-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.1));
}

.sl-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

.sl-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sl-v5-form-icon-circle {
    width: 60px;
    height: 60px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

/* Tour Operator Registration Version 5 (to-v5) Styles */

.to-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.to-v5-modal .modal-body {
    padding: 0 !important;
    display: flex !important;
    flex: 1 !important;
    overflow: hidden !important;
}

.to-v5-modal .row.g-0 {
    display: flex !important;
    flex: 1 !important;
    width: 100% !important;
    margin: 0 !important;
}

.to-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden !important;
    /* Force fixed/no-scroll */
    flex: 1;
    height: 100%;
}

.to-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.to-v5-side-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.to-v5-logo {
    margin-bottom: 2.5rem;
    filter: brightness(0) invert(1);
}

.to-v5-illustration {
    margin-bottom: 2rem;
}

.to-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.2));
}

.to-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
}

.to-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

.to-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
    flex: 1.4;
    height: 100%;
    overflow-y: auto !important;
    /* Force scroller */
    scrollbar-width: thin;
    scrollbar-color: var(--newdesign-brand-primary) #f1f5f9;
}

.to-v5-form-panel::-webkit-scrollbar {
    width: 6px;
}

.to-v5-form-panel::-webkit-scrollbar-track {
    background: #f1f5f9;
    border-radius: 8px;
}

.to-v5-form-panel::-webkit-scrollbar-thumb {
    background: var(--newdesign-brand-primary);
    border-radius: 8px;
}

.to-v5-form-panel::-webkit-scrollbar-thumb:hover {
    background: var(--newdesign-primary-dark);
}

.to-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 100;
}

.to-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    border-color: #fecaca;
    transform: rotate(90deg);
}

.to-v5-form-icon-circle {
    width: 60px;
    height: 60px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.to-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 28px;
    letter-spacing: -0.03em;
    margin-bottom: 0.5rem;
}

.to-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 2rem;
}

.to-v5-form-group {
    margin-bottom: 1.25rem;
    position: relative;
}

.to-v5-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    margin-bottom: 8px;
    padding-left: 4px;
}

.to-v5-input-wrapper {
    position: relative;
}

.to-v5-input-icon {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--newdesign-text-muted);
    pointer-events: none;
    transition: all 0.3s ease;
}

.to-v5-input {
    width: 100% !important;
    height: 54px !important;
    padding-left: 50px !important;
    padding-right: 20px !important;
    border: 1.5px solid var(--newdesign-neturals-border) !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: var(--newdesign-text-primary) !important;
    background: #fcfdfe !important;
    transition: all 0.3s ease !important;
}

.to-v5-input:focus {
    border-color: var(--newdesign-brand-primary) !important;
    background: var(--color-white) !important;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.08) !important;
    outline: none !important;
}

/* Floating Label Styles for to-v5 (Tour Operator) */
.to-v5-floating-group .to-v5-input-wrapper {
    position: relative;
}

.to-v5-floating-group .to-v5-label {
    position: absolute;
    top: 27px;
    left: 48px;
    padding: 0 4px;
    transform: translateY(-50%);
    font-size: 15px;
    font-weight: 500;
    color: var(--newdesign-text-muted);
    pointer-events: none;
    transition: all 0.2s ease;
    margin: 0 !important;
    line-height: 1 !important;
    background-color: transparent;
    z-index: 10;
}

.to-v5-floating-group .to-v5-input:focus~.to-v5-label {
    top: 0;
    left: 16px;
    font-size: 13px;
    font-weight: 600;
    color: var(--newdesign-brand-primary);
    background-color: var(--color-white);
}

.to-v5-floating-group input.to-v5-input:not(:focus):not(:placeholder-shown)~.to-v5-label,
.to-v5-floating-group select.to-v5-input:not(:focus):valid~.to-v5-label {
    top: 0;
    left: 16px;
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    background-color: #fcfdfe;
}

.to-v5-floating-group.to-v5-always-float .to-v5-label {
    top: 0 !important;
    left: 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    background-color: #fcfdfe !important;
}

.to-v5-floating-group.to-v5-always-float .to-v5-input:focus~.to-v5-label {
    color: var(--newdesign-brand-primary) !important;
    background-color: var(--color-white) !important;
}



/* Custom File Input Styling for to-v5 */

.to-v5-file-input-wrapper {
    position: relative;
    width: 100%;
}

.to-v5-input[type="file"] {
    padding: 12px 12px 12px 50px !important;
    line-height: 28px !important;
}

/* Big Alert Box for General Errors */

.to-v5-error-alert {
    background: #fff5f5 !important;
    border: 1px solid #feb2b2 !important;
    color: #c53030 !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: left !important;
    box-shadow: 0 4px 6px -1px rgba(197, 48, 48, 0.05) !important;
    margin-bottom: 20px;
    animation: to-error-in 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.to-v5-error-alert svg {
    flex-shrink: 0;
    color: #e53e3e;
}

@keyframes to-error-in {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }

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

/* Field Highlight on Error */

.to-v5-input.error {
    border-color: #ef4444 !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.08) !important;
}

.to-v5-form-group label.error {
    color: #ef4444;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 4px 0 0 0;
    text-align: left;
    background: transparent;
    border: none;
    padding: 0;
}

.to-v5-form-group label.error:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

.to-v5-submit-btn {
    width: 100%;
    height: 60px;
    background: var(--newdesign-brand-primary);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 17px;
    font-weight: var(--font-weight-medium);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.2);
}

.to-v5-submit-btn:hover {
    background: var(--newdesign-primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(15, 76, 76, 0.3);
}

.to-v5-login-prompt {
    margin-top: 1.5rem;
    text-align: center;
    font-size: 14px;
    color: var(--newdesign-text-secondary);
}

.to-v5-login-link {
    color: var(--newdesign-brand-primary);
    font-weight: 600;
    text-decoration: none;
    margin-left: 5px;
    cursor: pointer;
}

.to-v5-login-link:hover {
    text-decoration: underline;
}

.sl-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 30px;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
}

.sl-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

/* Form Groups & Inputs */

.sl-v5-input-group {
    width: 100%;
    text-align: left;
}

.sl-v5-input-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    margin-bottom: 8px;
    padding-left: 4px;
}

.sl-v5-input-wrapper {
    position: relative;
    width: 100%;
}

.sl-v5-input-icon {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    transition: all 0.3s ease;
}

.sl-v5-input {
    width: 100% !important;
    height: 56px !important;
    background: #f8fafc !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 0 20px 0 52px !important;
    font-size: 16px !important;
    color: var(--newdesign-text-primary) !important;
    transition: all 0.3s ease !important;
}

.sl-v5-input:focus {
    background: #fff !important;
    border-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.08) !important;
    outline: none !important;
}

.sl-v5-input:focus+.sl-v5-input-icon {
    color: var(--newdesign-brand-primary);
}

/* Submit Button */

.sl-v5-submit-btn {
    width: 100%;
    height: 56px;
    background: var(--newdesign-brand-primary);
    color: var(--color-white);
    border: none;
    border-radius: 8px;
    font-size: 17px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.2);
}

.sl-v5-submit-btn:hover {
    background: #0c3d3d;
    transform: translateY(-1px);
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.3);
}

.sl-v5-submit-btn:active {
    transform: translateY(0);
}

.sl-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: var(--color-white);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--newdesign-text-secondary);
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100;
    border: 1px solid var(--newdesign-neturals-border);
}

.sl-v5-close-btn:hover {
    background: #fee2e2;
    color: var(--newdesign-status-error);
    border-color: #fecaca;
    transform: rotate(90deg);
}

/* Responsive for Staff Login */

/* ==========================================================================
   MANAGE MY BOOKING REDESIGN (v5)
   ========================================================================== */

.mb-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.mb-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.mb-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.mb-v5-side-content {
    position: relative;
    z-index: 2;
    width: 100%;
}

.mb-v5-logo {
    margin-bottom: 2.5rem;
    filter: brightness(0) invert(1);
}

.mb-v5-illustration {
    margin-bottom: 2rem;
}

.mb-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.2));
}

.mb-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
}

.mb-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

.mb-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-height: 90vh;
    overflow-y: auto;
}

.mb-v5-form-panel::-webkit-scrollbar {
    width: 6px;
}

.mb-v5-form-panel::-webkit-scrollbar-thumb {
    background: #e2e8f0;
    border-radius: 8px;
}

.mb-v5-form-icon-circle {
    width: 64px;
    height: 64px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.mb-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: 600;
    font-size: 32px;
    letter-spacing: -0.03em;
    margin-bottom: 0.5rem;
}

.mb-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

/* Main Form Search */

.mb-v5-input-wrapper {
    position: relative;
    width: 100%;
}

.mb-v5-input-icon {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    transition: all 0.3s ease;
}

.mb-v5-input {
    width: 100% !important;
    height: 60px !important;
    background: #f8fafc !important;
    border: 2.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 0 20px 0 56px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--newdesign-text-primary) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-align: left !important;
}

.mb-v5-input:focus {
    background: #fff !important;
    border-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 0 0 5px rgba(15, 76, 76, 0.08) !important;
    outline: none !important;
}

.mb-v5-input:focus+.mb-v5-input-icon {
    color: var(--newdesign-brand-primary);
}

.mb-v5-submit-btn {
    width: 100%;
    height: 56px;
    background: var(--newdesign-brand-primary);
    color: var(--color-white);
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 12px rgba(15, 76, 76, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.mb-v5-submit-btn:hover {
    background: #0c3d3d;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(15, 76, 76, 0.3);
}

.mb-v5-secondary-btn {
    width: 100%;
    height: 56px;
    background: #f1f5f9;
    color: #475569;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    text-decoration: none !important;
    gap: 8px;
}

.mb-v5-secondary-btn:hover {
    background: #e2e8f0;
    color: var(--newdesign-text-primary);
}

/* Outline Action Buttons */
.mb-v5-action-btns {
    display: grid;
    gap: 10px;
}

.mb-v5-action-btns.cols-2 {
    grid-template-columns: 1fr 1fr;
}

.mb-v5-action-btns.cols-3 {
    grid-template-columns: 1fr 1fr 1fr;
}

.mb-v5-outline-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 46px;
    padding: 0 14px;
    border: 1.5px solid var(--newdesign-neturals-border);
    border-radius: 8px;
    background: transparent;
    color: var(--newdesign-text-secondary);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none !important;
    white-space: nowrap;
}

.mb-v5-outline-btn:hover {
    border-color: var(--newdesign-brand-primary);
    color: var(--newdesign-brand-primary);
    background: rgba(15, 76, 76, 0.04);
}

@media (max-width: 576px) {
    .mb-v5-action-btns.cols-3 {
        grid-template-columns: 1fr;
    }

    .mb-v5-action-btns.cols-2 {
        grid-template-columns: 1fr;
    }
}

/* Divider */

.mb-v5-divider {
    display: flex;
    align-items: center;
    text-align: center;
    color: #cbd5e1;
}

.mb-v5-divider::before,
.mb-v5-divider::after {
    content: '';
    flex: 1;
    border-bottom: 1.5px solid #f1f5f9;
}

.mb-v5-divider span {
    padding: 0 15px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

/* Action Cards */

.mb-v5-action-card {
    background: #fff;
    border: 1.5px solid #f1f5f9;
    border-radius: 8px;
    padding: 1.5rem;
    text-align: left;
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.mb-v5-action-card:hover {
    border-color: #e2e8f0;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05);
}

.mb-v5-action-card.accent-green {
    background: #f0fdf4;
    border-color: #dcfce7;
}

.mb-v5-action-card.accent-blue {
    background: #f0f7ff;
    border-color: #e1e9f4;
}

.mb-v5-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 0.75rem;
}

.mb-v5-card-icon {
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.accent-green .mb-v5-card-icon {
    color: #10b981;
}

.accent-blue .mb-v5-card-icon {
    color: #3b82f6;
}

.mb-v5-card-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--newdesign-text-primary);
    margin: 0;
}

.mb-v5-card-desc {
    font-size: 13px;
    color: var(--newdesign-text-secondary);
    line-height: 1.4;
    margin-bottom: 1.25rem;
    flex-grow: 1;
}

.mb-v5-card-btn {
    width: 100%;
    height: 40px;
    background: var(--newdesign-brand-primary);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.mb-v5-card-btn.mini {
    height: 36px;
    padding: 0 16px;
    width: auto;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mb-v5-card-btn.outline {
    background: transparent;
    border: 1.5px solid #ef4444;
    color: #ef4444;
}

.mb-v5-card-btn:hover {
    background: #0c3d3d;
}

.mb-v5-card-btn.outline:hover {
    background: #fef2f2;
    border-color: #ef4444;
    color: #ef4444;
}

/* Tip Box */

.mb-v5-tip-box {
    background: #fff9eb;
    border: 1.5px solid #fef3c7;
    border-radius: 8px;
    padding: 1.25rem;
    display: flex;
    gap: 15px;
    align-items: center;
    text-align: left;
}

.mb-v5-tip-icon {
    width: 44px;
    height: 44px;
    background: #fff;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d97706;
    flex-shrink: 0;
    box-shadow: 0 4px 6px -1px rgba(217, 119, 6, 0.1);
}

.mb-v5-tip-title {
    font-size: 15px;
    font-weight: 600;
    color: #92400e;
    margin-bottom: 2px;
}

.mb-v5-tip-text {
    font-size: 13px;
    color: #b45309;
    margin: 0;
    line-height: 1.4;
}

/* Close & Footer */

.mb-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: #fff;
    border: 1.5px solid #f1f5f9;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100;
}

.mb-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    border-color: #fecaca;
    transform: rotate(90deg);
}

.mb-v5-footer-text {
    font-size: 13px;
    color: #94a3b8;
    font-weight: 500;
}

/* Responsive */

/* ==========================================================================
   LOGIN & FORGOT PASSWORD REDESIGN (v5)
   ========================================================================== */

.lg-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.lg-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.lg-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.lg-v5-side-content {
    position: relative;
    z-index: 2;
    width: 100%;
}

.lg-v5-side-panel .lg-v5-logo,
.pl-v5-side-panel .pl-v5-logo,
.sl-v5-side-panel .sl-v5-logo,
.to-v5-side-panel .to-v5-logo {
    filter: brightness(0) invert(1);
}

.lg-v5-logo,
.pl-v5-logo,
.sl-v5-logo,
.to-v5-logo {
    margin-bottom: 2rem;
}

.lg-v5-illustration {
    margin-bottom: 2rem;
}

.lg-v5-illustration img {
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.2));
}

.lg-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: -0.01em;
    position: relative;
    z-index: 2;
}

.lg-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 280px;
    margin: 0 auto;
}

.lg-v5-form-panel {
    padding: 4rem 3.5rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.lg-v5-close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 100;
}

.lg-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    border-color: #fecaca;
    transform: rotate(90deg);
}

.lg-v5-form-icon-circle {
    width: 64px;
    height: 64px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.lg-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 30px;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
}

.lg-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 2rem;
}

.lg-v5-form-group {
    margin-bottom: 1.5rem;
    text-align: left;
}

.lg-v5-label {
    display: block;
    font-size: 14px;
    font-weight: var(--font-weight-semi-bold);
    color: var(--newdesign-text-primary);
    margin-bottom: 8px;
    padding-left: 4px;
}

.lg-v5-label .required {
    color: #ef4444;
    margin-left: 2px;
    font-weight: bold;
}

.lg-v5-input-wrapper {
    position: relative;
    width: 100%;
}

.lg-v5-input-icon {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    transition: all 0.3s ease;
}

.lg-v5-input {
    width: 100% !important;
    height: 60px !important;
    background: #fcfdfe !important;
    border: 1.5px solid var(--newdesign-neturals-border) !important;
    border-radius: 8px !important;
    padding: 0 20px 0 54px !important;
    font-size: 16px !important;
    font-weight: var(--font-weight-medium) !important;
    color: var(--newdesign-text-primary) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.lg-v5-input:focus {
    background: var(--color-white) !important;
    border-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.08) !important;
    outline: none !important;
}

/* Floating Label Styles for lg-v5 */
.lg-v5-floating-group {
    position: relative;
}

.lg-v5-floating-group .lg-v5-label {
    position: absolute;
    top: 25px;
    left: 16px;
    padding: 0 4px;
    transform: translateY(-50%);
    font-size: 15px;
    font-weight: 500;
    color: #64748b;
    pointer-events: none;
    transition: all 0.2s ease;
    margin: 0 !important;
    line-height: 1 !important;
    background-color: transparent;
    z-index: 10;
}

.lg-v5-floating-group .lg-v5-input {
    padding-left: 20px !important;
}

.lg-v5-floating-group .lg-v5-input:focus~.lg-v5-label,
.lg-v5-floating-group .lg-v5-input:not(:placeholder-shown)~.lg-v5-label {
    top: 0;
    font-size: 13px;
    font-weight: 600;
    color: var(--newdesign-brand-primary);
    background-color: #fcfdfe;
}

.lg-v5-floating-group .lg-v5-input:not(:focus):not(:placeholder-shown)~.lg-v5-label {
    color: #64748b;
}

.lg-v5-input.error {
    border-color: #ef4444 !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.08) !important;
}

.lg-v5-input.error:focus {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.15) !important;
}

.lg-v5-input:focus+.lg-v5-input-icon {
    color: var(--newdesign-brand-primary);
}

.lg-v5-submit-btn {
    width: 100%;
    height: 60px;
    background: var(--newdesign-brand-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 17px !important;
    font-weight: var(--font-weight-medium) !important;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.2) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.lg-v5-submit-btn:hover {
    background: var(--newdesign-primary-dark) !important;
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(15, 76, 76, 0.25) !important;
}

.lg-v5-submit-btn:active {
    transform: translateY(0);
}

.lg-v5-helper-links {
    margin-top: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
}

.lg-v5-link {
    color: var(--newdesign-brand-primary);
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.lg-v5-link:hover {
    color: var(--newdesign-primary-dark);
    text-decoration: underline;
}

.lg-v5-register-prompt {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid #f1f5f9;
    font-size: 14px;
    color: var(--newdesign-text-secondary);
}

/* Success/Error Messaging v5 */

.lg-v5-alert {
    padding: 12px 16px !important;
    border-radius: 8px !important;
    margin-bottom: 1.5rem !important;
    font-size: 14px !important;
    font-weight: var(--font-weight-semi-bold) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: left !important;
    animation: lg-v5-slide-down 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.lg-v5-alert-success {
    background: #f0fdf4 !important;
    color: #166534 !important;
    border: 1px solid #bbf7d0 !important;
    box-shadow: 0 4px 6px -1px rgba(22, 101, 52, 0.05) !important;
}

.lg-v5-alert-error {
    background: #fff5f5 !important;
    color: #c53030 !important;
    border: 1px solid #feb2b2 !important;
    box-shadow: 0 4px 6px -1px rgba(197, 48, 48, 0.05) !important;
}

@keyframes lg-v5-slide-down {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

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

/* Field specific errors */

.lg-v5-field-error {
    color: #ef4444;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 6px 0 0 0;
    animation: lg-v5-slide-down 0.3s ease;
}

.lg-v5-field-error::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
    display: inline-block;
    vertical-align: middle;
}

.lg-v5-field-error label.error {
    margin: 0 !important;
}

.app-input.error,
.select2-container.error .select2-selection,
.pingouin-my-account-redesign-modal .app-input.error,
.pingouin-my-account-redesign-modal input.app-input.error,
.pingouin-my-account-redesign-modal select.app-input.error,
.pingouin-my-account-redesign-modal .select2-container.error .select2-selection {
    border-color: #ef4444 !important;
}

.sr-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.sr-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 3rem 2.5rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.sr-v5-side-panel::after {
    content: '';
    position: absolute;
    bottom: -50px;
    left: -50px;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.04);
    border-radius: 50%;
}

.sr-v5-side-title {
    color: var(--color-white) !important;
    font-size: 26px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.3;
    margin-bottom: 1.25rem;
    letter-spacing: -0.02em;
}

.sr-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.sr-v5-form-panel {
    padding: 3rem 3rem !important;
    background: var(--color-white);
    max-height: 90vh;
    overflow-y: auto;
}

.sr-v5-logo {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.sr-v5-close-btn {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 32px;
    height: 32px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}

.sr-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    border-color: #fecaca;
    transform: scale(1.1);
}

.sr-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-bold);
    font-size: 36px;
    letter-spacing: -0.02em;
    margin-bottom: 0.75rem;
}

.sr-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 18px;
    line-height: 1.5;
}

.sr-v5-form-group {
    margin-bottom: 1.25rem;
}

.sr-v5-label {
    display: block;
    font-size: 14px;
    font-weight: var(--font-weight-semi-bold);
    color: var(--newdesign-text-primary);
    margin-bottom: 8px;
    padding-left: 4px;
}

.sr-v5-input-wrapper {
    position: relative;
}

.sr-v5-input-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    transition: color 0.3s ease;
}

.sr-v5-input-icon svg {
    width: 20px;
    height: 20px;
}

.sr-v5-input {
    width: 100% !important;
    height: 60px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 0 16px 0 52px !important;
    font-size: 15px !important;
    font-weight: var(--font-weight-medium) !important;
    color: var(--newdesign-text-primary) !important;
    transition: all 0.3s ease !important;
}

.sr-v5-input:focus {
    background: var(--color-white) !important;
    border-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.06) !important;
    outline: none !important;
}

.sr-v5-input:focus+.sr-v5-input-icon {
    color: var(--newdesign-brand-primary);
}

.sr-v5-submit-btn {
    width: 100%;
    height: 64px;
    background: var(--newdesign-brand-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 18px !important;
    font-weight: var(--font-weight-bold) !important;
    cursor: pointer;
    transition: all 0.3s ease !important;
    box-shadow: 0 10px 15px -3px rgba(15, 76, 76, 0.15) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.sr-v5-submit-btn:hover {
    background: var(--newdesign-primary-dark) !important;
    transform: translateY(-2px);
    box-shadow: 0 15px 25px -5px rgba(15, 76, 76, 0.2) !important;
}

.sr-v5-age-options {
    display: flex;
    gap: 12px;
    margin-top: 4px;
}

.sr-v5-age-option {
    flex: 1;
    position: relative;
}

.sr-v5-age-option input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.sr-v5-age-label {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    background: #f1f5f9;
    border: 1.5px solid #e2e8f0;
    border-radius: 8px;
    font-size: 15px;
    font-weight: var(--font-weight-semi-bold);
    color: var(--newdesign-text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.sr-v5-age-option input:checked+.sr-v5-age-label {
    background: #f0fdfa;
    border-color: var(--newdesign-brand-primary);
    color: var(--newdesign-brand-primary);
}

.required {
    color: #ff0000 !important;
    margin-left: 4px !important;
    font-weight: bold;
}

.lg-v5-input.error,
.mb-v5-input.error,
.pi-v5-input.error,
.to-v5-input.error,
.sl-v5-input.error,
.pl-v5-input.error,
.sr-v5-input.error {
    border-color: #ff0000 !important;
    background-color: #fff5f5 !important;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.1) !important;
}

label.error {
    color: #ff0000 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    margin-top: 5px !important;
    display: block;
}

.lg-v5-side-panel .lg-v5-logo,
.pl-v5-side-panel .pl-v5-logo,
.sl-v5-side-panel .sl-v5-logo,
.to-v5-side-panel .to-v5-logo,
.pi-v5-side-panel .pi-v5-logo,
.mb-v5-side-panel .mb-v5-logo,
.sr-v5-side-panel .sr-v5-logo {
    filter: brightness(0) invert(1) !important;
}

.lg-v5-logo,
.pl-v5-logo,
.sl-v5-logo,
.to-v5-logo,
.pi-v5-logo,
.mb-v5-logo,
.sr-v5-logo {
    margin-bottom: 2rem;
    filter: none;
}

.lg-v5-input-icon svg,
.pl-v5-input-icon svg,
.sl-v5-input-icon svg,
.to-v5-input-icon svg {
    color: #94a3b8;
}

.sr-v5-date-group {
    display: grid;
    grid-template-columns: 1fr 110px;
    gap: 10px;
}

.sr-v5-info-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #f0fdfa;
    padding: 8px 16px;
    border-radius: 100px;
    color: var(--newdesign-brand-primary);
    font-size: 13px;
    font-weight: 600;
    margin-top: 4px;
}

.sr-v5-checkbox-wrapper .custom-control-input:checked~.custom-control-label::before {
    background-color: var(--newdesign-brand-primary) !important;
    border-color: var(--newdesign-brand-primary) !important;
}

.sr-v5-checkbox-wrapper .custom-control-label::before {
    border-radius: 6px !important;
    width: 20px !important;
    height: 20px !important;
    border: 1.5px solid #cbd5e1 !important;
    background-color: #f8fafc !important;
    top: 2px !important;
}

.sr-v5-checkbox-wrapper .custom-control-label::after {
    width: 20px !important;
    height: 20px !important;
    top: 2px !important;
}

.sr-v5-age-options {
    display: flex;
    gap: 10px;
}

.sr-v5-payment-methods p {
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.sr-v5-payment-methods svg {
    transition: transform 0.2s;
}

/* Ensure Search Modal doesn't expand too wide on desktop */

.sr-v5-payment-methods svg:hover {
    transform: translateY(-2px);
}

/* Fleet Page Hero Section */

.fleet-page-wrapper {
    background-color: #f9fafb;
    padding: 80px 0;
    background-image: url('../images/new/fleet-bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center right;
}

.fleet-hero-header {
    padding-bottom: 0;
}

.fleet-hero-title {
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 10px;
}

.fleet-hero-underline {
    margin: 0;
    width: 60px;
    height: 3px;
    background-color: #2cc2ab;
}

.fleet-hero-subtitle {
    margin-top: 20px;
    font-size: 1.1rem;
    color: #6b7280;
}

.fleet-hero-features-row {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 65px;
}

.fleet-hero-feature-col {
    flex: 0 0 auto;
    border: none;
    padding-left: 0;
}

.fleet-hero-feature-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 15px;
    padding: 0;
    background: transparent;
}

.fleet-hero-icon {
    background: #e5f4f1;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
    flex-shrink: 0;
}

.fleet-hero-icon img {
    width: 28px;
}

.fleet-hero-text {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--theme-color);
    line-height: 1.3;
}

.fleet-hero-content-section {
    padding-top: 20px !important;
}

/* Fleet Content Section Full Width */

/* body>main>section.fleet-hero-content-section>div.container {
    max-width: 100%;
} */

.bg-light-gray {
    background-color: #f9fafb;
}

body>main>section.fleet-hero-content-section {
    background-color: #f9fafb;
    padding: unset !important;
}

/* Fleet Rental Type Switch */

.fleet-rental-switch-section {
    padding: 100px 0 0 0;
    background-color: #f9fafb;
}

.fleet-rental-switch-title {
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 24px;
}

.fleet-rental-type-switch {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.fleet-rental-col {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 380px;
}

.fleet-rental-switch-btn {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 24px;
    border-radius: 8px;
    text-decoration: none !important;
    background-color: #ffffff;
    border: 1.5px solid #e2e8f0;
    width: 100%;
    transition: all 0.3s ease;
}

.fleet-rental-switch-btn:hover {
    border-color: #cbd5e1;
}

.fleet-rental-switch-btn.active {
    background-color: #eaf8f4;
    border-color: #2cc2ab;
}

.fleet-rental-radio {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background-color: #ffffff;
}

.fleet-rental-switch-btn.active .fleet-rental-radio {
    border-color: #2cc2ab;
}

.fleet-rental-radio-inner {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: transparent;
}

.fleet-rental-switch-btn.active .fleet-rental-radio-inner {
    background-color: #2cc2ab;
}

.fleet-rental-switch-content {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.fleet-rental-switch-btn-title {
    font-size: 16px;
    font-weight: 600;
    color: #0f2b38;
    margin-bottom: 4px;
}

.fleet-rental-switch-btn-desc {
    font-size: 14px;
    color: #64748b;
}

.fleet-rental-switch-subtitle {
    font-size: 14px;
    color: #10b981;
    font-weight: 600;
    margin-top: 8px;
    text-align: left;
    padding-left: 16px;
}

.cd-main-content {
    background-color: #f9fafb;
}

.car-filter-icon {
    opacity: 1;
}

/* Fleet Filters UI Redesign */

.our-fleet-filters.cd-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    padding: 0 0 24px 0 !important;
    max-width: 940px;
    width: 100%;
    margin: 15px auto !important;
}

.our-fleet-filters.cd-filters li.filter {
    list-style: none;
    margin: 0;
    background: transparent !important;
    min-width: auto !important;

}

.our-fleet-filters.cd-filters li.filter a {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background-color: #f3f7f6;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    color: #334155 !important;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.our-fleet-filters.cd-filters li.filter a:hover {
    background-color: #f1f5f9;
    border-color: #cbd5e1;
}

.our-fleet-filters.cd-filters li.filter a.selected {
    background-color: #104c4c !important;
    border-color: #104c4c !important;
    color: #ffffff !important;
}

.our-fleet-filters.cd-filters li.filter a .fleet-filter-grid-icon {
    width: 16px;
    height: 16px;
    stroke: currentColor;
}

.our-fleet-filters.cd-filters li.filter a.selected .fleet-filter-grid-icon {
    stroke: #ffffff;
}

.our-fleet-filters.cd-filters li.filter a .car-filter-icon {
    height: 15px;
    width: auto;
    object-fit: contain;
    margin: 0;
    opacity: 1;
}

.our-fleet-filters.cd-filters li.filter a.selected .car-filter-icon {
    filter: brightness(0) invert(1);
}

/* Restyle Fleet Gallery Cards */

.cd-gallery .the-car-slider--fleet .car-slide {
    background: transparent !important;
    box-shadow: none !important;
    text-align: center;
    padding-bottom: 5px;
    /* Removed !important from display to allow MixItUp to hide/show elements */
}

.cd-gallery .the-car-slider--fleet .car-slide .mfc-inner-card {
    height: 100%;
    display: flex;
    flex-direction: column;

}

.car-slide.active .car-slide__inner {
    border-color: var(--theme-color) !important;
}

/* MFC Card Styles - Isolated for Fleet Page */

.mfc-card {
    background: transparent;
    border-radius: 0;
    margin: 10px 8px;
    box-shadow: none;
    border: none;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
}

.mfc-card:hover {
    transform: none;
    box-shadow: none;
    border-color: transparent;
}

.mfc-inner-card {
    background: #ffffff;
    border-radius: 8px !important;
    padding: 20px 10px;
    box-shadow: 0px 2px 10px 0 rgba(0, 0, 0, 0.05);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.mfc-card:hover .mfc-inner-card {
    transform: translateY(-10px);
}

.mfc-header {
    margin-bottom: 20px;
}

.mfc-title {
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: 600 !important;
    color: #1c1c1e !important;
    margin-bottom: 6px;
}

.mfc-meta {
    font-family: 'Inter', sans-serif;
    font-size: 0.9rem;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-weight: 500;
}

.mfc-dot {
    color: #2cc2ab;
    font-size: 1.5rem;
    line-height: 1;
}

.mfc-image-container {
    width: 100%;
    height: 170px;
    margin-bottom: 20px;
}

.mfc-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.4s ease;
}

.mfc-card:hover .mfc-image {
    transform: scale(1.05);
}

.mfc-price-block {
    text-align: center;
    margin-bottom: 20px;
}

.mfc-price-from {
    display: block;
    font-size: 14px;
    color: #6b7280;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
}

.mfc-price-main {
    color: #2cc2ab;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 24px;
}

.mfc-price-currency {
    margin-right: 8px;
}

.mfc-price-amount {
    line-height: 1;
}

.mfc-footer {
    margin-top: auto;
}

.mfc-btn-book {
    width: 100%;
    max-width: 200px;
    height: 56px;
    background: #0e453e;
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-bottom: 10px;
    box-shadow: none;
}

.mfc-btn-book:hover {
    background: #0a3530;
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(14, 69, 62, 0.2);
}

.mfc-btn-book:active {
    transform: scale(0.98);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.mfc-info-divider {
    margin-bottom: 15px;
    position: relative;
}

.mfc-info-divider span {
    font-size: 0.8rem;
    text-transform: uppercase;
    color: #94a3b8;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.mfc-features {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding-top: 20px;
    flex-wrap: wrap;
}

.mfc-feature {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
}

.mfc-feature img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.mfc-feature span {
    position: absolute;
    bottom: 6px;
    right: 0px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 600;
    min-width: 18px;
    height: 18px;
    padding: 0 2px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1.5px solid #ffffff;
    line-height: 1;
    font-family: 'Inter', sans-serif;
    z-index: 2;
}

/*----------- Responsive----CSS-------*/

/* Testimonial Hero Section */

.testimonial-hero {
    background-color: #f9fafb;
    padding: 60px 0 60px;
}

.th-breadcrumb {
    font-size: 14px;
    color: #64748b;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
}

.th-breadcrumb a {
    color: #475569;
    text-decoration: none;
    transition: color 0.2s;
}

.th-breadcrumb a:hover {
    color: #0F4C4C;
}

.th-breadcrumb-sep {
    color: #94a3b8;
    display: flex;
    align-items: center;
}

.th-breadcrumb-current {
    color: #94a3b8;
}

.th-title {
    font-size: 60px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 16px;
    line-height: 1.1;
    font-family: 'Poppins', sans-serif;
    letter-spacing: -1px;
}

.th-underline {
    width: 60px;
    height: 4px;
    background-color: #31c3a6;
    margin-bottom: 24px;
    border-radius: 2px;
}

.th-subtitle {
    font-size: 18px;
    color: #64748b;
    margin-bottom: 40px;
    line-height: 1.6;
}

.th-stats-row {
    display: flex;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}

.th-stat-item {
    display: flex;
    align-items: center;
    gap: 16px;
}

.th-stat-icon {
    width: 52px;
    height: 52px;
    background-color: #eaf8f5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #31c3a6;
}

.th-stat-text {
    display: flex;
    flex-direction: column;
}

.th-stat-text strong {
    font-size: 18px;
    font-weight: 600;
    color: #1C1C1E;
    line-height: 1.2;
}

.th-stat-text span {
    font-size: 14px;
    color: #64748b;
    font-weight: 500;
}

.th-quote-graphic {
    max-width: 100%;
    width: 320px;
    height: auto;
}

/* Testimonial Banner & Filter */

.share-review-banner {
    background-color: #f3f7f6;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 2rem;
}

.srb-icon-wrap {
    width: 60px;
    height: 60px;
    background-color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.04);
    flex-shrink: 0;
}

.srb-icon-wrap svg {
    height: 40px;
    width: 40px;
}

.srb-text h3 {
    font-size: 22px !important;
    color: #1C1C1E !important;
    font-weight: 600 !important;
}

.srb-text p {
    color: #6B7280 !important;
    font-size: 16px !important;
    margin-top: 10px;
}

.share-icon-text {
    gap: 40px;
}

.srb-btn {
    background-color: var(--theme-color);
    color: #ffffff !important;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 6px;
    min-width: 200px;
    font-size: 15px;
    transition: all 0.2s ease;
}

.srb-btn:hover {
    background-color: #0C3E3E;
    color: #ffffff;
}

.testimonial-filter-bar {
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    border: none;
}


.tf-star-btn {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    color: #1C1C1E;
    border-radius: 30px;
    padding: 10px 16px;
    font-size: 16px;
    font-weight: 500;
    transition: all 0.2s ease;
    outline: none !important;
}

.tf-star-btn i {
    margin-right: 4px;
}

.tf-star-btn:hover {
    background-color: #f8fafc;
    color: #1e293b;
    border-color: #cbd5e1;
}

.tf-star-btn.active {
    background-color: var(--theme-color);
    color: #ffffff;
    border-color: var(--theme-color);
}

.tf-sort {
    gap: 10px;
}


.w-mobile-50 {
    width: calc(50% - 8px);
}


/* ==========================================================================
   TESTIMONIAL REVIEW MODAL (v5)
   ========================================================================== */

.tr-v5-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden;
    background: var(--color-white);
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.tr-v5-modal .row.g-0 {
    display: flex;
    min-height: 520px;
}

.tr-v5-side-panel {
    background: var(--newdesign-brand-primary) !important;
    padding: 4rem 3rem !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.tr-v5-side-panel::before {
    content: '';
    position: absolute;
    top: -100px;
    left: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 50%;
    z-index: 1;
}

.tr-v5-side-icon-circle {
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    font-size: 32px;
    color: var(--color-white);
    position: relative;
    z-index: 2;
}

.tr-v5-side-title {
    color: var(--color-white) !important;
    font-size: 28px;
    font-weight: var(--font-weight-extra-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
    position: relative;
    z-index: 2;
}

.tr-v5-side-text {
    color: var(--color-white-92) !important;
    font-size: 15px;
    line-height: 1.6;
    max-width: 260px;
    position: relative;
    z-index: 2;
}

.tr-v5-form-panel {
    padding: 3rem !important;
    background: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.tr-v5-form-icon-circle {
    width: 60px;
    height: 60px;
    background: var(--newdesign-neturals-soft-bg);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: var(--newdesign-brand-primary);
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1);
}

.tr-v5-form-title {
    color: var(--newdesign-text-primary);
    font-weight: var(--font-weight-semi-bold);
    font-size: 26px;
    letter-spacing: -0.03em;
    margin-bottom: 0.5rem;
}

.tr-v5-form-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 15px;
    line-height: 1.5;
}

.tr-v5-close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 32px;
    height: 32px;
    background: #f1f5f9;
    color: #475569;
    border: none;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}

.tr-v5-close-btn:hover {
    background: #fee2e2;
    color: #ef4444;
    transform: rotate(90deg);
}

.tr-v5-mobile-header .tr-v5-title {
    color: var(--newdesign-text-primary);
    font-size: 24px;
    font-weight: var(--font-weight-bold);
    margin-bottom: 0.5rem;
}

.tr-v5-mobile-header .tr-v5-subtitle {
    color: var(--newdesign-text-secondary);
    font-size: 14px;
}

.tr-v5-input-group {
    margin-bottom: 1.5rem;
    position: relative;
}

.tr-v5-input-group label {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #475569;
    margin-bottom: 0.5rem;
    text-align: left;
}

/* Floating Label Styles */
.tr-v5-floating-group label {
    position: absolute;
    top: 24px;
    left: 12px;
    padding: 0 4px;
    transform: translateY(-50%);
    font-size: 15px;
    color: #64748b;
    pointer-events: none;
    transition: all 0.2s ease;
    margin-bottom: 0;
    background-color: transparent;
}

.tr-v5-input {
    width: 100%;
    padding: 12px 16px;
    border: 1.5px solid #e2e8f0;
    border-radius: 8px;
    font-size: 15px;
    color: #1e293b;
    background-color: #ffffff;
    /* Use white to match label overlap */
    transition: all 0.2s ease;
}

.tr-v5-floating-group .tr-v5-input {
    padding: 12px 16px;
    /* standard padding */
}

.tr-v5-input:focus {
    border-color: var(--newdesign-brand-primary);
    box-shadow: 0 0 0 4px rgba(15, 76, 76, 0.1);
    outline: none;
}

.tr-v5-floating-group .tr-v5-input:focus~label,
.tr-v5-floating-group .tr-v5-input:not(:placeholder-shown)~label {
    top: 0;
    transform: translateY(-50%);
    font-size: 12px;
    font-weight: 600;
    color: var(--newdesign-brand-primary);
    background-color: #ffffff;
    /* Hide border */
}

.tr-v5-floating-group .tr-v5-input:not(:focus):not(:placeholder-shown)~label {
    color: #64748b;
}

.tr-v5-textarea {
    resize: vertical;
    min-height: 120px;
}

.tr-v5-file-upload {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 1.5rem;
    border: 2px dashed #cbd5e1;
    border-radius: 8px;
    background-color: #f8fafc;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tr-v5-file-upload:hover {
    border-color: var(--newdesign-brand-primary);
    background-color: #f1f5f9;
}

.tr-v5-file-upload input[type="file"] {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    cursor: pointer;
}

.tr-v5-file-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-size: 14px;
    font-weight: 500;
}

.tr-v5-file-label i {
    font-size: 24px;
    color: var(--newdesign-brand-primary);
}

.tr-v5-star-container {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 1.5rem;
}

.tr-v5-star-container i {
    font-size: 32px;
    color: #cbd5e1;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tr-v5-star-container i.fas,
.tr-v5-star-container i:hover,
.tr-v5-star-container i.active {
    color: #fbbf24;
    transform: scale(1.1);
}

.tr-v5-submit-btn {
    width: 100%;
    padding: 14px;
    border-radius: 8px;
    background: var(--newdesign-brand-primary);
    color: white;
    font-weight: 600;
    font-size: 16px;
    border: none;
    transition: all 0.3s ease;
}

.tr-v5-submit-btn:hover {
    background: #092e2e;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px -10px rgba(15, 76, 76, 0.4);
}

.no-ellips {
    -webkit-line-clamp: none !important;
}

.tf-sort-label {
    font-size: 14px;
    color: #1C1C1E;
    white-space: nowrap;
}

.tf-select-wrapper .tf-select {
    border-radius: 30px;
    height: 42px;
    padding: 0 20px;
    font-size: 14px;
    border: 1px solid #e2e8f0 !important;
    background-color: #ffffff;
    min-width: 160px;
    cursor: pointer;
    background-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 9L12 15L18 9" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor"/></svg>');
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px;

}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

/* Featured Review Layout */

.featured-review-wrap {
    background-color: #f3f7f6;
    border-radius: 8px;
    padding: 32px 40px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.most-review-outer {
    gap: 30px;
}

.ft-label {
    font-size: 18px;
    font-weight: 600;
    color: #31c3a6;
    letter-spacing: 0.5px;
    margin-bottom: 24px;
}

.ft-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.ft-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ft-text {
    font-size: 16px;
    color: #1e293b;
    line-height: 1.6;
    font-weight: 400;
    margin-bottom: 0;
    max-width: 85%;
    margin-left: 20px;
}

.ft-name {
    font-size: 15px;
    font-weight: 600;
    color: #0c3e3e;
    margin-bottom: 2px;
}

.ft-country {
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
}

.ft-stars i,
.nr-stars i {
    color: #0c3e3e;
    font-size: 14px;
    letter-spacing: 2px;
}

.ft-author.mt-4 {
    margin-left: 20px;
}

/* Normal Review Card */

.normal-review-card {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 30px;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
}

.normal-review-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

* {
    outline: none !important;
}

.nr-title {
    font-size: 18px;
    font-weight: 600;
    color: #31c3a6;
    margin-bottom: 16px;
}

.nr-text {
    font-size: 15px;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.nr-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.nr-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nr-name {
    font-size: 14px;
    font-weight: 600;
    color: #0c3e3e;
    margin-bottom: 2px;
}

.nr-country {
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
}

/* Testimonial Bottom CTA */

.testi-cta-banner {
    background-color: #f3f7f6;
    border-radius: 8px;
    padding: 30px 40px;
}

.testi-cta-text h3 {
    font-size: 22px !important;
    color: #1C1C1E !important;
    font-weight: 600 !important;
}

.testi-cta-text p {
    color: #6B7280 !important;
    font-size: 16px !important;
    margin-top: 10px;
    margin-bottom: 0;
}

.testi-btn-white {
    background-color: #ffffff;
    color: var(--theme-color) !important;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 6px;
    min-width: 160px;
    font-size: 15px;
    transition: all 0.2s ease;
    border: none;
}

.testi-btn-white:hover {
    background-color: #f8fafc;
    color: var(--color-primary-dark) !important;
}

/* Specific feature layout for mid-range tablets */

/* Fleet CTA Section */

.fleet-cta-wrapper {
    background-color: #f4f8f7;
    border-radius: 8px;
    padding: 40px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
}

.fleet-cta-wrapper .fleet-cta-title {
    color: #212529;
    font-size: 24px;
    font-weight: 600;
}

.fleet-cta-wrapper .fleet-cta-desc {
    color: #6b7280;
    font-size: 16px;
}

.fleet-cta-wrapper .fleet-cta-buttons {
    gap: 16px;
}

.fleet-cta-wrapper .btn-whatsapp {
    background-color: #12544e;
    color: #ffffff;
    border-radius: 8px;
    padding: 10px 24px;
    font-weight: 600;
    text-decoration: none;
    gap: 8px;
    font-size: 15px;
    outline: none !important;
}

.fleet-cta-wrapper .btn-whatsapp:hover {
    background-color: #0f4540;
    color: #ffffff;
}

.fleet-cta-wrapper .whatsapp-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background-color: white;
    border-radius: 50%;
    color: #12544e;
}

.fleet-cta-wrapper .btn-call {
    background-color: #ffffff;
    color: #12544e;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 10px 24px;
    font-weight: 600;
    text-decoration: none;
    gap: 8px;
    font-size: 15px;
    outline: none !important;
}

.fleet-cta-wrapper .btn-call:hover {
    background-color: #f9fafb;
    color: #12544e;
}

.fleet-cta-wrapper .fleet-cta-icon-container {
    background-color: #ebf1f0;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* New Stepper UI styling */

.booking-stepper-container {
    width: 100%;
}

.booking-stepper-card {
    background: #ffffff;
    border-radius: 8px;
    padding: 30px 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-top: 30px;
}

.stepper-steps-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.stepper-step {
    flex: 0 0 auto;
    text-align: center;
}

.stepper-link {
    text-decoration: none !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
}

/* Inactive (default) step styling */

.stepper-step .stepper-icon-circle {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background-color: #f0f4f4;
    color: #4b5563;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 12px;
    transition: all 0.3s ease;
}

.stepper-step .stepper-icon-circle svg {
    height: 36px;
}

.stepper-step .stepper-number {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #9ca3af;
    margin-bottom: 4px;
    transition: all 0.3s ease;
}

.stepper-step .stepper-title {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #6b7280;
    transition: all 0.3s ease;
}

/* Active step styling */

.stepper-step.active .stepper-icon-circle {
    background-color: #0F4C4C;
}

.stepper-step.active .stepper-icon-circle svg path {
    fill: #fff;
}

.stepper-step.active .stepper-number {
    color: #1c1c1c;
}

.stepper-step.active .stepper-title {
    color: var(--newdesign-text-primary, #1c1c1c);
    font-weight: 600;
}

/* Completed step styling */

.stepper-step.completed .stepper-icon-circle {
    background-color: #e2ecec;
    color: #0F4C4C;
}

.stepper-step.completed .stepper-number {
    color: #0F4C4C;
}

.stepper-step.completed .stepper-icon-circle svg path {
    fill: var(--theme-color);
}

.stepper-step.completed .stepper-title {
    color: #0F4C4C;
    font-weight: 500;
}

/* Stepper Connectors (dashed lines) */

.stepper-connector {
    flex-grow: 1;
    height: 1px;
    border-top: 1px dashed #d1d5db;
    margin-left: 20px;
    margin-right: 20px;
    margin-top: -35px;
    /* Aligns with circle centers */
}

/* Redesigned Vehicle Results Header and Slider Card UI */

.vehicle-results-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
    margin-top: 15px;
    font-family: 'Poppins', sans-serif;
    width: 100%;
}

.vehicle-results-title {
    font-size: 18px;
    font-weight: 500;
    color: #4b5563;
    margin: 0;
}

.vehicle-results-title .vehicles-count {
    color: #0F4C4C;
    font-weight: 600;
}

.vehicle-results-currency-wrapper {
    display: flex;
    align-items: center;
}

.vehicle-results-currency-wrapper .cur-dropdown {
    display: flex;
    align-items: center;
    margin: 0;
}

.vehicle-results-currency-wrapper .currency-label {
    font-size: 14px;
    color: #9ca3af;
    margin-right: 12px;
    font-weight: 500;
}

.vehicle-results-currency-wrapper #currency-switcher {
    background-color: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    cursor: pointer;
    display: flex !important;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
}

.vehicle-results-currency-wrapper #currency-switcher::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

/* Card Slider Overrides */

.car-slider-container {
    margin-bottom: 30px;
}

.car-slide {
    padding: 12px;
    outline: none !important;
}

.car-slide__inner {
    background: #f3f7f6 !important;
    border-radius: 8px !important;
    border: 1px solid #E5E7EB !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
    padding: 24px 20px !important;
    margin-right: 0 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative !important;
    overflow: hidden;
}

.car-slide:hover .car-slide__inner {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-2px);
    border-color: rgba(15, 76, 76, 0.15) !important;
}

.car-slide.active .car-slide__inner {
    background-color: #fff !important;
    border-color: #0F4C4C !important;
    border-width: 2px !important;
}

/* Top-right checkmark badge for selected car category */
.car-slide__check-badge {
    display: none;
    position: absolute;
    top: 3px;
    right: 3px;
    width: 24px;
    height: 24px;
    background: #0F4C4C;
    border-radius: 100px;
    align-items: center;
    justify-content: center;
    z-index: 5;
}

.car-slide__check-badge svg {
    display: block;
}

.car-slide.active .car-slide__check-badge {
    display: flex;
}

.car-slide__title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    text-transform: capitalize;
}

.car-slide__image {
    max-height: 70px !important;
    width: auto !important;
    object-fit: contain !important;
    margin: 0 auto 20px auto !important;
}

.car-slide__details {
    display: flex !important;
    justify-content: center !important;
    gap: 16px !important;
    margin-bottom: 20px !important;
    width: 100% !important;
    margin-top: 0 !important;
}

.car-slide__details span {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-right: 0 !important;
}

.car-slide__details i {
    color: #0F4C4C !important;
    font-size: 15px !important;
    opacity: 1 !important;
}

.car-slide__price {
    background: transparent !important;
    padding: 0 !important;
    margin-top: auto !important;
    width: 100%;
}

.car-slide__price h6 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #6b7280 !important;
    margin: 0 !important;
    text-transform: capitalize;
}

.car-slide__price h6 .price-value {
    color: var(--theme-color) !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    margin-left: 4px !important;
}

.car-slide__close {
    display: none !important;
}

/* Modernized Slider Arrows */

.car-slider__arrow {
    top: calc(50% - 10px);
    width: 36px !important;
    height: 36px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    color: #0F4C4C !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    z-index: 10;
}

.car-slider__arrow:hover {
    background: #0F4C4C !important;
    color: #ffffff !important;
    border-color: #0F4C4C !important;
    cursor: pointer;
}

.car-slider__arrow.slick-disabled {
    display: none !important;
}

.car-slider__arrow i {
    color: inherit !important;
    font-size: 14px !important;
}

.car-slider__arrow.arrow-left {
    left: -18px !important;
}

.car-slider__arrow.arrow-right {
    right: -18px !important;
}

.filter-badge {
    background: #eaf8f5;
    color: #2FBF9F;
    border: 1px solid #c1ede5;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px 4px 12px;
    font-size: 13px;
    font-weight: 600;
    margin: 3px;
    line-height: 1;
}

.filter-badge-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: rgba(47, 191, 159, 0.15);
    border-radius: 50%;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.2s ease, color 0.2s ease;
    border: none;
    padding: 0;
    color: #2FBF9F;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

.filter-badge-remove:hover {
    background: #2FBF9F;
    color: #ffffff;
}

/* Responsive Overrides */

/* =========================================================
   NEW VEHICLE CARD REDESIGN
   ========================================================= */

.search-result-container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-bottom: 30px !important;
    overflow: visible !important;
}

.new-vehicle-card-inner {
    background: #ffffff;

    border-radius: 8px;
    padding: 22px 18px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    font-family: var(--primary-font);
}

.new-vehicle-card-inner:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
}

/* HEADER STYLE */

.nvc-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 16px;
    border-bottom: 1px solid #F3F4F6;
    margin-bottom: 20px;
}

.nvc-header-left {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.nvc-title {
    font-size: 22px;
    font-weight: 600;
    color: #1c1c1c;
    margin: 0;
    line-height: 1.2;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
}

.nvc-subtitle {
    font-size: 13px;
    font-weight: 400;
    color: #9CA3AF;
    margin-left: 8px;
    text-transform: capitalize;
}

.nvc-badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}

.nvc-badge {
    font-size: 11px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.nvc-badge--count {
    background-color: #eaf8f5;
    color: #2FBF9F
}

.nvc-badge--pre {
    background-color: #E0F2FE;
    color: #0284C7;
}

.nvc-header-right {
    display: flex;
    align-items: center;
}

.nvc-deposit {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    text-transform: capitalize;
}

.nvc-deposit--none {
    background-color: #eaf8f5;
    color: #2FBF9F
}

.nvc-deposit--none svg {
    color: #059669;
}

.nvc-deposit--needed {
    background-color: #FEF2F2;
    color: #DC2626;
}

/* BODY COLUMNS */

.nvc-body {
    display: flex;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}

/* Ensure the wrapper doesn't break the flex layout on desktop */
.nvc-info-scroll-wrapper {
    display: contents;
}

.nvc-col-image {
    flex: 0 0 30%;
    max-width: 30%;
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.nvc-col-specs {
    flex: 0 0 24%;
    max-width: 24%;
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.nvc-col-included {
    flex: 0 0 24%;
    max-width: 24%;
    padding-left: 16px;
    padding-right: 12px;
    border-left: 1px solid #F3F4F6;
}

.nvc-col-price {
    flex: 0 0 22%;
    max-width: 22%;
    padding-left: 20px;
    padding-right: 12px;
    display: flex;
    flex-direction: column;
    border-left: 1px solid #F3F4F6;
}

/* IMAGE & FEATURES */

.nvc-image-wrapper {
    width: 100%;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

.nvc-car-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.nvc-features-row {
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.nvc-feature-badge {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    transition: all 0.2s ease;
}

.nvc-feature-badge:hover {
    background-color: #F3F4F6;
    border-color: #D1D5DB;
}

.nvc-feature-badge img {
    /* width: 36px; */
    height: 38px;
    object-fit: contain;
}

.nvc-feature-count {
    position: absolute;
    bottom: 4px;
    right: -1px;
    background-color: #0F4C4C;
    color: #ffffff;
    font-size: 11px;
    font-weight: 500;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* SPECIFICATIONS */

.nvc-spec-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.nvc-spec-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background-color: #F3F7F6;
    color: #0F4C4C;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.nvc-spec-icon svg {
    color: #0f4c4c;
}

.nvc-spec-text {
    display: flex;
    flex-direction: column;
}

.nvc-spec-text span {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
}

.spec-value-text {
    color: #6B7280;
}

.spec-label-text {
    color: #1C1C1E;
}

.nvc-spec-label {
    font-size: 10px;
    font-weight: 500;
    color: #9CA3AF;
    text-transform: uppercase;
    margin-bottom: 2px;
    letter-spacing: 0.5px;
}

/* FREE INCLUSIONS */

.nvc-included-title {
    font-size: 13px;
    font-weight: 600;
    color: #059669;
    margin: 0 0 12px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.nvc-included-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.nvc-included-list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 13px;
    color: #4B5563;
    line-height: 1.3;
}

.nvc-check-icon {
    color: #059669;
    flex-shrink: 0;
    margin-top: 2px;
}

.fmcic__info-trigger {
    color: #9CA3AF !important;
    margin-left: 4px;
    font-size: 12px;
    transition: color 0.2s ease;
}

.fmcic__info-trigger:hover {
    color: #0F4C4C !important;
}

/* PRICE & ACTIONS */

.nvc-price-info {
    text-align: right;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 16px;
}

.nvc-price-days {
    font-size: 11px;
    color: #9CA3AF;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.nvc-price-amount {
    font-size: 26px;
    font-weight: 600;
    color: #1c1c1c;
    margin: 0;
    line-height: 1;
}

.nvc-price-amount .strike {
    font-size: 15px;
    font-weight: 500;
    color: #9CA3AF;
    text-decoration: line-through;
    margin-right: 6px;
}

.nvc-curr-sym {
    font-weight: 600;
    vertical-align: top;
    margin-right: 2px;
}

.nvc-price-vat {
    font-size: 11px;
    color: #6B7280;
    font-weight: 500;
}

.nvc-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: auto;
}

.nvc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 12px;
    transition: all 0.3s ease;
    text-decoration: none !important;
    cursor: pointer;
    border: none;
    width: 100%;
    text-transform: capitalize;
    letter-spacing: 0.5px;
}

.nvc-btn--select {
    background-color: var(--theme-color);
    color: #ffffff !important;
    border: 1px solid var(--theme-color);
}

.nvc-btn--select:hover {
    background-color: #0C3E3E;
    border-color: #0C3E3E;
    transform: translateY(-1px);
}

.nvc-btn--quote {
    background-color: transparent;
    color: #0F4C4C !important;
    border: 1px solid #0F4C4C;
    min-width: fit-content;
}

.nvc-btn--quote:hover {
    background-color: transparent;
    color: #0F4C4C !important;
    transform: translateY(-1px);
}

/* RESPONSIVE LAYOUTS */

/* ==========================================================================
   NEW FILTER SIDEBAR UI OVERRIDES
   ========================================================================== */

#filter-sidebar {
    padding-right: 15px;
    padding-left: 0px;
}

#filter-sidebar .filter-box {
    background: #ffffff !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.02) !important;
    padding: 14px !important;
    margin-bottom: 24px !important;
}

#filter-sidebar .filter-box__inner {
    padding: 0 !important;
    border: none !important;
}

/* Trip details box specific layout */

.trip-details-box {
    position: relative;
}

.trip-details-header {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 20px !important;
}

.trip-details-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1F2937 !important;
}

.trip-details-edit {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--newdesign-accent) !important;
    display: flex;
    align-items: center;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.trip-details-edit:hover {
    color: #1D4ED8 !important;
}

.trip-details-edit svg {
    margin-right: 4px;
}

/* Timeline component */

.trip-timeline {
    position: relative;
    padding-left: 0;
    margin-bottom: 20px;
}

.trip-timeline-item {
    display: flex;
    align-items: flex-start;
    position: relative;
    margin-bottom: 20px;
}

.trip-timeline-item:last-child {
    margin-bottom: 0;
}

.trip-timeline-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    z-index: 2;
    margin-right: 12px;
}

.trip-timeline-content {
    display: flex;
    flex-direction: column;
}

.trip-timeline-label {
    font-family: 'Poppins', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #9CA3AF !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1 !important;
    margin-bottom: 4px;
}

.trip-timeline-value {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1F2937 !important;
    line-height: 1.3 !important;
}

.trip-timeline-connector {
    position: absolute;
    left: 11px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background-color: #E5E7EB;
    z-index: 1;
}

/* Rounded datetime box container */

.trip-datetime-box {
    background-color: #F3F4F6 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    gap: 10px;
}

.trip-datetime-icon {
    flex-shrink: 0;
    color: #4B5563;
}

.trip-datetime-details {
    display: flex;
    flex-direction: column;
}

.trip-date-range {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1F2937 !important;
    line-height: 1.2;
}

.trip-time-range {
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    color: #6B7280 !important;
    margin-top: 2px;
}

/* Route map container */

.route-map {
    overflow: hidden;
    padding: 0 !important;
}

.route-map iframe {
    border-radius: 8px !important;
    display: block;
    height: 180px;
}

/* Filter Box elements */

#filter-sidebar .filter-box__label {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1F2937 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin-bottom: 0;
}

/* Custom Checkbox override styling */

.custom-filter-checkbox {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    cursor: pointer;
}

.custom-filter-checkbox input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border: 1.5px solid #D1D5DB;
    border-radius: 4px;
    margin-right: 12px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    position: relative;
    transition: all 0.2s ease;
    background-color: #fff;
    flex-shrink: 0;
}

.custom-filter-checkbox input[type="checkbox"]:checked {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
}

.custom-filter-checkbox input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 2px;
    width: 6px;
    height: 11px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.custom-filter-checkbox label {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #4B5563 !important;
    cursor: pointer;
    user-select: none;
    margin-bottom: 0;
    display: inline-block;
}

/* Divider styling */

#filter-sidebar hr {
    border-top: 1px solid #a3a3a3 !important;
    margin: 20px 0 !important;
}

/* Slider Overrides */

.slider.slider-horizontal {
    width: 100% !important;
    height: 20px !important;
}

.slider-track {
    background: #E5E7EB !important;
    height: 6px !important;
    margin-top: -3px !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}

.slider-selection {
    background: #0f4c4c !important;
    box-shadow: none !important;
    border-radius: 3px !important;
}

.slider.slider-horizontal .slider-selection,
.slider.slider-horizontal .slider-track-high,
.slider.slider-horizontal .slider-track-low {

    height: 4px !important;
    top: 1px;

}

.slider-handle {
    background: #ffffff !important;
    border: 2px solid #0f4c4c !important;
    width: 18px !important;
    height: 18px !important;
    margin-top: 0px !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    opacity: 1 !important;
}

.price-selection {
    color: #0f4c4c;
}

.slider-handle:hover,
.slider-handle:focus,
.slider-handle:active {
    background: #0f4c4c !important;
    border-color: #0f4c4c !important;
}

/* Passenger Buttons styling */

.filter-buttons {
    display: flex;
    gap: 10px;
}

.filter-buttons .passenger-button {
    flex: 1;
    text-align: center;
    background: #FFFFFF !important;
    border: 1px solid #D1D5DB !important;
    box-sizing: border-box;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    color: #4B5563 !important;
    transition: all 0.2s ease !important;
}

.filter-buttons .passenger-button:hover {
    border-color: var(--theme-color) !important;
    color: var(--theme-color) !important;
}

.filter-buttons .passenger-button.active {
    background: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
    color: #ffffff !important;
}

/* Booking Safe Banner CSS */

.booking-safe-banner {
    background-color: #f3f7f6 !important;
    border: 1px solid #e3edea !important;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 30px;
    font-family: 'Poppins', sans-serif;
    gap: 30px;
}

.safe-icon-circle {
    width: 56px;
    height: 56px;
    min-width: 56px;
    background-color: #ffffff;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 162, 136, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
}

.safe-title {
    color: #1c1c1c;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px !important;
}

.safe-items-grid {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.safe-item {
    flex: 1;
    position: relative;
    padding-right: 20px;
    padding-left: 20px;
}

.safe-item:first-child {
    padding-left: 0;
}

.safe-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 15%;
    height: 70%;
    width: 1px;
    background-color: #dbe7e4;
}

.safe-item-title {
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 2px;
}

.safe-item-desc {
    font-size: 13px;
    color: #6b7280;
    font-weight: 400;
}

.app-button--primary {
    background-color: var(--theme-color) !important;
    border-color: var(--theme-color) !important;
    color: #ffffff !important;
}

.refundpolicymodal__header,
.fmcic__header {
    background: #fff !important;
}

.refundpolicymodal__header,
.fmcic__header {
    padding: 15px 20px;
}

.refundpolicymodal__body,
.fmcic__body {
    padding: 20px 20px;
}

.refundpolicymodal__header h3,
.fmcic__header h3,
.refundpolicymodal__subtitle,
.fmcic__subtitle {
    color: var(--theme-color) !important;
}

.refundpolicymodal__btn-ok,
.fmcic__btn-ok {
    background-color: var(--theme-color) !important;
}

/* ==========================================================================
   UNIFIED BOOKING SUMMARY SIDEBAR REDESIGN
   ========================================================================== */

.booking-summary-unified {
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin-bottom: 24px !important;
    font-family: 'Poppins', sans-serif !important;
}

.summary-main-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    text-align: left !important;
}

.summary-card-section {
    border-bottom: 1px solid #F3F4F6;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.summary-card-section:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

/* Car details */

.summary-car-image {
    max-height: 120px;
    object-fit: contain;
    margin-bottom: 12px;
}

.summary-car-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin-bottom: 12px !important;
}

.summary-car-badges {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.summary-badge-class,
.summary-badge-days {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    padding: 6px 12px !important;
    border-radius: 100px !important;
    text-transform: capitalize !important;
}

/* Timeline */

.summary-timeline {
    position: relative;
    padding-left: 20px;
}

.summary-timeline-connector {
    position: absolute;
    left: 4px;
    top: 10px;
    bottom: 10px;
    width: 2px;
    border-left: 2px dashed #E5E7EB;
}

.summary-timeline-item {
    position: relative;
    padding-left: 15px;
    margin-bottom: 20px;
}

.summary-timeline-item:last-child {
    margin-bottom: 0;
}

.summary-timeline-dot {
    position: absolute;
    left: -20px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.summary-timeline-dot.green {
    background-color: #10B981;
    box-shadow: 0 0 0 4px #D1FAE5;
}

.summary-timeline-dot.coral {
    background-color: #EF4444;
    box-shadow: 0 0 0 4px #FEE2E2;
}

.summary-timeline-content {
    display: flex;
    flex-direction: column;
}

.summary-timeline-label {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #9CA3AF !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}

.summary-timeline-value {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
}

.summary-timeline-date {
    font-size: 12px !important;
    color: #6B7280 !important;
}

/* Price Summary Title */

.summary-section-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin-top: 0 !important;
    margin-bottom: 15px !important;
    letter-spacing: 0.5px;
}

/* Price lines styling */

#pricing-table .booking-summary__item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 0 !important;
    border: none !important;
    background: none !important;
    margin: 0 !important;
}

#pricing-table .booking-summary__item p {
    margin: 0 !important;
    font-size: 13px !important;
}

#pricing-table .booking-summary__item p:first-child {
    color: #6B7280 !important;
    font-weight: 400 !important;
}

#pricing-table .booking-summary__item p:last-child {
    color: #1c1c1c !important;
    font-weight: 600 !important;
}

/* Specific styling for total amount line */

#pricing-table .booking-summary__item#total_amount {
    margin-top: 12px !important;
    padding-top: 16px !important;
    border-top: 1px solid #F3F4F6 !important;
}

#pricing-table .booking-summary__item#total_amount p:first-child {
    color: #1c1c1c !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-transform: capitalize;
}

#pricing-table .booking-summary__item#total_amount p:last-child {
    color: var(--newdesign-accent) !important;
    font-weight: 600 !important;
    font-size: 20px !important;
}

#pricing-table .small.text--light p {
    font-size: 14px;
}

/* Hide default horizontal line inside pricing table if any */

#pricing-table hr {
    display: none !important;
}

/* Coverage Card */

.refundable-box {
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
}

.coverage-card {
    background-color: #f3f7f6 !important;
    border: 1px solid #D1FAe5 !important;
    border-radius: 8px !important;
    padding: 16px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.coverage-icon-wrap {
    flex-shrink: 0;
    margin-top: 2px;
}

.coverage-icon {
    width: 24px;
    height: 24px;
}

.coverage-info {
    flex-grow: 1;
}

.coverage-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--newdesign-accent);
    margin: 0 0 4px 0 !important;
}

.coverage-desc {
    font-size: 12px !important;
    color: #414645 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.coverage-price-wrap {
    flex-shrink: 0;
    text-align: right;
    display: flex;
    flex-direction: column;
}

.coverage-price-value {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--newdesign-accent);
}

.coverage-price-lbl {
    font-size: 10px !important;
    color: var(--newdesign-accent);
    font-weight: 500 !important;
    text-transform: capitalize;
}

/* Bottom features bar */

.summary-features-bar {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding-top: 4px;
}

.feature-badge-item {
    flex: 1;
    text-align: center;
}

.feature-badge-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background-color: #ECFDF5;
    border-radius: 50%;
    margin-bottom: 8px;
}

.feature-badge-icon img {
    height: 18px !important;
    width: 18px !important;
    object-fit: contain;
}

.feature-badge-icon i {
    font-size: 16px;
    color: #10B981;
}

.feature-badge-item h6 {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin: 0 0 2px 0 !important;
}

.feature-badge-item p {
    font-size: 9px !important;
    color: #6B7280 !important;
    margin: 0 !important;
}

/* ==========================================================================
   EXTRAS SELECTION REDESIGN
   ========================================================================== */

.extras-main-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin-bottom: 24px !important;
    font-family: 'Poppins', sans-serif !important;
    margin-top: 30px;
}

.extras-list-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 30px;
    font-family: 'Poppins', sans-serif !important;
}

.extra-item-card {
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin-bottom: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

.extra-item-card:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
}

.highlight-word {
    padding: 0 5px;
    border-radius: 3px;
}

/* Recommended/Featured Card Styling */

.extra-item-card.featured-card {
    background-color: #f3f7f6 !important;
    border: 1.5px solid #2eceb6 !important;
}

.extra-item-card-inner {
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
    padding: 0;

}

.badge-recommended {
    display: inline-block !important;
    background-color: #D1FAE5 !important;
    color: #0F4C4C !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 4px 12px !important;
    border-radius: 100px !important;
    text-transform: capitalize !important;
    letter-spacing: normal !important;
    box-shadow: none !important;
    margin-bottom: 8px !important;
    border: none !important;
}

.extra-card-icon-wrap {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    background-color: transparent !important;
    border-radius: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 24px;
}

.extra-item-card.featured-card .extra-card-icon-wrap {
    background-color: transparent !important;
}

.extra-card-icon,
.extra-card-icon-wrap img,
.extra-card-icon-wrap svg {
    width: 72px !important;
    height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
    object-fit: contain !important;
}

.extra-card-text-wrap {
    flex-grow: 1;
    padding-right: 20px;
}

.extra-card-title {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin: 0 0 6px 0 !important;
}

.extra-card-desc {
    font-size: 12px !important;
    color: #4B5563 !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.extra-card-desc a.refundpolicymodal__info-trigger {
    color: #10B981 !important;
    margin-left: 4px;
    font-size: 14px;
}

.extra-card-tags {
    display: flex;
    gap: 12px;
    margin-top: 10px;
}

.extra-card-tags .tag-item {
    font-size: 12px !important;
    font-weight: 500 !important;

    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.extra-card-tags .tag-item i {
    font-size: 12px !important;
    color: #047857 !important;
}

.extra-card-price-wrap {
    flex-shrink: 0;
    text-align: right;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    min-width: 110px;
}

.extra-card-price-amount {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
}

.extra-card-price-period {
    font-size: 14px !important;
    color: #6B7280 !important;
    text-transform: capitalize;
}

.extra-card-first-free {
    font-size: 10px !important;
    color: #10B981 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    margin-top: 2px;
}

.extra-card-control-wrap {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.extra-card-control-wrap .extras-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #FFFFFF !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: 0 !important;
    width: 120px !important;
    height: 40px !important;
    overflow: hidden !important;
}

.extra-card-control-wrap .extras-buttons.is-selected {
    background: #0F4C4C !important;
    border-color: #0F4C4C !important;
}

.extra-item-card.featured-card .extra-card-control-wrap .extras-buttons {
    background: #FFFFFF !important;
    border: 1px solid #E5E7EB !important;
}

.extra-item-card.featured-card .extra-card-control-wrap .extras-buttons.is-selected {
    background: #0F4C4C !important;
    border-color: #0F4C4C !important;
}

.extra-card-control-wrap .button-plus {
    width: 38px !important;
    height: 100% !important;
    border-radius: 0 !important;
    border: none !important;
    background: transparent !important;
    color: #4B5563 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: all 0.2s !important;
}

.extra-card-control-wrap .button-plus:hover {
    background: rgba(0, 0, 0, 0.05) !important;
}

.extra-card-control-wrap .extras-buttons.is-selected .button-plus {
    color: #FFFFFF !important;
}

.extra-card-control-wrap .extras-buttons.is-selected .button-plus:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.extra-card-control-wrap .count.extra_select {
    width: 44px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    text-align: center !important;
    border: none !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

.extra-card-control-wrap .extras-buttons.is-selected .count.extra_select {
    color: #FFFFFF !important;
}

.option-added-indicator {
    display: none !important;
}

/* Bottom Navigation Buttons Redesign */

.extras-navigation-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
    margin-top: 32px;
}

.btn-extras-back {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 44px !important;
    padding: 0 32px !important;
    background: #FFFFFF !important;
    color: #0F4C4C !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
    min-width: 130px;
}

.btn-extras-back:hover {
    background: #F9FAFB !important;
    border-color: #D1D5DB !important;
    color: #0F4C4C !important;
}

.btn-extras-continue {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 44px !important;
    padding: 0 32px !important;
    background: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
}

.btn-extras-continue:hover {
    background: #0B3838 !important;
    color: #ffffff !important;
}

.travel-together {
    background-color: #fff;
    border-radius: 8px;
}

.extras-container {
    max-width: 100%;
}

.travel-together p {
    font-size: 13px;
}

.travel-together p strong {
    font-size: 15px;
}

.refundpolicymodal__close-x,
.fmcic__close-x {
    width: 32px;
    height: 32px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
}

/*--- Responsive All Starts Here---*/

/* ==========================================================================
   EMAIL QUOTE MODAL — Redesigned to match sr-v5-modal (Book Now)
   ========================================================================== */

/* Modal shell */

#emailQuoteModal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: var(--color-white, #ffffff) !important;
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

#emailQuoteModal .modal-dialog {
    /* max-width: 520px !important; */
    margin: 1.75rem auto !important;
}

/* Body / inner panel */

#emailQuoteModal .modal-body {
    padding: 0 !important;
    background: #ffffff;
}

#emailQuoteModal .modal-inner {
    padding: 2.5rem 2.5rem 2rem !important;
    background: #ffffff;
    position: relative;
}

/* Close button — matches sr-v5-close-btn */

#emailQuoteModal .modal-close-button {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    z-index: 10 !important;
    text-decoration: none !important;
}

#emailQuoteModal .modal-close-button:hover {
    background: #fee2e2 !important;
    color: #ef4444 !important;
    border-color: #fecaca !important;
    transform: scale(1.1) !important;
}

#emailQuoteModal .modal-close-button i {
    font-size: 14px !important;
    line-height: 1 !important;
}

/* Header text */

#emailQuoteModal h2.accent-color {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #0F4C4C !important;
    margin-bottom: 6px !important;
    text-align: center !important;
    letter-spacing: -0.02em !important;
}

#emailQuoteModal p.lightest-color {
    font-size: 14px !important;
    color: #64748b !important;
    text-align: center !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.6 !important;
}

/* Decorative top strip */

#emailQuoteModal .modal-inner::before {
    content: '';
    display: block;
    height: 4px;
    background: linear-gradient(90deg, #0F4C4C 0%, #2eceb6 100%);
    border-radius: 4px 4px 0 0;
    margin: -2.5rem -2.5rem 2rem;
    width: calc(100% + 5rem);
}

/* Form groups */

#emailQuoteModal .form-group {
    margin-bottom: 1.1rem !important;
    position: relative !important;
}

#emailQuoteModal .form-group label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #374151 !important;
    margin-bottom: 6px !important;
    font-family: 'Poppins', sans-serif !important;
}

#emailQuoteModal .form-group label.error {
    color: #ff0000 !important;
    font-weight: 400 !important;
}

/* Inputs — matches sr-v5-input */

#emailQuoteModal .app-input,
#emailQuoteModal input.app-input,
#emailQuoteModal input[type="text"],
#emailQuoteModal input[type="email"] {
    width: 100% !important;
    height: 50px !important;
    padding: 0 16px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1e293b !important;
    font-family: 'Poppins', sans-serif !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

#emailQuoteModal .app-input:focus,
#emailQuoteModal input[type="text"]:focus,
#emailQuoteModal input[type="email"]:focus {
    border-color: #0F4C4C !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(15, 76, 76, 0.08) !important;
}

#emailQuoteModal .app-input::placeholder,
#emailQuoteModal input::placeholder {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

/* Submit button — matches sr-v5-submit-btn */

#emailQuoteModal .app-button--primary,
#emailQuoteModal button#share-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 52px !important;
    background: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: 'Poppins', sans-serif !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    letter-spacing: 0.01em !important;
    text-decoration: none !important;
    margin-bottom: 0 !important;
}

#emailQuoteModal .app-button--primary:hover,
#emailQuoteModal button#share-btn:hover {
    background: #0B3838 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(15, 76, 76, 0.25) !important;
}

#emailQuoteModal .text-center {
    margin-top: 1.25rem !important;
}

/* Vehicle image inside modal */

#emailQuoteModal #image_vehicle_info {
    margin-bottom: 1rem;
}

#emailQuoteModal #image_vehicle_info img {
    max-width: 100%;
    border-radius: 8px;
    display: block;
    margin: 0 auto;
}

/* Alert/message blocks */

#emailQuoteModal #error_data,
#emailQuoteModal #success_data {
    border-radius: 8px !important;
    font-size: 13px !important;
    font-family: 'Poppins', sans-serif !important;
    margin-bottom: 1rem !important;
}

/* Responsive — small screens */

/* ==========================================================================
   PAYMENT / DRIVER DETAILS PAGE — Modernized UI Layout
   ========================================================================== */

/* Main Section Card */

.payment-section-card {
    background: #ffffff;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 24px;
}

.payment-section-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
}

.payment-section-header i,
.payment-section-header svg {
    font-size: 20px;
    color: #0c3e3e;
}

.payment-section-header h3 {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1c1c1c !important;
    margin: 0 !important;
    text-transform: capitalize;
}

/* Field styling */

.payment-field-group {
    margin-bottom: unset;
}

.payment-field-group label {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #6B7280;
    margin-bottom: 6px;
}

.payment-control {
    width: 100% !important;
    height: 48px !important;
    padding: 10px 16px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1f2937 !important;
    transition: all 0.25s ease !important;
    outline: none !important;
}

.payment-control:focus {
    border-color: #2eceb6 !important;
    box-shadow: 0 0 0 3px rgba(46, 206, 182, 0.1) !important;
}

.payment-control.error {
    border-color: #dc3545 !important;
}

.select2-container.select2-error .select2-selection {
    border-color: #dc3545 !important;
}

label.error {
    color: #dc3545 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    margin-top: 4px !important;
    display: block;
}

label.error::before {
    content: '' !important;
    display: inline-block !important;
    width: 14px !important;
    height: 14px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E") no-repeat center / contain !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E") no-repeat center / contain !important;
    margin-right: 4px !important;
    vertical-align: middle !important;
    font-family: inherit !important;
}

/* Select2 Hover/Active Option Color */
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[aria-selected]:hover {
    background-color: #0F4C4C !important;
    color: white !important;
}

/* Select2 Payment Control Styling */
.select2-container .select2-selection--single {
    height: 48px !important;
    padding: 8px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    background-color: #ffffff !important;
    transition: all 0.25s ease !important;
}

.select2-container--open .select2-selection--single {
    border-color: #0F4C4C !important;
    box-shadow: 0 0 0 3px rgba(15, 76, 76, 0.1) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 28px !important;
    padding: 0 !important;
    color: #1f2937 !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 46px !important;
    right: 8px !important;
}

/* Custom Select Dropdown Chevron */

select.payment-control {
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234b5563' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 16px !important;
    padding-right: 40px !important;
}

/* Custom Radio Pills for Age Group */

.payment-age-pills {
    display: flex;
    gap: 8px;
    flex-wrap: nowrap;
    margin-top: 6px;
}

.payment-age-pill {
    position: relative;
    cursor: pointer;
    flex: 1;
    min-width: 90px;
    text-align: center;
}

.payment-age-pill input {
    position: absolute;
    left: -9999px;
}

.payment-age-pill-label {
    display: block;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 10px 16px;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #4b5563 !important;
    transition: all 0.25s ease;
    user-select: none;
    margin: 0 !important;
}

@media (max-width: 575px) {
    .payment-age-pill {
        min-width: unset !important;
    }

    .payment-age-pill-label {
        font-size: 11px !important;
        padding: 8px 4px !important;
        width: 100%;
    }
}

.payment-age-pill input:checked+.payment-age-pill-label {
    border-color: #2eceb6;
    color: #0c3e3e;
    background: rgba(46, 206, 182, 0.05);
}

.payment-age-pill:hover .payment-age-pill-label {
    border-color: #cbd5e1;
}

/* Collapsible Accordion sections */

.payment-accordion-card {
    background: #ffffff;
    border-radius: 8px;
    margin-bottom: 16px;
    overflow: hidden;
}

.payment-accordion-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 24px;
    background: #ffffff;
    cursor: pointer;
    user-select: none;
    transition: background 0.2s ease;
}

.pretty input:checked~.state.p-success label:after,
.pretty.p-toggle .state.p-success label:after {
    background-color: var(--theme-color) !important;
    top: 2px;
}

.payment-accordion-title-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}

.payment-accordion-title-wrap i {
    font-size: 18px;
    color: #6b7280;
}

.payment-accordion-title-wrap h4 {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #1C1C1E !important;
    margin: 0 !important;
}

.payment-accordion-chevron {
    font-size: 14px;
    color: #6b7280;
    transition: transform 0.2s ease;
}

.payment-accordion-header[aria-expanded="true"] .payment-accordion-chevron {
    transform: rotate(180deg);
}

.payment-accordion-body {
    padding: 24px;
    border-top: 1px solid #f1f5f9;
}

/* Payment Method Selection Cards */

.payment-method-row {
    display: flex;
    gap: 16px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.payment-method-card {
    position: relative;
    flex: 1;
    min-width: 200px;
    cursor: pointer;
}

.payment-method-card input {
    position: absolute;
    left: -9999px;
}

input:checked+label i {
    color: #10b981;
}

input:checked+.payment-method-label .payment-method-info .payment-method-icon-box {
    background-color: #fff !important;
}

.payment-method-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    transition: all 0.25s ease;
    height: 100%;
    margin: 0 !important;
    cursor: pointer;
}

.payment-method-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.payment-method-icon-box {
    width: 40px;
    height: 40px;
    background: #f8fafc;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4b5563;
    font-size: 18px;
    flex-shrink: 0;
}

.payment-method-texts h6 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0c3e3e !important;
    margin: 0 0 2px 0 !important;
}

.payment-method-texts span {
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    color: #6b7280 !important;
    display: block;
}

.payment-method-radio-dot {
    width: 18px;
    height: 18px;
    border: 1.5px solid #cbd5e1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.25s ease;
    flex-shrink: 0;
}

.payment-method-radio-dot::after {
    content: '';
    width: 8px;
    height: 8px;
    background: var(--theme-color);
    border-radius: 50%;
    opacity: 0;
    transform: scale(0);
    transition: all 0.2s ease;
}

.payment-method-card input:checked+.payment-method-label {
    border-color: var(--theme-color);
    background: #f3f7f6;
}

.payment-method-card input:checked+.payment-method-label .payment-method-radio-dot {
    border-color: var(--theme-color);
}

.payment-method-card input:checked+.payment-method-label .payment-method-radio-dot::after {
    opacity: 1;
    transform: scale(1);
}

/* Promo Code Box */

.payment-promo-wrapper {
    display: flex;
    gap: 12px;
    margin-bottom: 24px;
    align-items: center;
}

.payment-promo-input-box {
    flex-grow: 1;
}

.payment-promo-btn {
    height: 48px;
    padding: 0 24px;
    background: #f3f7f6;
    border: 1px solid #2eceb6;
    color: #0c3e3e;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
}

.payment-promo-btn:hover {
    background: rgba(46, 206, 182, 0.05);
}

/* Footer Buttons */

.payment-footer-actions {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
    margin-top: 24px;
    margin-bottom: 24px;
}

.btn-payment-back {
    height: 48px !important;
    padding: 0 28px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    color: #6b7280 !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    margin: 0 !important;
    width: auto !important;
}

.btn-payment-back:hover {
    background: #f1f5f9 !important;
    color: #4b5563 !important;
}

.btn-payment-continue {
    height: 48px !important;
    padding: 0 28px !important;
    background: #0c3e3e !important;
    border: none !important;
    color: #ffffff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    margin: 0 !important;
    width: auto !important;
}

.btn-payment-continue:hover {
    background: #072525 !important;
    box-shadow: 0 4px 12px rgba(12, 62, 62, 0.2) !important;
}

.payment-trust-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #4b5563;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 24px;
}

.payment-trust-badge img {
    width: 14px;
}

/* Custom Checkbox */

.pretty.filter-checkbox {
    margin-top: 16px !important;
    white-space: normal !important;
    display: flex !important;
    align-items: flex-start !important;
}

.pretty.filter-checkbox .state label:before {
    border-color: #cbd5e1 !important;
    border-radius: 4px !important;
    width: 20px !important;
    height: 20px !important;
    top: 2px !important;
}

.pretty.filter-checkbox input:checked~.state label:before {
    background-color: #0F4C4C !important;
    border-color: #0F4C4C !important;
}

.pretty.filter-checkbox .state .icon {
    width: 20px !important;
    height: 20px !important;
    font-size: 11px !important;
    color: #ffffff !important;
    top: 2px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pretty.filter-checkbox .state label {
    padding-left: 32px !important;
    text-indent: 0 !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    color: #4b5563 !important;
    line-height: 1.6 !important;
}

.pretty.filter-checkbox .state label a {
    color: #2eceb6 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

.payment-promo-input-box {
    position: relative;
    flex-grow: 1;
}

.payment-promo-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 16px;
    pointer-events: none;
}

.payment-promo-input-box .payment-control {
    padding-left: 44px !important;
}

/* ==========================================================================
   BOOKING VOUCHER REDESIGN
   ========================================================================== */
.voucher-status-heading {
    font-family: 'Poppins', sans-serif !important;
    font-size: 32px !important;
    font-weight: 600 !important;
    margin-top: 2rem !important;
    margin-bottom: 0.5rem !important;
}

.voucher-status-heading .status-label {
    color: #1e293b !important;
}

.voucher-status-heading .status-value {
    color: #2eceb6 !important;
}

.voucher-thank-you {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    color: #64748b !important;
    margin-bottom: 1.5rem !important;
}

.voucher-number-heading {
    font-family: 'Poppins', sans-serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    margin-bottom: 2rem !important;
}

.voucher-number-heading .voucher-label {
    color: #1e293b !important;
}

.voucher-number-heading .voucher-value {
    color: #2eceb6 !important;
}

/* Voucher Buttons */
.voucher-buttons {
    gap: 12px !important;
}

.voucher-buttons .app-button,
.voucher-buttons .app-button--primary {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
    border-radius: 8px !important;
    margin: 0 !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-shadow: none !important;
    height: 48px !important;
}

/* Secondary outline button styling */
.voucher-buttons .app-button {
    background-color: #ffffff !important;
    color: #0c3e3e !important;
    border: 1px solid #cbd5e1 !important;
}

.voucher-buttons .app-button:hover {
    background-color: #f8fafc !important;
    border-color: #94a3b8 !important;
}

/* Primary filled button styling (Terms of Use) */
.voucher-buttons .app-button--primary {
    background-color: #0c3e3e !important;
    color: #ffffff !important;
    border: none !important;
}

.voucher-buttons .app-button--primary:hover {
    background-color: #082d2d !important;
}

/* Responsive adjustments */

/* ─────────────────────────────────────────────────────────────────────────────
   MEDIA QUERIES
   ───────────────────────────────────────────────────────────────────────────── */


/* ==========================================
   VOUCHER DETAILS MODERNIZATION OVERRIDES
   ========================================== */
#printable .panel {
    background: #ffffff;
    border: 1px solid #eef2f5;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
    height: 100%;
    overflow: hidden;
}

#printable .panel-title {
    background: #ffffff !important;
    color: #1c1c1e !important;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 600;
    padding: 16px 20px !important;
    border-bottom: 1px solid #eef2f5;
    display: flex;
    align-items: center;
}

#printable .panel-title i {
    color: #2eceb6 !important;
    margin-right: 8px;
    font-size: 16px;
}

#printable .panel-inner i,
#printable .panel-inner .fa,
#printable h4 i,
#printable h4 .fa {
    margin-right: 12px !important;
}

#printable .panel-inner {
    padding: 20px !important;
    background: #ffffff;
}

#printable .panel-label {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 8px;
    display: inline-block;
}

#printable .panel-text {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #666666;
    margin-bottom: 8px;
    display: inline-block;
}

#printable .panel-inner .row .col-sm-7+.col-sm-5 {
    text-align: right !important;
}

#printable .panel-inner .row .col-sm-7+.col-sm-5 .panel-text,
#printable .panel-inner .row .col-sm-7+.col-sm-5 .panel-label {
    text-align: right !important;
    display: block;
}

#printable .panel-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
    margin-right: 10px;
    vertical-align: middle;
}

#printable .panel-detail {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    color: #555555;
    margin-bottom: 20px;
}

#printable ul.panel-detail,
#printable ol.panel-detail {
    padding-left: 20px;
    margin-bottom: 20px;
}

#printable ul.panel-detail li,
#printable ol.panel-detail li {
    margin-bottom: 6px;
    font-size: 14px;
    color: #555555;
}

#printable .no-gutters {
    margin-right: 0;
    margin-left: 0;
}

#printable .no-gutters>[class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}


/* Fleet View More Button */
.fleet-view-more-container {
    text-align: center;
    margin-top: 2rem;
    margin-bottom: 3rem;
}

.fleet-btn-view-more {
    background-color: transparent;
    border: 1px solid #0F4C4C;
    color: #0F4C4C;
    padding: 10px 32px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.fleet-btn-view-more:hover {
    background-color: #0F4C4C !important;
    color: #ffffff !important;
}

.hidden-by-view-more {
    display: none !important;
}

/* Customer My Account Redesign Styles */
.pingouin-my-account-redesign .nav-tabs.user-profile-navtabs {
    border-bottom: none !important;
    border: 1px solid #d5d5d5 !important;
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 30px;
    background-color: #fff;
    padding: 8px;
    border-radius: 8px;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.pingouin-my-account-redesign .user-profile-navtabs .nav-link {
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 24px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--newdesign-text-secondary) !important;
    background-color: transparent !important;
    transition: all 0.3s ease !important;
    text-align: center;
    cursor: pointer;
    flex: 1;
}

.pingouin-my-account-redesign .user-profile-navtabs .nav-link.active {
    color: var(--newdesign-text-white) !important;
    background-color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 4px 12px rgba(15, 76, 76, 0.15) !important;
}

.pingouin-my-account-redesign .user-profile-navtabs .nav-link:hover:not(.active) {
    color: var(--newdesign-brand-primary) !important;
    background-color: rgba(15, 76, 76, 0.05) !important;
}

/* Table layout styling */
.pingouin-my-account-redesign .table-responsive {
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    background-color: var(--newdesign-text-white);
    border: 1px solid var(--newdesign-neturals-border);
    overflow-x: auto;
    margin-bottom: 30px;
}

.pingouin-my-account-redesign .table {
    margin-bottom: 0 !important;
    border-collapse: collapse;
    width: 100%;
}

.pingouin-my-account-redesign .table th:empty {
    display: none;
}

.pingouin-my-account-redesign .table th {
    background-color: var(--newdesign-neturals-soft-bg) !important;
    color: var(--newdesign-brand-primary) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 12px 12px !important;
    border-bottom: 2px solid var(--newdesign-neturals-border) !important;
    border-top: none !important;
    white-space: nowrap;
}

.pingouin-my-account-redesign .table td {
    padding: 12px 12px !important;
    font-size: 15px !important;
    color: var(--newdesign-text-primary) !important;
    border-bottom: 1px solid var(--newdesign-neturals-border) !important;
    border-top: none !important;
    vertical-align: middle !important;
    white-space: nowrap;
}

.pingouin-my-account-redesign .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(243, 247, 246, 0.3) !important;
}

.pingouin-my-account-redesign .table-striped tbody tr:hover {
    background-color: rgba(243, 247, 246, 0.7) !important;
}

/* Status Badges */
.pingouin-my-account-redesign .status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    border-radius: 9999px;
    text-transform: capitalize;
    line-height: 1;
}

.pingouin-my-account-redesign .status-badge.status-confirmed,
.pingouin-my-account-redesign .status-badge.status-paid {
    background-color: #DEF7EC;
    color: #03543F;
}

.pingouin-my-account-redesign .status-badge.status-cancelled,
.pingouin-my-account-redesign .status-badge.status-unpaid {
    background-color: #FDE8E8;
    color: #9B1C1C;
}

.pingouin-my-account-redesign .status-badge.status-not-confirmed {
    background-color: #FEF08A;
    color: #713F12;
}

.pingouin-my-account-redesign .status-badge.status-close {
    background-color: #E5E7EB;
    color: #374151;
}

/* Redesigned My Account Buttons */
.pingouin-my-account-redesign .my-account-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none !important;
    line-height: 1.2;
}

.pingouin-my-account-redesign .btn-pay-now {
    background-color: var(--newdesign-accent);
    color: var(--newdesign-text-white) !important;
}

.pingouin-my-account-redesign .btn-pay-now:hover {
    background-color: #26a388;
    box-shadow: 0 4px 10px rgba(47, 191, 159, 0.2);
}

.pingouin-my-account-redesign .btn-checklist {
    background-color: var(--newdesign-brand-primary);
    color: var(--newdesign-text-white) !important;
}

.pingouin-my-account-redesign .btn-checklist:hover {
    background-color: var(--newdesign-primary-dark);
    box-shadow: 0 4px 10px rgba(15, 76, 76, 0.2);
}

.pingouin-my-account-redesign .btn-view-details {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: var(--newdesign-neturals-soft-bg);
    color: var(--newdesign-brand-primary) !important;
    transition: all 0.3s ease;
}

.pingouin-my-account-redesign .btn-view-details:hover {
    background-color: var(--newdesign-brand-primary);
    color: var(--newdesign-text-white) !important;
}

/* Profile Action Buttons */
.pingouin-my-account-redesign .user-profile-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 15px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.pingouin-my-account-redesign .user-profile-buttons button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    border: none;
    transition: all 0.3s ease;
    cursor: pointer;
    line-height: 1.2;
}

.pingouin-my-account-redesign .user-profile-buttons button i {
    margin-right: 8px;
}

.pingouin-my-account-redesign .user-profile-buttons button[data-target="#CPModal"] {
    background-color: var(--newdesign-neturals-soft-bg);
    color: var(--newdesign-brand-primary);
    border: 1px solid var(--newdesign-brand-primary);
}

.pingouin-my-account-redesign .user-profile-buttons button[data-target="#CPModal"]:hover {
    background-color: var(--newdesign-brand-primary);
    color: var(--newdesign-text-white);
}

.pingouin-my-account-redesign .user-profile-buttons button[data-target="#editModal"] {
    background-color: var(--newdesign-brand-primary);
    color: var(--newdesign-text-white);
}

.pingouin-my-account-redesign .user-profile-buttons button[data-target="#editModal"]:hover {
    background-color: var(--newdesign-primary-dark);
}

.pingouin-my-account-redesign .user-profile-buttons button.logout {
    background-color: #ffffff !important;
    color: #DC2626 !important;
    border: 1.5px solid #FCA5A5 !important;
    font-weight: 600 !important;
    transition: all 0.25s ease !important;
}

.pingouin-my-account-redesign .user-profile-buttons button.logout:hover {
    background-color: #FEF2F2 !important;
    color: #B91C1C !important;
    border-color: #EF4444 !important;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.1) !important;
}

/* Profile Details Table */
.pingouin-my-account-redesign .user-profile-table {
    width: 100%;
    margin-bottom: 0 !important;
}

.pingouin-my-account-redesign .user-profile-table th {
    width: 25% !important;
    background-color: var(--newdesign-neturals-soft-bg) !important;
    color: var(--newdesign-brand-primary) !important;
    font-weight: 600 !important;
    border-bottom: 1px solid var(--newdesign-neturals-border) !important;
}

.pingouin-my-account-redesign .user-profile-table td {
    color: var(--newdesign-text-primary) !important;
    border-bottom: 1px solid var(--newdesign-neturals-border) !important;
}

/* Modal Redesign Override */
.pingouin-my-account-redesign-modal .modal-content {
    border: none !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 25px 50px -12px rgba(15, 76, 76, 0.15) !important;
}

.pingouin-my-account-redesign-modal .modal-body {
    padding: 0 !important;
    background: #ffffff !important;
}

.pingouin-my-account-redesign-modal .modal-inner {
    padding: 2.5rem 2.5rem 2rem !important;
    background: #ffffff !important;
    position: relative !important;
}

/* Close button */
.pingouin-my-account-redesign-modal .modal-close-button {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    z-index: 10 !important;
    text-decoration: none !important;
}

.pingouin-my-account-redesign-modal .modal-close-button:hover {
    background: #fee2e2 !important;
    color: #ef4444 !important;
    border-color: #fecaca !important;
    transform: scale(1.1) !important;
}

.pingouin-my-account-redesign-modal .modal-close-button i {
    font-size: 14px !important;
    line-height: 1 !important;
}

/* Header text */
.pingouin-my-account-redesign-modal h2.accent-color {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #0F4C4C !important;
    margin-bottom: 6px !important;
    text-align: center !important;
    letter-spacing: -0.02em !important;
}

.pingouin-my-account-redesign-modal p.lightest-color {
    font-size: 14px !important;
    color: #64748b !important;
    text-align: center !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.6 !important;
}

/* Form groups */
.pingouin-my-account-redesign-modal .form-group {
    margin-bottom: 1.1rem !important;
    position: relative !important;
}

.pingouin-my-account-redesign-modal .form-group label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #374151 !important;
    margin-bottom: 6px !important;
    font-family: 'Poppins', sans-serif !important;
    text-align: left !important;
}

/* Inputs & selects */
.pingouin-my-account-redesign-modal .app-input,
.pingouin-my-account-redesign-modal select.app-input,
.pingouin-my-account-redesign-modal input.app-input,
.pingouin-my-account-redesign-modal input[type="text"],
.pingouin-my-account-redesign-modal input[type="password"],
.pingouin-my-account-redesign-modal input[type="email"] {
    width: 100% !important;
    height: 50px !important;
    padding: 0 16px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1e293b !important;
    font-family: 'Poppins', sans-serif !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

.pingouin-my-account-redesign-modal .app-input:focus,
.pingouin-my-account-redesign-modal select.app-input:focus,
.pingouin-my-account-redesign-modal input[type="text"]:focus,
.pingouin-my-account-redesign-modal input[type="password"]:focus,
.pingouin-my-account-redesign-modal input[type="email"]:focus {
    border-color: #0F4C4C !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(15, 76, 76, 0.08) !important;
}

.pingouin-my-account-redesign-modal select.app-input {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 16px 12px !important;
    padding-right: 40px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

.pingouin-my-account-redesign-modal .select2-container .select2-selection--single {
    display: flex !important;
    align-items: center !important;
    height: 50px !important;
    padding: 0 !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    background-color: #f8fafc !important;
    outline: none !important;
}

.pingouin-my-account-redesign-modal .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: normal !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1e293b !important;
    font-family: 'Poppins', sans-serif !important;
    padding-left: 16px !important;
    padding-right: 40px !important;
    margin: 0 !important;
}

.pingouin-my-account-redesign-modal .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

.pingouin-my-account-redesign-modal .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 48px !important;
    right: 12px !important;
}

/* Submit button */
.pingouin-my-account-redesign-modal .app-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 52px !important;
    background: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: 'Poppins', sans-serif !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    letter-spacing: 0.01em !important;
    text-decoration: none !important;
    margin-bottom: 0 !important;
}

.pingouin-my-account-redesign-modal .app-button:hover {
    background: #0B3838 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(15, 76, 76, 0.25) !important;
}

.pingouin-my-account-redesign-modal .modal-dialog {
    max-width: 520px !important;
    margin: 1.75rem auto !important;
}

.pingouin-my-account-redesign-modal#editModal .modal-dialog {
    max-width: 800px !important;
}


/* Responsiveness overrides */


.logout-v5-icon-circle {
    width: 60px !important;
    height: 60px !important;
    background: var(--newdesign-neturals-soft-bg) !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
    color: var(--newdesign-brand-primary) !important;
    box-shadow: 0 4px 6px -1px rgba(15, 76, 76, 0.1) !important;
    transition: all 0.25s ease !important;
}

.logout-v5-icon-circle svg {
    width: 24px !important;
    height: 24px !important;
}

/* Redesigned Profile Card */
.pingouin-profile-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03) !important;
    padding: 30px 24px !important;
}

.pingouin-avatar-circle {
    width: 120px !important;
    height: 120px !important;
    background: #e6f4f1 !important;
    color: #0F4C4C !important;
    font-size: 38px !important;
    font-weight: 600 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 1.5rem !important;
}

.pingouin-profile-name {
    color: #0F4C4C !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
}

.pingouin-profile-email {
    color: #64748b !important;
    font-size: 14px !important;
}

.pingouin-profile-divider {
    border-top: 1px solid #f1f5f9 !important;
    margin: 1.5rem 0 !important;
}

.pingouin-info-header {
    gap: 12px;
}

/* Actions buttons customization */
.pingouin-profile-actions button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 48px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-shadow: none !important;
    margin-bottom: 7px !important;
    gap: 12px;
}

.pingouin-profile-actions button.app-button--primary {
    background: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
}

.pingouin-profile-actions button.app-button--primary:hover {
    background: #0d4343 !important;
}

.pingouin-profile-actions button.app-button-secondary {
    background: #ffffff !important;
    color: #0F4C4C !important;
    border: 1px solid #0F4C4C !important;
}

.pingouin-profile-actions button.app-button-secondary:hover {
    background: #e6f4f1 !important;
}

.pingouin-profile-actions button.logout {
    background: #ffffff !important;
    color: #DC2626 !important;
    border: 1px solid #FCA5A5 !important;
}

.pingouin-profile-actions button.logout:hover {
    background: #FEF2F2 !important;
    border-color: #EF4444 !important;
}

/* Redesigned Info Card */
.pingouin-info-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03) !important;
    padding: 30px !important;
}

.pingouin-info-icon-circle {
    width: 40px !important;
    height: 40px !important;
    background: #e6f4f1 !important;
    color: #0F4C4C !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pingouin-info-title {
    color: #0F4C4C !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

.pingouin-info-grid .info-row {
    margin: 0 !important;
}

.pingouin-info-grid .info-row:last-child {
    border-bottom: none !important;
}

.pingouin-info-grid .info-col {
    padding: 10px 5px !important;
}

.pingouin-info-grid .info-label {
    color: #94a3b8 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 4px !important;
}

.pingouin-info-grid .info-value {
    color: #1e293b !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}


/* ============================================================
   Pingouin Booking Cards (pbc-*)
   ============================================================ */

.pbc-cards-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.pbc-card {
    flex: 0 0 calc(33.333% - 14px);
    max-width: calc(33.333% - 14px);
    min-width: 260px;
}

/* Tablet: 2 columns */


.pbc-card {
    background: #ffffff;
    border: 1px solid #e8edf2;
    border-radius: 8px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    box-shadow: 0 2px 12px rgba(15, 76, 76, 0.06);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.pbc-card:hover {
    box-shadow: 0 6px 24px rgba(15, 76, 76, 0.12);
    transform: translateY(-2px);
}

/* Card header: booking number + eye icon */
.pbc-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.pbc-label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 4px;
}

.pbc-booking-num {
    font-size: 17px;
    font-weight: 600;
    color: var(--newdesign-accent) !important;
    text-decoration: none !important;
    line-height: 1.2;
}

.pbc-booking-num:hover {
    color: var(--theme-color) !important;
}

.pbc-eye-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #c6e9df !important;
    color: #0F4C4C !important;
    font-size: 15px;
    flex-shrink: 0;
    transition: background 0.2s ease;
    text-decoration: none !important;
}

.pbc-eye-btn:hover {
    background: #d4eeea;
    color: #0F4C4C !important;
}

/* Vehicle section */
.pbc-vehicle-name {
    display: flex;
    flex-direction: column;
}

.pbc-vehicle-value {
    font-size: 16px;
    font-weight: 600;
    color: #1e293b;
    line-height: 1.3;
}

/* Time rows */
.pbc-times {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pbc-time-row {
    display: flex;
    align-items: center;
    gap: 12px;
}

.pbc-time-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
}

.pbc-time-icon--pickup {
    background: #e8f4ff;
    color: #3b82f6;
}

.pbc-time-icon--dropoff {
    background: #fff0f0;
    color: #ef4444;
}

.pbc-time-label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 2px;
}

.pbc-time-value {
    font-size: 14px;
    font-weight: 600;
    color: #334155;
}

/* Divider */
.pbc-divider {
    border-top: 1px solid #f1f5f9;
    margin: 0;
}

/* Footer */
.pbc-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.pbc-footer-status {
    display: flex;
    gap: 16px;
    align-items: flex-end;
    flex-wrap: wrap;
}

.pbc-footer-label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 5px;
}

.pbc-footer-total {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.pbc-total-amount {
    font-size: 20px;
    font-weight: 600;
    color: #1e293b;
    line-height: 1;
}

.pbc-commission {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}

.pbc-checklist-btn {
    font-size: 12px !important;
    padding: 4px 10px !important;
}


/* Animated Car Loader Styles */
#app-loader {
    background: rgba(255, 255, 255, 0.85) !important;
    display: none;
}

.loader-car-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.loader-car {
    overflow: visible;
    zoom: 1.2;
}

/* 1. Shake animation for the car body to simulate motor running */
.loader-car__body {
    animation: shake 0.2s ease-in-out infinite alternate;
}

/* 2. Speed lines animation using stroke-dasharray and stroke-dashoffset */
.car__line {
    transform-origin: center right;
    stroke-dasharray: 22;
    animation: line 0.8s ease-in-out infinite;
    animation-fill-mode: both;
}

/* Staggered animation delays for the speed lines */
.car__line--top {
    animation-delay: 0s;
}

.car__line--middle {
    animation-delay: 0.2s;
}

.car__line--bottom {
    animation-delay: 0.4s;
}

/* Keyframes for the shaking/vibrating motor effect */
@keyframes shake {
    0% {
        transform: translateY(-1%);
    }

    100% {
        transform: translateY(3%);
    }
}

/* Keyframes for the moving speed lines */
@keyframes line {
    0% {
        stroke-dashoffset: 22;
    }

    25% {
        stroke-dashoffset: 22;
    }

    50% {
        stroke-dashoffset: 0;
    }

    51% {
        stroke-dashoffset: 0;
    }

    80% {
        stroke-dashoffset: -22;
    }

    100% {
        stroke-dashoffset: -22;
    }
}

.longterm-hero-header {
    padding: 80px 0;
}

.longterm-hero-header .fleet-hero-subtitle p {
    max-width: 930px;

}


/* Long Term Benefits Section */
.longterm-benefits-section {
    background-color: #ffffff;
    padding: 80px 0;
}

.longterm-benefits-subtitle {
    color: #2cc2ab;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.longterm-benefits-title {
    color: #1c1c1e;
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 40px;
}

.longterm-benefit-item {
    text-align: center;
    position: relative;
}

.longterm-benefit-icon-wrapper {
    width: 90px;
    height: 90px;
    background-color: #eaf8f5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    transition: transform 0.3s ease;
}

.longterm-benefit-icon-wrapper:hover {
    transform: scale(1.05);
}

.longterm-benefit-icon {
    width: 44px;
    height: auto;
}

.longterm-benefit-text {
    font-family: 'Poppins', sans-serif;
    color: #1e293b;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
    margin: 0;
}


/* ================================================
   RESPONSIVE MEDIA QUERIES (consolidated)
   ================================================ */

/* Long Term Benefits Desktop Styles */
.longterm-benefit-item::after {
    content: '';
    position: absolute;
    right: 0;
    top: 15%;
    height: 70%;
    width: 1px;
    background-color: #eceff3;
}

.longterm-benefit-item.col-lg-3:nth-child(4n)::after {
    display: none;
}


/* ── Long Term Booking Form Redesign ── */
.long-term-booking-form .bf-container {
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 20px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #f0f0f0 !important;
}

/* Override existing form styles */
.long-term-car-rental-monthly-car-hire .long-term-booking-form form {
    box-shadow: none !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Form Labels */
#longterm_drop_form .form-group .label {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e3a47 !important;
    margin-bottom: 8px !important;
    display: flex !important;
    align-items: center !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

#longterm_drop_form .form-group .label i.accent-color {
    color: #2cc2ab !important;
    font-size: 15px !important;
}




/* Date/Time Pickers Flex Containers */
#longterm_drop_form .input-group-side {
    display: flex !important;
    gap: 12px !important;
}

#longterm_drop_form .input-group-side .div {
    flex: 1 !important;
}

#longterm_drop_form .input-group-side .div:first-child {
    flex: 1.6 !important;
}

/* Clear input addon positioning */
#longterm_drop_form .form-group {
    position: relative !important;
    margin-bottom: 20px !important;
}

#longterm_drop_form .input-addon {
    position: absolute !important;
    right: 14px !important;
    bottom: 15px !important;
    top: auto !important;
    z-index: 10 !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* CRITICAL: override d-none even when display:flex !important is set by input-addon */
#longterm_drop_form .input-addon.d-none,
#longterm_drop_form .clear-input.d-none {
    display: none !important;
}

#longterm_drop_form .input-addon i,
#longterm_drop_form .input-addon svg {
    width: 16px !important;
    height: 16px !important;
    color: #ef4444 !important;
}

/* Driver's Age pills layout styling */
.age-col-modern {
    margin-top: 15px !important;
}

.age-col-modern label.mb-1 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e3a47 !important;
    margin-right: 15px !important;
    margin-bottom: 0 !important;
}

/* Hide original pretty checkbox elements */
#longterm_drop_form .pretty .state label::before,
#longterm_drop_form .pretty .state label::after {
    display: none !important;
}

#longterm_drop_form .pretty {
    margin-right: 10px !important;
    margin-left: 0 !important;
    float: none !important;
    display: inline-block !important;
}

#longterm_drop_form .pretty .state label {
    text-indent: 0 !important;
    padding-left: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    height: 44px !important;
    min-width: 90px !important;
    transition: all 0.25s ease !important;
    font-family: 'Inter', sans-serif !important;
}

/* Active state */
#longterm_drop_form .pretty input[type="radio"]:checked~.state label {
    background: #0F4C4C !important;
    color: #ffffff !important;
    border-color: #0F4C4C !important;
    box-shadow: 0 4px 12px rgba(15, 76, 76, 0.15) !important;
}

/* Driver age input field */
#driverAge {
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    height: 44px !important;
    width: 90px;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    font-family: 'Inter', sans-serif !important;
    color: #1e3a47 !important;
}

/* Search Button Column & Button styles */
.btn-col-modern {
    margin-top: 15px !important;
}

#longterm_drop_form .search-now-button {
    background-color: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 36px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    height: 52px !important;
    width: 100% !important;
    max-width: 240px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    box-shadow: 0 4px 10px rgba(15, 76, 76, 0.1) !important;
    cursor: pointer !important;
}

#longterm_drop_form .search-now-button:hover {
    background-color: #0c3d3d !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(15, 76, 76, 0.25) !important;
}

#longterm_drop_form .search-now-button:active {
    transform: scale(0.98) !important;
}

/* ── Long Term Search Results Redesign ── */
.search-long-term {
    padding: 60px 0 !important;
}

.search-long-term .secondary-color {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 28px !important;
    color: #1c1c1e !important;
    margin-bottom: 40px !important;
}



/* List container layout - Centered flex layout for 1-3 cards */
ul.long-term-search-result {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 30px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Slide Card Design (like .mfc-card) */
ul.long-term-search-result li.car-slide {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 30px 24px !important;
    box-shadow: 1px 3px 25px 0 rgba(0, 0, 0, 0.03) !important;
    border: 1px solid #f3f4f6 !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    position: relative !important;
    text-align: center !important;
    flex: 0 1 360px !important;
    max-width: 360px !important;
    min-width: 280px !important;
    width: 100% !important;
    height: auto !important;
    box-sizing: border-box !important;
    margin: 0 !important;

}

.page-template-page-longterm .the-car-slider--fleet .car-slide {
    padding: 26px 16px !important;
}

ul.long-term-search-result li.car-slide:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 20px 40px rgba(39, 78, 94, 0.08) !important;
    border-color: #e5e7eb !important;
}

/* 1. Title (Car Name) */
ul.long-term-search-result li.car-slide>h4.accent-color {
    font-family: 'Poppins', sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    color: #1c1c1e !important;
    margin: 0 0 8px 0 !important;
}

/* 2. Meta Info (Transmission & Type) */
ul.long-term-search-result li.car-slide .car-meta-info {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin-bottom: 20px !important;
}

ul.long-term-search-result li.car-slide .car-meta-info span.extra-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #6b7280 !important;
    font-weight: 500 !important;
    margin: 0 !important;
    display: inline-block !important;
}

ul.long-term-search-result li.car-slide .car-meta-info .meta-separator {
    color: #2cc2ab !important;
    font-size: 14px !important;
    font-weight: bold !important;
}

ul.long-term-search-result li.car-slide .car-meta-info h6 {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #6b7280 !important;
    font-weight: 500 !important;
    margin: 0 !important;
}

/* 3. Image Container */
ul.long-term-search-result li.car-slide .car-slide-image {
    width: 100% !important;
    height: 160px !important;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    margin-bottom: 24px !important;
    border-radius: 0 !important;
    position: relative !important;
}

/* 4. Price Block */
ul.long-term-search-result li.car-slide .car-price-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin-bottom: 16px !important;
    width: 100% !important;
}

ul.long-term-search-result li.car-slide .car-price-block .price-from-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #94a3b8 !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 4px !important;
    text-transform: uppercase !important;
    display: inline-block !important;
}

ul.long-term-search-result li.car-slide .car-price-block .car-slide__offer {
    margin: 0 0 6px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    position: static !important;
    background: transparent !important;
    backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    width: 100% !important;
    height: 70px !important;
    flex-direction: row;
}

ul.long-term-search-result li.car-slide .car-price-block .car-slide__offer span.price {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    color: #2cc2ab !important;
    display: inline-block !important;
}

ul.long-term-search-result li.car-slide .car-price-block .car-slide__offer span.per-month {
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    color: #2cc2ab !important;
    font-weight: 600 !important;
    display: inline-block !important;
    text-transform: none !important;
}

ul.long-term-search-result li.car-slide .car-price-block h6.search-result__detail-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ef4444 !important;
    margin: 0 !important;
    display: inline-block !important;
}

/* 5. Book Now Button Form */
ul.long-term-search-result li.car-slide form.book_car_form {
    width: 100% !important;
    margin-bottom: 12px !important;
    display: flex !important;
    justify-content: center !important;
}

ul.long-term-search-result li.car-slide form.book_car_form button.app-button {
    width: 100% !important;
    max-width: 280px !important;
    height: 50px !important;
    background: #0e453e !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
    gap: 0 !important;
    margin: 0 !important;
}

ul.long-term-search-result li.car-slide form.book_car_form button.app-button:hover {
    background: #0a3530 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 16px rgba(14, 69, 62, 0.15) !important;
}

/* 6. Separator (More Information) */
ul.long-term-search-result li.car-slide h6.my-4 {
    width: 100% !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    color: #94a3b8 !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    margin: 12px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

ul.long-term-search-result li.car-slide h6.my-4::before,
ul.long-term-search-result li.car-slide h6.my-4::after {
    content: '' !important;
    flex: 1 !important;
    border-bottom: 1px solid #e2e8f0 !important;
}

ul.long-term-search-result li.car-slide h6.my-4:not(:empty)::before {
    margin-right: .8em !important;
}

ul.long-term-search-result li.car-slide h6.my-4:not(:empty)::after {
    margin-left: .8em !important;
}

/* 7. Features list — matches homepage fleet slider style exactly */
ul.long-term-search-result li.car-slide .car-slide-features {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding-top: 0 !important;
    margin: 0 !important;
    border: none !important;
}

ul.long-term-search-result li.car-slide .car-slide-feature {
    position: relative !important;
    margin-right: 5px !important;
    transition: all 0.2s ease !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
}


ul.long-term-search-result li.car-slide .car-slide-feature__image {
    width: 42px !important;
    height: auto !important;
    object-fit: unset !important;
    display: block !important;
}

ul.long-term-search-result li.car-slide .car-slide-feature__count {
    position: absolute !important;
    bottom: 4px !important;
    right: 3px !important;
    left: auto !important;
    color: #ffffff !important;
    background: transparent !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    min-width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    display: inline !important;
    border: none !important;
    font-family: 'Inter', sans-serif !important;
    z-index: 2 !important;
    line-height: 1 !important;
    padding: 0 !important;
}

/* 9. ACRISS code */
ul.long-term-search-result li.car-slide>.text--light {
    grid-column: 1 / span 2 !important;
    grid-row: 8 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    color: #94a3b8 !important;
    margin-top: 10px !important;
}

/* Responsive rules for grids */
/* ── Additional Redesign Overrides per Mockup ── */

/* Booking Form Headers styling */
.booking-form-header {
    margin-bottom: 30px !important;
}

.booking-form-header .sub-title-modern {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #2FBF9F !important;
    letter-spacing: 0.1em !important;
    display: inline-block !important;
}

.booking-form-header .title-modern {
    font-size: 26px !important;
    font-weight: 600 !important;
    color: #1c1c1e !important;
    margin-top: 5px !important;
}

/* Hide default icons inside label */
#longterm_drop_form label i.fa {
    display: none !important;
}

/* Form input icon wrappers */
#longterm_drop_form .input-icon-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

#longterm_drop_form .input-icon-wrap .input-icon-svg {
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
    pointer-events: none !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
}

#longterm_drop_form .input-icon-wrap .app-input {
    padding-left: 48px !important;
    position: relative !important;
}

#longterm_search_vehicle #pickup-col .input-addon,
#longterm_search_vehicle #drop_col .input-addon {
    top: 12px !important;
    right: -4px !important;
    position: static !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15px;
}

#longterm_drop_form .input-icon-wrap .clear-input svg {
    width: 22px !important;
    height: 22px !important;
}

/* Driver Age Layout - Label on top, Pills below */
#longterm_drop_form .age-col-modern {
    display: block !important;
}

#longterm_drop_form .age-col-modern .form-group {
    display: block !important;
    margin-bottom: 0 !important;
}

#longterm_drop_form .age-col-modern .row.w-100 {
    display: flex !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
}

#longterm_drop_form .age-col-modern .row.w-100>div:first-child {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    display: block !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
}

#longterm_drop_form .age-col-modern .row.w-100>div:first-child label {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin: 0 !important;
}

#longterm_drop_form .age-col-modern .row.w-100>div:nth-child(2) {
    flex: 0 0 auto !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

#longterm_drop_form .age-col-modern .row.w-100>div:nth-child(3) {
    flex: 0 0 auto !important;
    max-width: none !important;
    margin-left: 15px !important;
    padding: 0 !important;
}


/* ========================================
   RESPONSIVE MEDIA QUERIES
   (All @media rules consolidated at end)
   ======================================== */

@media (min-width: 992px) {
    .testimonial-filter-bar {
        background-color: #ffffff;
        border-radius: 8px;
        padding: 16px 24px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
        border: 1px solid #f1f5f9;
    }

    .w-mobile-50 {
        width: auto;
    }

    div.sr-v5-modal .modal-dialog,
    div.sr-v5-modal .modal-dialog.modal-lg,
    div.sr-v5-modal .modal-dialog.modal-xl {
        max-width: 850px !important;
        width: 100% !important;
        margin: 1.75rem auto !important;
    }

    div.sr-v5-modal .modal-dialog,
    div.sr-v5-modal .modal-dialog.modal-lg,
    div.sr-v5-modal .modal-dialog.modal-xl {
        max-width: 850px !important;
        width: 100% !important;
        margin: 1.75rem auto !important;
    }
}

@media (min-width:768px) {
    .stepper-step .stepper-title br {
        display: none;
    }
}

@media (max-width: 1200px) {

    ul.long-term-search-result {
        grid-template-columns: repeat(2, 1fr) !important;
    }


    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 95%;
    }

    .pingouin-about-redesign .dc-title {
        font-size: 18px;
    }

    .story-title,
    .journey-title {
        font-size: 32px;
    }

    .story-feature-item {
        padding-left: 16px;
        padding-right: 16px;
    }

    .timeline-icon {
        width: 76px;
        height: 76px;
        margin-right: 24px;
    }

    .th-stats-row {
        gap: 14px;
    }

    .nvc-col-price {
        padding-left: 12px;
    }
}

@media (max-width: 1024px) {
    #hero .hero-img-card img {
        margin-top: 15px;
    }
}

@media (min-width: 900px) and (max-width: 991.98px) {
    .story-features {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .story-feature-item:nth-child(-n + 3) {
        border-bottom: 1px solid #e5e7eb;
    }

    .story-feature-item:nth-child(2n) {
        border-right: 1px solid #eceff3;
    }
}

@media (max-width: 991px) {
    #filter-sidebar {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }

    .tf-sort {
        gap: 0;
    }

    .footer-v2 {
        padding: 20px 0 0 !important;
    }

    .footer-v2 .row>div {
        margin-bottom: 40px;
    }

    .footer-v2-tagline {
        max-width: 100%;
    }

    .footer-v2 .col-lg-2.col-md-6.mb-5.mb-lg-0 {
        margin-bottom: 10px !important;
    }

    .cta-v2-card {
        padding: 30px 40px;
    }

    .cta-v2-title {
        font-size: 24px;
    }

    .cta-v2-card {
        padding: 30px 40px;
    }

    .btn-chat-v2 svg {
        height: 22px;
    }

    .pingouin-contact-redesign .contact-header-section {
        padding-top: 20px !important;
        padding-bottom: 40px !important;
        overflow: visible;
    }

    .pingouin-contact-redesign .breadcrumb {
        justify-content: flex-start;
        font-size: 13px;
        margin-bottom: 1rem !important;
    }

    .pingouin-contact-redesign .contact-main-title {
        font-size: 34px !important;
        font-weight: 600 !important;
        color: var(--newdesign-text-primary) !important;
        text-align: left;
        line-height: 1.2;
    }

    .pingouin-contact-redesign .contact-subtitle {
        text-align: left;
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        max-width: 90%;
        margin-bottom: 35px !important;
        line-height: 1.5;
    }

    .pingouin-contact-redesign .contact-header-section .container {
        position: relative;
    }

    .pingouin-contact-redesign .contact-header-icon-visual {
        position: absolute !important;
        top: 25px !important;
        right: 15px !important;
        padding: 0 !important;
        z-index: 2 !important;
        display: block !important;
    }

    .pingouin-contact-redesign .visual-circle-large {
        width: 110px !important;
        height: 110px !important;
        background: var(--newdesign-neturals-soft-bg) !important;
    }

    .pingouin-contact-redesign .contact-hero-img {
        width: 60px !important;
        height: auto !important;
    }

    .pingouin-contact-redesign .visual-dot-1 {
        width: 30px !important;
        height: 30px !important;
        bottom: 15px !important;
        right: -5px !important;
        background: rgba(15, 76, 76, 0.06) !important;
        position: absolute !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .visual-dot-2 {
        width: 18px !important;
        height: 18px !important;
        bottom: 45px !important;
        right: -22px !important;
        background: rgba(44, 194, 171, 0.08) !important;
        position: absolute !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .contact-feature-box {
        padding: 0;
        margin-bottom: 15px;
        display: flex;
        align-items: center;
        gap: 18px;
        /* Good gap */
    }

    .pingouin-contact-redesign .contact-feature-icon {
        width: 48px;
        height: 48px;
        background: var(--newdesign-neturals-soft-bg);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 0 !important;
        flex-shrink: 0;
    }

    .pingouin-contact-redesign .contact-feature-icon img {
        width: 22px;
        height: 22px;
    }

    .pingouin-contact-redesign .contact-feature-text h6 {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        margin-bottom: 2px;
    }

    .pingouin-contact-redesign .contact-feature-text p {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        line-height: 1.4;
    }

    .pingouin-contact-redesign .contact-cards-section {
        padding-bottom: 40px;
    }

    .pingouin-contact-redesign .contact-info-card {
        padding: 40px 25px;
    }

    .pingouin-contact-redesign .card-icon-wrapper {
        width: 60px !important;
        height: 60px !important;
        margin: 0 auto 20px !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .card-title {
        font-size: 18px !important;
        font-weight: 600 !important;
        margin-bottom: 8px !important;
    }

    .pingouin-contact-redesign .card-desc {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        margin-bottom: 15px !important;
    }

    .pingouin-contact-redesign .card-main-info {
        font-size: 20px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        display: block !important;
        margin-bottom: 5px !important;
    }

    .pingouin-contact-redesign .card-sub-info {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-section {
        padding: 40px 0 60px;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-container {
        height: auto;
        display: flex;
        flex-direction: column;
        gap: 25px;
        border-radius: 0;
        border: none;
        overflow: visible;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-iframe {
        height: 230px;
        border-radius: 8x;
        order: 1;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        width: 100%;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-card {
        position: static;
        transform: none;
        width: 100%;
        max-width: unset;
        min-height: 225px;
        padding: 20px;
        border-radius: 8px;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.04);
        background: var(--fleet-white);
        border: 1px solid rgba(0, 0, 0, 0.03);
        margin: 0;
        order: 2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-title {
        font-size: 18px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        margin-bottom: 12px;
        text-align: left;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-details {
        font-size: 12px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        margin-bottom: 25px;
        text-align: left;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-btn {
        align-self: flex-start;
        font-size: 16px !important;
        font-weight: 600 !important;
        padding: 12px 25px !important;
    }

    .pingouin-redesign-success-box {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-section {
        padding: 60px 0;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-card {
        padding: 30px 15px;
        border-radius: 8px;
        max-width: 100%;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-title {
        font-size: 24px;
        margin-bottom: 30px;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-footer {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-footer span {
        max-width: 250px;
        line-height: 1.5;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-submit-wrap {
        margin-top: unset;
    }

    .pingouin-contact-redesign .help-banner {
        flex-direction: column;
        text-align: center;
        padding: 25px;
        gap: 30px;
        height: auto;
    }

    .pingouin-contact-redesign .help-content-wrap {
        flex-direction: column;
        gap: 20px;
    }

    .pingouin-contact-redesign .help-icon-circle {
        width: 85px;
        height: 85px;
    }

    .pingouin-contact-redesign .help-icon-circle img {
        width: 55px;
        height: 55px;
    }

    .pingouin-contact-redesign .help-text h4 {
        font-size: 24px !important;
        /* Prominent title */
        margin-bottom: 10px;
    }

    .pingouin-contact-redesign .help-text p {
        font-size: 16px !important;
        /* Larger text */
        line-height: 1.6;
    }

    .pingouin-contact-redesign .btn-help-center {
        width: 100%;
        justify-content: center;
        padding: 16px 30px;
        font-size: 16px;
        border-radius: 8px;
    }

    .pingouin-about-redesign .feature-col {
        border-right: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
        padding-bottom: 30px;
        margin-bottom: 30px !important;
    }

    .pingouin-about-redesign .feature-col:last-child {
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0 !important;
    }

    .pi-v5-modal .modal-dialog {
        max-width: 95% !important;
        margin: 1rem auto !important;
    }

    .who-we-are-section {
        background-image: none !important;
        padding: 40px 0;
    }

    .who-we-mobile-img {
        width: 100%;
        margin: 20px 0 30px 0;
    }

    .who-we-mobile-img img {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 8px;
    }

    .action-row {
        flex-direction: column;
        align-items: center;
    }

    .action-divider {
        display: none;
    }

    .action-item {
        width: 100%;
        max-width: 500px;
        text-align: left;
    }

    .top-row {
        margin-bottom: 0;
    }

    .pl-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .sl-v5-side-panel {
        padding: 3rem 2rem !important;
    }

    .sl-v5-form-panel {
        padding: 3rem 2.5rem !important;
    }

    .to-v5-form-panel {
        padding: 3rem 2rem !important;
    }

    .sl-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .mb-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .mb-v5-form-panel {
        padding: 3rem 2.5rem !important;
    }

    .sr-v5-side-panel {
        display: none !important;
    }

    .sr-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    /* Sticky Sidebar mobile horizontal layout */
    .sticky-sidebar {
        position: static !important;
        margin-bottom: 30px !important;
        padding: 16px !important;
    }

    .toc-title {
        font-size: 16px !important;
        margin-bottom: 12px !important;
    }

    .sticky-sidebar .side-list {
        display: flex !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        gap: 8px !important;
        max-height: none !important;
        height: auto !important;
        padding-bottom: 8px !important;
        scrollbar-width: none !important;
    }

    .sticky-sidebar .side-list::-webkit-scrollbar {
        display: none !important;
    }

    .sticky-sidebar .side-list li {
        margin-bottom: 0 !important;
        flex: 0 0 auto !important;
    }

    .sticky-sidebar .side-list li a {
        padding: 8px 12px !important;
        border-left: none !important;
        border-bottom: 3px solid transparent !important;
        border-radius: 6px !important;
    }

    .sticky-sidebar .side-list li.active a,
    .sticky-sidebar .side-list li a:hover {
        border-left: none !important;
        border-bottom: 3px solid #31c3a6 !important;
    }

    .testi-cta-buttons {
        margin: 0 auto;
    }

    .testi-cta-text {
        text-align: center;
    }

    .share-review-banner {
        flex-direction: column !important;
        gap: 30px;
    }

    .srb-btn {
        margin: 0 auto;
        display: block;
    }

    .srb-text.ml-3 {
        text-align: center;
    }

    .share-icon-text {
        gap: 30px;
        flex-direction: column;
    }

    .footer-v2 {
        padding: 20px 0 0;
    }

    .footer-v2 .row>div {
        margin-bottom: 40px;
    }

    .footer-v2-tagline {
        max-width: 100%;
    }

    .cta-v2-card {
        padding: 30px 40px;
    }

    .cta-v2-title {
        font-size: 24px;
    }

    .cta-v2-card {
        padding: 30px 40px;
    }

    .pingouin-contact-redesign .contact-header-section {
        padding-top: 20px !important;
        padding-bottom: 40px !important;
        overflow: visible;
    }

    .pingouin-contact-redesign .breadcrumb {
        justify-content: flex-start;
        font-size: 13px;
        margin-bottom: 1rem !important;
    }

    .pingouin-contact-redesign .contact-main-title {
        font-size: 34px !important;
        font-weight: 600 !important;
        color: var(--newdesign-text-primary) !important;
        text-align: left;
        line-height: 1.2;
    }

    .pingouin-contact-redesign .contact-subtitle {
        text-align: left;
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        max-width: 90%;
        margin-bottom: 35px !important;
        line-height: 1.5;
    }

    .pingouin-contact-redesign .contact-header-section .container {
        position: relative;
    }

    .pingouin-contact-redesign .contact-header-icon-visual {
        position: absolute !important;
        top: 25px !important;
        right: 15px !important;
        padding: 0 !important;
        z-index: 2 !important;
        display: block !important;
    }

    .pingouin-contact-redesign .visual-circle-large {
        width: 110px !important;
        height: 110px !important;
        background: var(--newdesign-neturals-soft-bg) !important;
    }

    .pingouin-contact-redesign .contact-hero-img {
        width: 60px !important;
        height: auto !important;
    }

    .pingouin-contact-redesign .visual-dot-1 {
        width: 30px !important;
        height: 30px !important;
        bottom: 15px !important;
        right: -5px !important;
        background: rgba(15, 76, 76, 0.06) !important;
        position: absolute !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .visual-dot-2 {
        width: 18px !important;
        height: 18px !important;
        bottom: 45px !important;
        right: -22px !important;
        background: rgba(44, 194, 171, 0.08) !important;
        position: absolute !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .contact-feature-box {
        padding: 0;
        margin-bottom: 15px;
        display: flex;
        align-items: center;
        gap: 18px;
        /* Good gap */
    }

    .pingouin-contact-redesign .contact-feature-icon {
        width: 48px;
        height: 48px;
        background: var(--newdesign-neturals-soft-bg);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 0 !important;
        flex-shrink: 0;
    }

    .pingouin-contact-redesign .contact-feature-icon img {
        width: 22px;
        height: 22px;
    }

    .pingouin-contact-redesign .contact-feature-text h6 {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        margin-bottom: 2px;
    }

    .pingouin-contact-redesign .contact-feature-text p {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        line-height: 1.4;
    }

    .pingouin-contact-redesign .contact-cards-section {
        padding-bottom: 40px;
    }

    .pingouin-contact-redesign .contact-info-card {
        padding: 40px 25px;
    }

    .pingouin-contact-redesign .card-icon-wrapper {
        width: 60px !important;
        height: 60px !important;
        margin: 0 auto 20px !important;
        border-radius: 50% !important;
    }

    .pingouin-contact-redesign .card-title {
        font-size: 18px !important;
        font-weight: 600 !important;
        margin-bottom: 8px !important;
    }

    .pingouin-contact-redesign .card-desc {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        margin-bottom: 15px !important;
    }

    .pingouin-contact-redesign .card-main-info {
        font-size: 20px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        display: block !important;
        margin-bottom: 5px !important;
    }

    .pingouin-contact-redesign .card-sub-info {
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-section {
        padding: 40px 0 60px;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-container {
        height: auto;
        display: flex;
        flex-direction: column;
        gap: 25px;
        border-radius: 0;
        border: none;
        overflow: visible;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-iframe {
        height: 230px;
        border-radius: 8px;
        order: 1;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        width: 100%;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-card {
        position: static;
        transform: none;
        width: 100%;
        max-width: unset;
        min-height: 225px;
        padding: 20px;
        border-radius: 8px;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.04);
        background: var(--fleet-white);
        border: 1px solid rgba(0, 0, 0, 0.03);
        margin: 0;
        order: 2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-title {
        font-size: 18px !important;
        font-weight: 600 !important;
        color: var(--theme-color) !important;
        margin-bottom: 12px;
        text-align: left;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-details {
        font-size: 12px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        margin-bottom: 25px;
        text-align: left;
    }

    .pingouin-contact-redesign .pingouin-redesign-map-btn {
        align-self: flex-start;
        font-size: 16px !important;
        font-weight: 600 !important;
        padding: 12px 25px !important;
    }

    .pingouin-redesign-success-box {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-section {
        padding: 60px 0;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-card {
        padding: 30px 15px;
        border-radius: 8px;
        max-width: 100%;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-title {
        font-size: 24px;
        margin-bottom: 30px;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-footer {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-footer span {
        max-width: 250px;
        line-height: 1.5;
    }

    .pingouin-contact-redesign .pingouin-redesign-form-submit-wrap {
        margin-top: unset;
    }

    .pingouin-contact-redesign .help-banner {
        flex-direction: column;
        text-align: center;
        padding: 25px;
        gap: 30px;
        height: auto;
    }

    .pingouin-contact-redesign .help-content-wrap {
        flex-direction: column;
        gap: 20px;
    }

    .pingouin-contact-redesign .help-icon-circle {
        width: 85px;
        height: 85px;
    }

    .pingouin-contact-redesign .help-icon-circle img {
        width: 55px;
        height: 55px;
    }

    .pingouin-contact-redesign .help-text h4 {
        font-size: 24px !important;
        /* Prominent title */
        margin-bottom: 10px;
    }

    .pingouin-contact-redesign .help-text p {
        font-size: 16px !important;
        /* Larger text */
        line-height: 1.6;
    }

    .pingouin-contact-redesign .btn-help-center {
        width: 100%;
        justify-content: center;
        padding: 16px 30px;
        font-size: 16px;
        border-radius: 8px;
    }

    .pingouin-about-redesign .feature-col {
        border-right: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
        padding-bottom: 30px;
        margin-bottom: 30px !important;
    }

    .pingouin-about-redesign .feature-col:last-child {
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0 !important;
    }

    .pi-v5-modal .modal-dialog {
        max-width: 95% !important;
        margin: 1rem auto !important;
    }

    .who-we-are-section {
        background-image: none !important;
        padding: 40px 0;
    }

    .who-we-mobile-img {
        width: 100%;
        margin: 20px 0 30px 0;
    }

    .who-we-mobile-img img {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 8px;
    }

    .action-row {
        flex-direction: column;
        align-items: center;
    }

    .action-divider {
        display: none;
    }

    .action-item {
        width: 100%;
        max-width: 500px;
        text-align: left;
    }

    .top-row {
        margin-bottom: 0;
    }

    .license-acceptance-bar {
        margin: 0 auto;
    }

    .pingouin-about-redesign .about-main-title {
        font-size: 32px;
    }

    .pingouin-about-redesign .discover-title {
        font-size: 28px;
    }

    .pingouin-about-redesign .values-title {
        font-size: 26px;
    }

    .pingouin-about-redesign .value-col {
        border-right: none;
        border-bottom: 1px solid var(--newdesign-neturals-border);
        padding-bottom: 20px;
        margin-bottom: 20px !important;
    }

    .pingouin-about-redesign .value-col:last-child {
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0 !important;
    }

    .story-section {
        padding: 32px 0px 24px;
    }

    .journey-section {
        padding: 20px 0 30px;
    }

    .story-title,
    .journey-title {
        font-size: 32px;
    }

    .story-image-wrap {
        margin-top: 10px;
    }

    .story-intro,
    .story-copy {
        max-width: 100%;
    }

    .history-image-wrap {
        max-width: 300px;
        margin-left: auto;
        margin-right: auto;
    }

    .story-features {
        margin: 24px auto;
        border: 1px solid #eceff3;
    }

    .history-section {
        padding: 30px 0;
    }

    .timeline-wrapper {
        padding-left: 0;
        margin-top: 40px;
    }

    .timeline-container {
        padding-left: 50px;
    }

    .timeline-item {
        margin-bottom: 60px;
    }

    .timeline-item:last-child {
        margin-bottom: 0;
    }

    .timeline-container::before {
        top: 35px;
        bottom: 35px;
    }

    .timeline-item::before {
        left: -54.5px;
    }

    .timeline-icon {
        width: 70px;
        height: 70px;
        margin-right: 20px;
    }

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

    .who-we-are-features .features-grid {
        flex-direction: column;
        gap: 30px;
        align-items: flex-start;
    }

    .who-we-are-features .features-grid .feature-award-box {
        padding: 0;
        justify-content: flex-start;
    }

    .feature-divider {
        display: none;
    }

    .who-we-are-features {
        padding: 50px 0;
    }

    .who-we-are-features .fi-icon-wrap img {
        width: 60px;
        height: 60px;

    }

    .who-we-are-vision-mission {
        padding: 40px 0;
    }

    .vm-grid {
        flex-direction: column;
        gap: 40px;
    }

    .vm-item {
        flex-direction: column;
        gap: 20px;
    }

    .vm-divider {
        display: none;
    }

    .who-we-are-vision-mission .vm-icon-wrap {
        width: 80px;
        height: 80px;
    }

    .who-we-are-vision-mission .vm-icon-wrap img {
        width: 60px;
        height: 60px;
    }

    .vm-title {
        font-size: 22px;
    }

    .who-we-are-values {
        padding: 60px 0;
    }

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

    .val-nav-icon {
        width: 70px;
        height: 70px;
    }

    .val-nav-icon img {
        width: 35px;
        height: 35px;
    }

    .val-nav-item span {
        font-size: 13px;
    }

    .values-slider-container {
        padding: 40px 20px;
        margin-top: 40px;
    }

    .value-slide-inner {
        flex-direction: column;
        gap: 30px;
    }

    .vs-left {
        width: 100%;
        gap: 20px;
    }

    .vs-icon-wrap {
        width: 80px;
        height: 80px;
    }

    .vs-icon-wrap img {
        width: 40px;
        height: 40px;
    }

    .vs-right {
        width: 100%;
    }

    .vs-list li {
        font-size: 14px;
        padding-left: 35px;
    }

    .pl-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .sl-v5-side-panel {
        padding: 3rem 2rem !important;
    }

    .to-v5-form-panel {
        padding: 3rem 2rem !important;
    }

    .sl-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .mb-v5-modal .modal-dialog {
        max-width: 95% !important;
    }

    .mb-v5-form-panel {
        padding: 3rem 2.5rem !important;
    }

    .sr-v5-side-panel {
        display: none !important;
    }

    .sr-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .testimonial-hero {
        padding: 40px 0 30px;
    }

    .th-title {
        font-size: 42px;
    }

    .th-stats-row {
        gap: 24px;
        flex-direction: column;
        align-items: flex-start;
    }

    .nvc-col-image,
    .nvc-col-specs,
    .nvc-col-included {
        flex: 0 0 33.333%;
        max-width: 33.333%;
        margin-bottom: 20px;
    }

    .nvc-col-price {
        flex: 0 0 100%;
        max-width: 100%;
        border-left: none;
        border-top: 1px solid #F3F4F6;
        padding-top: 20px;
        padding-left: 12px;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .nvc-price-info {
        text-align: left;
        margin-bottom: 0;
    }

    .nvc-actions {
        flex-direction: row;
        margin-top: 0;
        width: auto;
        gap: 12px;
    }

    .nvc-btn {
        width: auto;
        padding: 0 24px;
    }

    .booking-safe-banner {
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px;
        text-align: center;
    }

    .safe-icon-circle {
        margin-bottom: 15px;
    }

    /* Extras Card responsive styling for 991px */
    .extra-card-text-wrap {
        padding-right: 10px;
    }

    .extra-card-price-wrap {
        min-width: 90px;
        padding: 0 10px;
    }

    /* Long Term Benefits Tablet Styles */
    .longterm-benefit-item.col-md-6::after {
        content: '';
        position: absolute;
        right: 0;
        top: 15%;
        height: 70%;
        width: 1px;
        background-color: #eceff3;
    }

    .longterm-benefit-item.col-md-6:nth-child(2n)::after {
        display: none;
    }
}

@media (max-width: 991px) and (min-width: 576px) {
    .pbc-card {
        flex: 0 0 calc(50% - 10px);
        max-width: calc(50% - 10px);
    }
}

@media (max-width: 899.98px) {
    .story-features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .story-feature-item {
        border-bottom: 1px solid #e5e7eb;
        padding: 14px 14px 12px;
    }

    .story-feature-item:nth-child(2n) {
        border-right: 0;
    }

    .story-feature-item:nth-last-child(-n + 2) {
        border-bottom: 1px solid #e5e7eb;
    }

    .story-features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .story-feature-item {
        border-bottom: 1px solid #e5e7eb;
        padding: 14px 14px 12px;
    }

    .story-feature-item:nth-child(2n) {
        border-right: 0;
    }

    .story-feature-item:nth-last-child(-n + 2) {
        border-bottom: 1px solid #e5e7eb;
    }
}

@media (max-width: 800px) {
    .pingouin-my-account-redesign-modal#editModal .modal-dialog {
        max-width: 95% !important;
        margin: 1rem auto !important;
    }
}

@media (max-width: 780px) {
    .bottom-fixed-buttons button {
        background-color: #eaf8f5;
        color: #3d6b7b;
        border: 1px solid #3d6b7b;
        border-radius: 6px;
        font-size: 12px;
    }

    .bottom-fixed-buttons {
        gap: 10px;
        background-color: #eaf8f5;
        padding: 5px;
    }

    #filterModal .modal-header {
        justify-content: space-between;
    }

    #filterModal .modal-dialog {
        margin: 16px !important;
        height: auto !important;
        max-width: calc(100% - 32px) !important;
    }

    #filterModal .modal-content {
        border-radius: 12px;
        border: none;
        overflow: hidden;
    }

    #filterModal .close {
        width: 32px;
        height: 32px;
        background: #f8fafc;
        border: 1px solid #e2e8f0;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #64748b;
        font-size: 20px;
    }

    #filterModal .custom-filter-checkbox {
        display: inline-block;
        margin-bottom: 8px;
        margin-right: 8px;
    }

    #filterModal .custom-filter-checkbox input[type="checkbox"] {
        display: none !important;
    }

    #filterModal .custom-filter-checkbox label {
        display: inline-flex;
        align-items: center;
        padding: 6px 14px;
        border: 1px solid #e0e0e0;
        border-radius: 20px;
        background-color: #fcfcfc;
        margin: 0;
        color: #555 !important;
        font-weight: 500 !important;
        font-size: 12px !important;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    #filterModal .custom-filter-checkbox input[type="checkbox"]:checked+label {
        background-color: var(--theme-color, #0f4c4c);
        border-color: var(--theme-color, #0f4c4c);
        color: #fff !important;
    }

    #filterModal .custom-filter-checkbox input[type="checkbox"]:checked+label::after {
        content: "\f00c";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-left: 6px;
        font-size: 11px;
    }

    .filter-box {
        margin-bottom: 45px;
    }

    .tidio-rn7oac {
        display: none;
    }
}

@media (max-width: 768px) {
    .pingouin-my-account-redesign .user-profile-buttons {
        justify-content: center;
        width: 100%;
    }

    .pingouin-my-account-redesign .user-profile-table th {
        width: 40% !important;
    }
}

@media (max-width: 767px) {
    ul.long-term-search-result {
        grid-template-columns: 1fr !important;
        grid-gap: 20px !important;
    }

    .long-term-booking-form .bf-container {
        padding: 20px 15px !important;
    }

    #longterm_drop_form .pretty .state label {
        padding: 10px 16px !important;
        font-size: 13px !important;
        min-width: 75px !important;
    }

    .btn-col-modern {
        justify-content: center !important;
    }

    #longterm_drop_form .search-now-button {
        max-width: 100% !important;
    }

    .voucher-split-col {
        border-right: none !important;
        border-bottom: 1px solid #eef2f5;
        padding-bottom: 24px !important;
        margin-bottom: 24px !important;
        padding-right: 0 !important;
    }

    .stepper-icon-circle i.fa {
        line-height: 0;
    }

    .pi-v5-modal .modal-content {
        border-radius: 8px !important;
    }

    .pi-v5-modal .row.g-0 {
        flex-direction: column;
        min-height: auto;
    }

    .pi-v5-side-panel {
        padding: 3rem 1.5rem !important;
        padding-bottom: unset !important;
        border-right: none;
    }

    .pi-v5-logo {
        max-width: 160px !important;
        margin-bottom: 2rem;
    }

    .pi-v5-illustration {
        margin-bottom: 1.5rem;
    }

    .pi-v5-illustration img {
        max-width: 280px !important;
        /* Bit big for mobile */
    }

    .pi-v5-side-title {
        font-size: 24px !important;
        margin-bottom: 0.5rem;
    }

    .pi-v5-side-text,
    .pi-v5-form-icon-circle {
        display: none !important;
        /* Hide on mobile as requested */
    }

    .pi-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .pi-v5-form-title {
        font-size: 24px !important;
    }

    .pi-v5-form-subtitle {
        font-size: 14px;
    }

    .pi-v5-input {
        height: 54px !important;
        font-size: 15px !important;
    }

    .pi-v5-btn {
        height: 54px !important;
        font-size: 16px !important;
    }

    .pi-v5-close-btn {
        top: 15px;
        right: 15px;
        width: 32px;
        height: 32px;
    }

    .pl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .pl-v5-side-panel {
        padding: 3rem 1.5rem !important;
    }

    .pl-v5-illustration img {
        max-width: 260px !important;
    }

    .pl-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .pl-v5-choice-card {
        padding: 18px;
        gap: 15px;
    }

    .pl-v5-choice-icon {
        width: 44px;
        height: 44px;
    }

    .pl-v5-choice-label {
        font-size: 16px;
    }

    .to-v5-side-panel {
        display: none !important;
    }

    .to-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .sl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .sl-v5-side-panel {
        padding: 3rem 1.5rem !important;
    }

    .sl-v5-illustration img {
        max-width: 260px !important;
    }

    .sl-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .sl-v5-input {
        height: 52px !important;
    }

    .mb-v5-side-panel {
        display: none;
    }

    .mb-v5-form-panel {
        padding: 4rem 1.5rem 3rem !important;
        max-height: 85vh;
    }

    .mb-v5-form-title {
        font-size: 26px;
    }

    .mb-v5-input {
        height: 52px !important;
    }

    .lg-v5-side-panel {
        display: none !important;
    }

    .lg-v5-form-panel {
        padding: 3rem 1.5rem !important;
    }

    .fleet-hero-features-row {
        flex-direction: column;
        gap: 20px;
    }

    .pi-v5-modal .modal-content {
        border-radius: 8px !important;
    }

    .pi-v5-modal .row.g-0 {
        flex-direction: column;
        min-height: auto;
    }

    .pi-v5-side-panel {
        padding: 3rem 1.5rem !important;
        padding-bottom: unset !important;
        border-right: none;
    }

    .pi-v5-logo {
        max-width: 160px !important;
        margin-bottom: 2rem;
    }

    .pi-v5-illustration {
        margin-bottom: 1.5rem;
    }

    .pi-v5-illustration img {
        max-width: 280px !important;
        /* Bit big for mobile */
    }

    .pi-v5-side-title {
        font-size: 24px !important;
        margin-bottom: 0.5rem;
    }

    .pi-v5-side-text,
    .pi-v5-form-icon-circle {
        display: none !important;
        /* Hide on mobile as requested */
    }

    .pi-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .pi-v5-form-title {
        font-size: 24px !important;
    }

    .pi-v5-form-subtitle {
        font-size: 14px;
    }

    .pi-v5-input {
        height: 54px !important;
        font-size: 15px !important;
    }

    .pi-v5-btn {
        height: 54px !important;
        font-size: 16px !important;
    }

    .pi-v5-close-btn {
        top: 15px;
        right: 15px;
        width: 32px;
        height: 32px;
    }

    .pl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .pl-v5-side-panel {
        padding: 3rem 1.5rem !important;
    }

    .pl-v5-illustration img {
        max-width: 260px !important;
    }

    .pl-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .pl-v5-choice-card {
        padding: 18px;
        gap: 15px;
    }

    .pl-v5-choice-icon {
        width: 44px;
        height: 44px;
    }

    .pl-v5-choice-label {
        font-size: 16px;
    }

    .to-v5-side-panel {
        display: none !important;
    }

    .to-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .sl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .sl-v5-side-panel {
        padding: 3rem 1.5rem !important;
    }

    .sl-v5-illustration img {
        max-width: 260px !important;
    }

    .sl-v5-form-panel {
        padding: 2.5rem 1.5rem !important;
    }

    .sl-v5-input {
        height: 52px !important;
    }

    .mb-v5-side-panel {
        display: none;
    }

    .mb-v5-form-panel {
        padding: 4rem 1.5rem 3rem !important;
        max-height: 85vh;
    }

    .mb-v5-form-title {
        font-size: 26px;
    }

    .mb-v5-input {
        height: 52px !important;
    }

    .lg-v5-side-panel {
        display: none !important;
    }

    .lg-v5-form-panel {
        padding: 3rem 1.5rem !important;
    }

    .story-title,
    .journey-title {
        font-size: 28px;
    }

    .story-intro,
    .story-copy,
    .story-outro {
        font-size: 17px;
        line-height: 1.7;
    }

    .history-image-wrap {
        max-width: 260px;
    }

    .story-features {
        margin-bottom: 32px;
    }

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

    .journey-link {
        font-size: 20px;
    }

    .timeline-container {
        padding-left: 40px;
    }

    .timeline-item {
        margin-bottom: 40px;
    }

    .timeline-item::before {
        left: -44.5px;
    }

    .timeline-icon {
        width: 60px;
        height: 60px;
        margin-right: 15px;
    }

    .timeline-icon img {
        width: 28px;
        height: 28px;
    }

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

    .cta-v2 {
        padding: 40px 0;
        text-align: center;
    }

    .cta-v2-left {
        flex-direction: column;
        text-align: center;
        gap: 15px !important;
    }

    .cta-v2-wrapper {
        gap: 30px !important;
    }

    .cta-v2-title {
        font-size: 20px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2-section {
        padding: 40px 0;
    }

    .cta-v2-card {
        padding: 30px 20px;
        text-align: center;
        gap: 25px;
    }

    .cta-v2-left {
        flex-direction: column;
        gap: 15px !important;
    }

    .cta-v2-title {
        font-size: 22px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2-section {
        padding: 50px 0;
    }

    .cta-v2-card {
        padding: 30px 20px;
        text-align: center;
        gap: 25px;
    }

    .cta-v2-left {
        flex-direction: column;
        gap: 15px !important;
    }

    .cta-v2-title {
        font-size: 22px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2 {
        padding: 40px 0;
        text-align: center;
    }

    .cta-v2-left {
        flex-direction: column;
        text-align: center;
        gap: 15px !important;
    }

    .cta-v2-wrapper {
        gap: 30px !important;
    }

    .cta-v2-title {
        font-size: 20px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .sl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .sl-v5-side-panel {
        display: none;
        /* Hide branding on mobile for faster login */
    }

    .sl-v5-form-panel {
        padding: 4rem 1.5rem 3rem !important;
    }

    .sl-v5-back-btn {
        top: 24px;
        left: 20px;
    }

    .sl-v5-form-title {
        font-size: 24px;
    }

    .tr-v5-modal .row.g-0 {
        flex-direction: column;
        min-height: auto;
    }

    .tr-v5-form-panel {
        padding: 1.5rem 1.25rem !important;
    }

    .tr-v5-form-title {
        font-size: 20px;
    }

    .tr-v5-form-subtitle {
        font-size: 13px;
    }

    .tr-v5-input-group {
        margin-bottom: 1rem;
    }

    .tr-v5-input,
    .tr-v5-floating-group .tr-v5-input {
        padding: 10px 14px;
        font-size: 14px;
    }

    .tr-v5-floating-group label {
        font-size: 13px;
        top: 20px;
    }

    .tr-v5-floating-group .tr-v5-input:focus~label,
    .tr-v5-floating-group .tr-v5-input:not(:placeholder-shown)~label {
        font-size: 10px;
    }

    .tr-v5-submit-btn {
        padding: 12px 18px;
        font-size: 14px;
    }

    .lg-v5-modal .modal-dialog,
    .pl-v5-modal .modal-dialog,
    .sl-v5-modal .modal-dialog,
    .to-v5-modal .modal-dialog,
    .pi-v5-modal .modal-dialog,
    .mb-v5-modal .modal-dialog,
    .tr-v5-modal .modal-dialog {
        margin: 12px !important;
        max-width: calc(100% - 24px) !important;
    }

    .lg-v5-side-panel,
    .pl-v5-side-panel,
    .sl-v5-side-panel,
    .to-v5-side-panel,
    .pi-v5-side-panel,
    .mb-v5-side-panel,
    .tr-v5-side-panel {
        display: none !important;
    }

    .lg-v5-form-panel,
    .pl-v5-form-panel,
    .sl-v5-form-panel,
    .to-v5-form-panel,
    .pi-v5-form-panel,
    .mb-v5-form-panel {
        padding: 1.5rem 1rem !important;
        justify-content: flex-start !important;
        max-height: none !important;
    }

    .lg-v5-form-title,
    .pl-v5-form-title,
    .sl-v5-form-title,
    .to-v5-step-title,
    .pi-v5-form-title,
    .mb-v5-form-title {
        font-size: 20px !important;
        margin-bottom: 0.5rem !important;
    }

    .lg-v5-form-subtitle,
    .pl-v5-form-subtitle,
    .sl-v5-form-subtitle,
    .pi-v5-form-subtitle,
    .mb-v5-form-subtitle {
        font-size: 13px !important;
        margin-bottom: 1rem !important;
    }

    .lg-v5-form-icon-circle,
    .pl-v5-form-icon-circle,
    .sl-v5-form-icon-circle,
    .pi-v5-form-icon-circle,
    .mb-v5-form-icon-circle {
        width: 50px !important;
        height: 50px !important;
        margin-bottom: 0.75rem !important;
    }

    .lg-v5-form-icon-circle svg,
    .pl-v5-form-icon-circle svg,
    .sl-v5-form-icon-circle svg,
    .pi-v5-form-icon-circle svg,
    .mb-v5-form-icon-circle svg {
        width: 20px !important;
        height: 20px !important;
    }

    .lg-v5-form-group,
    .pl-v5-form-group,
    .sl-v5-form-group,
    .to-v5-form-group,
    .pi-v5-input-group,
    .mb-v5-form-group {
        margin-bottom: 0.75rem !important;
    }

    .lg-v5-label,
    .pl-v5-label,
    .sl-v5-label,
    .to-v5-label {
        font-size: 11px !important;
        margin-bottom: 3px !important;
    }

    .lg-v5-input,
    .pl-v5-input,
    .sl-v5-input,
    .to-v5-input,
    .pi-v5-input,
    .mb-v5-input {
        height: 42px !important;
        font-size: 13px !important;
        border-radius: 8px !important;
        padding-left: 38px !important;
    }

    .lg-v5-input-icon,
    .sl-v5-input-icon,
    .to-v5-input-icon,
    .pi-v5-input-icon,
    .mb-v5-input-icon {
        width: 38px !important;
    }

    .lg-v5-input-icon svg,
    .sl-v5-input-icon svg,
    .to-v5-input-icon svg,
    .pi-v5-input-icon svg,
    .mb-v5-input-icon svg {
        width: 16px !important;
        height: 16px !important;
    }

    .lg-v5-submit-btn,
    .sl-v5-submit-btn,
    .to-v5-submit-btn,
    .pi-v5-btn,
    .mb-v5-submit-btn,
    .mb-v5-secondary-btn {
        height: 46px !important;
        font-size: 14px !important;
        margin-top: 1rem !important;
    }

    .mb-v5-secondary-btn {
        margin-top: 0.5rem !important;
    }

    .mb-v5-divider {
        margin: 1.5rem 0 !important;
    }

    .mb-v5-action-card {
        padding: 1rem !important;
    }

    .mb-v5-card-header {
        margin-bottom: 0.5rem !important;
    }

    .mb-v5-card-desc {
        display: none !important;
    }

    .mb-v5-card-btn {
        height: 36px !important;
        font-size: 12px !important;
        margin-top: 0 !important;
    }

    .mb-v5-tip-box {
        padding: 0.75rem !important;
        gap: 10px !important;
    }

    .mb-v5-tip-icon {
        width: 32px !important;
        height: 32px !important;
    }

    .mb-v5-tip-title {
        font-size: 13px !important;
        margin-bottom: 2px !important;
    }

    .mb-v5-tip-text {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    .mb-v5-footer-text {
        font-size: 11px !important;
    }

    .mb-v5-card-icon {
        width: 32px !important;
        height: 32px !important;
    }

    .mb-v5-card-icon svg {
        width: 16px !important;
        height: 16px !important;
    }

    .mb-v5-card-icon {
        width: 36px !important;
        height: 36px !important;
    }

    .mb-v5-card-label {
        font-size: 14px !important;
    }

    .mb-v5-card-text {
        font-size: 11px !important;
    }

    .to-v5-stepper-header {
        margin-bottom: 1.25rem !important;
        padding: 0 10px !important;
    }

    .to-v5-stepper-progress {
        top: 13px !important;
        height: 3px !important;
        background: #e2e8f0 !important;
    }

    .to-v5-progress-bar {
        height: 100% !important;
    }

    .to-v5-stepper-nodes {
        gap: 0 !important;
        justify-content: space-between !important;
    }

    .to-v5-node span {
        width: 26px !important;
        height: 26px !important;
        font-size: 12px !important;
    }

    .to-v5-node label {
        font-size: 11px !important;
    }

    .pl-v5-choice-card {
        padding: 12px !important;
    }

    .pl-v5-choice-icon {
        width: 40px !important;
        height: 40px !important;
    }

    .pl-v5-choice-label {
        font-size: 14px !important;
    }

    .pl-v5-choice-desc {
        font-size: 12px !important;
    }

    .sr-v5-modal .modal-dialog {
        margin: 7px !important;
        max-width: calc(100% - 14px) !important;
    }

    .sr-v5-form-panel {
        padding: 1.5rem 1rem !important;
    }

    .sr-v5-logo {
        max-width: 140px !important;
        margin-bottom: 1rem !important;
    }

    .sr-v5-form-title {
        font-size: 20px !important;
        margin-bottom: 0.25rem !important;
    }

    .sr-v5-form-subtitle {
        font-size: 13px !important;
        margin-bottom: 0.5rem !important;
    }

    .sr-v5-info-badge {
        padding: 4px 10px !important;
        font-size: 11px !important;
        margin-top: 2px !important;
    }

    .mb-md-5,
    .mb-5,
    .mt-5 {
        margin-bottom: 1rem !important;
        margin-top: 1rem !important;
    }

    .to-v5-login-prompt.mt-5 {
        margin-top: 1.5rem !important;
    }

    .sr-v5-form-group {
        margin-bottom: 0.75rem !important;
    }

    .sr-v5-label {
        font-size: 11px !important;
        margin-bottom: 2px !important;
    }

    .sr-v5-input {
        width: 100% !important;
        height: 44px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        padding-left: 42px !important;
    }

    .sr-v5-input-icon {
        width: 42px !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        left: 0 !important;
    }

    .sr-v5-input-icon svg {
        width: 18px !important;
        height: 18px !important;
        margin: 0 !important;
    }

    .sr-v5-date-group {
        display: grid !important;
        grid-template-columns: 1.2fr 1fr !important;
        gap: 8px !important;
    }

    .sr-v5-age-row {
        padding: 8px !important;
        gap: 8px !important;
    }

    .sr-v5-age-label {
        height: 34px !important;
        font-size: 12px !important;
        border-radius: 8px !important;
    }

    .sr-v5-submit-btn {
        height: 46px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        margin-top: 0.5rem !important;
    }

    .sr-v5-payment-methods {
        margin-top: 1rem !important;
    }

    .sr-v5-payment-methods p {
        font-size: 11px !important;
        margin-bottom: 0.5rem !important;
    }

    .sr-v5-payment-methods svg {
        height: 16px !important;
        width: auto !important;
    }

    .sr-v5-age-row {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .sr-v5-exact-age-wrap {
        width: 100% !important;
    }

    .detail-title {
        font-size: 18px !important;
        gap: 12px !important;
    }

    .detail-title-num {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 14px !important;
    }

    .detail-title-text {
        font-size: 18px !important;
    }

    .ft-stars {
        margin-left: 55px;
    }

    .cta-v2 {
        padding: 40px 0;
        text-align: center;
    }

    .cta-v2-left {
        flex-direction: column;
        text-align: center;
        gap: 15px !important;
    }

    .cta-v2-wrapper {
        gap: 30px !important;
    }

    .cta-v2-title {
        font-size: 20px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2-section {
        padding: 40px 0;
    }

    .cta-v2-card {
        padding: 30px 20px;
        text-align: center;
        gap: 25px;
    }

    .cta-v2-left {
        flex-direction: column;
        gap: 15px !important;
    }

    .cta-v2-title {
        font-size: 22px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2-section {
        padding: 50px 0;
    }

    .cta-v2-card {
        padding: 30px 20px;
        text-align: center;
        gap: 25px;
    }

    .cta-v2-left {
        flex-direction: column;
        gap: 15px !important;
    }

    .cta-v2-title {
        font-size: 22px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .cta-v2 {
        padding: 40px 0;
        text-align: center;
    }

    .cta-v2-left {
        flex-direction: column;
        text-align: center;
        gap: 15px !important;
    }

    .cta-v2-wrapper {
        gap: 30px !important;
    }

    .cta-v2-title {
        font-size: 20px;
    }

    .cta-v2-subtitle {
        font-size: 14px;
    }

    .license-acceptance-bar {
        width: 100%;
    }

    .license-acceptance-bar p {
        font-size: 12px;
        text-align: left;
        margin-right: 8px;
    }

    .license-acceptance-bar i {
        width: 16px;
        height: 16px;
        margin-bottom: 0;
        order: -1;
    }

    .sl-v5-modal .row.g-0 {
        flex-direction: column;
    }

    .sl-v5-side-panel {
        display: none;
        /* Hide branding on mobile for faster login */
    }

    .sl-v5-form-panel {
        padding: 4rem 1.5rem 3rem !important;
    }

    .sl-v5-back-btn {
        top: 24px;
        left: 20px;
    }

    .sl-v5-form-title {
        font-size: 24px;
    }

    .lg-v5-modal .modal-dialog,
    .pl-v5-modal .modal-dialog,
    .sl-v5-modal .modal-dialog,
    .to-v5-modal .modal-dialog,
    .pi-v5-modal .modal-dialog,
    .mb-v5-modal .modal-dialog {
        margin: 12px !important;
        max-width: calc(100% - 24px) !important;
    }

    .lg-v5-side-panel,
    .pl-v5-side-panel,
    .sl-v5-side-panel,
    .to-v5-side-panel,
    .pi-v5-side-panel,
    .mb-v5-side-panel {
        display: none !important;
    }

    .lg-v5-form-panel,
    .pl-v5-form-panel,
    .sl-v5-form-panel,
    .to-v5-form-panel,
    .pi-v5-form-panel,
    .mb-v5-form-panel {
        padding: 1.5rem 1rem !important;
        justify-content: flex-start !important;
        max-height: none !important;
    }

    .lg-v5-form-title,
    .pl-v5-form-title,
    .sl-v5-form-title,
    .to-v5-step-title,
    .pi-v5-form-title,
    .mb-v5-form-title {
        font-size: 20px !important;
        margin-bottom: 0.5rem !important;
    }

    .lg-v5-form-subtitle,
    .pl-v5-form-subtitle,
    .sl-v5-form-subtitle,
    .pi-v5-form-subtitle,
    .mb-v5-form-subtitle {
        font-size: 13px !important;
        margin-bottom: 1rem !important;
    }

    .lg-v5-form-icon-circle,
    .pl-v5-form-icon-circle,
    .sl-v5-form-icon-circle,
    .pi-v5-form-icon-circle,
    .mb-v5-form-icon-circle {
        width: 50px !important;
        height: 50px !important;
        margin-bottom: 0.75rem !important;
    }

    .lg-v5-form-icon-circle svg,
    .pl-v5-form-icon-circle svg,
    .sl-v5-form-icon-circle svg,
    .pi-v5-form-icon-circle svg,
    .mb-v5-form-icon-circle svg {
        width: 20px !important;
        height: 20px !important;
    }

    .lg-v5-form-group,
    .pl-v5-form-group,
    .sl-v5-form-group,
    .to-v5-form-group,
    .pi-v5-input-group,
    .mb-v5-form-group {
        margin-bottom: 0.75rem !important;
    }

    .lg-v5-label,
    .pl-v5-label,
    .sl-v5-label,
    .to-v5-label {
        font-size: 11px !important;
        margin-bottom: 3px !important;
    }

    .lg-v5-input,
    .pl-v5-input,
    .sl-v5-input,
    .to-v5-input,
    .pi-v5-input,
    .mb-v5-input {
        height: 42px !important;
        font-size: 13px !important;
        border-radius: 8px !important;
        padding-left: 38px !important;
    }

    .lg-v5-input-icon,
    .sl-v5-input-icon,
    .to-v5-input-icon,
    .pi-v5-input-icon,
    .mb-v5-input-icon {
        width: 38px !important;
    }

    .lg-v5-input-icon svg,
    .sl-v5-input-icon svg,
    .to-v5-input-icon svg,
    .pi-v5-input-icon svg,
    .mb-v5-input-icon svg {
        width: 16px !important;
        height: 16px !important;
    }

    .lg-v5-submit-btn,
    .sl-v5-submit-btn,
    .to-v5-submit-btn,
    .pi-v5-btn,
    .mb-v5-submit-btn,
    .mb-v5-secondary-btn {
        height: 46px !important;
        font-size: 14px !important;
        margin-top: 1rem !important;
    }

    .mb-v5-secondary-btn {
        margin-top: 0.5rem !important;
    }

    .mb-v5-divider {
        margin: 1.5rem 0 !important;
    }

    .mb-v5-action-card {
        padding: 1rem !important;
    }

    .mb-v5-card-header {
        margin-bottom: 0.5rem !important;
    }

    .mb-v5-card-desc {
        display: none !important;
    }

    .mb-v5-card-btn {
        height: 36px !important;
        font-size: 12px !important;
        margin-top: 0 !important;
    }

    .mb-v5-tip-box {
        padding: 0.75rem !important;
        gap: 10px !important;
    }

    .mb-v5-tip-icon {
        width: 32px !important;
        height: 32px !important;
    }

    .mb-v5-tip-title {
        font-size: 13px !important;
        margin-bottom: 2px !important;
    }

    .mb-v5-tip-text {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    .mb-v5-footer-text {
        font-size: 11px !important;
    }

    .mb-v5-card-icon {
        width: 32px !important;
        height: 32px !important;
    }

    .mb-v5-card-icon svg {
        width: 16px !important;
        height: 16px !important;
    }

    .mb-v5-card-icon {
        width: 36px !important;
        height: 36px !important;
    }

    .mb-v5-card-label {
        font-size: 14px !important;
    }

    .mb-v5-card-text {
        font-size: 11px !important;
    }

    .to-v5-stepper-header {
        margin-bottom: 1.25rem !important;
        padding: 0 10px !important;
    }

    .to-v5-stepper-progress {
        top: 13px !important;
        height: 3px !important;
        background: #e2e8f0 !important;
    }

    .to-v5-progress-bar {
        height: 100% !important;
    }

    .to-v5-stepper-nodes {
        gap: 0 !important;
        justify-content: space-between !important;
    }

    .to-v5-node span {
        width: 26px !important;
        height: 26px !important;
        font-size: 12px !important;
    }

    .to-v5-node label {
        font-size: 11px !important;
    }

    .pl-v5-choice-card {
        padding: 12px !important;
    }

    .pl-v5-choice-icon {
        width: 40px !important;
        height: 40px !important;
    }

    .pl-v5-choice-label {
        font-size: 14px !important;
    }

    .pl-v5-choice-desc {
        font-size: 12px !important;
    }

    .sr-v5-modal .modal-dialog {
        margin: 7px !important;
        max-width: calc(100% - 14px) !important;
    }

    .sr-v5-form-panel {
        padding: 1.5rem 1rem !important;
    }

    .sr-v5-logo {
        max-width: 140px !important;
        margin-bottom: 1rem !important;
    }

    .sr-v5-form-title {
        font-size: 20px !important;
        margin-bottom: 0.25rem !important;
    }

    .sr-v5-form-subtitle {
        font-size: 13px !important;
        margin-bottom: 0.5rem !important;
    }

    .sr-v5-info-badge {
        padding: 4px 10px !important;
        font-size: 11px !important;
        margin-top: 2px !important;
    }

    .mb-md-5,
    .mb-5,
    .mt-5 {
        margin-bottom: 1rem !important;
        margin-top: 1rem !important;
    }

    .to-v5-login-prompt.mt-5 {
        margin-top: 1.5rem !important;
    }

    .sr-v5-form-group {
        margin-bottom: 0.75rem !important;
    }

    .sr-v5-label {
        font-size: 11px !important;
        margin-bottom: 2px !important;
    }

    .sr-v5-input {
        width: 100% !important;
        height: 44px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        padding-left: 42px !important;
    }

    .sr-v5-input-icon {
        width: 42px !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        left: 0 !important;
    }

    .sr-v5-input-icon svg {
        width: 18px !important;
        height: 18px !important;
        margin: 0 !important;
    }

    .sr-v5-date-group {
        display: grid !important;
        grid-template-columns: 1.2fr 1fr !important;
        gap: 8px !important;
    }

    .sr-v5-age-row {
        padding: 8px !important;
        gap: 8px !important;
    }

    .sr-v5-age-label {
        height: 34px !important;
        font-size: 12px !important;
        border-radius: 8px !important;
    }

    .sr-v5-submit-btn {
        height: 46px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        margin-top: 0.5rem !important;
    }

    .sr-v5-payment-methods {
        margin-top: 1rem !important;
    }

    .sr-v5-payment-methods p {
        font-size: 11px !important;
        margin-bottom: 0.5rem !important;
    }

    .sr-v5-payment-methods svg {
        height: 16px !important;
        width: auto !important;
    }

    .sr-v5-age-row {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .sr-v5-exact-age-wrap {
        width: 100% !important;
    }

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

    .th-stats-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .th-subtitle {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .featured-review-wrap {
        padding: 24px 20px;
    }

    .normal-review-card {
        padding: 24px 20px;
    }

    .testi-cta-banner {
        padding: 24px 20px;
    }

    .terms-search-form {
        max-width: 100%;
        margin-bottom: 10px !important;
    }

    .faq-hero-icon {
        width: 54px;
        height: 54px;
        margin-bottom: 16px;
    }

    .faq-still-help-section {
        padding: 40px 0;
    }

    .faq-still-title {
        font-size: 24px;
    }

    .faq-still-subtitle {
        font-size: 15px;
    }

    .faq-support-card {
        padding: 20px 16px;
        gap: 15px;
    }

    .faq-support-icon {
        width: 48px;
        height: 48px;
    }

    .faq-section-title {
        font-size: 24px;
    }

    .faq-topic-card {
        padding: 12px 6px !important;
        border-radius: 6px !important;
    }

    .faq-topic-icon-wrap {
        width: 48px;
        height: 48px;
        margin-bottom: 4px;
    }

    .faq-topic-icon {
        max-width: 32px;
        max-height: 32px;
    }

    .faq-topic-name {
        font-size: 11px !important;
        margin-top: 4px !important;
    }

    .faq-accordion-container {
        padding: 20px 15px;
    }

    .faq-accordion-header {
        font-size: 18px;
        margin-bottom: 16px;
    }

    .faq-accordion-item {
        padding: 12px 15px !important;
    }

    .faq-accordion-item.active {
        padding: 12px 15px !important;
    }

    .faq-accordion-body {
        padding-left: 40px;
        margin-top: 8px;
    }

    .terms-buttons {
        width: 100%;
        flex-direction: column;
    }

    .terms-btn-outline {
        width: 100%;
    }

    .license-acceptance-bar {
        width: 100%;
    }

    .license-acceptance-bar p {
        font-size: 12px;
        text-align: left;
        margin-right: 8px;
    }

    .license-acceptance-bar i {
        width: 16px;
        height: 16px;
        margin-bottom: 0;
        order: -1;
    }

    .booking-stepper-card {
        padding: 20px 15px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .stepper-steps-wrapper {
        min-width: 100%;
        /* Prevent shrinking and enable smooth horizontal scroll */
        padding-bottom: 10px;
        /* flex-direction: column; */
        gap: 5px;
    }

    .stepper-step .stepper-icon-circle {
        width: 40px;
        height: 40px;
    }

    .stepper-step .stepper-icon-circle svg {
        height: 22px;
    }

    .stepper-step .stepper-title {
        font-size: 12px;
    }

    .vehicle-results-header-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .vehicle-results-currency-wrapper {
        width: 100%;
        justify-content: space-between;
    }

    .vehicle-results-currency-wrapper .cur-dropdown {
        width: 100%;
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        margin: 0;
    }

    .extended-vehicle-header {
        padding: 12px 15px !important;
    }

    .extended-vehicle-header h6 {
        font-size: 13px !important;
        line-height: 1.3 !important;
    }

    .extended-vehicle-header p {
        font-size: 11px !important;
        margin-top: 2px !important;
    }

    .extended-vehicle-header i.fa-check-circle {
        font-size: 20px !important;
    }

    .nvc-header {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
    }

    .nvc-header-right {
        align-self: flex-start;
    }

    .nvc-col-image,
    .nvc-col-specs,
    .nvc-col-included {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 24px;
    }

    /* Make the wrapper horizontally scrollable on mobile */
    .nvc-info-scroll-wrapper {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 12px;
        -webkit-overflow-scrolling: touch;
        gap: 16px;
        padding-left: 12px;
    }

    /* Remove full width and bottom margin since they are now in a scroll wrapper */
    .nvc-col-specs,
    .nvc-col-included {
        flex: 0 0 280px;
        /* fixed width for the boxes */
        max-width: 200px;
        margin-bottom: 0;
        border: 1px solid #e5e5e5;
        border-radius: 12px;
        padding: 16px;
    }

    /* Make sure internal elements flow vertically normally */
    .nvc-col-specs {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .nvc-col-included {
        border-left: 1px solid #e5e5e5;
        /* Override desktop border */
    }

    /* Hide scrollbar for cleaner look */
    .nvc-info-scroll-wrapper::-webkit-scrollbar {
        height: 4px;
    }

    .nvc-info-scroll-wrapper::-webkit-scrollbar-thumb {
        background-color: #cbd5e1;
        border-radius: 4px;
    }

    .nvc-col-image {
        align-items: center;
    }

    .nvc-col-price {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        border-top: 1px solid #F3F4F6;
        padding-top: 20px;
    }

    .nvc-price-info {
        text-align: center;
    }

    .nvc-actions {
        flex-direction: column;
        width: 100%;
        gap: 8px;
    }

    .nvc-btn {
        width: 100%;
    }

    .safe-items-grid {
        flex-wrap: wrap;
    }

    .safe-item {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 10px !important;
    }

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

    .safe-item:nth-child(odd) {
        border-right: 1px solid #dbe7e4;
    }

    .safe-item:nth-child(1),
    .safe-item:nth-child(2) {
        border-bottom: 1px solid #dbe7e4;
    }

    /* Extras Card responsive styling for 768px */
    .extra-item-card-inner {
        flex-wrap: wrap;
    }

    .extra-card-text-wrap {
        width: calc(100% - 80px);
        padding-right: 0;
    }

    .extra-card-price-wrap {
        width: 50%;
        text-align: left;
        padding: 16px 0 0 80px;
        min-width: 0;
        align-items: flex-start;
    }

    .extra-card-control-wrap {
        width: 50%;
        justify-content: flex-end;
        padding-top: 16px;
    }

    .badge-recommended {
        top: -10px;
    }

    .payment-section-card {
        padding: 16px;
    }

    .payment-method-row {
        flex-direction: column;
        gap: 12px;
    }

    .payment-method-card {
        width: 100%;
    }

    .payment-promo-wrapper {
        flex-direction: column;
        align-items: stretch;
    }

    .payment-promo-btn {
        width: 100%;
    }

    .payment-footer-actions {
        flex-direction: column;
        gap: 12px;
    }

    .btn-payment-back,
    .btn-payment-continue {
        width: 100% !important;
    }

    /* Booking Voucher responsive styles */
    .voucher-status-heading {
        font-size: 24px !important;
        margin-top: 1.5rem !important;
    }

    .voucher-number-heading {
        font-size: 20px !important;
        margin-bottom: 1.5rem !important;
    }

    .voucher-buttons {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 8px !important;
    }

    .voucher-buttons .app-button,
    .voucher-buttons .app-button--primary {
        width: 100% !important;
        margin: 0 !important;
    }

    .fleet-cta-wrapper {
        padding: 24px !important;
    }

    .fleet-cta-wrapper .fleet-cta-title,
    .fleet-cta-wrapper .fleet-cta-desc {
        text-align: center !important;
    }

    .fleet-cta-wrapper .fleet-cta-buttons {
        flex-direction: column;
        width: 100%;
    }

    .fleet-cta-wrapper .btn-whatsapp,
    .fleet-cta-wrapper .btn-call {
        width: 100%;
        justify-content: center;
    }

    .pingouin-info-grid .info-col {
        border-bottom: 1px solid #f1f5f9 !important;
    }

    .pingouin-info-grid .info-row {
        border-bottom: none !important;
    }

    .pingouin-info-grid .info-row:last-child .info-col:last-child {
        border-bottom: none !important;
    }

    /* Booking cards – mobile: single column */
    .pbc-cards-grid {
        gap: 16px !important;
    }

    .pbc-card {
        width: 100% !important;
        max-width: 100% !important;
    }

    .pbc-footer {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }

    .pbc-footer-total {
        align-items: flex-start !important;
    }

    .pbc-footer-status {
        flex-wrap: wrap !important;
        gap: 10px !important;
    }

    .pbc-total-amount {
        font-size: 18px !important;
    }

    /* Long Term Benefits Mobile Styles */
    .longterm-benefit-item::after {
        display: none !important;
    }
}

@media (max-width: 600px) {
    .pbc-card {
        min-width: 100% !important;
    }
}

@media (max-width: 576px) {
    .pingouin-my-account-redesign-modal .modal-dialog {
        max-width: calc(100% - 1rem) !important;
        margin: 0.5rem auto !important;
    }

    .pingouin-my-account-redesign-modal .modal-inner {
        padding: 1.5rem 1rem !important;
    }

    .pingouin-my-account-redesign-modal .app-input {
        height: 42px !important;
        font-size: 14px !important;
        padding: 8px 12px !important;
    }

    .pingouin-my-account-redesign-modal .form-group {
        margin-bottom: 0.75rem !important;
    }

    .pingouin-my-account-redesign-modal label {
        font-size: 13px !important;
        margin-bottom: 0.25rem !important;
    }

    .pingouin-my-account-redesign-modal .select2-container .select2-selection--single {
        height: 42px !important;
    }

    .pingouin-my-account-redesign-modal .select2-container--default .select2-selection--single .select2-selection__rendered {
        line-height: normal !important;
        font-size: 14px !important;
        padding-left: 12px !important;
    }

    .pingouin-my-account-redesign-modal .select2-container--default .select2-selection--single .select2-selection__arrow {
        height: 40px !important;
    }
}

@media (max-width: 575px) {
    .search-long-term {
        padding: 40px 0 !important;
    }

    .page-template-page-longterm .search-long-term p.secondary-color {
        padding-top: 0 !important;
    }

    #longterm_drop_form .form-group {
        margin-bottom: 0px !important;
    }

    .age-driver-div {
        margin-top: 10px;
        width: 100%;
    }

    #longterm_drop_form .age-col-modern .row.w-100>div:nth-child(2) {
        flex-wrap: wrap;
    }

    .faq-still-help-section {
        padding-bottom: 0 !important;
    }

    .faq-support-label {
        font-size: 12px;
    }

    .faq-support-value {
        font-size: 14px;
    }

    .faq-accordion-container {
        padding: 15px 10px;
    }

    .faq-accordion-item.active {
        padding: 12px 8px !important;
    }

    .faq-accordion-body p {
        font-size: 14px;
    }

    .faq-accordion-btn {
        gap: 12px;
        font-weight: 600 !important;
        font-size: 14px !important;
    }

    .faq-accordion-item {
        padding: 8px 8px !important;
    }

    .faq-nav-list li {
        padding: 0 4px;
        align-self: normal;
        margin-bottom: 0px !important;
    }

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

    .terms-hero {
        padding: 40px 0;
    }

    .pingouin-info-card {
        padding: 10px !important;
    }

    .pingouin-info-grid .info-col {
        padding: 10px 0 !important;
    }

    #printable .panel-inner .row .col-sm-7+.col-sm-5 {
        text-align: left !important;
    }

    #printable .panel-inner .row .col-sm-7+.col-sm-5 .panel-text,
    #printable .panel-inner .row .col-sm-7+.col-sm-5 .panel-label {
        text-align: left !important;
    }

    .awesome-iframe .widgetLabel {
        display: none;
    }


    .summary-table-data {
        margin-bottom: 20px;
    }

    .testi-footer {
        flex-direction: column-reverse !important;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        gap: 20px;
    }

    .ft-avatar {
        width: 60px;
        height: 60px;
    }

    .ft-quote img {
        max-width: 20px;
    }

    .ft-stars {
        margin-left: 40px;
    }

    .share-review-banner {
        gap: 5px;
    }

    .fleet-header__user-block .theme-btn-outline {
        padding: 8px 12px;
    }

    .pingouin-about-redesign .about-features-row {
        padding-top: 0;
    }

    .about-feature-item .afi-icon img {
        width: 70px;
    }

    .story-title,
    .journey-title {
        font-size: 26px;
    }

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

    .who-we-are-section {
        padding-bottom: 0;
    }

    .who-we-are-features .fi-text {
        font-size: 14px;
    }

    .promise-list {
        gap: 25px;
    }

    .promise-item {
        gap: 20px;
    }

    .promise-icon {
        width: 50px;
        height: 50px;
    }

    .promise-icon img {
        width: 25px;
        height: 25px;
    }

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

    .promise-desc {
        font-size: 13px;
    }

    .vs-icon-wrap {

        width: 50px;
        height: 50px;
    }

    .vs-icon-wrap img {
        width: 30px;
        height: 30px;
    }

    .vs-intro p {
        font-size: 14px;
        line-height: normal;
    }

    .nonimi-text {
        font-size: 18px;
    }

    .declared-text,
    .award-footer-secondary {
        font-size: 14px;
    }

    .action-mini-title {
        font-size: 14px;
        margin-bottom: 20px !important;
    }

    .action-subtitle {
        font-size: 14px;
        margin-top: 20px;
    }

    .action-grid-wrapper {
        margin-top: 0;
    }

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

    .ai-icon-wrap {
        width: 60px;
        height: 60px;
    }

    .ai-icon-wrap img {
        width: 25px;
        height: 25px;
    }

    .fleet-rental-switch-section {
        padding-top: 60px;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .cd-gallery .the-car-slider--fleet .car-slide {
        padding: 0;
    }

    .our-fleet-filters.cd-filters {
        gap: 15px;
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 5px !important;
        scrollbar-width: none;
        justify-content: flex-start !important;
    }

    .our-fleet-filters.cd-filters::-webkit-scrollbar {
        display: none;
    }

    .our-fleet-filters.cd-filters li.filter {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .fleet-rental-switch-title {
        font-size: 22px;
    }

    .stepper-step .stepper-icon-circle svg {
        height: 20px;
    }

    .stepper-step .stepper-icon-circle {
        width: 44px;
        height: 44px;
    }

    .stepper-steps-wrapper {
        gap: 5px;
    }

    .stepper-connector {
        height: 25px;
    }

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

    .car-slide__inner {
        padding: 20px 15px !important;
    }

    .car-slide__title {
        font-size: 15px !important;
        margin-bottom: 12px !important;
    }

    .car-slide__image {
        max-height: 60px !important;
        margin-bottom: 16px !important;
    }

    .booking-summary-unified {
        padding: 16px !important;
    }

    .stepper-connector {
        margin-left: 5px;
        margin-right: 5px;
        margin-top: 20px;
    }

    .summary-features-bar {
        gap: 4px;
    }

    .feature-badge-icon {
        width: 32px;
        height: 32px;
        margin-bottom: 6px;
    }

    .feature-badge-item h6 {
        font-size: 10px !important;
    }

    .feature-badge-item p {
        font-size: 8px !important;
    }

    .extra-item-card {
        padding: 16px !important;
    }

    .extra-card-icon-wrap {
        width: 48px !important;
        height: 48px !important;
        margin-right: 12px !important;
    }

    .extra-card-icon,
    .extra-card-icon-wrap img,
    .extra-card-icon-wrap svg {
        width: 48px !important;
        height: 48px !important;
        max-width: 48px !important;
        max-height: 48px !important;
    }

    .extra-card-text-wrap {
        width: calc(100% - 60px);
    }

    .extra-card-title {
        font-size: 14px !important;
    }

    .extra-card-price-wrap {
        padding-left: 60px;
    }

    .extra-card-price-amount {
        font-size: 16px !important;
    }

    .extra-card-tags {
        flex-direction: column;
        gap: 4px;
    }

    .extras-navigation-buttons {
        flex-direction: column;
        width: 100%;
        gap: 12px;
    }

    .btn-extras-back,
    .btn-extras-continue {
        width: 100% !important;
    }

    .pretty .state label:after,
    .pretty .state label:before {
        left: 2px !important;
    }

    #emailQuoteModal .modal-dialog {
        margin: 0.5rem !important;
        max-width: calc(100vw - 1rem) !important;
    }

    #emailQuoteModal .modal-inner {
        padding: 2rem 1.25rem 1.5rem !important;
    }

    #emailQuoteModal .modal-inner::before {
        margin: -2rem -1.25rem 1.5rem;
        width: calc(100% + 2.5rem);
    }

    #emailQuoteModal h2.accent-color {
        font-size: 20px !important;
    }

    #emailQuoteModal .app-input,
    #emailQuoteModal input[type="text"],
    #emailQuoteModal input[type="email"] {
        height: 46px !important;
        font-size: 13px !important;
    }

    #emailQuoteModal .app-button--primary,
    #emailQuoteModal button#share-btn {
        height: 48px !important;
        font-size: 14px !important;
    }

    .pingouin-about-redesign .about-header-section {
        padding-bottom: 50px;
    }

    .pingouin-my-account-redesign .nav-tabs.user-profile-navtabs {
        gap: 8px;
        max-width: 100%;
    }

    .pingouin-my-account-redesign .user-profile-navtabs .nav-link {
        padding: 10px 16px !important;
        font-size: 13px !important;
        margin-bottom: 0 !important;
    }

    .pingouin-my-account-redesign .user-profile-buttons button {
        width: 100%;
        margin-right: 0 !important;
        margin-bottom: 10px;
    }

    .pingouin-my-account-redesign .user-profile-buttons button:last-child {
        margin-bottom: 0;
    }

    .page-template-page-longterm .the-car-slider--fleet .car-slide {
        min-width: 100% !important;
    }
}

@media (max-width: 480px) {
    .pi-v5-side-panel {
        padding: 2.5rem 1rem !important;
        padding-bottom: unset !important;
    }

    .pi-v5-form-panel {
        padding: 2rem 1rem !important;
    }

    .pi-v5-error-alert {
        font-size: 13px !important;
        padding: 10px 12px !important;
    }

    .pi-v5-side-panel {
        padding: 2.5rem 1rem !important;
        padding-bottom: unset !important;
    }

    .pi-v5-form-panel {
        padding: 2rem 1rem !important;
    }

    .pi-v5-error-alert {
        font-size: 13px !important;
        padding: 10px 12px !important;
    }

    .safe-item {
        flex: 0 0 100%;
        max-width: 100%;
        border-right: none !important;
        border-bottom: 1px solid #dbe7e4 !important;
    }

    .safe-item:last-child {
        border-bottom: none !important;
    }

    .stepper-step .stepper-title {
        font-size: 10px;
    }

    .input-group-side input:nth-child(2) {
        margin-top: 0px !important;
    }

    #longterm_drop_form .input-icon-wrap .app-input {
        padding-left: 40px !important;
    }

    /* Mobile overrides for 2-column vehicle type slider */
    .car-slide {
        padding: 6px !important;
    }

    .car-slide__inner {
        padding: 12px 8px !important;
    }

    .car-slide__title {
        font-size: 13px !important;
        margin-bottom: 8px !important;
    }

    .car-slide__image {
        max-height: 45px !important;
        height: 30px !important;
        margin: 12px 0px !important;
    }

    .car-slide__details {
        gap: 8px !important;
        margin-bottom: 8px !important;
    }

    .car-slide__details span {
        font-size: 11px !important;
        gap: 4px !important;
    }

    .car-slide__details i {
        font-size: 11px !important;
    }

    .car-slide__price h6 {
        font-size: 11px !important;
    }

    .car-slide__price h6 .price-value {
        font-size: 13px !important;
    }
}

@media (max-width: 380px) {
    .fleet-header__user-block .theme-btn-outline span {
        display: none;
    }

    .stepper-step {
        width: 20%;
    }

    #longterm_drop_form .input-icon-wrap .input-icon-svg {
        width: 16px !important;
        height: 16px !important;
    }
}

@media (max-width: 360px) {
    .license-acceptance-bar p {
        font-size: 11px;
    }

    .stepper-connector {
        display: none;
    }

    .stepper-step {
        width: 24%;
    }

    .long-term-booking-form .bf-container {
        padding: 20px 0px !important;
    }
}

/* Floating Label Styles for mb-v5 (Manage Booking) */
.mb-v5-floating-group .mb-v5-input-wrapper {
    position: relative;
}

.mb-v5-floating-group .mb-v5-label {
    position: absolute;
    top: 25px;
    left: 48px;
    padding: 0 4px;
    transform: translateY(-50%);
    font-size: 15px;
    font-weight: 500;
    color: var(--newdesign-text-muted);
    pointer-events: none;
    transition: all 0.2s ease;
    margin: 0 !important;
    line-height: 1 !important;
    background-color: transparent;
    z-index: 10;
}

.mb-v5-floating-group .mb-v5-input:focus~.mb-v5-label {
    top: 0;
    left: 16px;
    font-size: 13px;
    font-weight: 600;
    color: var(--newdesign-brand-primary);
    background-color: var(--color-white);
}

.mb-v5-floating-group input.mb-v5-input:not(:focus):not(:placeholder-shown)~.mb-v5-label {
    top: 0;
    left: 16px;
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    background-color: var(--color-white);
}

/* Padding overrides for vehicle selection section */
@media (min-width: 992px) {
    .vehilce-selection-section {
        padding-right: 0px !important;
    }
}

@media (max-width: 991px) {
    .vehilce-selection-section {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }
}

/* No vehicles found layout styles */
#no-vehicle-for-filters.no-data {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.no-vehicles-found-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    margin: 0;
    width: 100%;
}

.no-vehicles-svg {
    max-width: 280px;
    height: auto;
    margin-bottom: 12px;
    opacity: 0.75;
}

.no-vehicles-title {
    font-size: 24px;
    font-weight: 600;
    color: #0f4c4c;
    margin-bottom: 16px;
    line-height: 1.2;
}

.no-vehicles-found-container .clear-filters-btn {
    margin-top: 8px;
}

.clear-filters-link {
    color: var(--theme-color, #0f4c4c);
    text-decoration: underline;
    font-weight: 600;
    cursor: pointer;
}

.clear-filters-link:hover {
    color: #0C3E3E;
    text-decoration: underline;
}

/* =========================================
   Extend & Save More Accordion (Redesign)
   ========================================= */
.ext-accordion {
    width: 100%;
    margin: 15px 0 0 0;
    border: 1px solid #eab308; /* Golden border */
    border-radius: 8px;
    overflow: hidden;
    background-color: #fefce8; /* Light golden background */
    font-family: inherit;
}

@keyframes extAccordionShimmer {
    0% { transform: translateX(-200%) skewX(-25deg); }
    100% { transform: translateX(350%) skewX(-25deg); }
}

.ext-accordion__header {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    background-color: #fefce8; /* Light golden background */
    color: var(--theme-color, #0f4c4c);
    cursor: pointer;
    transition: background-color 0.3s ease;
    position: relative;
    overflow: hidden;
}

.ext-accordion__header::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    /* Creative golden + white shine, toned down yellow */
    background: linear-gradient(
        to right, 
        rgba(255, 255, 255, 0) 0%, 
        rgba(234, 179, 8, 0.1) 30%, 
        rgba(255, 255, 255, 0.8) 50%, 
        rgba(234, 179, 8, 0.1) 70%, 
        rgba(255, 255, 255, 0) 100%
    );
    animation: extAccordionShimmer 2.5s infinite linear;
    pointer-events: none;
    z-index: 1;
}

.ext-accordion__header:hover {
    background-color: #fdfbe8; /* Extremely subtle, no solid yellow */
}

.ext-accordion__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    color: inherit;
}

.ext-accordion__title {
    flex-grow: 1;
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.ext-accordion__chevron {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    color: inherit;
}

.ext-accordion__header[aria-expanded="true"] .ext-accordion__chevron {
    transform: rotate(180deg);
}

.ext-accordion__body {
    background-color: #fefce8; /* Light golden background */
    padding: 20px;
}

.ext-accordion__hint {
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #666;
    margin-top: 0;
    margin-bottom: 15px;
}

.ext-accordion__hint svg {
    margin-right: 8px;
    color: var(--theme-color, #0f4c4c);
}

.ext-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

@media (min-width: 768px) {
    .ext-options {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .ext-option-link {
        flex: 1 1 calc(33.333% - 12px);
        min-width: 250px;
    }
}

.ext-option-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    background-color: #fcfcfc;
    text-decoration: none !important;
    transition: all 0.2s ease;
    position: relative;
}

.ext-option-link:hover {
    border-color: var(--theme-color, #0f4c4c);
    background-color: #f7fafa;
    box-shadow: 0 2px 8px rgba(15, 76, 76, 0.08);
}

.ext-option--current {
    background-color: #f0f9f8;
    border-color: #bce3dc;
}

.ext-option--current:hover {
    background-color: #e5f5f3;
    border-color: #2eceb6;
}

.ext-option__left {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ext-option__badge-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ext-option__days-badge {
    font-size: 14px;
    font-weight: 600;
    color: var(--theme-color, #0f4c4c);
}

.ext-option__days-badge--current {
    color: #555;
}

.ext-badge {
    position: absolute;
    top: -10px;
    right: 15px;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    border: 1px solid #fff;
    z-index: 2;
}

.ext-badge--recommended {
    background-color: rgba(15, 76, 76, 0.1);
    color: var(--theme-color, #0f4c4c);
}

.ext-badge--best {
    background-color: rgba(46, 206, 182, 0.15);
    color: #209f8c;
    /* Darker accent for text */
}

.ext-option__dates {
    font-size: 12px;
    color: #777;
}

.ext-option__right {
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ext-option__rate {
    font-size: 16px;
    font-weight: 700;
    color: var(--theme-color, #0f4c4c);
}

.ext-option__per-day {
    font-size: 12px;
    font-weight: 500;
    color: #888;
    margin-left: 2px;
}

.ext-option__total {
    font-size: 13px;
    font-weight: 600;
    color: #555;
    margin-top: 2px;
}

/* Booking Flow Hero Active Step Graphics */
.booking-flow-hero-graphic {
    max-width: 100%;
    width: 292px;
    height: auto;
}

.booking-flow-hero-graphic svg {
    width: 100%;
    height: auto;
    display: block;
}

/* ==========================================================================
   DRIVER INFORMATION PAGE REDESIGN
   ========================================================================== */

.driver-info-hero {
    background-color: #f0fbfa !important;
    padding: 80px 0 !important;
    border-bottom: 1px solid #e5f4f1 !important;
}

.driver-info-hero h1 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 40px !important;
    font-weight: 700 !important;
    color: #0F4C4C !important;
    margin-bottom: 12px !important;
}

.driver-info-hero .info-discription {
    font-family: 'Poppins', sans-serif !important;
    color: #4b5563 !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    max-width: 700px !important;
    margin: 0 auto 24px auto !important;
}

.driver-info-hero .hero-btn-orange {
    background-color: #0F4C4C !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 32px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    font-family: 'Poppins', sans-serif !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 14px rgba(15, 76, 76, 0.25) !important;
}

.driver-info-hero .hero-btn-orange:hover {
    background-color: #0c3e3e !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(15, 76, 76, 0.35) !important;
}

/* Requirements Cards Section */

.driver-info-requirements .cards-wraper {
    margin-top: -40px !important;
    position: relative !important;
    z-index: 10 !important;
}

.driver-info-requirements .cards-content {
    background: #ffffff !important;
    border-radius: 12px !important;
    padding: 24px 20px !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.03), 0 8px 10px -6px rgba(0, 0, 0, 0.03) !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 16px !important;
    transition: all 0.3s ease !important;
}

.driver-info-requirements .cards-content:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.05) !important;
}

.driver-info-requirements .cards-content .card-img {
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    object-fit: contain !important;
}

.driver-info-requirements .cards-content .card-headings {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin-bottom: 4px !important;
    line-height: 1.4 !important;
}

.driver-info-requirements .cards-content p.text-muted {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    color: #64748b !important;
    line-height: 1.5 !important;
}

.driver-info-requirements .heading-text {
    font-family: 'Poppins', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #0F4C4C !important;
    margin: 48px 0 24px 0 !important;
}

/* Requirements Box Card */

.driver-info-requirements .requirements-box {
    background: #ffffff !important;
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.03), 0 8px 10px -6px rgba(0, 0, 0, 0.03) !important;
    overflow: hidden !important;
    margin-bottom: 32px !important;
}

.driver-info-requirements .sub-heading {
    font-family: 'Poppins', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    background-color: #0F4C4C !important;
    padding: 18px 24px !important;
    margin: 0 !important;
    border-top-left-radius: 12px !important;
    border-top-right-radius: 12px !important;
}

.driver-info-requirements .sub-heading+div.p-4 {
    padding: 32px !important;
}

.driver-info-requirements .requirement-list {
    margin-bottom: 24px !important;
}

.driver-info-requirements .requirement-list li {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 14px !important;
    line-height: 1.6 !important;
    padding-left: 28px !important;
    position: relative !important;
}

.driver-info-requirements .requirement-list li::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 4px !important;
    width: 18px !important;
    height: 18px !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232eceb6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.driver-info-requirements .right-img {
    position: static !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.driver-info-requirements .right-img img {
    border-radius: 12px !important;
    width: 100% !important;
    max-width: 260px !important;
    height: auto !important;
    object-fit: contain !important;
}

.driver-info-requirements .important-note {
    background-color: #dbf4f0 !important;
    border: 1px solid var(--theme-color) !important;
    color: var(--theme-color) !important;
    padding: 16px 20px !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    margin-bottom: 24px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.driver-info-requirements .important-note p {
    color: var(--theme-color) !important;
    margin: 0 !important;
    font-size: 14px !important;
}

.driver-info-requirements .important-note .card-img {
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    filter: none !important;
}

.driver-info-breadcrumb .breadcrumb {
    justify-content: center !important;
}

/* Accordion Section */

#driverAccordion {
    margin-top: 48px !important;
    margin-bottom: 48px !important;
}

#driverAccordion .border-0.custom-shadow {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03), 0 2px 4px -1px rgba(0, 0, 0, 0.03) !important;
    margin-bottom: 16px !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#driverAccordion .accordion-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 20px 24px !important;
    background: #ffffff !important;
    transition: background-color 0.2s ease !important;
    margin: 0 !important;
    width: 100% !important;
}

#driverAccordion .accordion-toggle:hover {
    background-color: #f8fafc !important;
}

#driverAccordion .driver-accordion-header {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

#driverAccordion .accordion-toggle .down-arrow {
    width: 14px !important;
    height: 14px !important;
    transition: all 0.3s ease !important;
    flex-shrink: 0 !important;
    margin-left: 16px !important;
    /* Circular badge matching FAQ icon style */
    padding: 6px !important;
    box-sizing: content-box !important;
    background-color: #e9ecef !important;
    border-radius: 50% !important;
    opacity: 0.8 !important;
}

#driverAccordion .accordion-toggle[aria-expanded="true"] .down-arrow {
    transform: rotate(180deg) !important;
    background-color: rgba(47, 191, 159, 0.18) !important;
    opacity: 1 !important;
}

#driverAccordion .collapse {
    margin-left: 0 !important;
}

#driverAccordion p {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    color: #4b5563 !important;
    line-height: 1.6 !important;
}

/* Responsive Overrides */

@media (max-width: 767px) {


    .driver-info-hero {
        padding: 48px 0 !important;
    }

    .driver-info-hero h1 {
        font-size: 28px !important;
    }

    .driver-info-hero .info-discription {
        font-size: 14px !important;
    }

    .driver-info-requirements .cards-wraper {
        margin-top: -24px !important;
    }

    .driver-info-requirements .heading-text {
        font-size: 22px !important;
        margin: 32px 0 16px 0 !important;
    }

    .driver-info-requirements .sub-heading {
        font-size: 16px !important;
        padding: 14px 18px !important;
    }

    .driver-info-requirements .sub-heading+div.p-4 {
        padding: 20px !important;
    }

    .driver-info-requirements .right-img {
        justify-content: center !important;
        margin-top: 24px !important;
    }

    .driver-info-requirements .right-img img {
        max-width: 220px !important;
    }

    #driverAccordion .accordion-toggle {
        padding: 16px 18px !important;
    }

    #driverAccordion .driver-accordion-header {
        font-size: 14px !important;
    }

    #driverAccordion .px-4.py-2 {
        padding: 16px 18px !important;
    }

    #driverAccordion p {
        font-size: 13px !important;
    }
}

/* How It Works play button customization */
.hiw-play-btn {
    box-shadow: 0 10px 30px rgba(47, 191, 159, 0.4) !important;
}

.hiw-play-btn::after {
    border-left: 15px solid #0f4c4c !important;
}

.hiw-video-facade:hover .hiw-play-btn {
    background: #0F4C4C !important;
    box-shadow: 0 10px 30px rgba(15, 76, 76, 0.4) !important;
    transform: translate(-50%, -50%) scale(1.1) !important;
}

.hiw-video-facade:hover .hiw-play-btn:after {
    border-left-color: #ffffff !important;
}

/* 404 Error Page Redesign */
.err-v5-section {
    min-height: 70vh;
    padding: 3rem 0;
}

.err-v5-img-wrapper {
    margin-bottom: 0rem;
}

.err-v5-img {
    max-width: 500px;
    width: 100%;
}

.err-v5-title {
    color: var(--newdesign-text-primary, #0f2b38);
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.err-v5-highlight {
    color: var(--newdesign-brand-primary, #2cc2ab);
}

.err-v5-message {
    color: var(--newdesign-text-secondary, #64748b);
    font-size: 1.1rem;
    max-width: 600px;
    margin: 0 auto 3rem auto;
    line-height: 1.6;
}

.err-v5-home-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 32px;
    background: var(--newdesign-brand-primary, #2cc2ab);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px -1px rgba(44, 194, 171, 0.2);
    margin: 0 auto;
}

.err-v5-home-btn:hover {
    background: var(--newdesign-primary-dark, #104c4c);
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(16, 76, 76, 0.2);
}

.err-v5-icon {
    margin-right: 8px;
}

@media (max-width: 768px) {
    .err-v5-section {
        padding: 2rem 1rem;
    }

    .err-v5-title {
        font-size: 1.8rem;
    }

    .err-v5-message {
        font-size: 1rem;
        margin-bottom: 2rem;
    }
}

@media (max-width: 480px) {
    .err-v5-title {
        font-size: 1.5rem;
    }

    .err-v5-message {
        font-size: 0.95rem;
    }
}

@media (max-width: 575px) {
    .payment-age-pill {
        min-width: unset !important;
    }

    .payment-age-pill-label {
        font-size: 11px !important;
        padding: 8px 4px !important;
    }
}


/* --- GLOBAL MODAL CLOSE BUTTON REDESIGN --- */
.modal-content,
.modal-body {
    position: relative;
}

.modal .close,
.modal-close-button,
.refundpolicymodal__close-x,
.modal-header .close {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    z-index: 1050 !important;
    text-decoration: none !important;
    padding: 0 !important;
    margin: 0 !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

.modal .close:hover,
.modal-close-button:hover,
.refundpolicymodal__close-x:hover,
.modal-header .close:hover {
    background: #fee2e2 !important;
    border-color: #fca5a5 !important;
    color: #ef4444 !important;
    transform: rotate(90deg) !important;
}

.modal .close span,
.modal .close i,
.modal-close-button i,
.modal-close-button svg,
.refundpolicymodal__close-x i,
.modal-header .close span {
    font-size: 18px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: none !important;
    font-weight: normal !important;
    color: inherit !important;
}

/* Ensure the modal header doesn't push the absolute close button around and has room */
.modal-header {
    padding-right: 60px !important;
}

/* ==========================================================================
   OUR PARTNERS PAGE HERO REDESIGN
   ========================================================================== */

.pingouin-partners-redesign {
    overflow-x: hidden;
    width: 100%;
}

.pingouin-partners-redesign .partners-header-section {
    position: relative;
    overflow: hidden;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

.pingouin-partners-redesign .breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 1.5rem !important;
}

.pingouin-partners-redesign .breadcrumb-item,
.pingouin-partners-redesign .breadcrumb-item a {
    color: #1C1C1E;
    text-decoration: none;
    font-size: 14px;
    font-weight: var(--font-weight-medium);
}

.pingouin-partners-redesign .breadcrumb-item.active {
    color: var(--fleet-muted);
}

.pingouin-partners-redesign .breadcrumb-item+.breadcrumb-item::before {
    content: ">";
    color: #cbd5e1;
    font-size: inherit;
    padding: 0 10px;
}

.pingouin-partners-redesign .title-wrapper {
    position: relative;
    display: inline-block;
    width: calc(100% - 110px);
}

.pingouin-partners-redesign .partners-main-title {
    font-family: 'Poppins', sans-serif;
    color: var(--fleet-dark) !important;
    font-size: 60px;
    letter-spacing: -1px;
    font-weight: var(--font-weight-semi-bold) !important;
}

.pingouin-partners-redesign .title-underline {
    width: 70px;
    height: 5px;
    background-color: var(--fleet-primary);
    border-radius: 10px;
    margin-top: 5px;
}

.pingouin-partners-redesign .partners-subtitle {
    font-family: 'Inter', sans-serif;
    color: var(--fleet-muted) !important;
    max-width: 500px;
    font-size: 18px !important;
}

.pingouin-partners-redesign .partners-header-icon-visual {
    position: relative;
    padding: 30px;
    z-index: 1;
}

.pingouin-partners-redesign .partners-header-icon-visual {
    position: relative;
    display: inline-block;
}

.pingouin-partners-redesign .visual-circle-large {
    width: 320px;
    height: 320px;
    background: hsl(180, 68%, 15%, 0.05);
    border-radius: 50%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-color);
    box-shadow: 0 30px 60px rgba(44, 194, 171, 0.05);
    position: relative;
    z-index: 2;
}

.pingouin-partners-redesign .partners-hero-img {
    width: 180px;
    height: auto;
    object-fit: contain;
}

.pingouin-partners-redesign .partners-header-section::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(44, 194, 171, 0.04) 0%, transparent 70%);
    top: -200px;
    right: -100px;
    z-index: 0;
    pointer-events: none;
}

@media (max-width: 991px) {
    .pingouin-partners-redesign .partners-header-section {
        padding-top: 20px !important;
        padding-bottom: 40px !important;
        overflow: visible;
    }

    .pingouin-partners-redesign .breadcrumb {
        justify-content: flex-start;
        font-size: 13px;
        margin-bottom: 1rem !important;
    }

    .pingouin-partners-redesign .partners-main-title {
        font-size: 34px !important;
        font-weight: 600 !important;
        color: var(--newdesign-text-primary) !important;
        text-align: left;
        line-height: 1.2;
    }

    .pingouin-partners-redesign .partners-subtitle {
        text-align: left;
        font-size: 14px !important;
        font-weight: 400 !important;
        color: var(--newdesign-text-secondary) !important;
        max-width: 90%;
        margin-bottom: 35px !important;
        line-height: 1.5;
    }

    .pingouin-partners-redesign .partners-header-section .container {
        position: relative;
    }

    .pingouin-partners-redesign .partners-header-icon-visual {
        position: absolute !important;
        top: 25px !important;
        right: 15px !important;
        padding: 0 !important;
        z-index: 2 !important;
        display: block !important;
    }

    .pingouin-partners-redesign .visual-circle-large {
        width: 110px !important;
        height: 110px !important;
        background: var(--newdesign-neturals-soft-bg) !important;
    }

    .pingouin-partners-redesign .partners-hero-img {
        width: 60px !important;
        height: auto !important;
    }

    .pingouin-partners-redesign .visual-dot-1 {
        width: 30px !important;
        height: 30px !important;
        bottom: 15px !important;
        right: -5px !important;
        background: rgba(15, 76, 76, 0.06) !important;
        position: absolute !important;
        border-radius: 50% !important;
    }
}

/* ==========================================================================
   Humanitarian Aid Redesign Page Styles
   ========================================================================== */

.pingouin-humanitarian-redesign .humanitarian-hero-image-wrap {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.pingouin-humanitarian-redesign .humanitarian-hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.pingouin-humanitarian-redesign .humanitarian-hero-image-wrap:hover .humanitarian-hero-image {
    transform: scale(1.03);
}

.pingouin-humanitarian-redesign .commitment-section {
    padding: 80px 0;
    background-color: #ffffff;
}

.pingouin-humanitarian-redesign .commitment-content {
    max-width: 900px;
    margin: 0 auto;
    font-size: 16px;
    color: #6B7280;
    line-height: 1.8;
}

.pingouin-humanitarian-redesign .humanitarian-areas-section {
    background-color: #f9fafc;
}

.pingouin-humanitarian-redesign .humanitarian-card {
    background: #ffffff;
    border-radius: 10px;
    padding: 35px 30px;
    height: 100%;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
    border: 1px solid #f0f0f0;
    text-align: left;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
}

.pingouin-humanitarian-redesign .humanitarian-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.pingouin-humanitarian-redesign .hc-icon-wrap {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #E6F7F4;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.pingouin-humanitarian-redesign .hc-icon-wrap img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.pingouin-humanitarian-redesign .hc-title {
    font-size: 18px;
    font-weight: 600;
    color: #0F4C4C;
    margin-bottom: 12px;
}

.pingouin-humanitarian-redesign .hc-desc {
    font-size: 14px;
    color: #6B7280;
    line-height: 1.6;
    margin-bottom: 0;
    flex-grow: 1;
}

.pingouin-humanitarian-redesign .difference-section {
    padding: 80px 0;
    background-color: #0F4C4C;
    color: #ffffff;
}

.pingouin-humanitarian-redesign .difference-content {
    max-width: 900px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.8;
    color: #e2f0ed;
}

.pingouin-humanitarian-redesign .difference-title {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 25px;
    color: #ffffff;
}

.pingouin-humanitarian-redesign .difference-title span {
    color: #2eceb6;
}

@media (max-width: 991px) {
    .pingouin-humanitarian-redesign .humanitarian-hero-image-wrap {
        margin-top: 30px;
        height: auto;
    }

    .pingouin-humanitarian-redesign .commitment-section {
        padding: 50px 0;
    }

    .pingouin-humanitarian-redesign .difference-section {
        padding: 50px 0;
    }

    .pingouin-humanitarian-redesign .difference-content {
        font-size: 14px;
    }

    .pingouin-humanitarian-redesign .difference-title {
        font-size: 26px;
    }

    .pingouin-humanitarian-redesign .humanitarian-card {
        padding: 26px 20px;
    }
}

@media (max-width: 575px) {
    .pingouin-humanitarian-redesign .humanitarian-hero-image-wrap {
        margin-top: 0px;
    }
}

/* Homepage Features Banner (under search section) */
.home-features-banner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: transparent;
    padding: 30px 0 0 0;
    margin-top: 35px;
    margin-bottom: 0px;
    width: 100%;
}

.home-features-banner .hfb-item {
    display: flex;
    align-items: center;
    gap: 20px;
    flex: 1;
    padding: 0 40px;
}

.home-features-banner .hfb-item:not(:last-child) {
    border-right: 1px solid rgba(15, 76, 76, 0.15);
}

.home-features-banner .hfb-icon-wrap {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color: #E6F7F4;
    /* Light teal background */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.home-features-banner .hfb-icon-wrap svg {
    width: 26px;
    height: 26px;
    stroke: #0F4C4C;
    /* Dark green/teal color */
    stroke-width: 1.8;
}

.home-features-banner .hfb-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-align: left;
}

.home-features-banner .hfb-title {
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #0F4C4C;
    margin: 0;
    line-height: 1.3;
    margin-bottom: 5px;

}

.home-features-banner .hfb-text {
    font-size: 14px;
    color: #4B5563;
    margin: 0;
    line-height: 1.4;

}

#booking-form .scroll-down-indicator {
    margin-top: 50px !important;
}

.browse-faq-section {
    padding: 80px 0;
}


/* Responsive styles */
@media (max-width:1380px) {

    .home-features-banner .hfb-title,
    .home-features-banner .hfb-text {
        max-width: 100%;
    }

}

@media (max-width: 991px) {
    .home-features-banner {
        flex-direction: column;
        align-items: stretch;
        gap: 25px;
        padding: 20px 0;
        margin-top: 20px;
    }

    .home-features-banner .hfb-item {
        padding: 0 20px;
        justify-content: flex-start;
    }

    .home-features-banner .hfb-item:not(:last-child) {
        border-right: none;
        border-bottom: 1px solid rgba(15, 76, 76, 0.1);
        padding-bottom: 25px;
    }

    .footer-v2-bottom {
        margin-top: 0;
    }

    .browse-faq-section {
        padding: 40px 0;
    }

}


/* Driver Hub Section on FAQ */
.driver-hub-section {
    padding: 80px 0;
    background-color: #ffffff;
}

.driver-hub-section .dh-section-tag {
    color: #2cc2ab;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.driver-hub-section .dh-section-title {
    font-size: 26px;
    font-weight: 600;
    color: #000;
    line-height: 1.25;
}

.driver-hub-section .dh-section-subtitle {
    font-size: 16px;
    color: #7a8b8b;
    font-weight: 400;
}

.driver-hub-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 15px;
    height: 100%;
}

.driver-hub-card .dh-icon-wrap {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: rgba(44, 194, 171, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.driver-hub-card .dh-icon-wrap img {
    height: 28px;
}

.driver-hub-card .dh-card-title {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin-bottom: 6px;
}

.driver-hub-card .dh-card-desc {
    font-size: 13px;
    color: #7a8b8b;
    line-height: 1.4;
    margin-bottom: 0;
}

.driver-hub-col {
    position: relative;
}

@media (min-width: 992px) {
    .driver-hub-col:not(:last-child)::after {
        content: '';
        position: absolute;
        right: 0;
        top: 20%;
        height: 60%;
        width: 1px;
        background-color: rgba(15, 76, 76, 0.1);
    }
}

.btn-driver-hub {
    background-color: #0f4c4c;
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 600;
    padding: 14px 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    border: none;
    text-decoration: none;
}

.btn-driver-hub:hover {
    background-color: #166060;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15, 76, 76, 0.15);
}

@media (max-width: 575px) {
    .home-features-banner .hfb-item {
        gap: 16px;
        padding: 0 10px;
    }

    .home-features-banner .hfb-title {
        font-size: 15px;
    }

    .home-features-banner .hfb-text {
        font-size: 13px;
    }

    .driver-hub-section {
        padding: 40px 0;

    }
}
/* Booking Form Container Adjustments */
.home-booking-container {
    padding: unset;
}

@media (max-width: 767px) {
    .home-booking-container {
        padding: 5px !important;
    }
}

/* Highlights Tooltip Specific Styles */
.highlights-tooltip-container { display: flex; flex-wrap: wrap; gap: 12px; padding: 24px; text-align: left; box-sizing: border-box; width: 1150px; max-width: 90vw; }
.ht-col { flex: 1; border-radius: 12px; }
.ht-car-summary { min-width: 180px; padding: 10px; background: #ffffff; }
.ht-perfect-for { min-width: 160px; background: #f2f7f6; padding: 15px; }
.ht-luggage { min-width: 140px; background: #ffffff; border: 1px solid #f0f0f0; padding: 15px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; }
.ht-features { min-width: 160px; background: #fffcf0; padding: 15px; }
.ht-safety { min-width: 160px; background: #f4f6f9; padding: 15px; }

.ht-feature-item { font-size: 12px; color: #002d4c; margin-bottom: 15px; display: flex; align-items: center; gap: 8px; font-weight: 600; }
.ht-perfect-for-item { font-size: 11px; color: #002d4c; display: flex; align-items: center; gap: 8px; }
.ht-section-title { color: #004c4c; font-weight: bold; font-size: 14px; margin-bottom: 20px; display: flex; align-items: center; gap: 8px; }
.ht-text-bold { font-weight: bold; }
.ht-text-muted-small { font-size: 10px; color: #6b7280; }
.ht-feature-ul { list-style: none; padding: 0; margin: 0 0 15px 0; }
.ht-perfect-for-ul { list-style: none; padding: 0; margin: 0 0 15px 0; display: flex; flex-direction: column; gap: 16px; }
