/* Professional & policy-safe top bar */
.topbar {
    background: #0a4b87; /* brand blue */
    color: #fff;
    font-size: 0.95rem;
    height: 42px;
    line-height: 42px;
}

    .topbar .contact-link {
        color: #fff;
        text-decoration: none;
        font-weight: 500;
    }

        .topbar .contact-link:hover {
            text-decoration: underline;
        }

    .topbar .fa-regular {
        font-size: 0.9rem;
        color: #cfe2ff; /* softer icon contrast */
    }

/* Mobile stack */
@media (max-width:575.98px) {
    .topbar {
        height: auto;
        line-height: 1.4;
        padding: .4rem 0;
    }

        .topbar .container {
            flex-direction: column;
            gap: .25rem;
        }
}

/* 1) Fine-tune sizing & spacing */
.topbar {
    height: 48px;
    line-height: 48px;
}

.brand-sub {
    letter-spacing: .25em;
}

/* 2) Active link underline */
.navbar-nav .nav-link[aria-current="page"] {
    position: relative;
}

    .navbar-nav .nav-link[aria-current="page"]::after {
        content: "";
        position: absolute;
        left: 10%;
        right: 10%;
        bottom: .35rem;
        height: 2px;
        background: var(--brand-blue);
        border-radius: 2px;
    }

/* 3) CTA pill + responsive */
.btn-call {
    border-radius: 999px;
    padding: .75rem 1.25rem;
}

@media (max-width:991.98px) {
    .right-cta {
        width: 100%;
        padding-top: .5rem;
    }

    .btn-call {
        width: 100%;
        justify-content: center;
    }
}

/* 4) Mobile nav item spacing + dividers */
@media (max-width:991.98px) {
    .navbar-nav .nav-link {
        padding: 0.95rem 0;
    }

    .navbar-nav .nav-item + .nav-item {
        border-top: 1px solid rgba(0,0,0,.06);
    }
}

/* 5) Focus states */
a:focus, button:focus, .nav-link:focus, .btn-call:focus {
    outline: 2px solid #90caf9;
    outline-offset: 2px;
}

/* 8) Sticky shadow on scroll */
.navbar.stuck {
    box-shadow: 0 8px 18px rgba(0,0,0,.06);
}

/* Hide topbar on mobile */
@media (max-width: 575.98px) {
    .topbar {
        display: none !important;
    }
}

:root {
    --brand-blue: #005baf;
    --brand-blue-dark: #083a6a;
    --brand-text: #0a3b6a;
}

.topbar {
    background: var(--brand-blue);
    color: #fff;
    font-size: .95rem;
    line-height: 42px;
    height: 42px;
}

    .topbar a {
        color: #fff;
        text-decoration: none;
    }

    .topbar .fa {
        font-size: 1rem;
    }

.brand-wrap {
    display: flex;
    align-items: center;
    gap: .65rem;
    text-decoration: none;
}

.brand-emblem {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--brand-blue);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 700;
    font-size: 28px;
}

.brand-lines {
    line-height: 1;
}

.brand-title {
    font-family: 'Fira Sans', sans-serif;
    font-weight: 700;
    font-size: 1.4rem;
    color: var(--brand-text);
}

.brand-sub {
    font-weight: 700;
    letter-spacing: .35em;
    color: #1f4d7b;
    font-size: .85rem;
}

.navbar {
    box-shadow: 0 1px 0 rgba(0,0,0,.06);
}

.navbar-nav .nav-link {
    color: #0f4c81;
    font-weight: 700;
    letter-spacing: .02em;
    padding: .75rem 1rem;
}

    .navbar-nav .nav-link:hover {
        color: var(--brand-blue-dark);
    }

.btn-call {
    background: var(--brand-blue);
    color: #fff;
    border: none;
    font-weight: 700;
    padding: .75rem 1.1rem;
    border-radius: .4rem;
}

    .btn-call:hover {
        background: var(--brand-blue-dark);
        color: #fff;
    }

@media (min-width:992px) {
    .navbar-collapse {
        justify-content: center;
    }

    .navbar .right-cta {
        margin-left: auto;
    }
}





.hero {
    position: relative;
    min-height: 60vh; /* adjust height if needed */
    background: url('../image/2025-es-exterior.jpg') no-repeat center center/cover;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .hero .overlay {
        position: absolute;
        inset: 0;
        background: rgba(10, 20, 40, 0.6); /* dark overlay */
    }

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    padding: 2rem;
}

/* Call button */
.btn-calls {
    background: #fff;
    color: #0a3b6a; /* your dark blue theme color */
    font-weight: 700;
    font-size: 1.1rem;
    padding: 0.9rem 1.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
}

    .btn-calls:hover {
        background: #0a3b6a; /* your yellow highlight */
        color: #fff;
    }


/* Default: hidden (desktop/tablet) */
.mobile-booking-banner {
    display: none;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    color: #fff; /* White text */
    border: 2px solid rgba(255, 255, 255, 0.7); /* white border with transparency */
    border-radius: 14px;
    box-shadow: 0 4px 10px rgba(255, 255, 255, 0.3); /* subtle white glow */
    width: fit-content;
    margin: 20px auto;
    font-family: 'Segoe UI', sans-serif;
    background-color: transparent; /* no bg */
    animation: pulseAnimation 1s infinite;
}

/* Icon with pulse */
.mobile-pulse-icon {
    font-size: 2rem;
    color: #fff;
}

/* Text container */
.mobile-pulse-text {
    line-height: 1.3;
    text-align: left;
}

/* Label */
.mobile-label {
    font-size: 1.05rem;
    font-weight: 600;
    color: #fff;
}

/* Phone number */
.mobile-number a {
    color: #fff;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 800;
}

/* Pulse Animation */
@keyframes pulseAnimation {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.85;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.pulse-fast {
    animation: pulseAnimation 0.8s infinite;
}

/* ✅ Show only on mobile */
@media (max-width: 768px) {
    .mobile-booking-banner {
        display: flex;
    }

    .hero {
        position: relative;
        min-height: 20vh; /* adjust height if needed */
        background: url('../image/2025-es-exterior.jpg') no-repeat center center/cover;
        display: flex;
        align-items: center;
        justify-content: center;
    }

        .hero .overlay {
            position: absolute;
            inset: 0;
            background: rgb(0 88 152 / 73%);
        }


    .booking-form-wrapper {
        padding: 9px !important;
    }
    /* Hide hero text & button on mobile */

    .hero-content h4,
    .hero-content .btn-calls {
        display: none;
    }

    .hero
    position: relative;
    min-height: 20vh; /* adjust height if needed */
    background: url('../image/2025-es-exterior.jpg') no-repeat center center/cover;
    display: flex;
    align-items: center;
    justify-content: center;
}


.bookonl-bg {
    float: left;
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

.book-bg {
    float: left;
    width: 100%;
    border-radius: 20px;
    margin: 3% 0 0 0;
    padding: 25px 5px 25px 5px;
    background-color: #f0f0f0;
}

    .book-bg p {
        float: left;
        width: 100%;
        margin: 0;
        text-align: center;
        padding: 0 0 3px 0;
        font-weight: 700;
    }

.book-ttl {
    width: 97%;
    float: left;
    text-align: center;
    padding: 0 1.5% 0 1.5%;
    color: #004990;
    font-size: 20pt;
    font-weight: 700;
    margin: 0 0 0 0;
    border-radius: 5px;
    text-transform: uppercase;
}

@media (max-width: 480px) {
    .book-ttl {
        font-size: 23pt !important;
    }
}

.book-data {
    float: left;
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    opacity: .9;
}

.book-inner {
    float: left;
    width: 100%;
}



.book-hd-1 {
    width: 100%;
    float: left;
    color: #000;
    margin: 0 auto;
    font-size: 12pt;
    font-weight: 600;
    text-align: left;
    margin-bottom: 0;
    border-radius: 5px;
    padding: 0 0 10px 20px;
}

.sliderform {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    background-image: url(../image/2025_Lexus_ES.png);
    background-position: 50% 50%;
    background-size: cover;
    margin-bottom: 50px;
}

.sliderforma {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    background-image: url(../image/Airport-Transfers-Sydney.webp);
    background-position: 10% 80%;
    background-size: cover;
    margin-bottom: 50px;
}

.sliderformm {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    background-image: url(../image/Maxi-Cab-Sydney.jpg);
    background-position: 90% 10%;
    background-size: cover;
    margin-bottom: 50px;
}


.sliderformonline {
    width: 100%;
    float: left;
    margin: 0 0 0 0;
    background-image: url(../image/f2.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 35px;
}

.sliderform_inner {
    width: 100%;
    float: left;
    padding: 150px 0 50px 0;
    background-color: rgba(0,29,58,0.7);
    /* margin-bottom:54px;  */
}

.sliderform_lft {
    float: left;
    width: 100%;
}

.sliderform_rgt {
    float: right;
    width: 46%;
    padding: 140px 0 0 50px;
}

.hdr_content {
    float: left;
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

    .hdr_content h1 {
        color: #fff;
        font-size: 25pt;
        margin: 0 0 0 0;
        font-weight: 600;
        padding: 0 0 5px 0;
        text-transform: uppercase;
        text-shadow: 3px 3px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    }

    .hdr_content p {
        color: #fff;
        font-size: 17pt;
        margin: 0 0 0 0;
        font-weight: 400;
        padding: 0 0 0 0;
        text-shadow: 2px 2px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    }



/* Hide by default */
.mobile-only-banner {
    display: none;
}



@media screen and (max-width: 768px) {
    .sliderform,
    .sliderforma,
    .sliderformm,
    .sliderformonline {
        /* Adjust background position and size */
        background-position: center center !important;
        background-size: cover !important;
        /* Optional: reduce height or padding if needed */
        padding: 80px 0 30px 0 !important;
    }
}




.form-control {
    width: 100%;
    padding: 12px 15px;
    font-size: 16px;
    border-radius: 6px;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

/* Make inputs/selects/textarea take full width of their Bootstrap columns */
form.form-horizontal input.form-control,
form.form-horizontal select.form-control,
form.form-horizontal textarea.form-control {
    width: 100%; /* full width of their column */
    box-sizing: border-box;
    padding: 12px 15px;
    font-size: 1.1rem;
    border: 1.5px solid #004990;
    border-radius: 6px;
    transition: border-color 0.3s ease;
    color: #004990;
}

    /* On focus */
    form.form-horizontal input.form-control:focus,
    form.form-horizontal select.form-control:focus,
    form.form-horizontal textarea.form-control:focus {
        border-color: #007bff;
        outline: none;
        box-shadow: 0 0 5px rgba(0,123,255,0.5);
    }

/* Keep Bootstrap column padding as is for layout (donÃ¢â‚¬â„¢t override padding/margin) */

/* Submit button styling */
form.form-horizontal input[type="submit"].btn {
    background-color: #004990;
    color: white;
    border: none;
    padding: 14px 35px;
    font-size: 1.15rem;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    max-width: 300px;
    width: 100%;
    margin: 20px auto 0;
    display: block;
}

    form.form-horizontal input[type="submit"].btn:hover {
        background-color: #0066cc;
    }

/* Textarea - bigger height */
form.form-horizontal textarea.form-control {
    min-height: 100px;
    resize: vertical;
}

/* Date/time selects in one line within their column */
#divtime > div.col-xs-4 {
    display: inline-block;
    width: 32%;
    padding-right: 5px;
}

    #divtime > div.col-xs-4:last-child {
        padding-right: 0;
    }



/* Ensure columns float properly */
.airport .form-horizontal .col-md-6,
.airport .form-horizontal .col-xs-4 {
    float: left;
    box-sizing: border-box;
    padding: 0 10px;
    margin-bottom: 15px; /* Adds space below each field */
}

/* Column width definitions */
.airport .form-horizontal .col-md-6 {
    width: 50%;
}

.airport .form-horizontal .col-xs-4 {
    width: 33.3333%;
}

/* Clear each row after floats */
.airport .form-group::after {
    content: "";
    display: table;
    clear: both;
}

/* Full-width inputs in columns */
.airport .form-control {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    font-size: 16px;
    border-radius: 4px;
    border: 1px solid #ccc;
}

/* Responsive adjustments for mobile */
@media (max-width: 767px) {
    .airport .form-horizontal .col-md-6,
    .airport .form-horizontal .col-xs-4 {
        width: 100%;
        float: none;
        padding: 0;
        margin-bottom: 15px;
    }
}

/* ===== CTA Bar (custom classes only) ===== */
:root {
    --cta-blue: #006bce; /* deep navy */
    --cta-radius: 22px; /* big rounded corners */
}

.cta-bar {
    padding: 16px 0 24px; /* spacing around the pill */
    /* keep background transparent so blue doesn't bleed behind other blocks */
}

.cta-bar__container {
    max-width: 1100px;
    margin: 0 auto;
    background: var(--cta-blue);
    color: #fff;
    border-radius: var(--cta-radius);
    padding: 18px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,.12), 0 3px 8px rgba(0,0,0,.08);
}

.cta-bar__text {
    margin: 0;
    font-weight: 800;
    letter-spacing: .2px;
    font-size: clamp(1.05rem, 1.2vw + .8rem, 1.6rem);
}

/* Button */
.cta-bar__button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    background: #fff;
    color: var(--cta-blue);
    border-radius: 14px;
    padding: 12px 18px;
    font-weight: 700;
    box-shadow: 0 4px 14px rgba(0,0,0,.12);
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}

    .cta-bar__button:hover {
        transform: translateY(-1px);
        box-shadow: 0 10px 22px rgba(0,0,0,.16);
    }

.cta-bar__icon {
    display: inline-flex;
    width: 18px;
    height: 18px;
    color: var(--cta-blue);
}

/* Responsive: stack on small screens */
@media (max-width: 768px) {
    .cta-bar__container {
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        gap: 14px;
    }

    .cta-bar__button {
        width: 100%;
        justify-content: center;
    }
}







/* ===== Theme tokens (silver / white / navy) ===== */
:root {
    --brand-navy: #006bce; /* deep navy blue */
    --brand-white: #ffffff;
    --brand-silver-100: #f3f5f8; /* soft silver background */
    --brand-silver-300: #d6dbe3; /* light silver border */
    --text-main: #0c1a2a; /* dark navy text */
    --text-muted: #42546a;
    --radius-lg: 16px;
    --shadow-soft: 0 10px 26px rgba(8,62,118,.08), 0 2px 8px rgba(8,62,118,.06);
}

/* ===== Section layout ===== */
.svc {
    padding: 56px 0;
}

.svc--light {
    background: var(--brand-silver-100);
}

.svc__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.svc__title {
    margin: 0 0 28px;
    text-align: center;
    color: var(--brand-navy);
    font-weight: 800;
    letter-spacing: .2px;
    font-size: clamp(1.6rem, 1.2vw + 1.2rem, 2.2rem);
}

.svc__subtitle {
    margin: 0 0 28px;
    text-align: center;
    color: var(--brand-navy);
    font-weight: 500;
    letter-spacing: .2px;
    font-size: large;
}



/* ===== Grid (custom, no Bootstrap) ===== */
.svc__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

@media (max-width: 1024px) {
    .svc__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .svc__grid {
        grid-template-columns: 1fr;
    }
}

/* ===== Card ===== */
.svc-card {
    background: var(--brand-white);
    border: 1px solid var(--brand-silver-300);
    border-radius: var(--radius-lg);
    padding: 24px;
    box-shadow: var(--shadow-soft);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* image holder */
.svc-card__media {
    width: 100%;
    height: 180px; /* try 180–220px */
    border-radius: 12px;
    margin-bottom: 16px;
    background: #eef2f6; /* pale silver pad */
    border: 1px solid var(--brand-silver-300);
    display: grid;
    place-items: center;
    overflow: hidden;
}

    .svc-card__media img {
        width: 100%;
        height: 100%;
        object-fit: cover; /* your image fills the square */
    }

/* text */
.svc-card__title {
    margin: 6px 0 8px;
    font-weight: 800;
    color: var(--text-main);
    font-size: 1.2rem;
}

.svc-card__link {
    color: inherit;
    text-decoration: none;
}

    .svc-card__link:hover {
        text-decoration: underline;
    }

.svc-card__text {
    margin: 0 0 18px;
    color: var(--text-muted);
    line-height: 1.65;
}

/* button */
.svc-card__btn {
    display: inline-block;
    padding: 12px 18px;
    border-radius: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}

.svc-card__btn--primary {
    background: var(--brand-navy);
    color: var(--brand-white);
    box-shadow: 0 8px 20px rgba(8,62,118,.18);
}

    .svc-card__btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 12px 26px rgba(8,62,118,.24);
    }


/* ===== Light, professional theme (navy / white / silver) ===== */
:root {
    --xbrand-navy: #ffffff;
    --brand-white: #ffffff;
    --brand-silver-050: #000000;
    --brand-silver-100: #f1f4f8;
    --brand-silver-300: #d6dbe3;
    --text-main: #0c1a2a;
    --text-muted: #3ca2ff;
    --radius-xl: 18px;
    --radius-lg: 14px;
    --shadow-soft: 0 12px 28px rgba(8,62,118,.08), 0 2px 10px rgba(8,62,118,.06);
}

/* ===== Section ===== */
.xp {
    background: var(--brand-silver-050);
    padding: 64px 0;
}

.xp__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.xp__header {
    text-align: center;
    margin-bottom: 28px;
}

.xp__title {
    margin: 0 0 10px;
    color: var(--xbrand-navy);
    font-weight: 800;
    letter-spacing: .2px;
    font-size: clamp(1.7rem, 1.2vw + 1.2rem, 2.2rem);
}

.xp__subtitle {
    margin: 0 auto;
    color: var(--text-muted);
    max-width: 70ch;
    line-height: 1.65;
    font-size: clamp(1rem, .3vw + .95rem, 1.1rem);
}

/* ===== Grid ===== */
.xp__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}

@media (max-width: 1024px) {
    .xp__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 680px) {
    .xp__grid {
        grid-template-columns: 1fr;
    }
}

/* ===== Card ===== */
.xp-card {
    background: var(--brand-white);
    border: 1px solid var(--brand-silver-300);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-soft);
    display: flex;
    flex-direction: column;
}

/* Big image */
.xp-card__media {
    width: 100%;
    height: 220px; /* adjust 220–280px for larger visuals */
    background: var(--brand-silver-100);
    overflow: hidden;
}

    .xp-card__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

/* Body */
.xp-card__body {
    padding: 18px 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.xp-card__title {
    margin: 2px 0 0;
    color: var(--text-main);
    font-weight: 800;
    font-size: 1.2rem;
}

.xp-card__text {
    margin: 0;
    color: var(--text-muted);
    line-height: 1.65;
}

/* Chips */
.xp-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
    margin: 2px 0 4px;
    list-style: none;
}

.xp-chip {
    border: 1px solid var(--brand-silver-300);
    background: var(--brand-silver-100);
    color: var(--text-main);
    font-weight: 700;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: .9rem;
}

/* Button */
.xp-card__btn {
    align-self: flex-start;
    text-decoration: none;
    background: var(--brand-navy);
    color: var(--brand-white);
    font-weight: 800;
    border-radius: var(--radius-lg);
    padding: 10px 16px;
    box-shadow: 0 8px 22px rgba(8,62,118,.16);
    transition: transform .15s ease, box-shadow .15s ease;
}

    .xp-card__btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 12px 28px rgba(8,62,118,.22);
    }
/* ===== FAQ (custom) ===== */
.faq {
    background: #fff;
    padding: 44px 0;
}

.faq__container {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 20px;
}

.faq__title {
    text-align: center;
    margin: 0 0 16px;
    color: #006bce;
    font-weight: 800;
}

.faq__list {
    display: grid;
    gap: 12px;
}

.faq-item {
    border: 1px solid #d6dbe3;
    border-radius: 14px;
    background: #f9fbfe;
    padding: 10px 14px;
}

.faq-item__q {
    cursor: pointer;
    font-weight: 800;
    color: #0c1a2a;
}

.faq-item__a {
    color: #42546a;
    padding-top: 8px;
    line-height: 1.65;
}


/* ===== Disclosures (white/silver/navy) ===== */
:root {
    --disc-navy: #006bce;
    --disc-white: #fff;
    --disc-silver-100: #f3f5f8;
    --disc-silver-300: #d6dbe3;
    --disc-text: #0c1a2a;
    --disc-muted: #42546a;
    --disc-radius: 16px;
    --disc-shadow: 0 10px 26px rgba(8,62,118,.08), 0 2px 8px rgba(8,62,118,.06);
}

.disc {
    background: var(--disc-silver-100);
    padding: 48px 0;
}

.disc__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.disc__title {
    margin: 0 0 22px;
    text-align: center;
    color: var(--disc-navy);
    font-weight: 800;
    letter-spacing: .2px;
    font-size: clamp(1.5rem,1.1vw+1rem,2rem);
}

.disc__grid {
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(3,1fr);
}

@media (max-width:1024px) {
    .disc__grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:640px) {
    .disc__grid {
        grid-template-columns: 1fr;
    }
}

.disc-card {
    background: var(--disc-white);
    border: 1px solid var(--disc-silver-300);
    border-radius: var(--disc-radius);
    box-shadow: var(--disc-shadow);
    padding: 18px 18px 16px;
}

.disc-card--accent {
    border-color: #a9c4df;
}

.disc-card__title {
    margin: 0 0 10px;
    color: var(--disc-text);
    font-weight: 800;
    font-size: 1.05rem;
}

.disc-list {
    margin: 0;
    padding-left: 18px;
    color: var(--disc-muted);
    line-height: 1.65;
}

.disc-link {
    color: var(--disc-navy);
    text-decoration: underline;
}

    .disc-link:hover {
        text-decoration: none;
    }



/* ===== Palette (white / silver / navy / black) ===== */
:root {
    --white: #ffffff;
    --navy-900: #0b1c33;
    --black: #0c1016;
    --white: #ffffff;
    --silver-050: #f5f7fb;
    --silver-100: #b4b4b4;
    --silver-300: #d6dbe3;
    --ink: #0c1a2a;
    --muted: #42546a;
    --radius-lg: 16px;
    --radius-md: 12px;
    --shadow-soft: 0 12px 28px rgba(8,62,118,.10), 0 2px 10px rgba(8,62,118,.06);
}

/* ===== Split layout ===== */
.split-cta {
    background: var(--black);
    color: var(--white);
    position: relative;
}

.split-cta__wrap {
    display: grid;
    grid-template-columns: minmax(320px, 520px) 1fr;
    min-height: 520px;
}

@media (max-width: 992px) {
    .split-cta__wrap {
        grid-template-columns: 1fr;
    }
}

/* Left text panel */
.split-cta__left {
    background: linear-gradient(180deg, var(--navy-900) 0%, #0f223b 100%);
    padding: 48px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.split-cta__title {
    margin: 0 0 18px;
    font-weight: 800;
    line-height: 1.05;
    font-size: clamp(2rem, 2.2vw + 1.6rem, 3.2rem);
    letter-spacing: .2px;
}

.split-cta__title-strong {
    color: var(--silver-100);
}

.split-cta__call {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 10px 0 18px;
}

.split-cta__icon {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: var(--silver-100);
    display: grid;
    place-items: center;
}

    .split-cta__icon img {
        width: 26px;
        height: 26px;
        object-fit: contain;
    }

.split-cta__small {
    display: block;
    color: var(--silver-300);
    font-weight: 700;
}

.split-cta__phone {
    color: var(--white);
    font-weight: 900;
    font-size: 1.25rem;
    text-decoration: none;
}

    .split-cta__phone:hover {
        text-decoration: underline;
    }

.split-cta__btn {
    align-self: flex-start;
    text-decoration: none;
    background: #006ed3;
    color: var(--white);
    font-weight: 800;
    padding: 12px 20px;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-soft);
    transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}

    .split-cta__btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 16px 28px rgba(8,62,118,.18);
    }

/* Right image */
.split-cta__right {
    position: relative;
}

    .split-cta__right img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

/* ===== Bottom contact ribbon ===== */
.contact-ribbon {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0;
    transform: translateY(-28px); /* lift ribbon slightly over the section bottom */
    box-shadow: var(--shadow-soft);
}

@media (max-width: 992px) {
    .contact-ribbon {
        grid-template-columns: 1fr;
        transform: none;
    }
}

.contact-ribbon__item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
}

.contact-ribbon__item--dark {
    background: #0d121a;
    color: var(--white);
}

.contact-ribbon__item--silver {
    background: var(--silver-100);
    color: var(--ink);
}

.contact-ribbon__circle {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,255);
    display: grid;
    place-items: center;
}

.contact-ribbon__circle--navy {
    background: var(--white);
}

.contact-ribbon__circle img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}

.contact-ribbon__meta {
    display: grid;
    gap: 2px;
}

.contact-ribbon__label {
    font-weight: 800;
    color: var(--white);
}

.contact-ribbon__label--dark {
    color: var(--ink);
}

.contact-ribbon__value {
    font-weight: 700;
}

.contact-ribbon__value--light {
    color: var(--white);
}

.contact-ribbon__value--dark {
    color: var(--ink);
}

.contact-ribbon__value:hover {
    text-decoration: underline;
}


/* Tablet (up to 992px) */
@media (max-width: 992px) {
    .split-cta__wrap {
        grid-template-columns: 1fr; /* stack text + image */
        min-height: auto;
    }

    .split-cta__left {
        padding: 32px 24px; /* reduce padding */
        text-align: center;
        align-items: center;
    }

    .split-cta__btn {
        align-self: center; /* center button instead of left */
    }

    .contact-ribbon {
        grid-template-columns: 1fr; /* stack ribbon items */
        transform: none;
    }

    .contact-ribbon__item {
        justify-content: center; /* center icons + text */
        text-align: center;
    }
}

/* Mobile (up to 768px) */
@media (max-width: 768px) {
    .split-cta__title {
        font-size: 1.8rem; /* scale down title */
        line-height: 1.2;
    }

    .split-cta__icon {
        width: 48px;
        height: 48px; /* smaller icon circle */
    }

        .split-cta__icon img {
            width: 20px;
            height: 20px;
        }

    .split-cta__phone {
        font-size: 1.1rem;
    }

    .split-cta__btn {
        font-size: 0.95rem;
        padding: 10px 16px;
    }

    .contact-ribbon__item {
        padding: 14px 16px; /* tighter spacing */
        flex-direction: column; /* stack icon over text */
        gap: 8px;
    }

    .contact-ribbon__circle {
        width: 40px;
        height: 40px;
    }
}

/* Small Mobile (up to 480px) */
@media (max-width: 480px) {
    .split-cta__title {
        font-size: 1.5rem;
    }

    .split-cta__left {
        padding: 24px 18px;
    }

    .split-cta__btn {
        width: 100%; /* full-width button */
        text-align: center;
    }

    .contact-ribbon__item {
        padding: 12px;
        font-size: 0.9rem;
    }

    .contact-ribbon__label,
    .contact-ribbon__value {
        font-size: 0.95rem;
    }
}


/* ===== Palette (white/silver/navy/black) ===== */
:root {
    --fleet-navy: #ffffff;
    --fleet-navyy: #0062bd;
    --fleet-black: #0c1016;
    --fleet-white: #ffffff;
    --fleet-silver-050: #005baf;
    --fleet-silver-200: #e5eaf1;
    --fleet-silver-300: #d6dbe3;
    --fleet-text: #0c1a2a;
    --fleet-muted: #ffffff;
    --fleet-radius: 18px;
    --fleet-shadow: 0 14px 28px rgba(8,62,118,.10), 0 4px 10px rgba(8,62,118,.06);
}

/* Section */
.fleet {
    background: var(--fleet-silver-050);
    padding: 56px 0;
}

.fleet__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.fleet__header {
    text-align: center;
    margin-bottom: 26px;
}

.fleet__title {
    margin: 0 0 6px;
    color: var(--fleet-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem, 1.3vw + 1.1rem, 2.2rem);
}

.fleet__subtitle {
    margin: 0 auto;
    color: var(--fleet-muted);
    max-width: 70ch;
}

/* Grid */
.fleet__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 26px;
}

@media (max-width: 1100px) {
    .fleet__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 860px) {
    .fleet__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .fleet__grid {
        grid-template-columns: 1fr;
    }
}

/* Card */
.fleet-card {
    background: var(--fleet-white);
    border: 1px solid var(--fleet-silver-300);
    border-radius: var(--fleet-radius);
    box-shadow: var(--fleet-shadow);
    padding: 18px 18px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform .18s ease, box-shadow .18s ease;
}

    .fleet-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 18px 32px rgba(8,62,118,.14);
    }

.fleet-card__badge {
    align-self: flex-start;
    background: var(--fleet-navy);
    color: var(--fleet-white);
    font-weight: 800;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: .85rem;
}

/* Image block — roomy for bigger images */
.fleet-card__media {
    width: 100%;
    height: 170px; /* adjust to 190–220px for larger visuals */
    margin: 12px 0 10px;
    background: linear-gradient(0deg, #eef2f6 0%, #ffffff 60%);
    border: 1px solid var(--fleet-silver-200);
    border-radius: 12px;
    display: grid;
    place-items: center;
    overflow: hidden;
}

    .fleet-card__media img {
        width: 92%;
        height: 92%;
        object-fit: contain; /* keep car proportions */
    }

/* Text + meta */
.fleet-card__name {
    margin: 8px 0 6px;
    font-weight: 900;
    color: var(--fleet-navy);
    font-size: 1.1rem;
}

.fleet-card__meta {
    list-style: none;
    padding: 0;
    margin: 0 0 14px;
    display: grid;
    gap: 4px;
    color: var(--fleet-text);
}

    .fleet-card__meta li strong {
        color: var(--fleet-text);
    }

/* Button */
.fleet-card__btn {
    display: inline-block;
    text-decoration: none;
    background: var(--fleet-navyy);
    color: var(--fleet-white);
    font-weight: 800;
    padding: 10px 16px;
    border-radius: 12px;
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
    transition: transform .15s ease, box-shadow .15s ease;
}

    .fleet-card__btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

/* Footer link + disclaimer */
.fleet__footer {
    text-align: right;
    margin-top: 10px;
}

.fleet__link {
    color: var(--fleet-navy);
    font-weight: 800;
    text-decoration: none;
}

    .fleet__link:hover {
        text-decoration: underline;
    }

.fleet__disclaimer {
    margin: 16px 0 0;
    color: var(--fleet-muted);
    font-size: .95rem;
}
/* ===== Theme tokens (white / silver / navy / black) ===== */
:root {
    --ap-navy: #006bce;
    --ap-black: #0c1016;
    --ap-white: #ffffff;
    --ap-silver-050: #edf3f9; /* page tint */
    --ap-silver-100: #f4f7fb; /* card inner contrast */
    --ap-silver-300: #d6dbe3; /* borders */
    --ap-text: #0c1a2a;
    --ap-muted: #42546a;
    --ap-radius-xl: 22px;
    --ap-radius-lg: 18px;
    --ap-shadow: 0 16px 36px rgba(8,62,118,.10), 0 4px 12px rgba(8,62,118,.06);
}

/* Section wrapper */
.ap {
    background: var(--ap-silver-050);
    padding: 52px 0 60px;
}

.ap__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Card layout */
.ap-card {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr; /* image bigger, text slightly smaller */
    gap: 26px;
    background: var(--ap-white);
    border: 1px solid var(--ap-silver-300);
    border-radius: var(--ap-radius-xl);
    box-shadow: var(--ap-shadow);
    padding: 18px;
    margin: 0 0 28px;
    align-items: center;
}

    /* Alternate image/text per row (like screenshot) */
    .ap-card:nth-child(even) {
        grid-template-columns: 0.9fr 1.1fr;
    }

        .ap-card:nth-child(even) .ap-card__media {
            order: 2;
        }

        .ap-card:nth-child(even) .ap-card__body {
            order: 1;
        }

/* Media */
.ap-card__media {
    border-radius: var(--ap-radius-lg);
    overflow: hidden;
    background: var(--ap-silver-100);
    box-shadow: inset 0 0 0 1px var(--ap-silver-300);
}

    .ap-card__media img {
        width: 100%;
        height: 100%;
        max-height: 300px; /* adjust to 320–360px if you want taller images */
        object-fit: cover;
        display: block;
    }

/* Body */
.ap-card__body {
    padding: 10px 16px;
}

.ap-card__kicker {
    font-weight: 900;
    color: var(--ap-navy);
    letter-spacing: .3px;
    margin-bottom: 6px;
    font-size: .9rem;
    text-transform: uppercase;
}

.ap-card__title {
    margin: 0 0 10px;
    color: var(--ap-text);
    font-size: clamp(1.3rem, 1.2vw + 1rem, 1.65rem);
    font-weight: 900;
    letter-spacing: .2px;
}

.ap-card__text {
    margin: 0 0 10px;
    color: var(--ap-muted);
    line-height: 1.7;
}

.ap-list {
    margin: 0 0 14px 18px;
    color: var(--ap-text);
    line-height: 1.65;
}

    .ap-list li + li {
        margin-top: 4px;
    }

/* Buttons */
.ap-card__cta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.ap-btn {
    text-decoration: none;
    font-weight: 800;
    padding: 10px 16px;
    border-radius: 12px;
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}

.ap-btn--primary {
    background: var(--ap-navy);
    color: var(--ap-white);
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
}

    .ap-btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

.ap-btn--ghost {
    background: transparent;
    color: var(--ap-navy);
    border: 1px solid var(--ap-navy);
}

    .ap-btn--ghost:hover {
        background: var(--ap-navy);
        color: var(--ap-white);
    }

/* Disclosure */
.ap__disclosure {
    margin: 4px 8px 0;
    color: var(--ap-muted);
    font-size: .95rem;
}

/* Responsive */
@media (max-width: 992px) {
    .ap-card,
    .ap-card:nth-child(even) {
        grid-template-columns: 1fr;
    }

        .ap-card:nth-child(even) .ap-card__media {
            order: 0;
        }

        .ap-card:nth-child(even) .ap-card__body {
            order: 0;
        }

    .ap-card__media img {
        max-height: 260px;
    }
}

@media (max-width: 560px) {
    .ap-card {
        padding: 14px;
    }

    .ap-card__media img {
        max-height: 220px;
    }
}

.ap__header {
    text-align: center;
    margin: 0 0 24px;
}

.ap__title {
    margin: 0;
    color: var(--ap-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem, 1.2vw + 1.2rem, 2.2rem);
}

.ap__subtitle {
    margin: 6px auto 0;
    max-width: 72ch;
    color: var(--ap-muted);
    line-height: 1.65;
    font-size: clamp(1rem, .25vw + .95rem, 1.1rem);
}



/* ===== About section — white / silver / navy / black (custom classes only) ===== */
:root {
    --ax-navy: #006bce;
    --ax-black: #0c1016;
    --ax-white: #ffffff;
    --ax-silver-050: #f5f7fb;
    --ax-silver-100: #eef2f6;
    --ax-silver-300: #d6dbe3;
    --ax-text: #0c1a2a;
    --ax-muted: #42546a;
    --ax-radius-xl: 22px;
    --ax-radius-lg: 16px;
    --ax-shadow: 0 16px 36px rgba(8,62,118,.10), 0 4px 12px rgba(8,62,118,.06);
}

.aboutx {
    background: var(--ax-silver-050);
    padding: 60px 0;
}

.aboutx__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.aboutx__grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr; /* text larger than image */
    gap: 28px;
    align-items: center;
}

@media (max-width: 992px) {
    .aboutx__grid {
        grid-template-columns: 1fr;
    }
}

/* Text block */
.aboutx__title {
    margin: 0 0 10px;
    color: var(--ax-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem, 1.2vw + 1.2rem, 2.2rem);
}

.aboutx__lead {
    margin: 6px 0 12px;
    color: var(--ax-muted);
    line-height: 1.7;
    font-size: clamp(1rem, .3vw + .95rem, 1.1rem);
}

.aboutx__list {
    margin: 0 0 16px 18px;
    color: var(--ax-text);
    line-height: 1.7;
}

    .aboutx__list li + li {
        margin-top: 6px;
    }

/* Buttons */
.aboutx__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 8px 0 14px;
}

.aboutx__btn {
    text-decoration: none;
    font-weight: 800;
    padding: 12px 18px;
    border-radius: 12px;
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

.aboutx__btn--primary {
    background: var(--ax-navy);
    color: var(--ax-white);
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
}

    .aboutx__btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

.aboutx__btn--ghost {
    background: transparent;
    color: var(--ax-navy);
    border: 1px solid var(--ax-navy);
}

    .aboutx__btn--ghost:hover {
        background: var(--ax-navy);
        color: var(--ax-white);
    }

.aboutx__btn--call {
    background: var(--ax-white);
    color: var(--ax-navy);
    border: 1px solid var(--ax-silver-300);
}

    .aboutx__btn--call:hover {
        background: var(--ax-silver-100);
    }

/* Badges */
.aboutx-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 6px 0 0;
}

.aboutx-badge {
    background: var(--ax-white);
    color: var(--ax-text);
    border: 1px solid var(--ax-silver-300);
    border-radius: 999px;
    padding: 6px 10px;
    font-weight: 800;
    font-size: .9rem;
}

/* Note */
.aboutx__note {
    margin: 12px 0 0;
    color: var(--ax-muted);
    font-size: .95rem;
}

/* Image block */
.aboutx__media {
    background: var(--ax-white);
    border: 1px solid var(--ax-silver-300);
    border-radius: var(--ax-radius-xl);
    box-shadow: var(--ax-shadow);
    overflow: hidden;
    padding: 10px;
}

    .aboutx__media img {
        border-radius: var(--ax-radius-lg);
        display: block;
        ' height: clamp(260px, 32vw, 480px); width: 100%;
        max-height: none; /* let clamp control it */
        object-fit: cover;
    }

/* ===== Mini Disclosures styles (white/silver/navy) ===== */
:root {
    --mini-navy: #006bce;
    --mini-white: #fff;
    --mini-s100: #f3f5f8;
    --mini-s300: #d6dbe3;
    --mini-text: #0c1a2a;
    --mini-muted: #42546a;
    --mini-radius: 14px;
}

.disc-mini {
    background: var(--mini-s100);
    padding: 32px 0;
}

.disc-mini__container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 18px;
}

.disc-mini__title {
    margin: 0 0 10px;
    color: var(--mini-navy);
    font-weight: 900;
    font-size: 1.4rem;
}

/* Improved list styling */
.disc-mini__list {
    background: var(--mini-white);
    border: 1px solid var(--mini-s300);
    border-radius: var(--mini-radius);
    padding: 16px 18px;
    margin: 0;
    box-shadow: 0 8px 18px rgba(8,62,118,.08);
    /* layout & spacing */
    list-style: none; /* remove default bullets */
    display: grid;
    gap: 10px; /* space between items */
    color: var(--mini-muted);
    line-height: 1.65;
}

    /* custom round bullets */
    .disc-mini__list li {
        position: relative;
        padding-left: 22px; /* room for the dot */
    }

        .disc-mini__list li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0.9em; /* vertically center the dot */
            transform: translateY(-50%);
            width: 9px;
            height: 9px;
            border-radius: 50%;
            background: var(--mini-navy);
            box-shadow: 0 0 0 2px rgba(8,62,118,.12); /* subtle ring for clarity */
        }

        /* make strong text pop a bit more */
        .disc-mini__list li strong {
            color: var(--mini-text);
        }

/* links row */
.disc-mini__links {
    margin-top: 12px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.disc-mini__link {
    color: var(--mini-navy);
    font-weight: 800;
    text-decoration: underline;
}

    .disc-mini__link:hover {
        text-decoration: none;
    }

/* OPTIONAL: 2-column layout on wider screens
   Add class "disc-mini__list--two-col" to your <ul> to enable */
@media (min-width: 900px) {
    .disc-mini__list--two-col {
        grid-template-columns: 1fr 1fr;
        column-gap: 24px;
    }
}


/* --- Reviews v2: tight, aligned, equal-height cards --- */


/* --- Reviews v2: tight, aligned, equal-height cards (FIXED) --- */

/* local reset just for this block */
.rv2, .rv2 * {
    box-sizing: border-box;
}

    .rv2 img {
        display: block;
        max-width: 100%;
        height: auto;
    }

    .rv2 blockquote {
        margin: 0;
        padding: 0;
    }

/* wrapper */
.rv2 {
    background: #a9a9a9;
    padding: 54px 0;
}

.rv2__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.rv2__header {
    text-align: center;
    margin-bottom: 18px;
}

.rv2__title {
    margin: 0 0 4px;
    color: #006bce;
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem,1.4vw + 1rem,2.2rem);
}

.rv2__subtitle {
    margin: 0;
    color: #ffffff;
}

/* GRID: stretch children to same height */
.rv2__grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(4, minmax(0,1fr));
    align-items: stretch; /* equal height cards */
    margin-top: 16px;
}

@media (max-width:1200px) {
    .rv2__grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }
}

@media (max-width:900px) {
    .rv2__grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width:560px) {
    .rv2__grid {
        grid-template-columns: 1fr;
    }
}

/* CARD */
.rv2-card {
    background: #fff;
    border: 1px solid #d6dbe3;
    border-radius: 18px;
    box-shadow: 0 14px 30px rgba(8,62,118,.08), 0 2px 8px rgba(8,62,118,.06);
    padding: 16px;
    position: relative;
    display: flex; /* column flexbox: head -> text -> stars */
    flex-direction: column;
    min-height: 220px;
}

    /* remove the old top accent so it can't clash with the avatar */
    .rv2-card::before {
        content: none;
    }

/* HEAD = avatar | info | date (right) */
.rv2-card__head {
    display: grid;
    grid-template-columns: 56px 1fr auto;
    gap: 12px;
    align-items: center;
    margin-top: 0;
}

/* avatar: rounded-square (change radius to taste) */
.rv2-card__avatar {
    width: 56px;
    height: 56px;
    border-radius: 10px; /* 0 = square, 10px = rounded-square */
    object-fit: cover;
    border: 1px solid #e6ebf2;
    overflow: hidden;
}

/* name + tag */
.rv2-card__who {
    min-width: 0;
}

.rv2-card__name {
    font-weight: 900;
    color: #0c1a2a;
    line-height: 1.2;
    font-size: 1.05rem;
    margin: 0;
}

.rv2-card__tag {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #000000;
    font-size: .80rem;
    margin-top: 2px;
}

/* verified dot */
.rv2-verified {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #2ecc71;
    box-shadow: 0 0 0 2px rgba(46,204,113,.25);
}

/* date sticks to the right on one line */
.rv2-card__date {
    justify-self: end;
    color: #42546a;
    font-size: .95rem;
    white-space: nowrap;
}

/* BODY: text grows to push stars down */
.rv2-card__text {
    margin: 12px 0 0;
    color: #0c1a2a;
    line-height: 1.7;
    font-size: 1.02rem;
    flex: 1 1 auto;
}

/* STARS pinned to bottom */
.rv2-card__stars {
    margin-top: 12px;
    color: #f4b400;
    letter-spacing: 3px;
    font-size: 1.1rem;
    flex: 0 0 auto;
}

.rv2-half {
    background: linear-gradient(90deg,#f4b400 50%, #cfd6e0 50%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.rv2-off {
    color: #cfd6e0;
}

/* CTA + note */
.rv2__cta {
    margin: 20px 0 6px;
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.rv2__btn {
    text-decoration: none;
    font-weight: 800;
    padding: 12px 18px;
    border-radius: 12px;
    background: #006bce;
    color: #fff;
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
    transition: transform .15s ease, box-shadow .15s ease;
}

    .rv2__btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

.rv2__btn--ghost {
    background: transparent;
    color: #006bce;
    border: 1px solid #006bce;
}

    .rv2__btn--ghost:hover {
        background: #006bce;
        color: #fff;
    }

.rv2__note {
    text-align: center;
    color: #ffffff;
    font-size: .95rem;
    margin: 6px 0 0;
}

/* ===== Why Choose Us v2 (icons + new layout) ===== */
:root {
    --why2-navy: #006bce;
    --why2-white: #fff;
    --why2-silver-50: #f5f8fc;
    --why2-silver-200: #e6ebf2;
    --why2-silver-300: #d6dbe3;
    --why2-text: #0c1a2a;
    --why2-muted: #42546a;
    --why2-radius: 18px;
    --why2-shadow: 0 14px 30px rgba(8,62,118,.08), 0 2px 8px rgba(8,62,118,.06);
}

.why2 {
    background: var(--why2-silver-50);
    padding: 56px 0;
}

.why2__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.why2__header {
    text-align: center;
    margin-bottom: 18px;
}

.why2__title {
    margin: 0 0 6px;
    color: var(--why2-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem,1.4vw + 1rem,2.2rem);
}

.why2__subtitle {
    margin: 0;
    color: var(--why2-muted);
}

.why2__grid {
    margin-top: 18px;
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0,1fr));
}

@media (max-width:992px) {
    .why2__grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width:560px) {
    .why2__grid {
        grid-template-columns: 1fr;
    }
}

.why2-item {
    background: var(--why2-white);
    border: 1px solid var(--why2-silver-300);
    border-radius: var(--why2-radius);
    box-shadow: var(--why2-shadow);
    padding: 16px;
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 14px;
    align-items: flex-start;
    min-height: 160px;
}

/* Icon badge */
.why2-item__icon {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    background: radial-gradient(60% 60% at 30% 30%, rgba(8,62,118,.12), transparent 60%), var(--why2-silver-50);
    border: 1px solid var(--why2-silver-200);
    display: grid;
    place-items: center;
    color: var(--why2-navy);
}

    .why2-item__icon svg {
        width: 30px;
        height: 30px;
    }

/* Texts */
.why2-item__title {
    margin: 2px 0 6px;
    font-weight: 900;
    color: var(--why2-text);
    font-size: 1.05rem;
}

.why2-item__text {
    margin: 0;
    color: var(--why2-muted);
    line-height: 1.7;
}

.why2__cta {
    margin: 22px 0 8px;
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.why2__btn {
    text-decoration: none;
    font-weight: 800;
    padding: 12px 18px;
    border-radius: 12px;
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}

.why2__btn--primary {
    background: var(--why2-navy);
    color: #fff;
}

    .why2__btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

.why2__btn--ghost {
    background: transparent;
    color: var(--why2-navy);
    border: 1px solid var(--why2-navy);
}

    .why2__btn--ghost:hover {
        background: var(--why2-navy);
        color: #fff;
    }

.why2__note {
    text-align: center;
    color: var(--why2-muted);
    font-size: .95rem;
    margin: 8px auto 0;
    max-width: 980px;
}
/* ===== Payment Methods (white/silver/navy, custom classes) ===== */
:root {
    --pay-navy: #006bce;
    --pay-white: #fff;
    --pay-s50: #f5f8fc;
    --pay-s200: #e6ebf2;
    --pay-s300: #d6dbe3;
    --pay-text: #0c1a2a;
    --pay-muted: #42546a;
    --pay-radius: 18px;
    --pay-shadow: 0 14px 30px rgba(8,62,118,.08), 0 2px 8px rgba(8,62,118,.06);
}

.pay {
    background: var(--pay-s50);
    padding: 56px 0;
}

.pay__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.pay__header {
    text-align: center;
    margin-bottom: 18px;
}

.pay__title {
    margin: 0 0 6px;
    color: var(--pay-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem,1.4vw + 1rem,2.2rem);
}

.pay__subtitle {
    margin: 0;
    color: var(--pay-muted);
}

.pay__grid {
    margin-top: 18px;
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0,1fr));
}

@media (max-width:992px) {
    .pay__grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width:560px) {
    .pay__grid {
        grid-template-columns: 1fr;
    }
}

.pay-item {
    background: var(--pay-white);
    border: 1px solid var(--pay-s300);
    border-radius: var(--pay-radius);
    box-shadow: var(--pay-shadow);
    padding: 16px;
    display: grid;
    gap: 14px;
    grid-template-columns: 68px 1fr;
    align-items: flex-start;
    min-height: 160px;
}

.pay-item__icon {
    width: 68px;
    height: 68px;
    border-radius: 14px;
    background: radial-gradient(60% 60% at 30% 30%, rgba(8,62,118,.12), transparent 60%), var(--pay-s50);
    border: 1px solid var(--pay-s200);
    display: grid;
    place-items: center;
    color: var(--pay-navy);
}

    .pay-item__icon svg {
        width: 32px;
        height: 32px;
    }

.pay-item__title {
    margin: 2px 0 6px;
    font-weight: 900;
    color: var(--pay-text);
    font-size: 1.06rem;
}

.pay-item__text {
    margin: 0;
    color: var(--pay-muted);
    line-height: 1.7;
}

.pay-badges {
    list-style: none;
    padding: 0;
    margin: 10px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pay-badge {
    background: var(--pay-s50);
    color: var(--pay-text);
    border: 1px solid var(--pay-s300);
    border-radius: 999px;
    padding: 6px 10px;
    font-weight: 800;
    font-size: .9rem;
}

.pay__note {
    margin: 16px auto 0;
    max-width: 980px;
    text-align: center;
    color: var(--pay-muted);
    font-size: .95rem;
}

.pay__link {
    color: var(--pay-navy);
    font-weight: 800;
    text-decoration: underline;
}

    .pay__link:hover {
        text-decoration: none;
    }

/* ===== Pro Footer styles ===== */
:root {
    --pf-navy: #006bce;
    --pf-ink: #0c1a2a;
    --pf-s50: #f5f8fc;
    --pf-s100: #eff3f8;
    --pf-s200: #e4eaf2;
    --pf-s300: #d6dbe3;
    --pf-white: #ffffff;
}

.pf {
    background: var(--pf-s50);
    color: var(--pf-ink);
    border-top: 1px solid var(--pf-s200);
}

.pf__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 36px 22px 14px;
}

/* Grid */
.pf__grid {
    display: grid;
    gap: 28px 34px;
    grid-template-columns: 1.1fr 1.1fr 1fr 1.2fr;
}

@media (max-width:1100px) {
    .pf__grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:620px) {
    .pf__grid {
        grid-template-columns: 1fr;
    }
}

/* Column */
.pf-col__title {
    margin: 0 0 10px;
    color: var(--pf-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: 1.12rem;
    border-bottom: 2px solid var(--pf-s200);
    padding-bottom: 8px;
}

/* Lists */
.pf-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

    .pf-list li {
        border-bottom: 1px solid var(--pf-s200);
    }

        .pf-list li:last-child {
            border-bottom: none;
        }

    .pf-list a {
        display: block;
        padding: 10px 0;
        color: var(--pf-ink);
        text-decoration: none;
    }

        .pf-list a:hover {
            color: var(--pf-navy);
            text-decoration: underline;
        }

/* Contact */
.pf-contact {
    margin: 4px 0 12px;
}

.pf-contact__row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 8px;
}

.pf-ico {
    width: 18px;
    height: 18px;
    color: var(--pf-navy);
    display: inline-grid;
    place-items: center;
}

    .pf-ico svg {
        width: 18px;
        height: 18px;
    }

.pf-link {
    color: var(--pf-ink);
    text-decoration: none;
    font-weight: 700;
}

    .pf-link:hover {
        color: var(--pf-navy);
        text-decoration: underline;
    }

/* Map (responsive ratio) */
.pf-map {
    margin-top: 10px;
    border: 1px solid var(--pf-s300);
    border-radius: 12px;
    overflow: hidden;
    background: #eef2f7;
}

.pf-map__frame {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
}

    .pf-map__frame iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

/* Legal row */
.pf-legal {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    padding: 14px 0 8px;
    color: #516479;
    font-size: .98rem;
}

.pf-legal__link {
    color: var(--pf-ink);
    text-decoration: none;
    font-weight: 800;
}

    .pf-legal__link:hover {
        color: var(--pf-navy);
        text-decoration: underline;
    }

.pf-legal__sep {
    width: 1px;
    height: 16px;
    background: var(--pf-s300);
    display: inline-block;
}

/* Bottom bar */
.pf-bottom {
    background: var(--pf-navy);
    color: #fff;
}

.pf-bottom__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 12px 22px;
    text-align: center;
    font-weight: 800;
    letter-spacing: .2px;
}

/* A11y helper */
.pf-sr {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}







:root {
    --heading: #1d69b4; /* blue titles like screenshot */
    --accent: #1d69b4; /* purple squares */
    --text: #1e2233;
    --muted: #6d7285;
    --bar: #1D69B4; /* bottom bar background */
}

.site-footer {
    background: #fff;
    color: var(--text);
}

.footer-title {
    color: var(--heading);
    font-weight: 700;
    letter-spacing: .3px;
}

.footer-links li {
    margin: .5rem 0;
}

.footer-links a {
    color: var(--text);
    text-decoration: none;
    font-weight: 600;
}

    .footer-links a:hover {
        color: var(--heading);
    }

/* Social squares */
.social-square {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--accent);
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    transition: transform .15s ease, opacity .15s ease;
}

    .social-square:hover {
        transform: translateY(-2px);
        opacity: .9;
    }

/* Contacts */
.contact-item {
    display: flex;
    gap: .8rem;
    align-items: center;
}

.icon-box {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    background: var(--accent);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex: 0 0 44px;
}

.contact-text small {
    color: var(--muted);
    display: block;
    line-height: 1.1;
}

.contact-text a {
    color: var(--text);
    text-decoration: none;
    font-weight: 700;
    line-height: 1.3;
}

    .contact-text a:hover {
        color: var(--heading);
    }

/* Bottom bar */
.footer-bar {
    background: var(--bar);
}

    .footer-bar .designer {
        color: var(--heading);
        text-decoration: none;
    }

        .footer-bar .designer:hover {
            text-decoration: underline;
        }

    /* Dark footer bar with white text */
    .footer-bar a {
        color: #fff;
        text-decoration: none;
    }

        .footer-bar a.designer:hover {
            color: #ffd000;
        }
/* optional yellow hover */



/* Responsive tweaks */
@media (max-width: 991.98px) {
    .contact-item {
        align-items: flex-start;
    }
}


















/* ===== About Page v2 (ab2) – white / silver / navy ===== */
:root {
    --ab2-navy: #006bce;
    --ab2-navy-2: #0a4b87;
    --ab2-ink: #0c1a2a;
    --ab2-s50: #f5f8fc;
    --ab2-s100: #eef3f8;
    --ab2-s200: #e2e8f0;
    --ab2-s300: #d6dbe3;
    --ab2-white: #fff;
    --ab2-radius: 18px;
    --ab2-shadow: 0 14px 28px rgba(8,62,118,.10), 0 2px 8px rgba(8,62,118,.06);
}

/* Generic */
.ab2 {
    color: var(--ab2-ink);
}

    .ab2 .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 22px;
    }

    .ab2 h1, .ab2 h2 {
        letter-spacing: .2px;
    }

    .ab2 .lead {
        color: #42546a;
    }

    /* Buttons */
    .ab2 .btn {
        display: inline-flex;
        align-items: center;
        gap: .6rem;
        font-weight: 800;
        text-decoration: none;
        padding: .85rem 1.2rem;
        border-radius: 12px;
        transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
    }

    .ab2 .btn-primary {
        background: var(--ab2-navy);
        color: #fff;
        box-shadow: 0 10px 22px rgba(8,62,118,.18);
    }

        .ab2 .btn-primary:hover {
            transform: translateY(-1px);
            box-shadow: 0 14px 26px rgba(8,62,118,.24);
        }

    .ab2 .btn-ghost {
        background: transparent;
        color: var(--ab2-navy);
        border: 1px solid var(--ab2-navy);
    }

        .ab2 .btn-ghost:hover {
            background: var(--ab2-navy);
            color: #fff;
        }

/* HERO */
.ab2-hero {
    position: relative;
    background: #0b1b2a;
    color: #fff;
    overflow: hidden;
}

.ab2-hero__wrap {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 28px;
    align-items: center;
}

@media (max-width:980px) {
    .ab2-hero__wrap {
        grid-template-columns: 1fr;
    }
}

.ab2-hero__text {
    padding: 64px 0;
}

.ab2-hero__title {
    margin: 0 0 10px;
    font-weight: 900;
    font-size: clamp(1.9rem,1.2vw + 1.6rem,2.6rem);
}

.ab2-hero__lead {
    color: #e6eef7;
    max-width: 62ch;
    margin: 0 0 16px;
}

.ab2-hero__ctas {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 6px;
}

.ab2-hero__media {
    position: relative;
    height: 100%;
    min-height: 320px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: var(--ab2-shadow);
}

    .ab2-hero__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        filter: brightness(.88) contrast(1.05) saturate(1.02);
        margin-top: 19px;
        border-radius: 13px;
    }

.ab2-hero__badge {
    position: absolute;
    left: 14px;
    bottom: 14px;
    background: rgba(255,255,255,.9);
    color: var(--ab2-ink);
    padding: .55rem .75rem;
    border-radius: 12px;
    font-weight: 800;
}

/* STORY */
.ab2-story {
    background: var(--ab2-s50);
    padding: 54px 0;
}

.ab2-section__title {
    margin: 0 0 6px;
    color: var(--ab2-navy);
    font-weight: 900;
    font-size: clamp(1.4rem,1vw + 1rem,2rem);
}

.ab2-cols {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 26px;
    align-items: start;
}

@media (max-width:980px) {
    .ab2-cols {
        grid-template-columns: 1fr;
    }
}

.ab2-card {
    background: var(--ab2-white);
    border: 1px solid var(--ab2-s300);
    border-radius: var(--ab2-radius);
    padding: 18px;
    box-shadow: var(--ab2-shadow);
}

.ab2-img-card {
    border-radius: var(--ab2-radius);
    overflow: hidden;
    box-shadow: var(--ab2-shadow);
}

    .ab2-img-card img {
        width: 100%;
        display: block;
        object-fit: cover;
    }

/* VALUES */
.ab2-values {
    padding: 48px 0;
}

.ab2-grid-3 {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3,minmax(0,1fr));
}

@media (max-width:980px) {
    .ab2-grid-3 {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:620px) {
    .ab2-grid-3 {
        grid-template-columns: 1fr;
    }
}

.ab2-value {
    background: var(--ab2-white);
    border: 1px solid var(--ab2-s300);
    border-radius: 16px;
    padding: 16px;
    box-shadow: var(--ab2-shadow);
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 12px;
    align-items: flex-start;
}

.ab2-ico {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    border: 1px solid var(--ab2-s200);
    background: radial-gradient(60% 60% at 30% 30%, rgba(8,62,118,.12), transparent 60%), var(--ab2-s50);
    display: grid;
    place-items: center;
    color: var(--ab2-navy);
}

    .ab2-ico svg {
        width: 28px;
        height: 28px;
    }

.ab2-value h3 {
    margin: .15rem 0 6px;
    font-weight: 900;
    color: var(--ab2-ink);
    font-size: 1.05rem;
}

.ab2-value p {
    margin: 0;
    color: #42546a;
    line-height: 1.7;
}

/* IMAGE CTAs (image buttons) */
.ab2-tiles {
    padding: 48px 0;
    background: var(--ab2-s50);
}

.ab2-tiles__grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4,minmax(0,1fr));
}

@media (max-width:1100px) {
    .ab2-tiles__grid {
        grid-template-columns: repeat(3,1fr);
    }
}

@media (max-width:740px) {
    .ab2-tiles__grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:520px) {
    .ab2-tiles__grid {
        grid-template-columns: 1fr;
    }
}

.ab2-tile {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    display: block;
    color: #fff;
    text-decoration: none;
    box-shadow: var(--ab2-shadow);
}

    .ab2-tile img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: brightness(.82);
    }

.ab2-tile__label {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    background: rgba(8,62,118,.86);
    border: 1px solid rgba(255,255,255,.16);
    padding: .55rem .75rem;
    border-radius: 12px;
    font-weight: 900;
    text-align: center;
}

/* FLEET */
.ab2-fleet {
    padding: 48px 0;
}

.ab2-fleet__grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(4,minmax(0,1fr));
}

@media (max-width:1100px) {
    .ab2-fleet__grid {
        grid-template-columns: repeat(3,1fr);
    }
}

@media (max-width:820px) {
    .ab2-fleet__grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:520px) {
    .ab2-fleet__grid {
        grid-template-columns: 1fr;
    }
}

.ab2-fleet__card {
    background: #0e1730;
    color: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--ab2-shadow);
}

.ab2-fleet__img {
    height: 180px;
    background: #0b0f1f;
}

    .ab2-fleet__img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.ab2-fleet__body {
    padding: 12px 14px;
}

.ab2-pill {
    display: inline-block;
    background: #ffe082;
    color: #181818;
    padding: .25rem .5rem;
    border-radius: 999px;
    font-weight: 900;
    font-size: .85rem;
}

/* STEPS */
.ab2-steps {
    padding: 48px 0;
    background: var(--ab2-s50);
}

.ab2-steps__grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3,1fr);
}

@media (max-width:820px) {
    .ab2-steps__grid {
        grid-template-columns: 1fr;
    }
}

.ab2-step {
    background: var(--ab2-white);
    border: 1px solid var(--ab2-s300);
    border-radius: 16px;
    padding: 16px;
    box-shadow: var(--ab2-shadow);
}

    .ab2-step h3 {
        margin: 0 0 6px;
        font-weight: 900;
        color: var(--ab2-ink);
    }

/* TEXT BLOCKS */
.ab2-text {
    padding: 44px 0;
}

    .ab2-text .ab2-card p {
        margin: .3rem 0;
        color: #42546a;
        line-height: 1.8;
    }

/* FAQ */
.ab2-faq {
    padding: 46px 0;
    background: var(--ab2-s50);
}

    .ab2-faq details {
        background: var(--ab2-white);
        border: 1px solid var(--ab2-s300);
        border-radius: 12px;
        padding: 12px 14px;
        box-shadow: var(--ab2-shadow);
    }

        .ab2-faq details + details {
            margin-top: 10px;
        }

    .ab2-faq summary {
        font-weight: 900;
        color: var(--ab2-ink);
        cursor: pointer;
    }

    .ab2-faq p {
        margin: .6rem 0 0;
        color: #42546a;
    }

/* Note/Disclosures */
.ab2-note {
    margin-top: 12px;
    color: #42546a;
    font-size: .95rem;
    background: var(--ab2-s100);
    border: 1px solid var(--ab2-s300);
    border-radius: 12px;
    padding: 12px;
    box-shadow: var(--ab2-shadow);
}




.ap-btn--d {
    background: #ffffff;
    color: #000000;
    border: 1px solid #ffffff;
}

    .ap-btn--d:hover {
        background: var(--ap-navy);
        color: var(--ap-white);
    }


/* ===== About (Silver / White / Navy) ===== */
:root {
    --abt-navy: #006bce; /* navy blue */
    --abt-navy-2: #0a4b87; /* secondary navy */
    --abt-ink: #0c1a2a; /* dark text */
    --abt-s50: #f5f8fc; /* light silver background */
    --abt-s200: #e4eaf2; /* borders */
    --abt-s300: #d6dbe3;
    --abt-white: #fff;
    --abt-radius: 18px;
    --abt-shadow: 0 14px 28px rgba(8,62,118,.10), 0 2px 8px rgba(8,62,118,.06);
}

.abt {
    background: var(--abt-s50);
    color: var(--abt-ink);
}

    .abt .container {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0 22px;
    }

/* Main block */
.abt-plate {
    background: var(--abt-white);
    border: 1px solid var(--abt-s300);
    border-radius: var(--abt-radius);
    box-shadow: var(--abt-shadow);
    padding: 28px 24px;
    margin: 32px auto;
}

/* Headings */
.abt-title {
    margin: 10px 0 4px;
    text-align: center;
    font-weight: 900;
    color: var(--abt-navy);
    letter-spacing: .2px;
    font-size: clamp(1.4rem,1.2vw + 1.2rem,2rem);
}

.abt-subtitle {
    margin: 0 0 18px;
    text-align: center;
    color: var(--abt-navy-2);
    font-weight: 800;
    font-size: clamp(1.1rem,.9vw + 1rem,1.4rem);
}

/* Body copy */
.abt-text {
    max-width: 88ch;
    margin: 0 auto;
}

    .abt-text p {
        margin: .8rem 0;
        line-height: 1.85;
    }

    .abt-text b {
        color: var(--abt-ink);
    }

/* Mission / Vision row */
.abt-row {
    display: grid;
    gap: 18px;
    grid-template-columns: 1fr 1fr;
    margin: 26px 0 8px;
}

@media (max-width:820px) {
    .abt-row {
        grid-template-columns: 1fr;
    }
}

.abt-card {
    background: var(--abt-white);
    border: 1px solid var(--abt-s200);
    border-radius: 16px;
    box-shadow: var(--abt-shadow);
    padding: 22px 18px;
    text-align: center;
}

.abt-ico {
    width: 56px;
    height: 56px;
    margin: 0 auto 10px;
    border-radius: 12px;
    border: 1px solid var(--abt-s200);
    background: radial-gradient(60% 60% at 30% 30%, rgba(8,62,118,.12), transparent 60%), var(--abt-s50);
    display: grid;
    place-items: center;
    color: var(--abt-navy);
}

    .abt-ico svg {
        width: 28px;
        height: 28px;
    }

.abt-card h3 {
    margin: 0 0 6px;
    color: var(--abt-navy);
    font-weight: 900;
}

.abt-card p {
    margin: 0;
    color: #42546a;
    line-height: 1.75;
}

/* Small note/disclosure */
.abt-note {
    max-width: 88ch;
    margin: 18px auto 0;
    background: var(--abt-s50);
    border: 1px solid var(--abt-s300);
    border-radius: 12px;
    padding: 12px 14px;
    color: #42546a;
    font-size: .95rem;
}

/* Link styling inside */
.abt a {
    color: var(--abt-navy-2);
    font-weight: 800;
    text-decoration: underline;
}

    .abt a:hover {
        text-decoration: none;
    }

/* ===== Contact Page (ct2) — white / silver / navy ===== */
:root {
    --ct2-navy: #006bce;
    --ct2-navy-2: #0a4b87;
    --ct2-ink: #0c1a2a;
    --ct2-muted: #42546a;
    --ct2-s50: #f5f8fc;
    --ct2-s200: #e4eaf2;
    --ct2-s300: #d6dbe3;
    --ct2-white: #fff;
    --ct2-radius: 16px;
    --ct2-shadow: 0 14px 28px rgba(8,62,118,.10), 0 2px 8px rgba(8,62,118,.06);
}

/* base */
.ct2 {
    color: var(--ct2-ink);
}

    .ct2 .container {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0 22px;
    }

    .ct2 h1, .ct2 h2 {
        letter-spacing: .2px;
    }

/* HERO */
.ct2-hero {
    background: var(--ct2-s50);
    border-bottom: 1px solid var(--ct2-s200);
}

.ct2-hero__wrap {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 24px;
    align-items: center;
    padding: 42px 0;
}

@media (max-width:900px) {
    .ct2-hero__wrap {
        grid-template-columns: 1fr;
        padding: 34px 0;
    }
}

.ct2-hero__title {
    margin: 0;
    color: var(--ct2-navy);
    font-weight: 900;
    font-size: clamp(1.8rem,1.1vw + 1.6rem,2.4rem);
}

.ct2-hero__lead {
    margin: 8px 0 0;
    color: var(--ct2-muted);
    max-width: 62ch;
}

.ct2-hero__card {
    background: var(--ct2-white);
    border: 1px solid var(--ct2-s300);
    border-radius: var(--ct2-radius);
    box-shadow: var(--ct2-shadow);
    padding: 18px;
}




/* ===== Contact (ct3) — White/Silver/Navy ===== */
:root {
    --ct3-navy: #006bce;
    --ct3-blue: #0a4b87;
    --ct3-ink: #0c1a2a;
    --ct3-muted: #42546a;
    --ct3-s50: #f5f8fc;
    --ct3-s200: #e4eaf2;
    --ct3-s300: #d6dbe3;
    --ct3-white: #fff;
    --ct3-black: #212529;
    --ct3-radius: 18px;
    --ct3-shadow: 0 16px 30px rgba(8,62,118,.10), 0 2px 8px rgba(8,62,118,.06);
}

.ct3 {
    color: var(--ct3-ink);
    background: var(--ct3-s50);
}

    .ct3 .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 22px;
    }

/* Page title */
.ct3-title {
    margin: 26px 0 14px;
    color: var(--ct3-navy);
    font-weight: 900;
    font-size: clamp(1.6rem,1.4vw + 1.3rem,2.2rem);
    letter-spacing: .2px;
}

/* Generic grid helpers */
.ct3-grid-2 {
    display: grid;
    gap: 18px;
    grid-template-columns: 1fr 1fr;
}

.ct3-grid-3 {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3,1fr);
}

@media (max-width:992px) {
    .ct3-grid-2, .ct3-grid-3 {
        grid-template-columns: 1fr;
    }
}

/* Card */
.ct3-card {
    background: var(--ct3-white);
    border: 1px solid var(--ct3-s300);
    border-radius: var(--ct3-radius);
    box-shadow: var(--ct3-shadow);
    overflow: hidden;
}

/* Card head bar (like screenshot rounded glow) */
.ct3-card__head {
    background: linear-gradient(180deg, #e9f1fb, #e7edf6);
    border-bottom: 1px solid var(--ct3-s300);
    padding: 14px 18px;
    font-weight: 900;
    color: var(--ct3-blue);
    font-size: 1.1rem;
}

/* Inside card */
.ct3-card__body {
    padding: 18px;
}

/* Info list with icons */
.ct3-info-item {
    display: grid;
    grid-template-columns: 42px auto;
    gap: 12px;
    margin: 18px 0;
}

.ct3-ico {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    border: 1px solid var(--ct3-s200);
    background: var(--ct3-s50);
    display: grid;
    place-items: center;
    color: var(--ct3-blue);
}

    .ct3-ico svg {
        width: 22px;
        height: 22px;
    }

.ct3-info-item h4 {
    margin: 0 0 4px;
    color: var(--ct3-ink);
    font-weight: 900;
}

.ct3-info-item p {
    margin: 0;
    color: var(--ct3-muted);
}

/* Links / buttons */
.ct3-link {
    color: var(--ct3-blue);
    font-weight: 800;
    text-decoration: underline;
}

    .ct3-link:hover {
        text-decoration: none;
    }

.ct3-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    padding: .9rem 1.2rem;
    border-radius: 12px;
    border: none;
    cursor: pointer;
    font-weight: 800;
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease;
}

.ct3-btn--primary {
    background: var(--ct3-navy);
    color: #fff;
    box-shadow: 0 12px 22px rgba(8,62,118,.18);
}

    .ct3-btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.24);
    }

.ct3-btn--ghost {
    background: transparent;
    color: var(--ct3-navy);
    border: 1px solid var(--ct3-navy);
}

    .ct3-btn--ghost:hover {
        background: var(--ct3-navy);
        color: #fff;
    }

/* Form (light) */
.ct3-form .ct3-row {
    display: grid;
    gap: 12px;
    grid-template-columns: 1fr 1fr;
}

@media (max-width:720px) {
    .ct3-form .ct3-row {
        grid-template-columns: 1fr;
    }
}

.ct3-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ct3-label {
    font-weight: 800;
    color: var(--ct3-ink);
}

.ct3-input, .ct3-textarea {
    border: 1px solid var(--ct3-s300);
    border-radius: 12px;
    padding: .8rem .9rem;
    font: inherit;
    color: inherit;
}

    .ct3-input:focus, .ct3-textarea:focus {
        outline: 2px solid #90caf9;
        outline-offset: 2px;
    }

.ct3-textarea {
    min-height: 160px;
    resize: vertical;
}

/* Banner rows (blue strip with icon + text) */
.ct3-banner {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    background: linear-gradient(180deg,#0b4f90,#083f78);
    border-radius: 12px;
    padding: 14px 16px;
    margin-top: 14px;
}

    .ct3-banner .ct3-ico {
        background: rgba(255,255,255,.1);
        border-color: rgba(255,255,255,.25);
        color: #fff;
    }

/* Dark panel form */
.ct3-dark {
    background: #2b2f36;
    color: #eaeef3;
    border-radius: var(--ct3-radius);
    border: 1px solid rgba(255,255,255,.08);
    box-shadow: var(--ct3-shadow);
}

.ct3-dark__head {
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    font-weight: 900;
}

.ct3-dark__body {
    padding: 16px 18px 18px;
}

.ct3-dark input, .ct3-dark textarea, .ct3-dark select {
    background: #373b41;
    color: #f0f4f8;
    border: 1px solid #4a4f57;
    border-radius: 10px;
    padding: .8rem .9rem;
}

    .ct3-dark input:focus, .ct3-dark textarea:focus, .ct3-dark select:focus {
        outline: 2px solid #9bd1ff;
        outline-offset: 2px;
    }

.ct3-dark .ct3-row {
    display: grid;
    gap: 12px;
    grid-template-columns: 1fr 1fr;
}

@media (max-width:720px) {
    .ct3-dark .ct3-row {
        grid-template-columns: 1fr;
    }
}

/* Map */
.ct3-mapwrap {
    border: 1px solid var(--ct3-s300);
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    width: 100%;
    aspect-ratio: 4/3;
}

/* Support & feedback cards */
.ct3-panel {
    padding: 28px;
    text-align: center;
}

    .ct3-panel .ct3-ico {
        margin: 0 auto 10px;
    }

    .ct3-panel h3 {
        margin: 0 0 8px;
        color: var(--ct3-ink);
        font-weight: 900;
    }

    .ct3-panel p {
        margin: 0 auto;
        max-width: 80ch;
        color: var(--ct3-muted);
        line-height: 1.85;
    }

/* Small notes */
.ct3-note {
    margin-top: 10px;
    color: var(--ct3-muted);
    font-size: .95rem;
}




/* ===== All Services (srvx) — white/silver/navy ===== */
:root {
    --srvx-navy: #006bce;
    --srvx-navy-2: #0a4b87;
    --srvx-ink: #0c1a2a;
    --srvx-muted: #42546a;
    --srvx-s50: #f5f8fc;
    --srvx-s150: #eff3f8;
    --srvx-s300: #d6dbe3;
    --srvx-white: #fff;
    --srvx-radius: 18px;
    --srvx-shadow: 0 16px 30px rgba(8,62,118,.10), 0 2px 8px rgba(8,62,118,.06);
}

.srvx {
    background: var(--srvx-s50);
    color: var(--srvx-ink);
}

    .srvx .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 22px;
    }

/* hero */
.srvx-hero {
    background: linear-gradient(180deg,#f3f7fd, #eef3f9);
    border-bottom: 1px solid var(--srvx-s300);
}

.srvx-hero__wrap {
    padding: 42px 0;
    display: grid;
    gap: 22px;
    grid-template-columns: 1.25fr .75fr;
    align-items: center;
}

@media (max-width:992px) {
    .srvx-hero__wrap {
        grid-template-columns: 1fr;
    }
}

.srvx-ttl {
    margin: 0;
    color: var(--srvx-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.8rem,1.2vw + 1.6rem,2.4rem);
}

.srvx-lead {
    margin: 8px 0 0;
    color: var(--srvx-muted);
    line-height: 1.75;
}

.srvx-cta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.srvx-btn {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    padding: .9rem 1.2rem;
    border-radius: 12px;
    border: 1px solid var(--srvx-navy);
    font-weight: 800;
    cursor: pointer;
    text-decoration: none;
}

.srvx-btn--primary {
    background: var(--srvx-navy);
    color: #fff;
    border: none;
    box-shadow: 0 12px 22px rgba(8,62,118,.18);
}

.srvx-btn--ghost {
    background: transparent;
    color: var(--srvx-navy);
}

.srvx-hero__tile {
    background: var(--srvx-white);
    border: 1px solid var(--srvx-s300);
    border-radius: 16px;
    box-shadow: var(--srvx-shadow);
    padding: 16px;
}

/* grid */
.srvx-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3,1fr);
}

@media (max-width:1100px) {
    .srvx-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:640px) {
    .srvx-grid {
        grid-template-columns: 1fr;
    }
}

/* card */
.srvx-card {
    background: var(--srvx-white);
    border: 1px solid var(--srvx-s300);
    border-radius: var(--srvx-radius);
    overflow: hidden;
    box-shadow: var(--srvx-shadow);
    display: flex;
    flex-direction: column;
}

.srvx-img {
    aspect-ratio: 16/9;
    width: 100%;
    object-fit: cover;
    background: #e9eef5;
}

.srvx-pad {
    padding: 16px;
}

.srvx-h3 {
    margin: 0 0 6px;
    color: var(--srvx-navy);
    font-weight: 900;
}

.srvx-desc {
    margin: 0 0 10px;
    color: var(--srvx-muted);
    line-height: 1.7;
}

.srvx-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 10px;
}

.srvx-chip {
    font-size: .92rem;
    padding: .25rem .55rem;
    border-radius: 999px;
    background: var(--srvx-s150);
    border: 1px solid var(--srvx-s300);
    color: var(--srvx-ink);
    font-weight: 700;
}

.srvx-card .srvx-cta {
    margin-top: auto;
}

.srvx-link {
    text-decoration: none;
    color: var(--srvx-navy-2);
    font-weight: 800;
}

    .srvx-link:hover {
        text-decoration: underline;
    }

/* info rows */
.srvx-band {
    margin: 24px 0;
    background: var(--srvx-white);
    border: 1px solid var(--srvx-s300);
    border-radius: 16px;
    box-shadow: var(--srvx-shadow);
}

.srvx-band__in {
    padding: 18px;
    display: grid;
    gap: 16px;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
}

@media (max-width:900px) {
    .srvx-band__in {
        grid-template-columns: 1fr;
    }
}

.srvx-ul {
    margin: 0;
    padding-left: 18px;
    color: var(--srvx-muted);
}

    .srvx-ul li {
        margin: .35rem 0;
    }

/* disclosures */
.srvx-disclose {
    margin: 28px 0;
}

    .srvx-disclose h4 {
        margin: 0 0 8px;
        color: var(--srvx-navy);
        font-weight: 900;
    }

    .srvx-disclose ul {
        margin: 0;
        padding-left: 18px;
        color: var(--srvx-muted);
        line-height: 1.7;
    }

/* section headings */
.srvx-h2 {
    margin: 22px 0 12px;
    color: var(--srvx-navy);
    font-weight: 900;
    letter-spacing: .2px;
}


/* ===== Services intro blurb cards ===== */
.srvx-intros {
    padding: 22px 0;
}

.srvx-blurb {
    background: var(--srvx-white);
    border: 1px solid var(--srvx-s300);
    border-radius: 18px;
    box-shadow: var(--srvx-shadow);
    padding: 32px 26px;
    text-align: center;
    max-width: 1100px;
    margin: 0 auto 22px;
}

    .srvx-blurb h2 {
        margin: 0 0 8px;
        color: var(--srvx-ink);
        font-weight: 900;
        letter-spacing: .2px;
        font-size: clamp(1.4rem,1vw + 1.2rem,2rem);
    }

    .srvx-blurb h3 {
        margin: 0 0 14px;
        color: var(--srvx-navy);
        font-weight: 900;
        font-size: clamp(1rem,.7vw + .9rem,1.2rem);
    }

    .srvx-blurb p {
        margin: 0;
        color: var(--srvx-muted);
        line-height: 1.9;
    }



/* ===== All-Services CTA (place above footer) ===== */
:root {
    --cta-navy: #006bce;
    --cta-blue: #0a4b87;
    --cta-white: #fff;
    --cta-s200: #e4eaf2;
}

.cta-all {
    position: relative;
    color: var(--cta-white);
    background: linear-gradient(180deg,var(--cta-blue),var(--cta-navy));
    padding: 42px 0;
    overflow: hidden;
}

    .cta-all::before {
        /* soft radial highlight */
        content: "";
        position: absolute;
        inset: -20% -10% auto -10%;
        height: 280px;
        background: radial-gradient(60% 60% at 30% 40%, rgba(255,255,255,.14), transparent 60%);
        pointer-events: none;
    }

    .cta-all .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 22px;
    }

.cta-all__wrap {
    display: grid;
    gap: 18px;
    grid-template-columns: 1.6fr .9fr;
    align-items: center;
}

@media (max-width:992px) {
    .cta-all__wrap {
        grid-template-columns: 1fr;
    }
}

.cta-all__title {
    margin: 0;
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.6rem,1.2vw + 1.3rem,2.2rem);
}

.cta-all__lead {
    margin: 8px 0 14px;
    opacity: .95;
    line-height: 1.7;
}

.cta-all__pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.cta-all__pill {
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.22);
    color: #fff;
    padding: .38rem .65rem;
    border-radius: 999px;
    font-weight: 700;
    font-size: .92rem;
}

.cta-all__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    border-radius: 12px;
    padding: .9rem 1.2rem;
    border: 1px solid transparent;
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}

.cta-btn--light {
    background: var(--cta-white);
    color: var(--cta-navy);
    box-shadow: 0 12px 22px rgba(0,0,0,.15);
}

    .cta-btn--light:hover {
        transform: translateY(-1px);
        box-shadow: 0 16px 26px rgba(0,0,0,.2);
    }

.cta-btn--outline {
    background: transparent;
    color: #fff;
    border-color: rgba(255,255,255,.7);
}

    .cta-btn--outline:hover {
        background: #ffffff17;
    }

.cta-box {
    background: #ffffff10;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 16px;
    padding: 16px;
}

.cta-box__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.cta-box__label {
    margin: 0;
    font-weight: 900;
}

.cta-box__sub {
    margin: 4px 0 0;
    opacity: .9;
    font-size: .96rem;
    line-height: 1.6;
}

.cta-all__note {
    margin-top: 10px;
    font-size: .92rem;
    opacity: .9;
}

.cta-all a.cta-phone {
    color: #fff;
    text-decoration: none;
}

    .cta-all a.cta-phone:hover {
        text-decoration: underline;
    }

@media (max-width:480px) {
    .cta-btn {
        width: 100%;
        justify-content: center;
    }

    .cta-box__row {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* =========================
   OUR FLEET v3 (pro, minimal)
   ========================= */
:root {
    --f3-navy: #006bce;
    --f3-blue: #0a4b87;
    --f3-ink: #12233a;
    --f3-muted: #50637a;
    --f3-line: #d9e0ea;
    --f3-bg: #f5f8fc;
    --f3-white: #fff;
    --f3-r: 16px;
    --f3-shadow: 0 8px 20px rgba(8,62,118,.08);
    --f3-shadow-lg: 0 14px 28px rgba(8,62,118,.12);
}

/* Page shell */
.fleet3 {
    background: var(--f3-bg);
    color: var(--f3-ink);
}

    .fleet3 .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 22px;
    }

/* Hero */
.fleet3-hero {
    background: linear-gradient(180deg,#f2f6fb,#eef3f9);
    border-bottom: 1px solid var(--f3-line);
}

.fleet3-hero__in {
    padding: 56px 0 34px;
    text-align: center;
}

.fleet3-title {
    margin: 0 0 10px;
    color: var(--f3-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.9rem,1.2vw + 1.6rem,2.4rem);
}

.fleet3-lead {
    margin: 0 auto;
    max-width: 860px;
    color: var(--f3-muted);
    line-height: 1.8;
}

/* Grid */
.fleet3-grid {
    padding: 28px 0 16px;
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3,1fr);
}

@media (max-width:1024px) {
    .fleet3-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:620px) {
    .fleet3-grid {
        grid-template-columns: 1fr;
    }
}

/* Card */
.fleet3-card {
    display: flex;
    flex-direction: column;
    background: var(--f3-white);
    border: 1px solid var(--f3-line);
    border-radius: var(--f3-r);
    box-shadow: var(--f3-shadow);
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease;
}

    .fleet3-card:hover {
        transform: translateY(-2px);
        box-shadow: var(--f3-shadow-lg);
    }

.fleet3-img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    background: #e9eef5;
}

.fleet3-body {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}

.fleet3-h3 {
    margin: 0;
    color: var(--f3-navy);
    font-weight: 900;
    letter-spacing: .2px;
    font-size: 1.15rem;
}

.fleet3-desc {
    margin: 0;
    color: var(--f3-muted);
    line-height: 1.65;
}

.fleet3-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fleet3-chip {
    background: #f1f4f9;
    border: 1px solid var(--f3-line);
    color: var(--f3-ink);
    padding: .28rem .6rem;
    border-radius: 999px;
    font-weight: 700;
    font-size: .9rem;
}

.fleet3-list {
    margin: 0;
    padding-left: 18px;
    color: var(--f3-muted);
    line-height: 1.6;
}

.fleet3-actions {
    margin-top: auto;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* Buttons (consistent, pro) */
.f3-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .86rem 1.1rem;
    border-radius: 12px;
    font-weight: 800;
    letter-spacing: .2px;
    text-decoration: none;
    border: 1px solid transparent;
    cursor: pointer;
    transition: transform .15s, box-shadow .15s, background .2s, color .2s;
}

.f3-btn--primary {
    background: var(--f3-navy);
    color: #fff;
    box-shadow: 0 10px 22px rgba(8,62,118,.18);
}

    .f3-btn--primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(8,62,118,.22);
    }

.f3-btn--ghost {
    background: transparent;
    color: var(--f3-navy);
    border-color: var(--f3-navy);
}

    .f3-btn--ghost:hover {
        background: #0a4b8712;
    }

/* Notes */
.fleet3-note {
    color: var(--f3-muted);
    font-size: .95rem;
    margin: 12px 0 34px;
}

/* CTA band - simplified, centered */
.fleet3-cta {
    background: linear-gradient(180deg,var(--f3-blue),var(--f3-navy));
    color: #fff;
}

.fleet3-cta__in {
    padding: 40px 0;
    text-align: center;
}

.fleet3-cta h2 {
    margin: 0 0 8px;
    font-weight: 900;
    letter-spacing: .2px;
    font-size: clamp(1.4rem,.9vw + 1.1rem,1.9rem);
}

.fleet3-cta p {
    margin: 0 auto 14px;
    max-width: 800px;
    opacity: .95;
    line-height: 1.75;
}

.fleet3-cta .cta-actions {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 6px;
}

.f3-btn--light {
    background: #fff;
    color: var(--f3-navy);
    border-color: #fff;
    box-shadow: 0 10px 22px rgba(0,0,0,.15);
}

    .f3-btn--light:hover {
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(0,0,0,.2);
    }

/* Focus */
.f3-btn:focus {
    outline: 2px solid #9fd0ff;
    outline-offset: 2px;
}




:root {
    --bf-navy: #0a4b87; /* your navy */
    --bf-navy-2: #006bce; /* deeper navy */
    --bf-silver: #e6edf5; /* silver */
    --bf-ink: #0c1a2a; /* dark text */
}

/* H1 in the booking wrapper */
.booking-form-wrapper h1,
.booking-form-wrapper .book-ttl {
    margin: 0 0 10px;
    color: var(--bf-navy);
    font-weight: 900;
    letter-spacing: .2px;
    line-height: 1.1;
    font-size: clamp(1.6rem,1.2vw + 1.2rem,2.2rem);
    text-align: center; /* center by default */
}



/* optional subheading under H1 */
.booking-form-wrapper .subhead {
    margin: 6px 0 0;
    color: #50637a;
    font-size: 1.02rem;
    text-align: center;
}

/* left-align on large screens (optional) */
@media (min-width:992px) {
    .booking-form-wrapper h1,
    .booking-form-wrapper .book-ttl {
        text-align: left;
    }

        .booking-form-wrapper h1::after,
        .booking-form-wrapper .book-ttl::after {
            margin-left: 0;
        }
}

.is-invalid {
    border: 2px solid red;
    background-color: #f8d7da;
}
