/* =========================================================================
   Airport Pickup Scotland — Booking Skin
   Glass-card calculator over hero + Transfeero-style booking flow.
   ========================================================================= */

:root {
    --aps-amber: #F8B54A;
    --aps-amber-bright: #FFC700;
    --aps-amber-hover: #ffd23a;
    --aps-amber-text: #111111;

    /* Outer glass shell — light frosted, hero visible through */
    --aps-glass-bg: rgba(255, 255, 255, 0.50);
    --aps-glass-border: rgba(255, 255, 255, 0.65);
    /* Inner solid white box — holds the form fields */
    --aps-card-bg: #ffffff;
    --aps-field-bg: #ffffff;
    --aps-field-border: #d9dde3;
    --aps-field-border-hover: #b6bcc6;
    --aps-field-border-focus: #cfd4dc;

    --aps-text: #111111;
    --aps-text-muted: #555;
    --aps-text-dim: #8a8f99;
    --aps-text-on-glass: #ffffff;

    --aps-radius-glass: 18px;
    --aps-radius-card: 14px;
    --aps-radius-field: 12px;
    --aps-radius-pill: 999px;

    --aps-shadow-glass: 0 30px 70px -10px rgba(0, 0, 0, 0.55),
                        0 10px 28px rgba(0, 0, 0, 0.22);
    --aps-shadow-card: 0 8px 22px rgba(0, 0, 0, 0.10);
    --aps-shadow-cta: 0 14px 32px -6px rgba(255, 199, 0, 0.65),
                      0 6px 16px rgba(0, 0, 0, 0.18);

    --aps-font-body: 'Manrope', system-ui, sans-serif;
    --aps-font-display: 'Manrope', system-ui, sans-serif;
}

/* Step-transition loader overlay (covers the empty-content flash between steps) */
.aps-booking-loader {
    position: fixed; inset: 0; z-index: 100000;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, 0.72); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
}
.aps-booking-loader__spinner {
    width: 52px; height: 52px; border-radius: 50%;
    border: 4px solid rgba(0, 0, 0, 0.12); border-top-color: var(--aps-amber, #F8B54A);
    animation: aps-spin 0.8s linear infinite;
}
@keyframes aps-spin { to { transform: rotate(360deg); } }

/* "Edit ride details" popup — show the live step-1 card as a centred modal */
.aps-step1-modal-backdrop { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.5); z-index: 100000; }
body.aps-step1-modal { overflow: hidden; }
body.aps-step1-modal .chbs-main-content-step-1 {
    display: block !important;
    position: fixed; z-index: 100001; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: min(520px, 94vw); max-height: 88vh; overflow: auto;
    background: #fff !important; border-radius: 16px; padding: 30px 22px 22px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.35);
}
/* Force the popup interior light/white (the widget glass shell is for the dark
   hero — in a modal we want a clean white card with dark text). */
body.aps-step1-modal .chbs-main-content-step-1,
body.aps-step1-modal .chbs-main-content-step-1 .chbs-main-content,
body.aps-step1-modal .chbs-main-content-step-1 .chbs-tab,
body.aps-step1-modal .chbs-main-content-step-1 #panel-1 { background: transparent !important; }
body.aps-step1-modal .chbs-main-content-step-1 { background: #fff !important; }
/* In the popup, show ONLY the ride-details form — hide the map + distance/time
   right column, and let the form column fill the width. */
body.aps-step1-modal .chbs-main-content-step-1 .chbs-layout-column-right { display: none !important; }
body.aps-step1-modal .chbs-main-content-step-1 .chbs-layout-50x50 { display: block !important; }
body.aps-step1-modal .chbs-main-content-step-1 .chbs-layout-50x50 > .chbs-layout-column-left {
    width: 100% !important; float: none !important; margin: 0 !important;
}
/* Tidy the form card + the navigation button inside the popup */
body.aps-step1-modal .chbs-main-content-step-1 .chbs-tab { box-shadow: none !important; }
body.aps-step1-modal .chbs-main-content-step-1 .chbs-main-content-navigation-button { margin-top: 16px !important; text-align: right; }
/* The popup uses the home-page "widget" field styling (chbs-widget added on open).
   Neutralise the widget's inner white-card panel so it doesn't double-card with
   the modal container (which is already the white card). */
body.aps-step1-modal .chbs-main-content-step-1 #panel-1,
body.aps-step1-modal .chbs-main-content-step-1 .ui-tabs-panel {
    margin: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0 !important;
}
/* The widget wrapper otherwise renders its own glass/grey card box around our
   white modal — collapse its box entirely so only our clean white card shows.
   (The .chbs-widget field styling still applies via the class on descendants.) */
body.aps-step1-modal .chbs-main.chbs-widget {
    display: contents !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
    box-shadow: none !important; border: 0 !important; padding: 0 !important;
}
.aps-step1-modal-close {
    position: absolute; top: 14px; right: 16px; z-index: 2;
    width: 34px; height: 34px; border-radius: 50%; border: 0; cursor: pointer;
    background: #f1f2f4; color: #333; font-size: 22px; line-height: 1;
    display: flex; align-items: center; justify-content: center; padding: 0;
}
.aps-step1-modal-close:hover { background: #e4e6e9; }
/* Disable going back from step 2 — it returned a stale step 1; use Edit instead */
.aps-step2-nav a.chbs-button-step-prev { display: none !important; }

/* =========================================================================
   PHASE 1 foundation — kept for booking page
   ========================================================================= */

.chbs-main:not(.chbs-widget) .chbs-main-navigation-default {
    display: none !important;
}
.aps-stepper {
    display: flex; align-items: center; justify-content: space-between;
    max-width: 720px; margin: 24px auto 32px; padding: 0 8px;
    font-family: var(--aps-font-body); position: relative;
}
.aps-stepper::before {
    content: ''; position: absolute; left: 8%; right: 8%; top: 14px;
    height: 2px; background: #e2e2e2; z-index: 0;
}
.aps-stepper__item {
    position: relative; z-index: 1; display: flex; flex-direction: column;
    align-items: center; gap: 6px; flex: 1; color: #6b7280;
    font-size: 13px; font-weight: 600;
}
.aps-stepper__pip {
    width: 28px; height: 28px; border-radius: 50%;
    background: #ffffff; border: 2px solid #d1d5db;
    display: flex; align-items: center; justify-content: center; font-size: 12px;
}
.aps-stepper__item.is-done .aps-stepper__pip { background: #111; border-color: #111; color: #fff; }
.aps-stepper__item.is-done .aps-stepper__pip::after { content: '✓'; }
.aps-stepper__item.is-current { color: #111; }
.aps-stepper__item.is-current .aps-stepper__pip {
    background: #fff; border-color: #111; color: #111;
    box-shadow: 0 0 0 4px rgba(17,17,17,0.08);
}
.aps-stepper__item.is-current .aps-stepper__pip::after {
    content: ''; width: 10px; height: 10px; border-radius: 50%; background: #111;
}
.aps-sidebar { position: sticky; top: 24px; }
.aps-cta-dark {
    background: linear-gradient(90deg, #111 0%, #2a2a2a 100%);
    color: #fff; border: 0; border-radius: 10px;
    padding: 16px 24px; font-weight: 700; font-size: 16px;
    cursor: pointer; width: 100%; transition: filter 0.2s ease;
}
.aps-cta-dark:hover { filter: brightness(1.15); }


/* =========================================================================
   PHASE 2 — Step 1 glass calculator card (widget mode, home page)
   ========================================================================= */

/* Outer GLASS shell — translucent, blurred, holds inner white card + trust + CTA */
.chbs-main.chbs-widget,
.chbs-main.chbs-widget.chbs-widget-style-1,
div.chbs-main.chbs-widget {
    background: var(--aps-glass-bg) !important;
    -webkit-backdrop-filter: blur(18px) saturate(120%);
    backdrop-filter: blur(18px) saturate(120%);
    border-radius: var(--aps-radius-glass) !important;
    border: 1px solid var(--aps-glass-border);
    padding: 16px !important;
    box-shadow: var(--aps-shadow-glass) !important;
    color: var(--aps-text);
    font-family: var(--aps-font-body);
    max-width: 590px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    overflow: visible;
}

/* Plugin gives .chbs-main-content a 50px margin-top to make room for the tabs.
   In widget mode we hide the tabs, so reset it. Same for the CTA wrapper margin. */
.chbs-main.chbs-widget .chbs-main-content {
    margin: 0 !important;
}
.chbs-main.chbs-widget .chbs-clear-fix.chbs-main-content-navigation-button,
.chbs-main.chbs-widget #panel-1 + .chbs-clear-fix,
.chbs-main.chbs-widget .chbs-button-widget-submit-wrapper,
.chbs-main.chbs-widget .aps-trust + .chbs-clear-fix,
.chbs-main.chbs-widget .chbs-main-content-step-1 > .chbs-clear-fix:last-child {
    margin-top: 14px !important;
    padding: 0 !important;
}

/* Inner WHITE card — wraps the 6 fields. The plugin renders this as #panel-1
   AND .ui-tabs-panel; the latter has a default 2px amber top border which we
   must override.
   Layout: NARROWER than the outer glass on left/right (positive horizontal
   margins) and EXTENDS UP past the top of the glass. We use transform for the
   vertical lift so the outer's height calculation still includes trust + CTA. */
.chbs-main.chbs-widget #panel-1,
.chbs-main.chbs-widget .ui-tabs-panel {
    background: var(--aps-card-bg) !important;
    border: 0 !important;
    border-radius: var(--aps-radius-card) !important;
    padding: 18px !important;
    box-shadow: 0 14px 30px -6px rgba(0, 0, 0, 0.22),
                0 4px 10px rgba(0, 0, 0, 0.10) !important;
    margin: -38px 10px 10px !important;
    position: relative;
    z-index: 3;
}
/* Make outer glass leave extra space at the bottom so the CTA stays inside
   even when the inner card lifts higher. */
.chbs-main.chbs-widget {
    padding-bottom: 36px !important;
}

/* Hide tab bar (Hourly/Flat) */
.chbs-main.chbs-widget .chbs-tab > ul { display: none !important; }

/* Hide section group labels: "Ride details", etc. */
.chbs-main.chbs-widget .chbs-form-label-group { display: none !important; }

/* Hide Hourly + Flat panels */
.chbs-main.chbs-widget #panel-2,
.chbs-main.chbs-widget #panel-3 { display: none !important; }

/* Strip plugin's default chrome */
.chbs-main.chbs-widget .chbs-tab,
.chbs-main.chbs-widget .chbs-box-shadow {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Hide right summary column */
.chbs-main.chbs-widget .chbs-layout-column-right { display: none !important; }

/* Hide unwanted fields: passengers, waypoints, AND extra time.
   TRANSFER TYPE will span the full row (see rule below).
   NOTE: the return date/time wrapper is intentionally NOT hidden here — it must
   appear when the customer selects the "Return" transfer type (the plugin
   toggles its own .chbs-hidden class on it). We style it below to match the
   dark calculator. */
.chbs-main.chbs-widget .chbs-form-field-passenger,
.chbs-main.chbs-widget .chbs-form-field-waypoint,
.chbs-main.chbs-widget .chbs-form-field-waypoint-duration,
.chbs-main.chbs-widget .chbs-form-field-extra-time {
    display: none !important;
}

/* Return date/time: shown only when Return is selected (plugin removes
   .chbs-hidden). Use an auto-collapsing grid so it matches the calculator at
   EVERY width — two columns (date | time) when the card is wide (desktop), and
   a single stacked column when the card is narrow (mobile), exactly like the
   pickup date/time row does. auto-fit + minmax means no breakpoint guessing. */
.chbs-main.chbs-widget .chbs-form-field-return-date-time.chbs-hidden { display: none !important; }
.chbs-main.chbs-widget .chbs-form-field-return-date-time {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}
.chbs-main.chbs-widget .chbs-form-field-return-date-time > .chbs-form-field {
    width: 100% !important;
    min-width: 0;            /* allow the column to shrink so values never clip */
    margin: 0 !important;
}
/* Left-align the value (icon sits left, like the pickup row above). The base
   .chbs-form-field already reserves 52px on the left for the icon. */
.chbs-main.chbs-widget .chbs-form-field-return-date-time > .chbs-form-field input {
    text-align: left;
}
/* Icons matching the pickup date/time row: calendar on the return date,
   clock on the return time. */
.chbs-main.chbs-widget .chbs-form-field-return-date-time > .chbs-form-field:first-child::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-return-date-time > .chbs-form-field:last-child::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");
}
/* A small "Return" caption spanning the full width above the field(s). */
.chbs-main.chbs-widget .chbs-form-field-return-date-time::before {
    content: "Return";
    grid-column: 1 / -1;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #8b9099;
    margin: 2px 2px -4px;
}
/* Suppress the .chbs-clear-fix ::after phantom row inside the grid. */
.chbs-main.chbs-widget .chbs-form-field-return-date-time::after { display: none !important; }

/* TRANSFER TYPE occupies the entire third row (full width) with the icon +
   label centered horizontally as a single group. We move the icon out of its
   absolute positioning and let it flow inline so it sits next to the label. */
.chbs-main.chbs-widget .chbs-form-field-transfer-type {
    grid-column: 1 / -1 !important;
    padding: 0 16px !important;
    justify-content: center;
    gap: 12px;
}
.chbs-main.chbs-widget .chbs-form-field-transfer-type::before {
    position: static !important;
    transform: none !important;
    flex-shrink: 0;
}
.chbs-main.chbs-widget .chbs-form-field-transfer-type > label {
    width: auto !important;
    flex-shrink: 0;
    text-align: center;
}

/* Hide tooltip "?" icons + "use my location" link */
.chbs-main.chbs-widget .chbs-tooltip,
.chbs-main.chbs-widget .chbs-my-location-link {
    display: none !important;
}

/* Grid: 2 columns inside #panel-1 (the inner white card) */
.chbs-main.chbs-widget #panel-1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.chbs-main.chbs-widget .chbs-form-field-pickup-date-time {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
}
.chbs-main.chbs-widget .chbs-form-field-pickup-date-time .chbs-form-field {
    width: 100% !important;
    margin: 0 !important;
}
.chbs-main.chbs-widget #panel-1 > .chbs-form-field {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

/* Field shell — solid white pill with thin border, icon LEFT, label centered vertically.
   The plugin sets margin-top: -1px to collapse adjacent borders; we reset it so
   each field renders its full rounded border without corner clipping. */
.chbs-main.chbs-widget .chbs-form-field {
    background: var(--aps-field-bg) !important;
    border: 1px solid var(--aps-field-border) !important;
    border-radius: var(--aps-radius-field) !important;
    padding: 0 16px 0 52px !important;
    margin: 0 !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    position: relative;
    height: 60px;
    min-height: 60px;
    display: flex;
    align-items: center;
}
/* Plugin gives the date-time wrapper a -1px top margin too; reset */
.chbs-main.chbs-widget .chbs-form-field-pickup-date-time {
    margin: 0 !important;
}
/* The date-time wrapper has class .chbs-clear-fix whose ::after pseudo-element
   is a display:block, creating a phantom 2nd row in the grid layout that adds
   12px of extra height. Suppress it ONLY for this wrapper (the CTA's parent
   also uses .chbs-clear-fix to clear floats, so we must not kill that one). */
.chbs-main.chbs-widget .chbs-form-field-pickup-date-time::after {
    display: none !important;
}
.chbs-main.chbs-widget .chbs-form-field:hover {
    border-color: var(--aps-field-border-hover) !important;
}
.chbs-main.chbs-widget .chbs-form-field:focus-within {
    border-color: var(--aps-field-border-focus) !important;
    box-shadow: 0 0 0 3px rgba(17,17,17,0.05) !important;
}

/* Field icon — left side, vertically centered */
.chbs-main.chbs-widget .chbs-form-field::before {
    content: '';
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 22px 22px;
    pointer-events: none;
}

.chbs-main.chbs-widget .chbs-form-field-pickup-date-time .chbs-form-field:first-child::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-pickup-date-time .chbs-form-field:nth-child(2)::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-pickup-location::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/><circle cx='12' cy='10' r='3'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-dropoff-location::before {
    /* Visually centered navigation arrow — paper-plane shape with mass shifted
       toward the SVG center so it aligns with the round clock/pin icons. */
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12l20-9-7 20-2.5-8.5L2 12z'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-transfer-type::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 17h14'/><circle cx='6.5' cy='17.5' r='2'/><circle cx='17.5' cy='17.5' r='2'/><path d='M5 17v-5l1.5-4.5A2 2 0 0 1 8.4 6h7.2a2 2 0 0 1 1.9 1.5L19 12v5'/><line x1='5' y1='12' x2='19' y2='12'/></svg>");
}
.chbs-main.chbs-widget .chbs-form-field-extra-time::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><line x1='10' y1='2' x2='14' y2='2'/><line x1='12' y1='14' x2='15' y2='11'/><circle cx='12' cy='14' r='8'/></svg>");
}

/* Field label — centered vertically next to icon */
.chbs-main.chbs-widget .chbs-form-field > label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--aps-text);
    margin: 0 !important;
    line-height: 1.2;
    cursor: pointer;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Inputs/selects — overlay invisibly so the field looks "clean" but is fully clickable.
   When user fills a value, JS adds .aps-has-value to the field so we swap label for value. */
.chbs-main.chbs-widget .chbs-form-field input[type="text"],
.chbs-main.chbs-widget .chbs-form-field input[type="email"],
.chbs-main.chbs-widget .chbs-form-field input[type="tel"],
.chbs-main.chbs-widget .chbs-form-field select {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: transparent !important;
    border: 0 !important;
    color: transparent !important;
    caret-color: var(--aps-text) !important;
    font-family: var(--aps-font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    /* line-height matches field height so the value text is vertically
       centered (browsers don't vertically center input text by default). */
    line-height: 60px !important;
    padding: 0 18px 0 52px !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
    z-index: 2 !important;
}
.chbs-main.chbs-widget .chbs-form-field input::placeholder {
    color: transparent;
}
/* When the field has a user value, hide the label and show the input value in dark */
.chbs-main.chbs-widget .chbs-form-field.aps-has-value > label {
    visibility: hidden;
}
.chbs-main.chbs-widget .chbs-form-field.aps-has-value input {
    color: var(--aps-text) !important;
}

/* jQuery-UI selectmenu button overlays the field invisibly too */
.chbs-main.chbs-widget .chbs-form-field .ui-selectmenu-button {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    z-index: 2 !important;
    cursor: pointer !important;
}
.chbs-main.chbs-widget .chbs-form-field .ui-selectmenu-button .ui-selectmenu-text {
    display: none !important;
}
.chbs-main.chbs-widget .chbs-form-field .ui-selectmenu-button .ui-icon,
.chbs-main.chbs-widget .chbs-form-field .chbs-meta-icon-arrow-vertical-large,
.chbs-main.chbs-widget .chbs-form-field .chbs-meta-icon-arrow-horizontal-large,
.chbs-main.chbs-widget .chbs-form-field [class^="chbs-meta-icon"]:not(.chbs-tooltip) {
    display: none !important;
}

/* Hide the "+" location-add icon */
.chbs-main.chbs-widget .chbs-location-add,
.chbs-main.chbs-widget .chbs-location-remove {
    display: none !important;
}

/* Trust strip + CTA wrapper sits below the inner white card, on the glass area */
.chbs-main.chbs-widget .chbs-clear-fix.chbs-main-content-navigation-button,
.chbs-main.chbs-widget .chbs-button-widget-submit-wrapper {
    display: block;
    margin-top: 0;
    padding: 0 12px;
}

/* "Trusted by many travelers ★★★★★" — centered, white text on glass + amber stars */
.aps-trust {
    display: flex; align-items: center; justify-content: center;
    gap: 12px; margin: 14px 0 0;
    font-size: 15px; color: #ffffff; font-weight: 600;
    font-family: var(--aps-font-body);
    text-shadow: 0 1px 2px rgba(0,0,0,0.3);
}
.aps-trust__stars {
    color: var(--aps-amber-bright);
    letter-spacing: 2px; font-size: 18px;
    text-shadow: 0 1px 2px rgba(0,0,0,0.4);
}

/* CALCULATE NOW button — bright yellow pill with subtle gradient + lifted shadow.
   Reference style: clean yellow → slightly deeper yellow gradient, soft drop
   shadow, white inner highlight on top edge for depth. */
.chbs-main.chbs-widget .chbs-button-widget-submit,
.chbs-main.chbs-widget .chbs-button.chbs-button-style-1 {
    display: flex !important;
    align-items: center; justify-content: center;
    width: 100% !important;
    background: linear-gradient(180deg, #FFD13B 0%, #FFC700 50%, #F5B800 100%) !important;
    color: var(--aps-amber-text) !important;
    border: 0 !important;
    border-radius: var(--aps-radius-pill) !important;
    padding: 20px 24px !important;
    font-family: var(--aps-font-body) !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    text-align: center !important;
    cursor: pointer !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.55),
        inset 0 -2px 0 rgba(180, 130, 0, 0.18),
        0 12px 24px -6px rgba(255, 199, 0, 0.55),
        0 6px 14px rgba(0, 0, 0, 0.20) !important;
    transition: filter 0.18s ease, transform 0.08s ease, box-shadow 0.2s ease !important;
    margin: 0 !important;
    position: relative;
}
.chbs-main.chbs-widget .chbs-button-widget-submit:hover,
.chbs-main.chbs-widget .chbs-button.chbs-button-style-1:hover {
    filter: brightness(1.04);
    transform: translateY(-1px);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.65),
        inset 0 -2px 0 rgba(180, 130, 0, 0.18),
        0 16px 30px -6px rgba(255, 199, 0, 0.65),
        0 8px 18px rgba(0, 0, 0, 0.22) !important;
}
.chbs-main.chbs-widget .chbs-button-widget-submit:active,
.chbs-main.chbs-widget .chbs-button.chbs-button-style-1:active {
    transform: translateY(0);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.4),
        inset 0 -1px 0 rgba(180, 130, 0, 0.18),
        0 6px 14px -4px rgba(255, 199, 0, 0.55),
        0 3px 8px rgba(0, 0, 0, 0.18) !important;
}
.chbs-main.chbs-widget .chbs-button .chbs-meta-icon-arrow-horizontal-large {
    display: none !important;
}
.chbs-main.chbs-widget .chbs-button-step-prev {
    display: none !important;
}

/* =========================================================================
   DROPDOWN POLISH — datepicker, timepicker, location autocomplete, select
   All four share the same card chrome: white bg, soft shadow, 12px radius,
   thin border, brand-amber accents.
   ========================================================================= */

/* Shared container chrome */
.ui-selectmenu-menu.aps-light-menu .ui-menu,
#ui-datepicker-div.chbs-datepicker,
.ui-timepicker-wrapper,
.pac-container {
    background: #ffffff !important;
    border: 1px solid var(--aps-field-border) !important;
    border-radius: 12px !important;
    box-shadow:
        0 18px 40px -6px rgba(0, 0, 0, 0.18),
        0 8px 16px rgba(0, 0, 0, 0.08) !important;
    color: var(--aps-text) !important;
    font-family: var(--aps-font-body) !important;
    overflow: hidden !important;
    z-index: 99999 !important;
    margin-top: 6px !important;
}

/* ---------- jQuery UI selectmenu (TRANSFER TYPE) ---------- */
/* Strip the OUTER wrapper only — the inner <ul> carries both .ui-menu and
   .ui-widget-content classes, so anything we strip on .ui-widget-content also
   wipes the white card chrome we set on .ui-menu above. */
.ui-selectmenu-menu,
.ui-selectmenu-menu.aps-light-menu {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}
.ui-selectmenu-menu.aps-light-menu .ui-menu {
    padding: 8px !important;
    /* Don't force a min-width that exceeds the wrapper — that causes the right
       edge (and right border-radius) to overflow the wrapper bounds. */
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    border-radius: 14px !important;
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item {
    margin: 2px 0 !important;
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper {
    color: var(--aps-text);
    padding: 14px 16px 14px 44px;
    border-radius: 10px;
    font-family: var(--aps-font-body);
    font-size: 15px;
    font-weight: 600;
    transition: background 0.15s ease, color 0.15s ease;
    border: 0 !important;
    margin: 0 !important;
    position: relative;
}
/* Radio-dot indicator on the left side of each option */
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper::before {
    content: '';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1.5px solid #d1d5db;
    background: #fff;
    transition: border-color 0.15s ease, background 0.15s ease;
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper:hover {
    background: rgba(248, 181, 74, 0.10) !important;
    color: var(--aps-text) !important;
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper:hover::before {
    border-color: var(--aps-amber-bright);
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper.ui-state-active {
    background: rgba(248, 181, 74, 0.16) !important;
    color: var(--aps-text) !important;
    box-shadow: inset 0 0 0 1px rgba(248, 181, 74, 0.45);
}
.ui-selectmenu-menu.aps-light-menu .ui-menu .ui-menu-item-wrapper.ui-state-active::before {
    border-color: var(--aps-amber-bright);
    background: var(--aps-amber-bright);
    box-shadow: inset 0 0 0 3px #fff;
}

/* ---------- jQuery UI datepicker (PICKUP DATE) ---------- */
#ui-datepicker-div.chbs-datepicker,
.chbs-booking-form-id-327.chbs-datepicker.ui-datepicker {
    padding: 14px !important;
    width: 320px !important;
    font-family: var(--aps-font-body) !important;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-header,
.ui-datepicker .ui-datepicker-header {
    background: transparent !important;
    border: 0 !important;
    padding: 4px 0 12px !important;
    position: relative;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-title,
.ui-datepicker .ui-datepicker-title {
    color: var(--aps-text) !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-align: center !important;
}
/* Round nav buttons — display:flex centers the chevron inside the circle.
   IMPORTANT: the chauffeur-booking-system plugin applies transform: scaleX(-1)
   to the .ui-datepicker-prev button by default (so it can reuse the same
   chevron sprite as -next). We MUST kill that transform or every left-arrow
   we draw inside the prev button gets mirrored into a right-arrow. */
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev,
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #f5f6f8 !important;
    border: 1px solid var(--aps-field-border) !important;
    cursor: pointer !important;
    transition: background 0.12s ease, border-color 0.12s ease !important;
    top: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    transform: none !important;  /* kill plugin's scaleX(-1) on the prev button */
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-prev {
    left: 8px !important;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-next {
    right: 8px !important;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev:hover,
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next:hover,
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background: rgba(248, 181, 74, 0.14) !important;
    border-color: rgba(248, 181, 74, 0.4) !important;
}
/* Kill the jQuery UI sprite icon completely (every variant), then draw our
   own chevron via ::before pseudo-element on the BUTTON itself. This avoids
   the original .ui-icon-circle-triangle-* sprite class adding a competing
   background-image that produced the doubled-arrow look. */
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev .ui-icon,
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next .ui-icon,
.ui-datepicker .ui-datepicker-prev .ui-icon,
.ui-datepicker .ui-datepicker-next .ui-icon,
.ui-datepicker .ui-icon-circle-triangle-w,
.ui-datepicker .ui-icon-circle-triangle-e {
    display: none !important;
    visibility: hidden !important;
    background: none !important;
}
/* Draw OUR chevron on the button via ::before (clean slate, no sprite conflict) */
/* SVG chevrons via ::before. Now that the plugin's scaleX(-1) on prev button
   is killed, the SVG geometry renders as drawn. */
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev::before,
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next::before,
.ui-datepicker .ui-datepicker-prev::before,
.ui-datepicker .ui-datepicker-next::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 14px;
    height: 14px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 14px;
    pointer-events: none;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev::before,
.ui-datepicker .ui-datepicker-prev::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><polyline points='15 6 9 12 15 18'/></svg>") !important;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next::before,
.ui-datepicker .ui-datepicker-next::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 6 15 12 9 18'/></svg>") !important;
}
/* Two distinct SVGs: prev = left-chevron, next = right-chevron. No transform
   trickery. The geometry is encoded in the SVG paths themselves so any cache
   issue with the transform property cannot affect the visible shape. */
/* (Old SVG-based chevron rules removed — replaced by Unicode content above) */
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-prev .ui-icon,
.ui-datepicker .ui-datepicker-prev .ui-icon {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='15 18 9 12 15 6'/></svg>") !important;
}
.chbs-booking-form-id-327.chbs-datepicker .ui-datepicker-next .ui-icon,
.ui-datepicker .ui-datepicker-next .ui-icon {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 18 15 12 9 6'/></svg>") !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar {
    margin: 0 !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar th {
    color: var(--aps-text-dim) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    padding: 8px 0 !important;
    text-align: center !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td {
    padding: 2px !important;
    text-align: center !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td a,
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td span {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    color: var(--aps-text) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border: 0 !important;
    background: transparent !important;
    text-decoration: none !important;
    transition: background 0.12s ease, color 0.12s ease !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td a:hover {
    background: rgba(248, 181, 74, 0.18) !important;
    color: var(--aps-text) !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td a.ui-state-active,
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td.ui-datepicker-current-day a {
    background: var(--aps-amber-bright) !important;
    color: var(--aps-amber-text) !important;
    font-weight: 700 !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td.ui-datepicker-today a:not(.ui-state-active) {
    border: 2px solid var(--aps-amber-bright) !important;
    background: transparent !important;
    color: var(--aps-text) !important;
}
.chbs-booking-form-id-327.chbs-datepicker table.ui-datepicker-calendar td.ui-state-disabled span {
    color: #d1d5db !important;
    opacity: 1 !important;
}

/* ---------- jquery.timepicker (PICKUP TIME) ---------- */
.ui-timepicker-wrapper {
    padding: 6px !important;
    width: auto !important;
    min-width: 160px !important;
    max-height: 240px !important;
    overflow-y: auto !important;
    /* Custom scrollbar */
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,0.18) transparent;
}
.ui-timepicker-wrapper::-webkit-scrollbar {
    width: 6px;
}
.ui-timepicker-wrapper::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,0.18);
    border-radius: 3px;
}
.ui-timepicker-list {
    width: 100% !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.ui-timepicker-list li {
    color: var(--aps-text) !important;
    font-family: var(--aps-font-body) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 10px 14px !important;
    border-radius: 8px !important;
    border: 0 !important;
    cursor: pointer !important;
    transition: background 0.12s ease !important;
}
.ui-timepicker-list li:hover,
.ui-timepicker-list li.ui-timepicker-selected,
.chbs-booking-form-id-327 .ui-timepicker-wrapper > .ui-timepicker-list > li:hover,
.chbs-booking-form-id-327 .ui-timepicker-wrapper > .ui-timepicker-list > li.ui-timepicker-selected {
    background: rgba(248, 181, 74, 0.18) !important;
    color: var(--aps-text) !important;
}

/* ---------- Google Places autocomplete (LOCATIONS) ---------- */
.pac-container {
    padding: 8px !important;
    margin-top: 2px !important;
    font-family: var(--aps-font-body) !important;
    border-radius: 14px !important;
    /* Desktop: anchor under input, cap at 580px wide */
    min-width: 380px !important;
    max-width: 580px !important;
    width: auto !important;
    box-sizing: border-box !important;
    box-shadow:
        0 22px 50px -8px rgba(0, 0, 0, 0.22),
        0 8px 18px rgba(0, 0, 0, 0.10) !important;
}
/* Mobile: Google positions the container at left:Xpx based on the input's
   offset. With our min-width that pushes the right edge past the viewport.
   Override left/right both — span the full viewport with 16px gutters.
   Same treatment for the datepicker and timepicker dropdowns: jQuery UI
   anchors them to the input which puts them off-center on mobile. Center
   them horizontally instead. */
@media (max-width: 600px) {
    .pac-container {
        left: 16px !important;
        right: 16px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    #ui-datepicker-div.chbs-datepicker,
    .ui-timepicker-wrapper {
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        max-width: calc(100vw - 32px) !important;
    }
}
.pac-container::after {
    display: none !important;
}
.pac-item {
    padding: 12px 14px 12px 44px !important;
    border: 0 !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    color: var(--aps-text) !important;
    font-family: var(--aps-font-body) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    transition: background 0.15s ease !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-word !important;
    position: relative !important;
    display: block !important;
}
/* Replace Google's grey pin icon with our brand SVG inline at left */
.pac-item .pac-icon {
    display: none !important;
}
.pac-item::before {
    content: '';
    position: absolute;
    left: 14px;
    top: 14px;
    width: 18px;
    height: 18px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/><circle cx='12' cy='10' r='3'/></svg>");
    opacity: 0.85;
    pointer-events: none;
}
.pac-item:hover,
.pac-item-selected,
.pac-item.pac-item-selected {
    background: rgba(248, 181, 74, 0.14) !important;
}
.pac-item:hover::before,
.pac-item-selected::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23F8B54A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/><circle cx='12' cy='10' r='3'/></svg>");
    opacity: 1;
}
/* The query word's NON-matched chars: grey/medium weight */
.pac-item-query {
    color: var(--aps-text-muted) !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    padding-right: 4px !important;
    display: inline !important;
}
/* The matched chars (e.g. "Uk" in "Ukraine"): BLACK BOLD */
.pac-matched {
    font-weight: 800 !important;
    color: var(--aps-text) !important;
}
/* Secondary text (city, country): grey */
.pac-item span:not(.pac-item-query):not(.pac-icon):not(.pac-matched) {
    color: var(--aps-text-muted) !important;
    font-weight: 500 !important;
    white-space: normal !important;
    overflow: visible !important;
}

.chbs-main.chbs-widget .chbs-notice {
    background: #fff5f5;
    border: 1px solid #fca5a5;
    color: #b91c1c;
    border-radius: 10px;
    padding: 10px 14px;
    margin-bottom: 12px;
    font-size: 13px;
}

/* =========================================================================
   TRANSFEERO-STYLE TIME PICKER (custom, replaces jquery.timepicker)
   3-column popover: hour | minute | AM/PM, with 24h/12h toggle and Save.
   ========================================================================= */
.aps-tp {
    position: absolute;
    z-index: 99999;
    background: #ffffff;
    border-radius: 14px;
    border: 1px solid var(--aps-field-border);
    box-shadow:
        0 24px 50px -8px rgba(0, 0, 0, 0.28),
        0 10px 22px rgba(0, 0, 0, 0.10);
    padding: 14px;
    width: 280px;
    font-family: var(--aps-font-body);
    color: var(--aps-text);
    user-select: none;
}
.aps-tp__head {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-bottom: 10px;
}
.aps-tp__mode {
    appearance: none !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--aps-text-dim) !important;
    font-family: var(--aps-font-body) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 6px 14px !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: background 0.12s ease, color 0.12s ease;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-width: 0 !important;
    height: auto !important;
}
.aps-tp__mode.is-active {
    background: #efeff1 !important;
    color: var(--aps-text) !important;
}
.aps-tp__cols {
    display: flex;
    gap: 6px;
    align-items: stretch;
}
.aps-tp__col {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-width: 0;
}
.aps-tp__col--ampm { flex: 0 0 56px; }
.aps-tp__nav--up {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 15 12 9 18 15'/></svg>") !important;
}
.aps-tp__nav--down {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") !important;
}
.aps-tp__list {
    list-style: none;
    margin: 0;
    padding: 4px 0;
    width: 100%;
    height: 168px;          /* shows ~5 items */
    overflow-y: auto;
    scrollbar-width: none;  /* Firefox */
    -ms-overflow-style: none; /* IE/Edge */
    text-align: center;
    position: relative;
}
.aps-tp__list::-webkit-scrollbar { display: none; width: 0 !important; height: 0 !important; }
.aps-tp__list li {
    padding: 6px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--aps-text-dim);
    cursor: pointer;
    border-radius: 6px;
    margin: 2px 0;
    transition: color 0.12s ease, background 0.12s ease;
}
.aps-tp__list li:hover {
    color: var(--aps-text);
    background: rgba(248, 181, 74, 0.10);
}
.aps-tp__list li.is-selected {
    background: var(--aps-amber-bright);
    color: var(--aps-amber-text);
}
.aps-tp__save {
    display: block !important;
    width: 100% !important;
    margin-top: 12px !important;
    padding: 12px 16px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #111 !important;
    color: #fff !important;
    font-family: var(--aps-font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    text-transform: none !important;
    cursor: pointer;
    transition: filter 0.12s ease;
    box-shadow: 0 6px 14px rgba(0,0,0,0.18) !important;
    line-height: 1 !important;
    height: auto !important;
}
.aps-tp__save:hover { filter: brightness(1.15); }
.aps-tp__nav {
    appearance: none !important;
    border: 0 !important;
    cursor: pointer;
    width: 28px !important;
    height: 22px !important;
    border-radius: 6px !important;
    transition: background 0.12s ease;
    background-color: transparent !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 12px 12px !important;
    box-shadow: none !important;
    padding: 0 !important;
    color: transparent !important;
    text-indent: -9999px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    min-width: 0 !important;
}
.aps-tp__nav:hover { background-color: #f3f4f6 !important; }

/* TABLET / MOBILE — break the Elementor 2-column hero section so the calc
   card column gets full width. Elementor's flex layout keeps the calc
   squeezed to ~450px on iPad portrait otherwise; this lets it grow to the
   container width and centers it. Targets the user's specific section IDs
   from the Home page (102c235 = calc column, 1e358480 = parent section).
   :has() fallback covers the same elements via structural selectors in case
   the IDs change after a future Elementor edit. */
@media (max-width: 1024px) {
    .elementor-element-1e358480.e-con,
    .e-con:has(> .e-con-inner > .e-con > .elementor-widget-shortcode .chbs-main.chbs-widget) > .e-con-inner,
    .e-con:has(> .e-con > .elementor-widget-shortcode .chbs-main.chbs-widget) {
        flex-direction: column !important;
    }
    .elementor-element-102c235.e-con,
    .e-con:has(> .elementor-widget-shortcode .chbs-main.chbs-widget) {
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
    }
    .chbs-main.chbs-widget {
        max-width: 720px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Single-column FIELD layout: trigger whenever the card itself is narrower
   than two field columns can fit (~450px). Field labels are nowrap and
   ~210px min-width each, so two columns + 12px gap need ~432px of room. */
@media (max-width: 600px) {
    .chbs-main.chbs-widget #panel-1,
    .chbs-main.chbs-widget .chbs-form-field-pickup-date-time {
        grid-template-columns: 1fr !important;
    }
    /* Transfer Type: on mobile, match the other fields' alignment (icon left,
       label left-aligned). The desktop rule above centers the icon+label
       group; here we revert to the standard left-aligned field layout. */
    .chbs-main.chbs-widget .chbs-form-field-transfer-type {
        padding: 0 16px 0 52px !important;
        justify-content: flex-start !important;
    }
    .chbs-main.chbs-widget .chbs-form-field-transfer-type::before {
        position: absolute !important;
        left: 18px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .chbs-main.chbs-widget .chbs-form-field-transfer-type > label {
        text-align: left !important;
    }
}

@media (max-width: 560px) {
    .chbs-main.chbs-widget {
        padding: 22px !important;
        border-radius: 18px !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .chbs-main.chbs-widget .chbs-button-widget-submit,
    .chbs-main.chbs-widget .chbs-button.chbs-button-style-1 {
        font-size: 18px !important;
        padding: 18px 22px !important;
    }
}


/* =========================================================================
   PHASE 8 — Hero typography (override Elementor)
   Match homepage.png: bold sans-serif, centered.
   The text content is overridden by booking-skin.js (since we can't edit Elementor).
   ========================================================================= */

body.home .elementor-widget-heading h1.elementor-heading-title {
    font-family: var(--aps-font-display) !important;
    font-weight: 700 !important;
    font-size: clamp(36px, 4.6vw, 64px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
    text-align: center !important;
    margin: 0 0 12px !important;
    color: #ffffff !important;
}
body.home .elementor-widget-text-editor p,
body.home .elementor-widget-heading h2.elementor-heading-title,
body.home .elementor-widget-heading h3.elementor-heading-title,
body.home .elementor-widget-heading h4.elementor-heading-title {
    font-family: var(--aps-font-body) !important;
    font-size: clamp(16px, 1.6vw, 26px) !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    text-align: center !important;
    margin-top: 0 !important;
    margin-bottom: 28px !important;
    line-height: 1.4 !important;
}


/* =========================================================================
   PHASE 3 — Step 2 (Choose a Vehicle)
   Layout: route map at top, filter pills below, scrollable vehicle card
   list. Right rail (.chbs-layout-column-left, populated by plugin AJAX with
   the booking summary) is sticky. Plugin classes preserved verbatim — JS
   binds to .chbs-vehicle-list, .chbs-vehicle-filter, .chbs-layout-column-*,
   #chbs_google_map.
   ========================================================================= */

:root {
    --aps-step2-card-bg: #ffffff;
    --aps-step2-page-bg: #f7f8fa;
    --aps-step2-divider: #e8ebef;
    --aps-step2-sidebar-w: 360px;
    --aps-step2-gap: 28px;
    --aps-step2-radius-card: 14px;
    --aps-step2-radius-tile: 12px;
}

/* Page-level: tint ONLY the booking-form's immediate Elementor container
   light grey, so header and footer keep their original (dark) backgrounds.
   Use :has() to find the e-con that wraps the chauffeur-booking-system
   shortcode and tint only that section. */
body.page-id-665 .e-con:has(> .e-con-inner > .elementor-widget-shortcode > .elementor-widget-container > .elementor-shortcode > .chbs-main:not(.chbs-widget)),
body.page-id-665 .e-con:has(> .elementor-widget-shortcode > .elementor-widget-container > .elementor-shortcode > .chbs-main:not(.chbs-widget)) {
    background: var(--aps-step2-page-bg) !important;
    color: var(--aps-text);
}
body.page-id-665 .chbs-main:not(.chbs-widget) {
    background: transparent;
    font-family: var(--aps-font-body);
    color: var(--aps-text);
}
/* Hide the "Booking" Elementor heading on the booking page — the step 2
   layout has its own visual hierarchy and the heading is redundant. */
body.page-id-665 .elementor-widget-heading h2.elementor-heading-title {
    display: none !important;
}

/* TWO-COLUMN GRID — main on left (wider), sticky summary on right.
   Plugin renders .chbs-layout-25x75 with column-left FIRST in source order.
   Use explicit grid-column placement (more reliable than `order`) to put
   the SIDEBAR in col 2 (right) and MAIN in col 1 (left). */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .chbs-layout-25x75.aps-step2 {
    display: grid !important;
    grid-template-columns: 1fr var(--aps-step2-sidebar-w);
    gap: var(--aps-step2-gap);
    align-items: start;
    margin: 0 auto;
    max-width: 1200px;
    background: transparent;
}
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .chbs-layout-column-left,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .aps-step2-sidebar {
    grid-column: 2 !important;
    grid-row: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    position: sticky;
    top: 24px;
    align-self: start;
}
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .chbs-layout-column-right,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .aps-step2-main {
    grid-column: 1 !important;
    grid-row: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
}

/* MAP — rounded card, fixed-ish height, soft shadow */
.aps-step2-map-wrap {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    overflow: hidden;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);
    margin-bottom: 16px;
}
.aps-step2-map,
.aps-step2-map-wrap > #chbs_google_map {
    width: 100% !important;
    height: 320px !important;
    border-radius: var(--aps-step2-radius-card);
}

/* Hide all default Google Maps UI controls inside the step 2 map. The
   built-in zoom / fullscreen / pan / map-type / street-view buttons clutter
   the right edge — keep only the map and the Google logo (TOS requirement). */
.aps-step2-map-wrap .gm-bundled-control,
.aps-step2-map-wrap .gm-bundled-control-on-bottom,
.aps-step2-map-wrap .gm-fullscreen-control,
.aps-step2-map-wrap .gm-svpc,
.aps-step2-map-wrap .gm-style-mtc,
.aps-step2-map-wrap .gmnoprint:not(.gm-style-cc),
.aps-step2-map-wrap button[aria-label*="Zoom"],
.aps-step2-map-wrap button[aria-label*="zoom"],
.aps-step2-map-wrap button[title*="Zoom"],
.aps-step2-map-wrap button[title*="screen"],
.aps-step2-map-wrap button[aria-label*="Pan"],
.aps-step2-map-wrap button[aria-label*="Recenter"] {
    display: none !important;
}
/* Make sure the Google Maps overlay container fills the box correctly */
.aps-step2-map-wrap .gm-style {
    border-radius: var(--aps-step2-radius-card);
}

/* Desaturate the map TILES only by targeting the actual <img> tile elements
   AND any inline-SVG vector tiles (Google's <canvas> + <svg> nodes inside
   gm-style). Custom AdvancedMarkerElement HTML content is rendered in <div>
   wrappers in the marker pane — this filter doesn't touch those, so amber
   chips stay vivid. */
.aps-step2-map-wrap #chbs_google_map img,
.aps-step2-map-wrap #chbs_google_map canvas,
.aps-step2-map-wrap #chbs_google_map .gm-style svg {
    filter: grayscale(0.55) contrast(0.97);
}
/* Belt-and-suspenders: explicitly clear filter on our markers in case
   they ever land inside a filtered ancestor. */
.aps-step2-map-wrap .aps-mk {
    filter: none !important;
}
/* Hide the default plugin / Google red pin markers (we draw our own custom
   labels via OverlayView). Targets the area > div > div > img children that
   Google uses for marker IMGs. We DON'T hide any text labels (gm-style
   uses spans for labels, imgs only for marker icons + tile imagery). */
.aps-step2-map-wrap .gm-style > div > div > div > img[src*="marker"],
.aps-step2-map-wrap .gm-style img[src*="static.maps"],
.aps-step2-map-wrap .gm-style img[src*="vt/icon"] {
    display: none !important;
}
/* The custom OverlayView markers must NOT inherit the map's greyscale
   filter — they need their own colors (amber, etc.). We can't easily
   un-greyscale a child of a filtered element, so move the markers to the
   floatPane which sits above the filtered tile pane and isn't filtered. */
.aps-step2-map-wrap .aps-map-marker-wrap {
    filter: none !important;
}

/* CUSTOM MAP MARKER LABEL — a small card pinned to a route endpoint,
   with a colored time chip on the right and a small square pin underneath
   indicating the exact map point. Pickup uses dark chip; drop-off uses
   amber chip. */
.aps-mk {
    position: relative;
    display: inline-flex;
    align-items: stretch;
    background: transparent;
    font-family: var(--aps-font-body);
    font-size: 13px;
    line-height: 1.2;
    pointer-events: auto;
    white-space: nowrap;
    padding-bottom: 14px;
}
.aps-mk-card {
    background: #ffffff;
    padding: 6px 12px;
    border-radius: 8px 0 0 8px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    max-width: 240px;
}
.aps-mk-type {
    font-size: 10px;
    font-weight: 600;
    color: #6b7280;
    text-transform: capitalize;
    letter-spacing: 0.2px;
    line-height: 1;
    margin-bottom: 3px;
}
.aps-mk-name {
    font-size: 13px;
    font-weight: 700;
    color: #111;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
}
.aps-mk-name svg {
    color: #111;
    flex-shrink: 0;
}
.aps-mk-time {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 0 8px 8px 0;
    font-weight: 800;
    font-size: 14px;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
    min-width: 60px;
    text-align: center;
}
.aps-mk-time--dark {
    background: #111;
    color: #ffffff;
}
.aps-mk-time--amber {
    background: var(--aps-amber);
    color: #111;
}
/* Pin marker (the square dot connecting label to the precise point) */
.aps-mk-pin {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 12px;
    height: 12px;
    border-radius: 2px;
}
.aps-mk-pin--dark { background: #111; }
.aps-mk-pin--amber { background: var(--aps-amber); }
/* Drop-off label flips so the colored chip is on the left of the card
   (matches reference where airport label sits with chip first). */
.aps-mk--dropoff .aps-mk-card { order: 2; border-radius: 0 8px 8px 0; }
.aps-mk--dropoff .aps-mk-time { order: 1; border-radius: 8px 0 0 8px; }

/* FILTER BAR — horizontal pills below the map. Hide Standard + Type;
   keep only Passengers + Suitcases per spec. */
.chbs-main:not(.chbs-widget) .aps-vehicle-filter {
    background: var(--aps-step2-card-bg) !important;
    border-radius: var(--aps-step2-radius-card) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    padding: 14px 18px !important;
    margin-bottom: 18px !important;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    border: 1px solid var(--aps-step2-divider) !important;
}
/* Hide the section header inside the filter card — looks like clutter */
.aps-vehicle-filter > .chbs-form-label-group {
    display: none !important;
}
/* Hide Standard + Type filters per spec */
.aps-vehicle-filter .aps-filter-field--standard,
.aps-vehicle-filter .aps-filter-field--type {
    display: none !important;
}
.aps-vehicle-filter .aps-filter-field {
    flex: 1 1 0;
    min-width: 0;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid var(--aps-step2-divider);
    border-radius: 999px;
    padding: 10px 16px !important;
    background: #fafbfc;
}
.aps-vehicle-filter .aps-filter-field > label {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--aps-text-muted);
    margin: 0 !important;
    flex-shrink: 0;
}
.aps-vehicle-filter .aps-filter-field > label .chbs-tooltip {
    display: none !important;
}
/* Suppress the default jQuery UI selectmenu chrome inside the filter */
.aps-vehicle-filter .aps-filter-field select {
    border: 0 !important;
    background: transparent !important;
    font-family: var(--aps-font-body);
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--aps-text) !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 1;
    min-width: 0;
}
/* Style the jQuery UI selectmenu button if the plugin upgrades the select */
.aps-vehicle-filter .aps-filter-field .ui-selectmenu-button {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
    font-family: var(--aps-font-body) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--aps-text) !important;
    width: auto !important;
    min-width: 60px;
}
.aps-vehicle-filter .aps-filter-field .ui-selectmenu-button .ui-icon {
    background-position: center;
}

/* VEHICLE LIST — stack of card rows. The plugin renders each card with
   float-based layout: .chbs-vehicle-image floats left (opacity:0 by default,
   shown by JS once image loads), and .chbs-vehicle-content gets margin-left:340px
   to clear it. We override that with a flex layout. */
.chbs-main:not(.chbs-widget) .aps-vehicle-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.aps-vehicle-list .chbs-vehicle {
    background: var(--aps-step2-card-bg) !important;
    border: 1.5px solid var(--aps-step2-divider) !important;
    border-radius: var(--aps-step2-radius-card) !important;
    box-shadow: none !important;
    padding: 18px 22px !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    gap: 22px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}
.aps-vehicle-list .chbs-vehicle:hover {
    border-color: #111 !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06) !important;
}

/* IMAGE — clean photo against the card background (no separate panel).
   Kill plugin defaults (float:left, opacity:0, max-width:300px). */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-image {
    float: none !important;
    opacity: 1 !important;
    max-width: none !important;
    width: 180px;
    height: 110px;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-image > img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
}
/* Kill the plugin's `margin-left:340px` clear-float trick on the content
   sibling — we use flex now, that margin pushes content off-card. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-image + .chbs-vehicle-content,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-image + .chbs-vehicle-gallery + .chbs-vehicle-content {
    margin-left: 0 !important;
}

/* CONTENT column — fills remaining horizontal space; stacks header, price,
   meta vertically */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* HEADER ROW — vehicle name only. The Select button is hidden visually;
   the entire card is clickable instead (cleaner look matching reference).
   The price floats to the right edge via absolute positioning. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-header {
    text-align: left !important;
    display: block;
    margin: 0 !important;
    padding: 0;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > span {
    width: auto !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    gap: 12px;
    font-family: var(--aps-font-display);
    font-size: 20px;
    font-weight: 700 !important;
    color: var(--aps-text);
    padding: 0 !important;
    text-align: left !important;
    line-height: 1.2;
    margin-bottom: 8px;
}
/* HIDE the Select pill — whole card is clickable instead. Keep it in the
   DOM so plugin click-handlers still bind. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > .chbs-button,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > a.chbs-button {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: transparent !important;
    color: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    font-size: 0 !important;
    z-index: 1;
    text-indent: -9999px;
    overflow: hidden;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > .chbs-button .chbs-meta-icon-tick {
    display: none !important;
}
/* IMPORTANT: do NOT make .chbs-vehicle-content position:relative — the
   hidden SELECT pill is absolutely positioned with inset:0 and needs to
   anchor to the WHOLE card (.chbs-vehicle) so the entire card is clickable.
   Otherwise only clicks on the right portion of the card register. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content {
    padding-right: 0;
}

/* PRICE — pinned to the right side of the card (absolute), large bold */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price {
    display: block !important;
    margin: 0 !important;
    line-height: 1;
    position: absolute !important;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
    text-align: right;
    z-index: 2;
    pointer-events: none;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price > span {
    display: block;
    line-height: 1;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price > span > span {
    font-family: var(--aps-font-display);
    font-size: 24px !important;
    font-weight: 800 !important;
    color: var(--aps-text);
    line-height: 1;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price-before-discount {
    display: block;
    font-size: 14px !important;
    margin: 0 0 4px !important;
    text-decoration: line-through !important;
    color: var(--aps-text-dim) !important;
    font-weight: 600 !important;
}
/* Make room on the right for the price column */
.aps-vehicle-list .chbs-vehicle {
    padding-right: 140px !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content {
    padding-right: 8px;
}

/* META — passenger/bag chips. Plugin defaults: display:table + text-align:right
   + justify-content:right + 48px icon font, all of which push chips far right
   and oversize the icons. Override every level of the cascade. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    font-size: 13px;
    color: var(--aps-text-muted);
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div > div {
    flex-grow: 0 !important;
    text-align: left !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div > .chbs-vehicle-content-meta-info {
    display: inline-block;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div > .chbs-vehicle-content-meta-info > div {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 4px;
    height: auto !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta span {
    margin: 0 !important;
}
/* Capacity icons — replace the plugin's icon font glyphs with custom
   minimal SVG icons. Margins are 0 — spacing comes from the parent
   flex container's `gap` (cleaner and avoids cumulative margin bugs). */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-people,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-bag {
    font-size: 0 !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    line-height: 1 !important;
    display: inline-block !important;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 22px 22px;
}
/* Suppress the plugin's icon-font :before glyph so only our SVG shows */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-people::before,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-bag::before {
    content: none !important;
    display: none !important;
}
/* People — bold filled two-figure group, minimal modern style. Two head
   circles with rounded body silhouettes — second figure stands slightly
   behind the first for depth. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-people {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'><circle cx='9' cy='7' r='3.4'/><circle cx='17' cy='8' r='2.6'/><path d='M9 12.5c-3.6 0-6.5 2-6.5 4.7V19h13v-1.8c0-2.7-2.9-4.7-6.5-4.7z'/><path d='M17 12.8c-.6 0-1.2.1-1.7.2 1.2 1 2 2.4 2 4.2V19h4.7v-2.1c0-2.4-2.2-4.1-5-4.1z'/></svg>");
}
/* Luggage — inline SVG suitcase (data-URI). The previous icon-luggage.png
   404'd on the live server, and Hostinger's image layer mangles any .png, so
   it is embedded here as SVG (matching the passenger icon approach) — no file,
   no 404, renders everywhere. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-bag {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'><path d='M9 2a2 2 0 0 0-2 2v2H5.5A2.5 2.5 0 0 0 3 8.5v10A2.5 2.5 0 0 0 5.5 21H6v.25a.75.75 0 0 0 1.5 0V21h9v.25a.75.75 0 0 0 1.5 0V21h.5a2.5 2.5 0 0 0 2.5-2.5v-10A2.5 2.5 0 0 0 18.5 6H17V4a2 2 0 0 0-2-2H9zm0 1.6h6a.4.4 0 0 1 .4.4v2H8.6V4a.4.4 0 0 1 .4-.4zM8.25 9a.75.75 0 0 1 .75.75v7a.75.75 0 0 1-1.5 0v-7A.75.75 0 0 1 8.25 9zm7.5 0a.75.75 0 0 1 .75.75v7a.75.75 0 0 1-1.5 0v-7a.75.75 0 0 1 .75-.75z'/></svg>");
    width: 18px !important;
    height: 18px !important;
    background-size: 18px 18px;
    background-repeat: no-repeat;
    background-position: center;
}
/* Capacity numbers — plain dark text, NO circle background. Margins
   are 0; spacing comes from the parent flex container's `gap`. */
body .chbs-main .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div > .chbs-vehicle-content-meta-info > div > span.chbs-circle,
.aps-vehicle-list .chbs-vehicle .chbs-circle {
    display: inline-flex !important;
    align-items: center;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--aps-text) !important;
    border: 0 !important;
    border-radius: 0 !important;
    min-width: 0 !important;
    width: auto !important;
    height: 24px !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    margin: 0 !important;
    vertical-align: middle !important;
    text-align: left !important;
}
/* Last circle (bag count) — HIDE to match reference (icon only, no number).
   Need body prefix so this beats the higher-specificity rule above. */
body .chbs-main .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div > .chbs-vehicle-content-meta-info > div > span.chbs-circle:last-of-type,
body .aps-vehicle-list .chbs-vehicle .chbs-circle:last-of-type {
    display: none !important;
}
/* Bag icon — no right margin since nothing follows it now */
body .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta .chbs-meta-icon-bag {
    margin-right: 0 !important;
}
/* "Up to" prefix — match the same height/baseline as icons + numbers */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div::before {
    height: 24px;
    line-height: 24px;
    margin-right: 12px;
    color: var(--aps-text-muted);
    font-weight: 600;
    font-size: 14px;
}
/* Container for the meta row — vertically center everything */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta > div {
    display: flex !important;
    align-items: center;
    gap: 0;
    flex-wrap: wrap;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-meta-info > div {
    display: inline-flex !important;
    align-items: center;
    height: 24px;
}

/* HIDE the plugin's "MORE INFO" / show-more button + dropdown caret —
   it appears next to the capacity icons when descriptions exist, but
   we want descriptions always visible inline. */
.aps-vehicle-list .chbs-vehicle .chbs-show-more-button,
.aps-vehicle-list .chbs-vehicle .chbs-show-more-button *,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-more-info,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-meta .chbs-meta-icon-arrow-vertical-large,
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-meta a[href="#"]:not(.chbs-button) {
    display: none !important;
}

/* REORDER content blocks: name → capacity → description (matches reference).
   Plugin emits in order: header, price, description, meta. We use flex
   `order` to display them as: header(1), meta(2), description(3). The
   price is absolutely positioned on the right anyway, order doesn't matter
   for it. */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-header { order: 1; }
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-meta    { order: 2; }
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-description { order: 3; }

/* "MOST POPULAR" badge — only on Economy Car (data-id="389"). Renders as
   a small grey pill next to the vehicle name (matches the "TOP CLASS"
   badge pattern in the reference). */
.aps-vehicle-list .chbs-vehicle[data-id="389"] .chbs-vehicle-content-header > span:first-child::after {
    content: '★ MOST POPULAR';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    background: #f3f4f6;
    color: var(--aps-text);
    border-radius: 999px;
    padding: 0 12px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1;
    flex-shrink: 0;
    font-family: var(--aps-font-body);
    position: relative;
    top: -1px;
}

/* DESCRIPTION TEXT — small grey paragraph below capacity row.
   Plugin emits it as <div class="chbs-vehicle-content-description"><div><p>...</p></div></div>
   between price and meta. The plugin's default CSS collapses this with
   height:0 / overflow:hidden (only shown when .chbs-state-open is added by
   a "more info" button). We always show it. Use higher specificity AND
   target the > combinator path to beat the plugin's default rule. */
body .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description,
body .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-description,
.chbs-main .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-description {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
    display: block !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    width: auto !important;
}
/* Also force the inner div + p to be visible (in case plugin CSS hides them too) */
body .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description > div,
body .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description > div > p {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description > div {
    margin: 0 !important;
    padding: 0 !important;
}
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description p {
    font-family: var(--aps-font-body);
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--aps-text-muted) !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Hide the attribute sub-block (admin-only stuff) */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-description-attribute {
    display: none !important;
}

/* TEXT COLOR OVERRIDES — the theme tints generic .chbs-main text orange.
   Force dark text inside the booking page for our own elements. */
body.page-id-665 .aps-vehicle-list .chbs-vehicle,
body.page-id-665 .aps-vehicle-list .chbs-vehicle *,
body.page-id-665 .aps-step2-sidebar,
body.page-id-665 .aps-step2-sidebar *,
body.page-id-665 .chbs-main-content-step-2 .chbs-layout-column-left,
body.page-id-665 .chbs-main-content-step-2 .chbs-layout-column-left * {
    color: var(--aps-text);
}
body.page-id-665 .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > span,
body.page-id-665 .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price > span > span:first-child {
    color: var(--aps-text) !important;
}
body.page-id-665 .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price-before-discount {
    color: var(--aps-text-dim) !important;
}
body.page-id-665 .aps-vehicle-list .chbs-vehicle a.chbs-button,
body.page-id-665 .aps-vehicle-list .chbs-vehicle a.chbs-button * {
    color: var(--aps-amber-text) !important;
}
body.page-id-665 .aps-vehicle-filter,
body.page-id-665 .aps-vehicle-filter * {
    color: var(--aps-text);
}
body.page-id-665 .aps-vehicle-filter .ui-selectmenu-text {
    color: var(--aps-text) !important;
}
body.page-id-665 .aps-vehicle-filter > label,
body.page-id-665 .aps-vehicle-filter .aps-filter-field > label {
    color: var(--aps-text-muted) !important;
}

/* When a vehicle is selected — black border + subtle shadow (matches the
   reference where the selected vehicle has a clean dark outline) */
.aps-vehicle-list .chbs-vehicle.chbs-state-selected,
.aps-vehicle-list .chbs-vehicle-selected,
.aps-vehicle-list .chbs-vehicle:has(a.chbs-state-selected) {
    border-color: #111 !important;
    border-width: 2px !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.10) !important;
}

/* "Up to N" prefix label — added by JS (apsAddUpToLabels) which reads
   the actual passenger count from the first .chbs-circle. Renders inline
   with the capacity icons. The CSS ::before approach can't read the count
   value, so JS injects a real <span class="aps-up-to"> instead. */
.aps-vehicle-list .chbs-vehicle .aps-up-to {
    display: inline-flex;
    align-items: center;
    height: 24px;
    font-size: 14px;
    font-weight: 600;
    color: var(--aps-text-muted);
    margin-right: 14px;
    line-height: 1;
    white-space: nowrap;
}

/* "Total price" label below the absolute-positioned price */
.aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price::after {
    content: 'Total price';
    display: block;
    font-family: var(--aps-font-body);
    font-size: 11px;
    font-weight: 500;
    color: var(--aps-text-muted);
    text-align: right;
    text-transform: none;
    letter-spacing: 0;
    margin-top: 4px;
    line-height: 1;
}

/* Step 2 keeps booking-extra in the DOM for the JS controller, but on the
   redesign we'll move it into step 3 visually — hide here. */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .chbs-booking-extra {
    display: none !important;
}

/* SIDEBAR — summary card on the right. Plugin AJAX injects a .chbs-summary
   block here built by CHBS.BookingFormSummary.class.php with this structure:
     <div class="chbs-summary">
       <div class="chbs-summary-header"><h4>Summary</h4><a>Edit</a></div>
       <div class="chbs-summary-field">
         <div class="chbs-summary-field-name">LABEL</div>
         <div class="chbs-summary-field-value">value</div>
       </div>
       ...
     </div>
   Plus a price block via createSummaryPriceElement with .chbs-summary-price-element-total etc. */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .chbs-layout-column-left {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    padding: 0;
    font-size: 14px;
    color: var(--aps-text);
    overflow: hidden;
}
.aps-step2 .chbs-layout-column-left:empty {
    min-height: 280px;
    background: transparent;
    border: 0;
    box-shadow: none;
}

/* The .chbs-summary wrapper inside the sidebar */
.aps-step2 .chbs-layout-column-left .chbs-summary {
    padding: 0;
    margin: 0;
}

/* Header: "Summary" + Edit link */
.aps-step2 .chbs-layout-column-left .chbs-summary-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid var(--aps-step2-divider);
    background: var(--aps-step2-card-bg);
    margin: 0;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-header h4,
.aps-step2 .chbs-layout-column-left .chbs-summary-header h3 {
    font-family: var(--aps-font-display);
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--aps-text) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.2;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-header a {
    color: var(--aps-amber) !important;
    text-decoration: none;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-header a:hover {
    text-decoration: underline;
}

/* Each summary field (one key-value row, OR a 50x50 paired pair) */
.aps-step2 .chbs-layout-column-left .chbs-summary-field {
    padding: 12px 20px;
    margin: 0 !important;
    border-bottom: 1px solid var(--aps-step2-divider);
    background: transparent !important;
    box-shadow: none !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-field:last-of-type {
    border-bottom: 0;
}
/* Field name (label) — small uppercase grey */
.aps-step2 .chbs-layout-column-left .chbs-summary-field-name {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--aps-text-muted) !important;
    margin-bottom: 4px !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    background: transparent !important;
}
/* Field value — dark normal text (override any orange theme color) */
.aps-step2 .chbs-layout-column-left .chbs-summary-field-value {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--aps-text) !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

/* 50/50 paired layout (e.g., DATE | TIME on the same row) */
.aps-step2 .chbs-layout-column-left .chbs-summary-field .chbs-layout-50x50 {
    display: flex;
    gap: 16px;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-field .chbs-layout-50x50 > .chbs-layout-column-left,
.aps-step2 .chbs-layout-column-left .chbs-summary-field .chbs-layout-50x50 > .chbs-layout-column-right {
    flex: 1;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    position: static !important;
    grid-column: auto !important;
    grid-row: auto !important;
}

/* PRICE block at bottom of summary — plugin emits a chbs-summary-price-element
   wrapper containing rows like Total, Pay deposit, etc. */
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element {
    background: #f8f9fb;
    padding: 14px 20px;
    border-top: 1px solid var(--aps-step2-divider);
    margin: 0 !important;
    font-size: 14px;
    color: var(--aps-text);
}
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element > div {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 4px 0;
    color: var(--aps-text-muted);
}
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element-total {
    font-family: var(--aps-font-display);
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--aps-text) !important;
    border-top: 1px solid var(--aps-step2-divider);
    margin-top: 6px !important;
    padding-top: 10px !important;
}
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element-total > span:last-child,
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element-pay > span:last-child {
    color: var(--aps-text) !important;
    font-weight: 800;
}
/* Edge case: a stand-alone .chbs-summary-price-element-total inserted by AJAX */
.aps-step2 .chbs-layout-column-left .chbs-summary-price-element-total {
    display: flex;
    justify-content: space-between;
}

/* Aggressive theme-color override — site's theme tints generic text orange.
   Sidebar VALUES must always be dark; only the Edit link (an explicit <a>)
   keeps amber. */
body.page-id-665 .aps-step2 .chbs-layout-column-left,
body.page-id-665 .aps-step2 .chbs-layout-column-left * {
    color: var(--aps-text);
}
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-summary-field-name,
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-summary-price-element > div {
    color: var(--aps-text-muted) !important;
}
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-summary-header > a {
    color: var(--aps-amber) !important;
}

/* Strip any form-field input chrome that bleeds into the sidebar (the plugin
   sometimes wraps Total Distance / Time fields in .chbs-form-field which has
   its own border and dropdown-arrow background). */
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-form-field,
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-form-field-label,
body.page-id-665 .aps-step2 .chbs-layout-column-left input,
body.page-id-665 .aps-step2 .chbs-layout-column-left select,
body.page-id-665 .aps-step2 .chbs-layout-column-left .ui-selectmenu-button {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    color: var(--aps-text) !important;
}
body.page-id-665 .aps-step2 .chbs-layout-column-left .ui-selectmenu-button .ui-icon,
body.page-id-665 .aps-step2 .chbs-layout-column-left .chbs-meta-icon-arrow-vertical-large {
    display: none !important;
}

/* NAVIGATION BUTTONS — bottom row */
.aps-step2-nav {
    margin-top: 24px !important;
    padding: 0 !important;
    display: flex;
    justify-content: space-between;
    gap: 16px;
}
.aps-step2-nav .chbs-button-step-prev {
    background: transparent !important;
    color: var(--aps-text) !important;
    border: 1px solid var(--aps-step2-divider) !important;
}
.aps-step2-nav .chbs-button-step-next {
    background: var(--aps-amber) !important;
    color: var(--aps-amber-text) !important;
    border: 0 !important;
}
.aps-step2-nav .chbs-button {
    border-radius: 999px !important;
    padding: 14px 28px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

/* RESPONSIVE — collapse sidebar BELOW main on tablet/mobile. Need to
   override the explicit grid-column placements set above. */
@media (max-width: 980px) {
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .chbs-layout-25x75.aps-step2 {
        grid-template-columns: 1fr !important;
        max-width: 720px;
    }
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .chbs-layout-column-left,
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .aps-step2-sidebar {
        grid-column: 1 !important;
        grid-row: 2 !important;
        position: static !important;
    }
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .chbs-layout-column-right,
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .aps-step2 .aps-step2-main {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }
}
@media (max-width: 600px) {
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-2 .chbs-layout-25x75.aps-step2 {
        gap: 16px;
        padding: 0 4px;
    }
    .aps-step2-map,
    .aps-step2-map-wrap > #chbs_google_map {
        height: 200px !important;
    }
    .aps-vehicle-filter {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 12px !important;
    }
    .aps-vehicle-filter .aps-filter-field {
        flex: 1 1 100% !important;
    }
    /* Vehicle cards on mobile: image smaller, content stacks tighter */
    .aps-vehicle-list .chbs-vehicle {
        padding: 14px !important;
        gap: 12px !important;
        overflow: visible !important;
    }
    .aps-vehicle-list .chbs-vehicle .chbs-vehicle-image {
        width: 90px !important;
        height: 70px !important;
    }
    .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content > .chbs-vehicle-content-header {
        flex-wrap: wrap;
        gap: 8px;
    }
    .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > span {
        flex-basis: 100%;
        font-size: 15px;
    }
    .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-header > .chbs-button {
        order: 99;
        margin-left: 0 !important;
        padding: 8px 18px !important;
        font-size: 12px !important;
    }
    .aps-vehicle-list .chbs-vehicle .chbs-vehicle-content-price > span > span {
        font-size: 18px !important;
    }
    /* Nav buttons on mobile — full width, stacked */
    .aps-step2-nav {
        flex-direction: column-reverse;
    }
    .aps-step2-nav .chbs-button {
        width: 100%;
        text-align: center;
        justify-content: center;
        display: flex;
        align-items: center;
    }
}


/* =========================================================================
   PHASE 4 — Step 2 sidebar (custom render via booking-skin.js)
   The plugin's default summary HTML is replaced at runtime with our own
   .aps-sidebar-render structure: heading, trip-type pill row, route timeline,
   add-return button, price details, feature checkmarks, payment list.
   ========================================================================= */

/* Hide the plugin's native summary block — it stays in the DOM so the
   plugin can keep updating .chbs-summary-price-element after each vehicle
   selection (our MutationObserver picks up the change and re-renders). */
.aps-step2 .chbs-layout-column-left .chbs-summary {
    display: none !important;
}

.aps-sidebar-render {
    font-family: var(--aps-font-body);
    color: var(--aps-text);
}
.aps-sidebar-render .aps-sb-header {
    font-family: var(--aps-font-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--aps-text);
    padding: 18px 20px 16px;
    margin: 0;
    line-height: 1.2;
}

.aps-sidebar-render .aps-sb-body {
    padding: 16px 20px 18px;
    border-top: 1px solid var(--aps-step2-divider);
}

.aps-sidebar-render .aps-sb-trip-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}
.aps-sidebar-render .aps-sb-trip {
    font-size: 16px;
    font-weight: 700;
    color: var(--aps-text);
}
.aps-sidebar-render .aps-sb-pax-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--aps-step2-divider);
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 700;
    color: var(--aps-text);
    background: #fff;
    white-space: nowrap;
}
.aps-sidebar-render .aps-sb-pax-pill svg {
    width: 14px;
    height: 14px;
}

.aps-sidebar-render .aps-sb-date-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    font-size: 13px;
}
.aps-sidebar-render .aps-sb-date {
    color: #1f6dff;
    font-weight: 600;
}
.aps-sidebar-render .aps-sb-edit {
    color: var(--aps-text-muted);
    text-decoration: none;
    font-weight: 600;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.aps-sidebar-render .aps-sb-edit:hover {
    color: var(--aps-amber);
}

/* ROUTE TIMELINE — vertical line with two endpoints, stops on the right.
   Grid 16px (graphic) | 1fr (stops + meta). */
.aps-sidebar-render .aps-sb-route {
    display: grid;
    grid-template-columns: 12px 1fr;
    gap: 14px;
    padding: 4px 0 14px;
    border-bottom: 1px solid var(--aps-step2-divider);
    margin-bottom: 14px;
}
.aps-sidebar-render .aps-sb-route-graphic {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 4px;
}
.aps-sidebar-render .aps-sb-route-dot {
    width: 10px;
    height: 10px;
    background: #111;
    border-radius: 2px;
    flex-shrink: 0;
}
.aps-sidebar-render .aps-sb-route-line {
    width: 2px;
    flex: 1;
    background: #111;
    margin: 6px 0;
    min-height: 60px;
}
.aps-sidebar-render .aps-sb-stops {
    display: flex;
    flex-direction: column;
}
.aps-sidebar-render .aps-sb-stop {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
}
.aps-sidebar-render .aps-sb-stop-name {
    font-size: 14px;
    font-weight: 600;
    color: var(--aps-text);
    line-height: 1.3;
}
.aps-sidebar-render .aps-sb-stop-time {
    font-size: 14px;
    color: var(--aps-text-muted);
    font-weight: 600;
    flex-shrink: 0;
}
.aps-sidebar-render .aps-sb-route-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 12px 0;
}
.aps-sidebar-render .aps-sb-chip {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--aps-step2-divider);
    border-radius: 4px;
    padding: 3px 8px;
    font-size: 11px;
    font-weight: 600;
    color: var(--aps-text-muted);
    background: #fff;
    white-space: nowrap;
}

.aps-sidebar-render .aps-sb-add-return {
    width: 100%;
    border: 1.5px dashed #c0c4cc;
    background: #fff;
    border-radius: 10px;
    padding: 12px 14px;
    font-family: var(--aps-font-body);
    font-size: 13px;
    font-weight: 700;
    color: var(--aps-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 4px;
    transition: border-color 0.15s ease, background 0.15s ease;
}
.aps-sidebar-render .aps-sb-add-return:hover {
    background: #fff8eb;
    border-color: var(--aps-amber);
}
.aps-sidebar-render .aps-sb-add-return svg {
    color: var(--aps-amber);
    width: 18px;
    height: 18px;
}

/* PRICE DETAILS section */
.aps-sidebar-render .aps-sb-price {
    border-top: 1px solid var(--aps-step2-divider);
    padding: 16px 20px 18px;
}
.aps-sidebar-render .aps-sb-price-title {
    font-size: 13px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    color: var(--aps-text);
    margin-bottom: 12px;
}
.aps-sidebar-render .aps-sb-total-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}
.aps-sidebar-render .aps-sb-total-label {
    font-size: 14px;
    color: var(--aps-text-muted);
    font-weight: 600;
}
.aps-sidebar-render .aps-sb-total-value {
    font-family: var(--aps-font-display);
    font-size: 22px;
    font-weight: 800;
    color: var(--aps-text);
}

/* FEATURE CHECKMARKS row */
.aps-sidebar-render .aps-sb-features {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 20px 16px;
}
.aps-sidebar-render .aps-sb-feature {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--aps-step2-divider);
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    color: var(--aps-text);
    background: #fff;
    white-space: nowrap;
}
.aps-sidebar-render .aps-sb-feature svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    color: #2d8a3e;
    stroke-width: 3;
}
.aps-sidebar-render .aps-sb-feature--green {
    color: #2d8a3e;
    border-color: #c4e5cc;
}

/* PAYMENT METHODS row — text-only generic labels (no brand logos to avoid
   trademark issues). Center-aligned subtle row at the bottom. */
.aps-sidebar-render .aps-sb-pay {
    border-top: 1px solid var(--aps-step2-divider);
    padding: 12px 20px;
    text-align: center;
    font-size: 11px;
    font-weight: 600;
    color: var(--aps-text-muted);
    letter-spacing: 0.4px;
    text-transform: uppercase;
}
.aps-sidebar-render .aps-sb-pay-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 14px;
    margin-top: 4px;
}
.aps-sidebar-render .aps-sb-pay-list > span {
    color: var(--aps-text);
    font-weight: 700;
}

/* Once our custom sidebar is rendered, hide any plugin default summary
   that may co-exist (defensive). */
.aps-step2 .chbs-layout-column-left .aps-sidebar-render ~ .chbs-summary,
.aps-step2 .chbs-layout-column-left .chbs-summary + .aps-sidebar-render {
    display: block;
}

/* =========================================================================
   STEP 3 — "Booking details" (Transfeero-style)
   Layout mirrors step 2: white "Booking details" card on the left, sticky
   "Your Booking" sidebar (our .aps-sidebar-render, reused) on the right.
   The plugin AJAX-injects the lead-passenger fields into .chbs-client-form;
   booking-skin.js relocates the populated .chbs-booking-extra (child seat +
   meet & greet) into .aps-step3-extra-slot. Plugin hooks preserved verbatim.
   ========================================================================= */

/* TWO-COLUMN GRID — main card left, sticky sidebar right (same as step 2) */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .chbs-layout-25x75.aps-step3 {
    display: grid !important;
    grid-template-columns: 1fr var(--aps-step2-sidebar-w);
    gap: var(--aps-step2-gap);
    align-items: start;
    margin: 0 auto;
    max-width: 1200px;
    background: transparent;
}
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .chbs-layout-column-left,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .aps-step3-sidebar {
    grid-column: 2 !important;
    grid-row: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    position: sticky;
    top: 24px;
    align-self: start;
}
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .chbs-layout-column-right,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .aps-step3-main {
    grid-column: 1 !important;
    grid-row: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
}

/* SIDEBAR card wrapper (the inner .aps-sidebar-render styling is global) */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .chbs-layout-column-left {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    padding: 0;
    font-size: 14px;
    color: var(--aps-text);
    overflow: hidden;
}
.aps-step3 .chbs-layout-column-left:empty {
    min-height: 280px;
    background: transparent;
    border: 0;
    box-shadow: none;
}
/* Hide the plugin's native summary — kept in DOM for AJAX price updates.
   On step 3 the plugin also renders a standalone .chbs-summary-price-element
   as a SIBLING of .chbs-summary; hide that too (our render shows the total). */
.aps-step3 .chbs-layout-column-left .chbs-summary,
.aps-step3 .chbs-layout-column-left > .chbs-summary-price-element {
    display: none !important;
}
body.page-id-665 .aps-step3-sidebar,
body.page-id-665 .aps-step3-sidebar *,
body.page-id-665 .chbs-main-content-step-3 .chbs-layout-column-left,
body.page-id-665 .chbs-main-content-step-3 .chbs-layout-column-left * {
    color: var(--aps-text);
}

/* MAIN CARD — white "Booking details" panel */
.aps-step3-card {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    padding: 26px 28px 28px;
}
.aps-step3-card-head h3 {
    font-family: var(--aps-font-display);
    font-size: 22px;
    font-weight: 700;
    color: var(--aps-text) !important;
    margin: 0 0 4px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--aps-step2-divider);
    line-height: 1.2;
}

/* Strip the plugin's own box-shadow wrapper inside the client form — our
   card already provides the surface. */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-box-shadow {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Section heading ("Contact details" label-group). Force full-width within
   the flex row so it sits as a heading on its own line (not inline beside
   the first input), which also lets first/last name share a 50/50 row. */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-label-group {
    display: block;
    flex: 0 0 100%;
    width: 100%;
    font-family: var(--aps-font-display);
    font-size: 16px;
    font-weight: 700;
    color: var(--aps-text) !important;
    text-transform: none;
    letter-spacing: 0;
    margin: 22px 0 12px;
    padding: 0;
    border: 0;
    background: none !important;
}
body.page-id-665 .aps-step3 .chbs-client-form > .chbs-client-form-sign-up > .chbs-box-shadow > .chbs-clear-fix:first-child .chbs-form-label-group {
    margin-top: 4px;
}

/* ROWS — flex with gap (replaces plugin float widths) */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-clear-fix {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-clear-fix::after { display: none; }

/* FILLED INPUT FIELDS — soft grey box, small label on top (reference look) */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field {
    position: relative;
    flex: 1 1 100%;
    min-width: 0;
    margin: 0 0 14px;
    padding: 0;
    background: #f4f5f7;
    border: 1px solid transparent;
    border-radius: 11px;
    transition: border-color .15s ease, background .15s ease;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field.chbs-form-field-width-50 {
    flex: 1 1 calc(50% - 7px);
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field.chbs-form-field-width-33 {
    flex: 1 1 calc(33.333% - 10px);
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field:focus-within {
    background: #fff;
    border-color: var(--aps-amber-bright);
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .02em;
    text-transform: uppercase;
    color: var(--aps-text-dim) !important;
    padding: 10px 16px 0;
    margin: 0;
    line-height: 1.2;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > input[type="text"],
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > input[type="password"],
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > input[type="email"],
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > select,
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > textarea {
    width: 100%;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 2px 16px 11px !important;
    margin: 0 !important;
    font-size: 15px;
    font-weight: 600;
    color: var(--aps-text) !important;
    font-family: var(--aps-font-body);
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field > textarea {
    min-height: 84px;
    resize: vertical;
    font-weight: 500;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field input::placeholder,
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field textarea::placeholder {
    color: var(--aps-text-dim);
    font-weight: 500;
}

/* Phone field — intlTelInput sits inside the filled box. The phone input is
   wrapped by .iti (so it is NOT a direct child of .chbs-form-field); strip its
   amber bottom-border and force it to fit the box (was overflowing ~20px). */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti {
    width: 100%;
    display: block;
    padding: 2px 12px 9px;
    box-sizing: border-box;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti,
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti * {
    box-sizing: border-box;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti input,
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti input[type="text"] {
    width: 100% !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding-top: 2px !important;
    padding-bottom: 0 !important;
}
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field .iti__flag-container {
    padding: 0;
}
/* The bundled intlTelInput CSS points the flag sprite at a non-existent
   /img/flags.png (404 → grey box). The real sprite ships in the plugin's
   media folder; repoint it (path is relative to this stylesheet). */
body.page-id-665 .aps-step3 .iti__flag {
    background-image: url('../../plugins/chauffeur-booking-system/media/image/public/flags.png') !important;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    body.page-id-665 .aps-step3 .iti__flag {
        background-image: url('../../plugins/chauffeur-booking-system/media/image/public/flags@2x.png') !important;
    }
}

/* Flight-number help text injected by booking-skin.js */
.aps-step3 .aps-flight-help {
    display: block;
    font-size: 12.5px;
    font-weight: 500;
    color: var(--aps-text-muted);
    margin: -4px 2px 10px;
    line-height: 1.4;
}

/* HIDE billing address + payment on this step (deferred to later steps to
   match the reference's clean "Booking details" page). Inputs stay in the
   DOM so their values still submit. */
body.page-id-665 .aps-step3 .chbs-client-form-billing-address,
body.page-id-665 .aps-step3 .chbs-client-form .chbs-clear-fix:has(> .chbs-form-label-group .chbs-client-form-billing-address),
body.page-id-665 .aps-step3 .chbs-payment-form {
    display: none !important;
}
/* The "Billing address" toggle label row */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-label-group:has(.chbs-meta-icon-tick) {
    display: none !important;
}

/* =========================================================================
   STEP 3 — booking extras (child seat + meet & greet), relocated here
   ========================================================================= */
.aps-step3-extra-slot:empty { display: none; }
.aps-step3 .chbs-booking-extra {
    margin: 4px 0 8px;
}
.aps-step3 .chbs-booking-extra-header,
body.page-id-665 .aps-step3 .chbs-booking-extra-header,
body.page-id-665 .aps-step3 .chbs-booking-extra-header * {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--aps-font-display);
    font-size: 16px;
    font-weight: 700;
    color: var(--aps-text) !important;
    margin: 4px 0 12px;
    padding: 0;
}
.aps-step3 .chbs-booking-extra-header span {
    display: inline;
    margin: 0;
}
/* Centre the cart glyph inside its circle (the plugin left-aligns it). */
body.page-id-665 .aps-step3 .chbs-booking-extra-header .chbs-circle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto;
    width: 40px !important;
    height: 40px !important;
    line-height: 1 !important;
    font-size: 16px !important;
    text-align: center;
}
body.page-id-665 .aps-step3 .chbs-booking-extra-header .chbs-circle::before {
    margin: 0 !important;
    line-height: 1 !important;
}
/* Remove the plugin's table-cell column borders so each extra is a clean
   rounded card rather than a bordered grid. */
.aps-step3 .chbs-booking-extra-list .chbs-column-1,
.aps-step3 .chbs-booking-extra-list .chbs-column-2,
.aps-step3 .chbs-booking-extra-list .chbs-column-3 {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}
/* The plugin lays extras out as a CSS table (li = table-row-group, columns =
   table-cell) with high specificity. Force a clean flex row instead. */
.aps-step3 .chbs-booking-extra-list ul { margin: 0; padding: 0; display: block !important; }
.aps-step3 .chbs-booking-extra-list li {
    display: flex !important;
    align-items: center;
    gap: 14px;
    flex-wrap: nowrap;
    padding: 14px 16px !important;
    margin: 0 0 10px !important;
    background: #f4f5f7;
    border: 1px solid transparent;
    border-radius: 11px;
    width: auto !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-1,
.aps-step3 .chbs-booking-extra-list .chbs-column-2,
.aps-step3 .chbs-booking-extra-list .chbs-column-3 {
    display: block !important;
    width: auto !important;
    vertical-align: middle;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-2:empty { display: none !important; }
.aps-step3 .chbs-booking-extra-list li.chbs-state-selected,
.aps-step3 .chbs-booking-extra-list li:has(a.chbs-state-selected) {
    background: #fff;
    border-color: #111;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-1 {
    flex: 1 1 auto;
    min-width: 0;
}
.aps-step3 .chbs-booking-extra-list .chbs-booking-form-extra-name {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: var(--aps-text) !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-booking-form-extra-price {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--aps-text-muted) !important;
    margin-top: 2px;
}
.aps-step3 .chbs-booking-extra-list .chbs-booking-form-extra-price:empty { display: none; }
.aps-step3 .chbs-booking-extra-list .chbs-booking-form-extra-description:empty { display: none; }

/* Quantity stepper */
.aps-step3 .chbs-booking-extra-list .chbs-column-2 { flex: 0 0 auto; }
.aps-step3 .chbs-booking-extra-list .chbs-column-2:empty { display: none; }
.aps-step3 .chbs-booking-extra-list .chbs-column-2 .chbs-form-field {
    margin: 0;
    background: none;
    border: 0;
    width: auto !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-2 label {
    display: none;
}
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px;
    height: auto;
    width: auto !important;
    min-width: 0;
    flex: 0 0 auto;
    /* No outer pill — the user found the box distracting ("ghost box"). The
       +/- are styled as clean circular buttons flanking the number. */
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    /* The plugin positions the +/- buttons absolutely and the section relative,
       which our narrow box + overflow:hidden clipped. Lay them out in normal
       flex flow instead. */
    position: static !important;
    overflow: visible !important;
}
/* The plugin uses negative top/bottom margins (on the icon classes) to stack
   +/- diagonally, with high specificity. Match its specificity (section +
   button + icon class, body-scoped) to zero them so they sit centred. */
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section .chbs-quantity-section-button,
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section .chbs-quantity-section-button.chbs-meta-icon-minus,
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section .chbs-quantity-section-button.chbs-meta-icon-plus {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    width: 32px !important;
    height: 32px !important;
    align-self: center !important;
    float: none !important;
    border-radius: 50% !important;
    /* Prominent circular buttons — white with a bold dark outline and a bold
       glyph (the plugin tints + amber and stacks the glyphs with negative
       margins; all overridden here). */
    background: #fff !important;
    border: 2px solid #111 !important;
    box-shadow: none !important;
    color: #111 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    /* line-height:1 so the glyph centres in the flex box rather than sitting
       on the font's (high) math axis — keeps +/- level with the number. */
    line-height: 1 !important;
}
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section .chbs-quantity-section-button:hover {
    background: #111 !important;
    color: #fff !important;
}
/* Number between the buttons — bold, no box */
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section input {
    min-width: 20px;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
}
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section input {
    height: 32px !important;
    align-self: center !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    line-height: 1 !important;
    padding: 0 !important;
    float: none !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section-button,
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section-button {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--aps-text) !important;
    font-size: 17px;
    line-height: 1;
    user-select: none;
    border-radius: 50%;
}
body.page-id-665 .aps-step3 .chbs-booking-extra-list .chbs-quantity-section input {
    color: var(--aps-text) !important;
}
/* The plugin's +/- use icon-font glyphs that don't always render; show clean
   − and + symbols instead. */
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section-button.chbs-meta-icon-minus::before {
    content: '\2212' !important; /* minus sign */
    font-family: var(--aps-font-body) !important;
    font-weight: 800 !important;
    display: block;
    line-height: 1 !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section-button.chbs-meta-icon-plus::before {
    content: '\002B' !important; /* plus sign */
    font-family: var(--aps-font-body) !important;
    font-weight: 800 !important;
    display: block;
    line-height: 1 !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-quantity-section input {
    width: 34px;
    border: 0 !important;
    background: transparent !important;
    text-align: center;
    font-weight: 700;
    color: var(--aps-text) !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* Extra "Select" button */
.aps-step3 .chbs-booking-extra-list .chbs-column-3 { flex: 0 0 auto; }
.aps-step3 .chbs-booking-extra-list .chbs-column-3 a.chbs-button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 18px !important;
    border-radius: 999px !important;
    border: 1.5px solid #111 !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 13px;
    font-weight: 700;
    box-shadow: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-3 a.chbs-button .chbs-meta-icon-tick { display: none; }
.aps-step3 .chbs-booking-extra-list .chbs-column-3 a.chbs-button.chbs-state-selected {
    background: #111 !important;
    color: #fff !important;
}
.aps-step3 .chbs-booking-extra-list .chbs-column-3 a.chbs-button.chbs-state-selected::before {
    content: '\2713';
    font-weight: 700;
}

/* =========================================================================
   STEP 3 — navigation buttons (black wide "Continue", outline "Back")
   ========================================================================= */
.aps-step3-nav {
    display: flex !important;
    align-items: stretch;
    gap: 14px;
    max-width: 1200px;
    margin: 22px auto 0 !important;
    padding-right: calc(var(--aps-step2-sidebar-w) + var(--aps-step2-gap));
}
/* The plugin's .chbs-clear-fix adds an ::after pseudo that becomes a stray
   flex item (+ a trailing gap), stealing ~14px so the next button doesn't
   reach the card's right edge. Remove it. */
.aps-step3-nav::before,
.aps-step3-nav::after {
    display: none !important;
    content: none !important;
}
.aps-step3-nav .chbs-button-step-prev {
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: #fff !important;
    color: #111 !important;
    border: 1px solid var(--aps-step2-divider) !important;
    border-radius: 12px !important;
    padding: 0 22px !important;
    min-height: 54px;
    font-weight: 700;
    box-shadow: none !important;
    margin: 0 !important;
}
.aps-step3-nav .chbs-button-step-next {
    flex: 1 1 auto;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #111 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 12px !important;
    padding: 0 28px !important;
    min-height: 54px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: none !important;
    margin: 0 !important;
}
.aps-step3-nav .chbs-button-step-next:hover { background: #000 !important; }
.aps-step3-nav .chbs-button-step-next * { color: #fff !important; }
.aps-step3-nav .chbs-button-step-prev * { color: #111 !important; }

/* =========================================================================
   STEP 3 — responsive
   ========================================================================= */
@media (max-width: 900px) {
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .chbs-layout-25x75.aps-step3 {
        grid-template-columns: 1fr;
    }
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .chbs-layout-column-left,
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .aps-step3-sidebar {
        grid-column: 1 !important;
        grid-row: 2 !important;
        position: static;
    }
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .chbs-layout-column-right,
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-3 .aps-step3 .aps-step3-main {
        grid-row: 1 !important;
    }
    .aps-step3-nav { padding-right: 0; }
    body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field.chbs-form-field-width-50 {
        flex: 1 1 100%;
    }
}

/* =========================================================================
   STEP 4 — "Booking summary" → Transfeero billing + price + T&C
   Plugin's 3-column review is hidden (kept for AJAX injection); we build a
   white card (billing + price breakdown + T&C) with the sticky "Your Booking"
   sidebar (reusing the global .aps-sidebar-render styles).
   ========================================================================= */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-4 > .chbs-layout-33x33x33,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-4 .chbs-agreement,
.chbs-main:not(.chbs-widget) .chbs-main-content-step-4 .chbs-agreement-header {
    display: none !important;
}

/* Two-column grid (card left, sticky sidebar right) */
.chbs-main:not(.chbs-widget) .chbs-main-content-step-4 .aps-step4 {
    display: grid !important;
    grid-template-columns: 1fr var(--aps-step2-sidebar-w);
    gap: var(--aps-step2-gap);
    align-items: start;
    margin: 0 auto;
    max-width: 1200px;
    background: transparent;
}
.aps-step4 .aps-step4-main { grid-column: 1; min-width: 0; }
.aps-step4 .aps-step4-sidebar {
    grid-column: 2;
    position: sticky;
    top: 24px;
    align-self: start;
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    overflow: hidden;
}
body.page-id-665 .aps-step4-sidebar,
body.page-id-665 .aps-step4-sidebar * { color: var(--aps-text); }

.aps-step4-card {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    padding: 26px 28px 28px;
}
body.page-id-665 .aps-step4-card,
body.page-id-665 .aps-step4-card * { color: var(--aps-text); }
body.page-id-665 .aps-step4 .aps-step4-heading,
.aps-step4 .aps-step4-heading {
    font-family: var(--aps-font-display) !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: var(--aps-text) !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.aps-step4-section { margin-bottom: 26px; padding-bottom: 22px; border-bottom: 1px solid var(--aps-step2-divider); }
.aps-step4-section:last-of-type { border-bottom: 0; }

/* Tax Receipt / Tax Invoice toggle */
.aps-billing-type { display: flex; gap: 10px; margin-bottom: 16px; }
body.page-id-665 .aps-step4 .aps-billing-type-btn,
.aps-billing-type-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 9px;
    width: auto !important;
    padding: 11px 16px !important;
    border: 1.5px solid var(--aps-step2-divider) !important;
    border-radius: 8px !important;
    background: #fff !important;
    font-size: 14px;
    font-weight: 600;
    color: var(--aps-text) !important;
    cursor: pointer;
    box-shadow: none !important;
}
.aps-billing-type-btn .aps-radio {
    width: 16px; height: 16px;
    border-radius: 50%;
    border: 2px solid var(--aps-text-dim);
    flex: 0 0 auto;
    position: relative;
}
body.page-id-665 .aps-step4 .aps-billing-type-btn.aps-state-selected,
.aps-billing-type-btn.aps-state-selected { border-color: var(--aps-amber) !important; }
.aps-billing-type-btn.aps-state-selected .aps-radio { border-color: var(--aps-amber); }
/* Billing fields: force dark text (theme tints .chbs-main text amber) */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address input,
body.page-id-665 .aps-step4 .chbs-client-form-billing-address select,
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .ui-selectmenu-text {
    color: var(--aps-text) !important;
}
/* The plugin overlays a jQuery-UI selectmenu widget (showing stale text in
   amber). Hide it and show the styled native <select> instead. */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .ui-selectmenu-button {
    display: none !important;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field > select {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 2px 16px 11px !important;
    margin: 0 !important;
    font-size: 15px;
    font-weight: 600;
    color: var(--aps-text) !important;
    -webkit-appearance: none;
    appearance: none;
}
/* Force the price-breakdown total dark (plugin tints it amber) */
body.page-id-665 .aps-step4 .chbs-summary-price-element-total,
body.page-id-665 .aps-step4 .chbs-summary-price-element-total span {
    color: var(--aps-text) !important;
}
.aps-billing-type-btn.aps-state-selected .aps-radio::after {
    content: ''; position: absolute; inset: 2px; border-radius: 50%; background: var(--aps-amber);
}

/* Billing address fields — filled inputs (same look as step 3) */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-clear-fix {
    display: flex; flex-wrap: wrap; gap: 14px; margin: 0;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-clear-fix::after { display: none; }
/* Floating-label fields: the label sits centred like a placeholder when empty,
   then shrinks + floats to the top-left on focus or when filled. */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field {
    position: relative;
    flex: 1 1 calc(50% - 7px);
    min-width: 0;
    height: 56px;
    margin: 0 0 12px;
    padding: 0 !important; /* kill the plugin's .chbs-main .chbs-form-field 16px padding that pushed the value to the bottom */
    background: #ececec;
    border: 1.5px solid transparent;
    border-radius: 8px;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field.chbs-form-field-width-33 { flex: 1 1 calc(33.333% - 10px); }
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:hover { background: #e6e6e7; }
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:focus-within {
    background: #fff; border-color: var(--aps-amber-bright);
    box-shadow: 0 0 0 3px rgba(248, 181, 74, 0.14);
}
/* Label as floating placeholder */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field > label {
    position: absolute; left: 16px; top: 50%; transform: translateY(-50%);
    margin: 0; padding: 0; line-height: 1.1; pointer-events: none;
    font-size: 14.5px; font-weight: 500; letter-spacing: 0; text-transform: none;
    color: #9aa1ab !important;
    transition: top .14s ease, font-size .14s ease, color .14s ease;
    max-width: calc(100% - 32px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
/* Floated state (focused or filled) — sentence case + tight grouping above the
   value (matches the reference). */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:focus-within > label,
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field.aps-filled > label,
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:has(> select) > label {
    top: 9px; transform: none;
    font-size: 11px; font-weight: 600; letter-spacing: 0; text-transform: none;
    color: var(--aps-text-dim) !important;
}
/* Focused label takes the accent colour (like the reference) */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:focus-within > label {
    color: var(--aps-amber) !important;
}
/* The input/select fills the box; the value sits in a balanced position just
   below the floated label (vertically centred in the lower area). */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field > input,
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field > select {
    width: 100%; height: 100%; border: 0 !important; background: transparent !important; box-shadow: none !important;
    outline: 0 !important; padding: 24px 16px 6px !important; margin: 0 !important;
    line-height: 1; font-size: 15px; font-weight: 600; color: var(--aps-text) !important; font-family: var(--aps-font-body);
    -webkit-appearance: none; appearance: none;
    position: relative; z-index: 1;
}
/* When empty (label acting as centred placeholder) the input has no text, so the
   top padding doesn't matter; on fill, the 28px top padding sits the value below
   the floated label. */
/* Country select: chevron + room; the select keeps its value visible under the
   floated label. */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:has(> select)::after {
    content: ''; position: absolute; right: 16px; top: 50%; margin-top: -2px; width: 9px; height: 9px;
    border-right: 2px solid var(--aps-text-dim); border-bottom: 2px solid var(--aps-text-dim);
    transform: rotate(45deg); pointer-events: none; z-index: 2;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field > select { padding-right: 34px !important; cursor: pointer; }
/* The native <select> can't reliably offset its text under an absolute floated
   label (it vertical-centres, clipping). Use a flex column for the select field:
   a static small label on top, the select filling the row below — its value
   then renders correctly. */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:has(> select) {
    display: flex; flex-direction: column; justify-content: center;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:has(> select) > label {
    position: static !important; transform: none !important; top: auto !important; left: auto !important;
    padding: 0 16px 3px !important; margin: 0 !important; max-width: 100%;
    font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: 0 !important;
    text-transform: none !important; color: var(--aps-text-dim) !important;
}
body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field:has(> select) > select {
    height: auto !important; padding: 0 34px 0 16px !important; line-height: 1.3 !important;
    font-size: 15px;
}
/* hide the billing-address sub-heading + any nested toggle the plugin emits */
body.page-id-665 .aps-step4 .chbs-client-form-billing-address > .chbs-form-label-group { display: none; }

/* Save billing address checkbox row (rendered in template? optional) */
.aps-step4 .aps-save-billing { display: flex; align-items: center; gap: 9px; margin-top: 4px; font-size: 14px; }

/* Price breakdown — heading row with "Have a coupon?" link (reference img 15) */
.aps-step4-price-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.aps-step4-price-head .aps-step4-heading { margin-bottom: 0 !important; }
body.page-id-665 .aps-step4 .aps-coupon-toggle {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 600; color: var(--aps-text-muted) !important; text-decoration: none;
    white-space: nowrap;
}
body.page-id-665 .aps-step4 .aps-coupon-toggle:hover { color: var(--aps-text) !important; }
body.page-id-665 .aps-step4 .aps-coupon-toggle * { color: inherit !important; }

/* The price element rendered as a clean bordered box with line rows */
.aps-step4-price-slot { margin-top: 14px; }
.aps-step4 .chbs-summary-price-element {
    display: block;
    border: 1px solid var(--aps-step2-divider) !important;
    border-radius: 10px;
    overflow: hidden;
}
.aps-step4 .chbs-summary-price-element > div {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 14px 18px; font-size: 14.5px;
    border-top: 1px solid var(--aps-step2-divider) !important;
    border-bottom: 0 !important; border-left: 0 !important; border-right: 0 !important;
}
.aps-step4 .chbs-summary-price-element > div:first-child { border-top: 0; }
body.page-id-665 .aps-step4 .chbs-summary-price-element > div span { color: var(--aps-text) !important; }

/* Relabel "Selected vehicle" → "Outward" (CSS, survives plugin re-renders) */
.aps-step4 .chbs-summary-price-element-vehicle-fee > span:first-child { font-size: 0 !important; }
.aps-step4 .chbs-summary-price-element-vehicle-fee > span:first-child::before {
    content: 'Total'; font-size: 14.5px; font-weight: 500;
}
/* Injected "No additional fees" line */
.aps-step4 .aps-no-fees { gap: 8px !important; justify-content: flex-start !important; }
.aps-step4 .aps-no-fees svg { color: #1d9a5a; flex: 0 0 auto; }
.aps-step4 .aps-no-fees span { color: #1d9a5a !important; font-weight: 600; font-size: 13.5px; }
/* Selected-vehicle details row (replaces "No additional fees") — car image +
   name + capacity, styled like the Transfeero "Your choice" block. */
.aps-step4 .aps-vehicle-detail {
    display: flex !important; align-items: center; gap: 16px; justify-content: flex-start !important;
}
.aps-step4 .aps-vd-img {
    width: 84px; height: 48px; flex: 0 0 auto; object-fit: contain; object-position: left center;
}
.aps-step4 .aps-vd-info { flex: 1 1 auto; min-width: 0; }
.aps-step4 .aps-vd-name { font-size: 15px; font-weight: 700; color: var(--aps-text) !important; line-height: 1.2; }
.aps-step4 .aps-vd-meta { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 5px; }
.aps-step4 .aps-vd-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--aps-text-muted) !important; font-weight: 500; }
.aps-step4 .aps-vd-chip svg { color: var(--aps-text-muted); flex: 0 0 auto; }
/* Total row highlighted; relabel "Total" → "Total price" */
.aps-step4 .chbs-summary-price-element-total { background: #f4f5f7; }
.aps-step4 .chbs-summary-price-element-total > span:first-child { font-size: 0 !important; }
.aps-step4 .chbs-summary-price-element-total > span:first-child::before {
    content: 'Total price'; font-size: 16px; font-weight: 700;
}
.aps-step4 .chbs-summary-price-element-total > span:last-child { font-size: 22px; font-weight: 800; }

/* "Book today, lock the price" note */
.aps-step4 .aps-step4-lock {
    display: flex; align-items: flex-start; gap: 8px;
    margin-top: 14px; padding: 12px 14px; border-radius: 10px;
    background: #effaf3; color: #1d7a46 !important; font-size: 13px; font-weight: 500;
}
.aps-step4 .aps-step4-lock svg { flex: 0 0 auto; margin-top: 1px; }
.aps-step4 .aps-step4-lock * { color: #1d7a46 !important; }

/* Collapsible coupon (revealed by "Have a coupon?") */
/* Coupon: clean inline row — [discount code input] [Apply] — instead of the
   plugin's stacked label + big box + floating button.
   Plugin structure: .chbs-coupon-code-section > (.chbs-form-field > label+input) + a.chbs-button */
.aps-step4 .aps-coupon-wrap { margin-top: 12px; }
.aps-step4 .aps-coupon-wrap.aps-collapsed { display: none; }
.aps-step4 .aps-coupon-wrap .chbs-coupon-code-section {
    display: flex !important; gap: 8px; align-items: stretch;
}
.aps-step4 .aps-coupon-wrap .chbs-coupon-code-section .chbs-form-field {
    flex: 1 1 auto; margin: 0 !important; padding: 0 !important; min-width: 0; height: 48px;
    border: 0 !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important;
}
.aps-step4 .aps-coupon-wrap .chbs-coupon-code-section .chbs-form-field label { display: none !important; }
body.page-id-665 .aps-step4 input[name="chbs_coupon_code"] {
    width: 100% !important; height: 48px !important; background: #ececec !important; border: 0 !important;
    border-radius: 8px !important; padding: 0 16px !important; margin: 0 !important; font-size: 14.5px;
    box-shadow: none !important; color: var(--aps-text) !important; box-sizing: border-box !important;
}
body.page-id-665 .aps-step4 input[name="chbs_coupon_code"]:focus { box-shadow: 0 0 0 3px rgba(248,181,74,.14) !important; background: #fff !important; }
body.page-id-665 .aps-step4 .aps-coupon-wrap .chbs-coupon-code-section > a.chbs-button {
    flex: 0 0 auto; display: inline-flex !important; align-items: center; justify-content: center;
    margin: 0 !important; padding: 0 22px !important; height: 48px; min-height: 48px;
    background: #111 !important; color: #fff !important; border: 0 !important;
    border-radius: 8px !important; font-weight: 700; font-size: 14px; box-shadow: none !important; white-space: nowrap;
}
body.page-id-665 .aps-step4 .aps-coupon-wrap a.chbs-button * { color: #fff !important; }

/* T&C checkbox */
.aps-step4-tc {
    display: flex; align-items: flex-start; gap: 12px;
    padding: 16px; border: 1px solid var(--aps-step2-divider); border-radius: 12px;
    cursor: pointer; font-size: 14px; margin-top: 8px;
}
.aps-step4-tc.aps-tc-error { border-color: #e0463e; background: #fdf3f2; }
.aps-step4-tc input { position: absolute; opacity: 0; width: 0; height: 0; }
.aps-step4-tc .aps-tc-box {
    flex: 0 0 auto; width: 22px; height: 22px; border-radius: 6px;
    border: 2px solid var(--aps-text-dim); background: #fff; position: relative; margin-top: 0;
}
.aps-step4-tc input:checked + .aps-tc-box { background: #111; border-color: #111; }
.aps-step4-tc input:checked + .aps-tc-box::after {
    content: ''; position: absolute; left: 6px; top: 2px; width: 6px; height: 11px;
    border: solid #fff; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg);
}
.aps-step4-tc .aps-tc-text { line-height: 1.5; color: var(--aps-text) !important; }
.aps-step4-tc .aps-tc-text a { color: var(--aps-text) !important; font-weight: 700; text-decoration: underline; }

/* Navigation — black Continue + outline back, aligned to the card edges */
.aps-step4-nav {
    display: flex !important; align-items: stretch; gap: 14px;
    max-width: 1200px; margin: 22px auto 0 !important;
    padding-right: calc(var(--aps-step2-sidebar-w) + var(--aps-step2-gap));
}
.aps-step4-nav::before, .aps-step4-nav::after { display: none !important; content: none !important; }
.aps-step4-nav .chbs-button-step-prev {
    flex: 0 0 auto; display: inline-flex !important; align-items: center; justify-content: center;
    background: #fff !important; color: #111 !important; border: 1px solid var(--aps-step2-divider) !important;
    border-radius: 8px !important; padding: 0 22px !important; min-height: 56px; font-weight: 700;
    box-shadow: none !important; margin: 0 !important;
}
.aps-step4-nav .chbs-button-step-next {
    flex: 1 1 auto; display: inline-flex !important; align-items: center; justify-content: center; gap: 8px;
    background: #111 !important; color: #fff !important; border: 0 !important; border-radius: 8px !important;
    padding: 0 28px !important; min-height: 56px; font-size: 16px; font-weight: 700;
    box-shadow: none !important; margin: 0 !important;
}
.aps-step4-nav .chbs-button-step-next * { color: #fff !important; }
/* Keep Continue solid black even when gated (matches the reference); the T&C
   gate blocks the click + shows the error border, so no grey dimming. */
.aps-step4-nav .chbs-button-step-next.aps-disabled { cursor: not-allowed; }
/* Safety net so the T&C gate can't be bypassed if the JS capture-listener
   fails to bind: a disabled CONTINUE is also unclickable via CSS. */
.aps-step4-nav .chbs-button-step-next.aps-disabled { pointer-events: none; opacity: .55; }

/* Consistency: make step 2's nav buttons match steps 3/4 (black next, outline
   back) instead of the plugin's amber. */
body.page-id-665 .aps-step2-nav .chbs-button-step-next,
.aps-step2-nav .chbs-button-step-next {
    background: #111 !important;
    color: #fff !important;
    border: 0 !important;
}
body.page-id-665 .aps-step2-nav .chbs-button-step-next *,
.aps-step2-nav .chbs-button-step-next * { color: #fff !important; }
.aps-step2-nav .chbs-button-step-next:hover { background: #000 !important; }

@media (max-width: 900px) {
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-4 .aps-step4 { grid-template-columns: 1fr; }
    .aps-step4 .aps-step4-sidebar { grid-column: 1; grid-row: 2; position: static; }
    .aps-step4 .aps-step4-main { grid-row: 1; }
    .aps-step4-nav { padding-right: 0; }
    body.page-id-665 .aps-step4 .chbs-client-form-billing-address .chbs-form-field { flex: 1 1 100%; }
}

/* =====================================================================
   STEP 5 — Payment page (Transfeero-style)
   Price breakdown + payment-method card + sticky "Your Booking" sidebar.
   The plugin's .chbs-booking-complete chrome is hidden (kept in the DOM
   for its redirect wiring); our Confirm & Pay triggers it.
   ===================================================================== */
/* Hide the plugin's default "Thank you for your order" + redirect buttons. */
.chbs-main-content-step-5 .chbs-booking-complete { display: none !important; }

.chbs-main:not(.chbs-widget) .chbs-main-content-step-5 .aps-step5 {
    display: grid !important;
    grid-template-columns: 1fr var(--aps-step2-sidebar-w);
    gap: var(--aps-step2-gap);
    align-items: start;
    margin: 0 auto;
    max-width: 1200px;
    background: transparent;
}
.aps-step5 .aps-step5-main { grid-column: 1; min-width: 0; }
.aps-step5 .aps-step5-sidebar {
    grid-column: 2;
    position: sticky;
    top: 24px;
    align-self: start;
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    overflow: hidden;
}
body.page-id-665 .aps-step5-sidebar,
body.page-id-665 .aps-step5-sidebar * { color: var(--aps-text); }

.aps-step5-card {
    background: var(--aps-step2-card-bg);
    border-radius: var(--aps-step2-radius-card);
    border: 1px solid var(--aps-step2-divider);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
    padding: 26px 28px 28px;
}
body.page-id-665 .aps-step5-card,
body.page-id-665 .aps-step5-card * { color: var(--aps-text); }
body.page-id-665 .aps-step5 .aps-step5-heading,
.aps-step5 .aps-step5-heading {
    font-family: var(--aps-font-display) !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: var(--aps-text) !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.aps-step5-section { margin-bottom: 26px; padding-bottom: 22px; border-bottom: 1px solid var(--aps-step2-divider); }
.aps-step5-section:last-of-type { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }

/* --- Price breakdown box (cloned .chbs-summary-price-element from step 4) --- */
.aps-step5-price-slot { margin-top: 4px; }
.aps-step5 .chbs-summary-price-element {
    display: block;
    border: 1px solid var(--aps-step2-divider) !important;
    border-radius: 10px;
    overflow: hidden;
}
.aps-step5 .chbs-summary-price-element > div {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 14px 18px; font-size: 14.5px;
    border-top: 1px solid var(--aps-step2-divider) !important;
    border-bottom: 0 !important; border-left: 0 !important; border-right: 0 !important;
}
.aps-step5 .chbs-summary-price-element > div:first-child { border-top: 0; }
body.page-id-665 .aps-step5 .chbs-summary-price-element > div span { color: var(--aps-text) !important; }
.aps-step5 .chbs-summary-price-element-vehicle-fee > span:first-child { font-size: 0 !important; }
.aps-step5 .chbs-summary-price-element-vehicle-fee > span:first-child::before {
    content: 'Total'; font-size: 14.5px; font-weight: 500;
}
.aps-step5 .aps-no-fees { display: none !important; }
.aps-step5 .aps-vehicle-detail {
    display: flex !important; align-items: center; gap: 16px; justify-content: flex-start !important;
}
.aps-step5 .aps-vd-img { width: 84px; height: 48px; flex: 0 0 auto; object-fit: contain; object-position: left center; }
.aps-step5 .aps-vd-info { flex: 1 1 auto; min-width: 0; }
.aps-step5 .aps-vd-name { font-size: 15px; font-weight: 700; color: var(--aps-text) !important; line-height: 1.2; }
.aps-step5 .aps-vd-meta { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 5px; }
.aps-step5 .aps-vd-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--aps-text-muted) !important; font-weight: 500; }
.aps-step5 .aps-vd-chip svg { color: var(--aps-text-muted); flex: 0 0 auto; }
.aps-step5 .chbs-summary-price-element-total { background: #f4f5f7; }
body.page-id-665 .aps-step5 .chbs-summary-price-element-total,
body.page-id-665 .aps-step5 .chbs-summary-price-element-total span { color: var(--aps-text) !important; }
.aps-step5 .chbs-summary-price-element-total > span:first-child { font-size: 0 !important; }
.aps-step5 .chbs-summary-price-element-total > span:first-child::before {
    content: 'Total price'; font-size: 16px; font-weight: 700;
}
.aps-step5 .chbs-summary-price-element-total > span:last-child { font-size: 22px; font-weight: 800; }

/* --- Payment method card --- */
.aps-step5 .aps-pay-method {
    display: flex; align-items: center; gap: 14px;
    padding: 16px 18px; border: 1.5px solid var(--aps-amber); border-radius: 12px;
    background: #fffdf8; margin-bottom: 14px;
}
.aps-step5 .aps-pay-radio {
    flex: 0 0 auto; width: 20px; height: 20px; border-radius: 50%;
    border: 2px solid var(--aps-amber); position: relative;
}
.aps-step5 .aps-pay-method.aps-state-selected .aps-pay-radio::after {
    content: ''; position: absolute; inset: 3px; border-radius: 50%; background: var(--aps-amber);
}
.aps-step5 .aps-pay-method-text { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.aps-step5 .aps-pay-method-label { font-size: 15px; font-weight: 700; color: var(--aps-text) !important; }
.aps-step5 .aps-pay-method-sub { font-size: 13px; color: var(--aps-text-muted) !important; }
.aps-step5 .aps-pay-cards { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; }
.aps-step5 .aps-pay-card {
    display: inline-flex; align-items: center; height: 24px; padding: 0 8px;
    border: 1px solid var(--aps-step2-divider); border-radius: 5px; background: #fff;
    font-size: 11px; font-weight: 800; letter-spacing: .2px; color: #3a4252 !important;
    text-transform: uppercase;
}
.aps-step5 .aps-pay-secure {
    display: flex; align-items: flex-start; gap: 9px;
    padding: 12px 14px; border-radius: 10px; background: #f4f6f8;
    font-size: 13px; line-height: 1.5; color: var(--aps-text-muted) !important;
}
.aps-step5 .aps-pay-secure svg { flex: 0 0 auto; margin-top: 1px; color: #1d7a46; }
.aps-step5 .aps-pay-secure * { color: var(--aps-text-muted) !important; }

/* --- Confirm & Pay button --- */
.aps-step5-nav {
    display: flex !important; align-items: stretch;
    max-width: 1200px; margin: 22px auto 0 !important;
    padding-right: calc(var(--aps-step2-sidebar-w) + var(--aps-step2-gap));
}
.aps-step5-nav::before, .aps-step5-nav::after { display: none !important; content: none !important; }
body.page-id-665 .aps-step5-nav .aps-step5-pay-btn,
.aps-step5-nav .aps-step5-pay-btn {
    flex: 1 1 auto; display: inline-flex !important; align-items: center; justify-content: center; gap: 10px;
    background: #111 !important; color: #fff !important; border: 0 !important; border-radius: 8px !important;
    padding: 0 28px !important; min-height: 58px; font-size: 16px; font-weight: 700;
    box-shadow: none !important; margin: 0 !important; cursor: pointer;
}
.aps-step5-nav .aps-step5-pay-btn:hover { background: #000 !important; }
.aps-step5-nav .aps-step5-pay-btn * { color: #fff !important; }
.aps-step5-nav .aps-step5-pay-btn .aps-pay-lock { width: 17px; height: 17px; }
.aps-step5-nav .aps-step5-pay-btn .aps-pay-btn-amount { font-weight: 800; opacity: .92; }
.aps-step5-nav .aps-step5-pay-btn.aps-loading { opacity: .75; pointer-events: none; }
.aps-step5-nav .aps-step5-pay-btn.aps-loading .aps-pay-btn-label::after {
    content: '…';
}

@media (max-width: 900px) {
    .chbs-main:not(.chbs-widget) .chbs-main-content-step-5 .aps-step5 { grid-template-columns: 1fr; }
    .aps-step5 .aps-step5-sidebar { grid-column: 1; grid-row: 2; position: static; }
    .aps-step5 .aps-step5-main { grid-row: 1; }
    .aps-step5-nav { padding-right: 0; }
    .aps-step5 .aps-pay-method { flex-wrap: wrap; }
    .aps-step5 .aps-pay-cards { justify-content: flex-start; }
}

/* =====================================================================
   WOOCOMMERCE ORDER-PAY PAGE — Transfeero-style payment page
   (the real card-entry surface; template: plugin woocommerce/checkout/
   form-pay.php → .aps-pay-page). Self-contained: uses the global :root
   --aps-* tokens so it works outside the booking page context.
   ===================================================================== */
:root { --aps-pay-divider: #e7e9ee; --aps-pay-card-bg: #ffffff; }

.aps-pay-page { font-family: var(--aps-font-body); color: var(--aps-text); }
.aps-pay-page * { box-sizing: border-box; }
/* Give the content room below the (transparent) site header + center it */
.woocommerce-account .aps-pay-page, .woocommerce-checkout .aps-pay-page,
body .aps-pay-page { max-width: 1100px; margin: 0 auto; padding: 22px 18px 60px; }
/* Order-pay page chrome: drop the redundant "Pay for order" title (it collides
   with the transparent site header) and give the content room below the header. */
body.woocommerce-order-pay .page-header { display: none !important; }
body.woocommerce-order-pay #content.site-main { padding-top: 96px; }
/* Soften the guest-order warning so it isn't an alarming red block */
body.woocommerce-order-pay .woocommerce > ul.woocommerce-error {
    background: #fff8ec; border: 1px solid #f3d9a6; color: #8a6d3b;
    border-radius: 12px; list-style: none; padding: 14px 18px; margin: 0 auto 18px;
    max-width: 1100px; font-size: 13.5px; box-shadow: none;
}
body.woocommerce-order-pay .woocommerce > ul.woocommerce-error::before { display: none; }
body.woocommerce-order-pay .woocommerce > ul.woocommerce-error li { border: 0; padding: 0; margin: 0; }

.aps-pay-page .aps-pay-grid {
    display: grid; grid-template-columns: 1fr 360px; gap: 26px; align-items: start;
}
.aps-pay-page .aps-pay-main { min-width: 0; }

/* ---- Cards (left payment card + right sidebar share the look) ---- */
.aps-pay-page .aps-pay-main,
.aps-pay-page .aps-pay-sb-card {
    background: var(--aps-pay-card-bg);
    border: 1px solid var(--aps-pay-divider);
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(0,0,0,.06);
}
.aps-pay-page .aps-pay-main { padding: 24px 26px 26px; }
.aps-pay-page #order_review { background: transparent; border: 0; padding: 0; box-shadow: none; }

/* ---- Section headings ---- */
.aps-pay-page .aps-pay-heading {
    font-family: var(--aps-font-display); font-size: 19px; font-weight: 800;
    color: var(--aps-text); margin: 0 0 14px; line-height: 1.2;
}
.aps-pay-page .aps-pay-heading-pm { margin-top: 6px; }

/* ---- Price breakdown ---- */
.aps-pay-page .aps-pay-price-block { padding-bottom: 22px; margin-bottom: 22px; border-bottom: 1px solid var(--aps-pay-divider); }
.aps-pay-page .aps-pay-price-box { border: 1px solid var(--aps-pay-divider); border-radius: 12px; overflow: hidden; }
.aps-pay-page .aps-pay-price-line { display: flex; justify-content: space-between; gap: 12px; padding: 14px 18px; font-size: 14.5px; color: var(--aps-text); }
.aps-pay-page .aps-pay-price-line span:last-child { font-weight: 600; }
.aps-pay-page .aps-pay-price-nofees { display: flex; align-items: center; gap: 8px; padding: 0 18px 12px; font-size: 13px; font-weight: 600; color: #1d9a5a; }
.aps-pay-page .aps-pay-price-nofees svg { flex: 0 0 auto; }
.aps-pay-page .aps-pay-price-total {
    display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
    padding: 15px 18px; background: #f4f5f7; border-top: 1px solid var(--aps-pay-divider);
}
.aps-pay-page .aps-pay-price-total > span:first-child { font-size: 16px; font-weight: 700; }
.aps-pay-page .aps-pay-price-total-val { font-size: 22px; font-weight: 800; }
.aps-pay-page .aps-pay-price-total-val .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; }
.aps-pay-page .aps-pay-lock {
    display: flex; align-items: flex-start; gap: 8px; margin-top: 14px;
    padding: 12px 14px; border-radius: 10px; background: #effaf3; color: #1d7a46; font-size: 13px; font-weight: 500;
}
.aps-pay-page .aps-pay-lock svg { flex: 0 0 auto; margin-top: 1px; }

/* ---- Card brand badges ---- */
.aps-pay-page .aps-pay-brands { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 14px; }
.aps-pay-page .aps-brand {
    display: inline-flex; align-items: center; height: 24px; padding: 0 8px;
    border: 1px solid var(--aps-pay-divider); border-radius: 5px; background: #fff;
    font-size: 10.5px; font-weight: 800; letter-spacing: .3px; color: #3a4252; text-transform: uppercase;
}
.aps-pay-page .aps-brand-visa { color: #1a1f71; }
.aps-pay-page .aps-brand-mc { color: #b34700; }
.aps-pay-page .aps-brand-amex { color: #006fcf; }
.aps-pay-page .aps-brand-pp { color: #003087; }

/* ---- Express checkout (Apple / Google Pay) ---- */
.aps-pay-page .aps-pay-express-label {
    font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
    color: var(--aps-text-dim); margin: 0 0 10px;
}
.aps-pay-page .aps-pay-express-row { display: flex; gap: 12px; }
.aps-pay-page .aps-wallet {
    flex: 1 1 0; display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    height: 50px; border-radius: 9px; border: 1.5px solid #111; cursor: pointer;
    font-size: 15px; font-weight: 700; line-height: 1;
}
.aps-pay-page .aps-wallet-apple { background: #111; color: #fff; border-color: #111; }
.aps-pay-page .aps-wallet-apple .aps-wallet-ico { color: #fff; }
.aps-pay-page .aps-wallet-google { background: #fff; color: #3c4043; border-color: #dadce0; }
.aps-pay-page .aps-wallet:hover { filter: brightness(.96); }
.aps-pay-page .aps-pay-express-native:empty { display: none; }
.aps-pay-page .aps-pay-divider {
    display: flex; align-items: center; gap: 14px; margin: 18px 0 4px;
    color: var(--aps-text-dim); font-size: 13px; font-weight: 600;
}
.aps-pay-page .aps-pay-divider::before, .aps-pay-page .aps-pay-divider::after {
    content: ''; flex: 1 1 auto; height: 1px; background: var(--aps-pay-divider);
}
.aps-pay-page .aps-wallet-note {
    margin: 10px 0 0; padding: 9px 12px; border-radius: 8px;
    background: #fff8ec; border: 1px solid #f3d9a6; color: #8a6d3b; font-size: 12.5px;
}

/* ---- Payment methods list (cod + stripe card) ---- */
.aps-pay-page #payment { background: transparent !important; margin: 14px 0 0; }
.aps-pay-page ul.wc_payment_methods {
    list-style: none !important; margin: 0 !important; padding: 0 !important;
    border: 0 !important; display: flex; flex-direction: column; gap: 12px;
}
/* Card-first: the Stripe card box is the primary method, shown above Cash. */
.aps-pay-page ul.wc_payment_methods > li.payment_method_stripe { order: -1; }
.aps-pay-page ul.wc_payment_methods li.wc_payment_method {
    list-style: none !important; margin: 0 !important; padding: 0 !important; background: transparent;
}
.aps-pay-page ul.wc_payment_methods > li {
    border: 1.5px solid var(--aps-pay-divider); border-radius: 12px; overflow: hidden;
    transition: border-color .15s ease, box-shadow .15s ease;
}
/* Clean dark border on the selected method (Transfeero look — not amber). */
.aps-pay-page ul.wc_payment_methods > li:has(input:checked) {
    border-color: #1c2330; box-shadow: 0 0 0 1px #1c2330;
}
.aps-pay-page ul.wc_payment_methods > li > label {
    display: flex !important; align-items: center; gap: 12px; margin: 0 !important;
    padding: 16px 18px; font-size: 15px; font-weight: 700; color: var(--aps-text) !important; cursor: pointer;
}
/* Hide the radio circles — rows are click-to-select (booking-skin.js). */
.aps-pay-page ul.wc_payment_methods > li > input[type="radio"] { display: none !important; }
/* Hide the Stripe gateway's own label ("Payment methods") — the card box with
   the brand strip on top is self-explanatory. Cash keeps its label. */
.aps-pay-page ul.wc_payment_methods > li.payment_method_stripe > label { display: none !important; }
.aps-pay-page ul.wc_payment_methods > li > label img,
.aps-pay-page ul.wc_payment_methods > li > label .payment_method_icon { margin-left: auto; max-height: 24px; }

/* Card-brand strip relocated (by JS) to the TOP of the Stripe card box —
   centred icons with a divider beneath, like the reference. */
.aps-pay-page li.payment_method_stripe .aps-pay-brands-incard {
    display: flex !important; justify-content: center; align-items: center; flex-wrap: wrap;
    gap: 8px; margin: 0 !important; padding: 14px 16px; background: #fff;
    border-bottom: 1px solid var(--aps-pay-divider);
}
/* the card-fields box revealed under the selected method */
.aps-pay-page .payment_box {
    margin: 0 !important; padding: 14px 16px 18px !important; background: #fff !important;
    border-top: 0; font-size: 14px; color: var(--aps-text-muted);
}
.aps-pay-page li.payment_method_cod .payment_box { background: #fafbfc !important; }
.aps-pay-page .payment_box::before { display: none !important; } /* kill WC's little arrow */
.aps-pay-page .payment_box p { margin: 8px 0; }

/* Flatten the Stripe UPE form: WooCommerce's gateway wraps the Stripe element
   in a <fieldset> that carries the browser-default 2px groove border (the ugly
   nested box) plus an empty fieldset strip; and a 1100px-wide hidden style-probe
   input overflows and creates a horizontal scrollbar. Remove all of it so the
   card fields sit flush, like the reference. */
.aps-pay-page .payment_box fieldset,
.aps-pay-page #wc-stripe-upe-form {
    border: 0 !important; margin: 0 !important; padding: 0 !important; min-width: 0 !important;
}
.aps-pay-page #wc-stripe-hidden-style-input {
    position: absolute !important; left: -9999px !important; top: 0 !important;
    pointer-events: none !important;
}

/* ---- Terms + submit ---- */
.aps-pay-page .form-row { margin: 18px 0 0 !important; padding: 0 !important; }
.aps-pay-page .woocommerce-terms-and-conditions-wrapper { margin: 0 0 16px; font-size: 13px; color: var(--aps-text-muted); }
.aps-pay-page #place_order,
.aps-pay-page input#place_order.aps-pay-submit {
    width: 100% !important; display: block; height: 58px; line-height: 58px; padding: 0 !important;
    background: #111 !important; color: #fff !important; border: 0 !important; border-radius: 10px !important;
    font-size: 17px !important; font-weight: 800 !important; cursor: pointer; box-shadow: none !important;
    text-transform: none !important; letter-spacing: 0 !important; float: none !important; margin: 0 !important;
}
.aps-pay-page #place_order:hover { background: #000 !important; }
.aps-pay-page .aps-pay-trust {
    display: flex; align-items: flex-start; gap: 8px; margin-top: 14px;
    font-size: 12.5px; line-height: 1.5; color: var(--aps-text-dim);
}
.aps-pay-page .aps-pay-trust svg { flex: 0 0 auto; margin-top: 1px; color: #1d9a5a; }

/* ---- Sidebar: Your Booking + price ---- */
.aps-pay-page .aps-pay-sidebar { position: sticky; top: 24px; }
.aps-pay-page .aps-pay-sb-card { overflow: hidden; }
.aps-pay-page .aps-pay-sb-head {
    background: #111; color: #fff; font-size: 16px; font-weight: 800; padding: 16px 20px;
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.aps-pay-page .aps-pay-sb-edit {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 700; color: #fff !important; text-decoration: none;
    opacity: .9; padding: 4px 10px; border: 1px solid rgba(255,255,255,.4); border-radius: 7px;
    white-space: nowrap;
}
.aps-pay-page .aps-pay-sb-edit:hover { opacity: 1; background: rgba(255,255,255,.12); }
.aps-pay-page .aps-pay-sb-edit svg { flex: 0 0 auto; }
.aps-pay-page .aps-pay-sb-body { padding: 18px 20px 4px; }
.aps-pay-page .aps-pay-sb-item + .aps-pay-sb-item { margin-top: 14px; border-top: 1px solid var(--aps-pay-divider); padding-top: 14px; }
.aps-pay-page .aps-pay-sb-item-name { font-size: 15px; font-weight: 700; color: var(--aps-text); line-height: 1.3; }
.aps-pay-page .aps-pay-sb-meta { list-style: none; margin: 8px 0 0; padding: 0; }
.aps-pay-page .aps-pay-sb-meta li {
    display: flex; justify-content: space-between; gap: 12px; padding: 4px 0; font-size: 13px;
    border: 0; margin: 0;
}
.aps-pay-page .aps-pay-sb-meta .aps-k { color: var(--aps-text-dim); }
.aps-pay-page .aps-pay-sb-meta .aps-v { color: var(--aps-text); font-weight: 600; text-align: right; }
.aps-pay-page .aps-pay-sb-price { padding: 12px 20px 4px; border-top: 1px solid var(--aps-pay-divider); margin-top: 12px; }
.aps-pay-page .aps-pay-sb-line { display: flex; justify-content: space-between; gap: 12px; font-size: 14px; color: var(--aps-text-muted); padding: 5px 0; }
.aps-pay-page .aps-pay-sb-total-row {
    display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
    margin-top: 8px; padding-top: 12px; border-top: 1px solid var(--aps-pay-divider);
}
.aps-pay-page .aps-pay-sb-total-row > span:first-child { font-size: 16px; font-weight: 700; }
.aps-pay-page .aps-pay-sb-total { font-size: 22px; font-weight: 800; color: var(--aps-text); }
.aps-pay-page .aps-pay-sb-total .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; }
.aps-pay-page .aps-pay-sb-features { padding: 14px 20px 20px; display: flex; flex-direction: column; gap: 9px; }
.aps-pay-page .aps-pay-sb-feature { display: flex; align-items: center; gap: 9px; font-size: 13px; color: var(--aps-text-muted); }
.aps-pay-page .aps-pay-sb-feature svg { color: #1d9a5a; flex: 0 0 auto; }

/* ---- Sidebar: accepted payment icons ---- */
.aps-pay-page .aps-pay-sb-icons { margin-top: 16px; text-align: center; }
.aps-pay-page .aps-pay-sb-icons-label {
    font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
    color: var(--aps-text-dim); margin-bottom: 9px;
}
.aps-pay-page .aps-pay-sb-icons-row {
    display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: center; line-height: 1.6;
}
.aps-pay-page .aps-pay-sb-icons-row span {
    font-size: 11.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
    color: var(--aps-text-dim); white-space: nowrap;
}

/* ---- Tidy WooCommerce chrome on this page ---- */
.aps-pay-page .woocommerce-notices-wrapper .woocommerce-error,
.aps-pay-page + .woocommerce-notices-wrapper { display: none; }
body.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper:has(.woocommerce-error) { /* keep real errors */ }

@media (max-width: 880px) {
    .aps-pay-page .aps-pay-grid { grid-template-columns: 1fr; }
    .aps-pay-page .aps-pay-sidebar { position: static; grid-row: 1; }
    .aps-pay-page .aps-pay-express-row { flex-direction: column; }
}

/* === iti flag sprite as data URI (bypass Hostinger .png image optimizer) ===
   Hostinger CDN serves a stale/broken 1600x4 blob for ANY .png URL on this
   site (verified: brand-new .png paths return the old bytes; same content
   under .gif/.webp passes through). Embedding the real v16 sprite here makes
   the country flags render with no .png request. 1x sprite; the plugin's
   @2x background-size keeps it correct on retina. */
body.page-id-665 .aps-step3 .iti__flag,
body.page-id-665 .iti__flag {
    background-image: url("data:image/png;base64,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") !important;
}

/* ===================================================================
   Home page (page-id-81) — fix white-on-white text on the two LIGHT
   sections left from the Elementor migration. The kit's global heading
   colour is white (correct on the dark sections); these three elements
   sit on white backgrounds, so their text was invisible. Force dark.
   - 885ae68  = "Where every ride feels special" (H2)
   - 21584b48 = "Your questions, answered" (H2)
   - 715dbaae = FAQ intro paragraph
   =================================================================== */
/* Specificity (0,4,1) — double body class beats the broad PHASE-8 hero rule
   `body.home .elementor-widget-heading h2.elementor-heading-title` (0,3,2)
   that otherwise forces these to white. */
body.home.page-id-81 .elementor-element-885ae68 .elementor-heading-title,
body.home.page-id-81 .elementor-element-21584b48 .elementor-heading-title {
    color: #14171f !important;
}
body.home.page-id-81 .elementor-element-715dbaae,
body.home.page-id-81 .elementor-element-715dbaae * {
    color: #555a64 !important;
}

/* ===================================================================
   Rich payment sidebar: trip + route + vehicle (matches the booking
   steps' "Your Booking" / Transfeero reference). Built server-side in
   form-pay.php from the booking record.
   =================================================================== */
.aps-pay-page .aps-pay-sb-trip { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.aps-pay-page .aps-pay-sb-transfer { font-size:16px; font-weight:800; color:var(--aps-text); }
.aps-pay-page .aps-pay-sb-pax {
    display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:600; color:var(--aps-text-muted);
    border:1px solid var(--aps-pay-divider); border-radius:20px; padding:4px 10px; white-space:nowrap;
}
.aps-pay-page .aps-pay-sb-date { font-size:13px; color:var(--aps-text-dim); margin-top:4px; }
.aps-pay-page .aps-pay-sb-route { margin:14px 0 4px; }
.aps-pay-page .aps-pay-sb-stop { display:flex; align-items:flex-start; gap:10px; }
.aps-pay-page .aps-pay-sb-dot { width:9px; height:9px; border-radius:2px; background:#1c2330; flex:0 0 auto; margin-top:4px; }
.aps-pay-page .aps-pay-sb-dot-end { background:var(--aps-amber); border-radius:50%; }
.aps-pay-page .aps-pay-sb-stop-txt { flex:1 1 auto; min-width:0; }
.aps-pay-page .aps-pay-sb-stop-main { font-size:14px; font-weight:700; color:var(--aps-text); line-height:1.3; }
.aps-pay-page .aps-pay-sb-stop-sub { font-size:12px; color:var(--aps-text-dim); margin-top:1px; }
.aps-pay-page .aps-pay-sb-time { font-size:13px; font-weight:600; color:var(--aps-text); white-space:nowrap; flex:0 0 auto; }
.aps-pay-page .aps-pay-sb-leg { display:flex; gap:6px; margin:6px 0 6px 4px; padding:3px 0 3px 14px; border-left:1.5px dashed var(--aps-pay-divider); }
.aps-pay-page .aps-pay-sb-legpill { font-size:11px; color:var(--aps-text-muted); background:#f3f4f6; border-radius:6px; padding:2px 8px; white-space:nowrap; }
.aps-pay-page .aps-pay-sb-choice-label { font-size:13px; font-weight:700; color:var(--aps-text); margin:16px 0 8px; padding-top:14px; border-top:1px solid var(--aps-pay-divider); }
.aps-pay-page .aps-pay-sb-vehicle { display:flex; align-items:center; gap:12px; }
.aps-pay-page .aps-pay-sb-veh-img { width:74px; height:48px; object-fit:contain; flex:0 0 auto; border-radius:6px; }
.aps-pay-page .aps-pay-sb-veh-name { font-size:15px; font-weight:700; color:var(--aps-text); }
.aps-pay-page .aps-pay-sb-veh-cap { display:flex; flex-wrap:wrap; gap:4px 12px; margin-top:3px; font-size:12px; color:var(--aps-text-muted); }
/* features rendered as pills (reference look) */
.aps-pay-page .aps-pay-sb-features { flex-direction:row !important; flex-wrap:wrap; gap:7px !important; }
.aps-pay-page .aps-pay-sb-feature { border:1px solid var(--aps-pay-divider); border-radius:20px; padding:5px 11px; font-size:12px; }
.aps-pay-page .aps-pay-sb-feature:first-child { border-color:#1d9a5a; color:#1d9a5a; }
.aps-pay-page .aps-pay-sb-feature:first-child svg { color:#1d9a5a; }

/* ===================================================================
   Order-received (Thank you) page — confirmation card
   =================================================================== */
body.woocommerce-order-received .page-header { display:none !important; }
body.woocommerce-order-received #content.site-main { padding-top: 60px; }
.aps-ty-page .aps-ty-wrap { max-width:640px; margin:0 auto; padding:8px 18px 64px; display:flex; flex-direction:column; gap:18px; }
.aps-ty-page .aps-ty-hero { text-align:center; background:var(--aps-card-bg,#fff); border:1px solid var(--aps-pay-divider); border-radius:16px; padding:34px 26px 26px; }
.aps-ty-page .aps-ty-ico { width:64px; height:64px; border-radius:50%; background:#e7f7ee; color:#1d9a5a; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
.aps-ty-page .aps-ty-ico-fail { background:#fde8e8; color:#d23b3b; }
.aps-ty-page .aps-ty-title { font-size:24px; font-weight:800; color:var(--aps-text); margin:0 0 8px; line-height:1.2; }
.aps-ty-page .aps-ty-sub { font-size:14.5px; color:var(--aps-text-muted); margin:0 auto; max-width:470px; line-height:1.55; }
.aps-ty-page .aps-ty-meta { list-style:none; margin:22px 0 0; padding:18px 0 0; border-top:1px solid var(--aps-pay-divider); display:flex; flex-wrap:wrap; gap:14px 28px; justify-content:center; }
.aps-ty-page .aps-ty-meta li { display:flex; flex-direction:column; gap:2px; text-align:left; }
.aps-ty-page .aps-ty-meta li span { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:var(--aps-text-dim); }
.aps-ty-page .aps-ty-meta li strong { font-size:15px; color:var(--aps-text); font-weight:700; }
.aps-ty-page .aps-ty-meta li strong .woocommerce-Price-amount { font-size:inherit; font-weight:inherit; }
.aps-ty-page .aps-ty-card { background:var(--aps-card-bg,#fff); border:1px solid var(--aps-pay-divider); border-radius:16px; overflow:hidden; }
.aps-ty-page .aps-ty-card-head { font-size:15px; font-weight:800; color:var(--aps-text); padding:16px 20px; border-bottom:1px solid var(--aps-pay-divider); }
.aps-ty-page .aps-ty-card .aps-pay-sb-body { padding:18px 20px; }
.aps-ty-page .aps-ty-contact-list { list-style:none; margin:0; padding:16px 20px 18px; display:flex; flex-direction:column; gap:12px; }
.aps-ty-page .aps-ty-contact-list li { display:flex; align-items:center; gap:11px; font-size:14px; color:var(--aps-text); }
.aps-ty-page .aps-ty-contact-list li svg { color:var(--aps-amber); flex:0 0 auto; }
.aps-ty-page .aps-ty-contact-list a { color:var(--aps-text); text-decoration:none; }
.aps-ty-page .aps-ty-contact-list a:hover { text-decoration:underline; }
.aps-ty-page .aps-ty-home { display:inline-block; align-self:center; background:#111; color:#fff !important; text-decoration:none; padding:13px 30px; border-radius:10px; font-weight:700; font-size:15px; }
.aps-ty-page .aps-ty-home:hover { background:#000; }

/* ===================================================================
   Neutralise browser autofill highlight — Chrome/Safari paint a blue
   (or yellow) background on autofilled inputs. Repaint it to match the
   field so First/Last/Email don't turn blue. Covers the booking contact
   + billing fields and the payment page.
   =================================================================== */
body.page-id-665 .chbs-client-form input:-webkit-autofill,
body.page-id-665 .chbs-client-form input:-webkit-autofill:hover,
body.page-id-665 .chbs-client-form input:-webkit-autofill:focus,
body.page-id-665 .chbs-client-form input:-webkit-autofill:active,
.aps-pay-page input:-webkit-autofill,
.aps-pay-page input:-webkit-autofill:hover,
.aps-pay-page input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 100px #f4f5f7 inset !important;
    box-shadow: 0 0 0 100px #f4f5f7 inset !important;
    -webkit-text-fill-color: var(--aps-text) !important;
    caret-color: var(--aps-text) !important;
    transition: background-color 99999s ease-in-out 0s !important;
}
/* When the field is focused its background turns white — match it. */
body.page-id-665 .chbs-client-form .chbs-form-field:focus-within input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 100px #fff inset !important;
    box-shadow: 0 0 0 100px #fff inset !important;
}

/* ===================================================================
   Step-2 number pickers (Passengers / Suitcases) — compact selectmenu
   dropdown. Previously rendered with the raw jQuery-UI look (over-wide,
   plain, default scrollbar). Clean card, simple number rows, no radio dots.
   =================================================================== */
.ui-selectmenu-menu.aps-compact-menu { background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important; }
.ui-selectmenu-menu.aps-compact-menu .ui-menu {
    background:#fff !important; border:1px solid var(--aps-pay-divider,#e5e7eb) !important;
    border-radius:12px !important; box-shadow:0 12px 30px rgba(0,0,0,.13) !important;
    padding:6px !important; margin-top:6px; max-height:240px !important; overflow-y:auto !important;
    width:100% !important; min-width:0 !important; box-sizing:border-box !important;
}
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item { margin:1px 0 !important; }
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item-wrapper {
    padding:9px 14px !important; border-radius:8px !important; border:0 !important; margin:0 !important;
    font-family:var(--aps-font-body); font-size:15px; font-weight:600; color:var(--aps-text) !important;
    cursor:pointer; transition:background .12s ease; background:transparent;
}
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item-wrapper::before { display:none !important; }
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item-wrapper:hover,
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item-wrapper.ui-state-active {
    background:rgba(248,181,74,.16) !important; color:var(--aps-text) !important; box-shadow:none !important;
}

/* compact-menu single-scrollbar fix: stop the jQuery-UI wrapper from scrolling
   (it added a 2nd scrollbar); only the inner card scrolls, and raise the cap so
   the 7 passenger options fit without scrolling. */
.ui-selectmenu-menu.aps-compact-menu { overflow:visible !important; max-height:none !important; }
.ui-selectmenu-menu.aps-compact-menu .ui-menu { max-height:340px !important; }

/* compact-menu polish: fit 7 options without scroll, drop row separators */
.ui-selectmenu-menu.aps-compact-menu .ui-menu { max-height:440px !important; }
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item,
.ui-selectmenu-menu.aps-compact-menu .ui-menu .ui-menu-item-wrapper { border:0 !important; box-shadow:none !important; }

/* ===================================================================
   QA round 2 fixes
   =================================================================== */
/* Thank-you "Total" price rendered gray (inherited .woocommerce-Price-amount
   colour) — force dark to match the other meta values. */
.aps-ty-page .aps-ty-meta li strong,
.aps-ty-page .aps-ty-meta li strong .woocommerce-Price-amount,
.aps-ty-page .aps-ty-meta li strong .woocommerce-Price-amount bdi { color: var(--aps-text) !important; }

/* Autofill highlight (blue) — broaden to EVERY booking-page field, including the
   step-4 billing fields (relocated outside .chbs-client-form). */
body.page-id-665 .chbs-form-field input:-webkit-autofill,
body.page-id-665 .chbs-form-field input:-webkit-autofill:hover,
body.page-id-665 .chbs-form-field input:-webkit-autofill:focus,
body.page-id-665 .chbs-form-field input:-webkit-autofill:active,
body.page-id-665 .chbs-client-form-billing-address input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 100px #f4f5f7 inset !important;
    box-shadow: 0 0 0 100px #f4f5f7 inset !important;
    -webkit-text-fill-color: var(--aps-text) !important;
    caret-color: var(--aps-text) !important;
}
body.page-id-665 .chbs-form-field:focus-within input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 100px #fff inset !important;
    box-shadow: 0 0 0 100px #fff inset !important;
}

/* Billing country clean native select (jQuery-UI selectmenu destroyed in JS to
   stop the glitchy top-left in-page menu). Transparent over the field box with a
   custom caret, matching the other billing inputs. */
body.page-id-665 .chbs-client-form-billing-address select,
.aps-pay-page .chbs-client-form-billing-address select {
    -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important;
    width:100% !important; display:block !important; box-sizing:border-box;
    border:0 !important; outline:0 !important; box-shadow:none !important; background-color:transparent !important;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23555a64' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") !important;
    background-repeat:no-repeat !important; background-position:right 14px center !important;
    padding:2px 38px 11px 16px !important; margin:0 !important;
    font-family:var(--aps-font-body); font-size:15px; color:var(--aps-text) !important; cursor:pointer; line-height:1.4;
}
body.page-id-665 .chbs-client-form-billing-address select option,
.aps-pay-page .chbs-client-form-billing-address select option { color:#111; }

/* ===================================================================
   QA round 3 — mobile fixes
   =================================================================== */
/* #6 Hide the plugin's step navigation (the "2. Choose a Vehicle ▾" accordion
   header on mobile + any desktop step tabs). In-step Back/Next buttons handle
   navigation; the user doesn't want the step selector shown. */
.chbs-main .chbs-main-navigation-responsive,
.chbs-main .chbs-main-navigation { display: none !important; }

/* #8 Extra cards (Child Seat / Meet & Greet): keep a full border in the selected
   state (the bottom border was being dropped). */
.aps-step3 .chbs-booking-extra-list li { border: 1px solid transparent !important; }
.aps-step3 .chbs-booking-extra-list li.chbs-state-selected,
.aps-step3 .chbs-booking-extra-list li:has(a.chbs-state-selected) {
    border: 1px solid #111 !important; background: #fff !important;
}

@media (max-width: 600px) {
    /* #7 Passengers/Suitcases dropdown was overflowing off the right edge —
       anchor it within the viewport and cap its width. */
    .ui-selectmenu-menu.aps-compact-menu {
        left: 16px !important; right: 16px !important; width: auto !important;
        max-width: calc(100vw - 32px) !important;
    }
    .ui-selectmenu-menu.aps-compact-menu .ui-menu { width: 100% !important; max-width: 100% !important; }

    /* #9 Billing fields were cramped in a 3-column grid (text clipped). Stack
       them full-width on mobile. */
    body.page-id-665 .chbs-client-form-billing-address .chbs-form-field,
    body.page-id-665 .chbs-client-form-billing-address .chbs-form-field-width-33,
    body.page-id-665 .chbs-client-form-billing-address .chbs-form-field-width-50 {
        flex: 1 1 100% !important; width: 100% !important; max-width: 100% !important;
    }
}

/* QA round 3 validation (#10): clean qtip tooltips + breathing room so a
   tooltip shown above a field doesn't clip into the field above it. */
.qtip, .qtip.qtip-default {
    background: #1f2430 !important; color: #fff !important; border: 0 !important;
    border-radius: 9px !important; box-shadow: 0 8px 22px rgba(0,0,0,.20) !important;
    font-family: var(--aps-font-body, inherit) !important; font-size: 13px !important;
    line-height: 1.4 !important; max-width: 250px !important;
}
.qtip .qtip-content { padding: 9px 13px !important; color: #fff !important; }
.qtip .qtip-titlebar { background: transparent !important; border: 0 !important; }
/* extra spacing between contact fields so an above-tooltip has room */
body.page-id-665 .aps-step3 .chbs-client-form .chbs-form-field { margin-bottom: 22px !important; }

/* #15 Logo header — the booking/payment/thankyou pages use Hello Elementor's
   bare template (no global header), so they had no logo. booking-skin.js injects
   .aps-site-header at the top of <body>; style it as a clean, centred brand bar
   matching the checkout-style funnel. */
.aps-site-header {
    display: flex; align-items: center; justify-content: center;
    /* logo.png is a light/white logo (designed for the dark hero), so the bar
       needs a dark background — also matches the dark booking-card theme. */
    background: #14171f; border-bottom: 1px solid rgba(255,255,255,.08);
    padding: 12px 20px; position: relative; z-index: 60;
}
.aps-site-header-logo { display: inline-flex; line-height: 0; }
.aps-site-header-logo img { height: 44px; width: auto; display: block; }
@media (max-width: 600px) {
    .aps-site-header { padding: 10px 16px; }
    .aps-site-header-logo img { height: 38px; }
}

/* #15 (cont.) On funnel pages, hide the site's ElementsKit global header — on
   mobile it collapses to a logo-less black hamburger bar (the "logo missing"
   report). booking-skin.js adds body.aps-has-injected-header (never on home),
   so our clean centred logo bar is the single header through the whole funnel. */
body.aps-has-injected-header .ekit-template-content-markup,
body.aps-has-injected-header .elementor-location-header,
body.aps-has-injected-header header.site-header {
    display: none !important;
}

/* #15 (cont.) The booking page's main Elementor section carries a 200px top
   margin (original clearance for the overlay site header). With that header
   hidden and our compact logo bar in its place, the margin became a tall black
   gap (the page <body> background is black for the home hero). Zero it on the
   funnel and give the funnel body a clean light background so no black shows. */
body.aps-has-injected-header .elementor-element-ce0d681 { margin-top: 0 !important; }
body.aps-has-injected-header { background: #f4f5f7 !important; }

/* Selected vehicle in the "Your Booking" sidebar (was missing — only the price
   showed). Shows the chosen car's image + name, matching the payment sidebar. */
.aps-sb-vehicle {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0 2px;
    padding: 8px 10px;
    background: #f4f5f7;
    border-radius: 10px;
}
.aps-sb-vehicle .aps-sb-veh-img {
    width: 64px;
    height: 40px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
    background: #fff;
}
.aps-sb-vehicle .aps-sb-veh-name {
    font-weight: 700;
    font-size: 14px;
    color: var(--aps-text, #14171f);
    line-height: 1.25;
}
