.lsm-progressive-booking {
    --lsm-progressive-gold: #91672c;
    --lsm-progressive-gold-soft: #b98a45;
    --lsm-progressive-ink: #191919;
    --lsm-progressive-muted: #6d6d6d;
    --lsm-progressive-line: #e5e2dc;
    --lsm-progressive-surface: #ffffff;
    --lsm-progressive-soft: #f7f5f1;
}

/* Step 1 follows the homepage quote's surface model: layout containers are
   structural only, and each visible field owns exactly one glass surface. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-layout-50x50,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-layout-100,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-layout-column-left,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .ui-tabs-panel,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field-pickup-date-time {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field input,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field textarea,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field select,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .ui-selectmenu-button {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page {
    --lsm-booking-mobile-shell-bg: #f5f3ef;
    --lsm-booking-mobile-panel-bg: transparent;
    --lsm-booking-mobile-field-bg: #f7f5f1;
    --lsm-booking-mobile-field-border: #dedad2;
    --lsm-booking-mobile-accent: #91672c;
    --lsm-booking-mobile-accent-strong: #7f5926;
    --lsm-booking-mobile-copy: #191919;
    --lsm-booking-mobile-copy-soft: #6d6d6d;
}

body.page.page.lsm-progressive-booking-page .theme-page-content,
body.page.page.lsm-progressive-booking-page .theme-page-content .theme-main,
body.page.page.lsm-progressive-booking-page .lsm-site-content,
body.page.page.lsm-progressive-booking-page .lsm-site-main {
    background: #f5f3ef !important;
    background-image: none !important;
}

body.page.page.lsm-progressive-booking-page .theme-page-content::before,
body.page.page.lsm-progressive-booking-page .lsm-site-content::before {
    display: none !important;
    content: none !important;
}

body.page-booking .lsm-progressive-booking,
body.page .lsm-progressive-booking {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 1040px !important;
    margin: 42px auto 80px !important;
    color: var(--lsm-progressive-ink) !important;
}

body.page-booking .lsm-progressive-booking .chbs-main-navigation-default,
body.page-booking .lsm-progressive-booking .chbs-main-navigation-responsive,
body.page .lsm-progressive-booking .chbs-main-navigation-default,
body.page .lsm-progressive-booking .chbs-main-navigation-responsive {
    display: none !important;
}

.lsm-progressive-booking__intro {
    max-width: 880px;
    margin: 0 auto 30px;
    padding: 0 20px;
    text-align: center;
}

.lsm-progressive-booking__eyebrow {
    margin: 0 0 8px !important;
    color: var(--lsm-progressive-gold) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.18em !important;
}

.lsm-progressive-booking__intro h1 {
    margin: 0 !important;
    color: var(--lsm-progressive-ink) !important;
    font-size: clamp(32px, 5vw, 50px) !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
    letter-spacing: -0.035em !important;
}

.lsm-progressive-booking__lead {
    max-width: 640px;
    margin: 14px auto 30px !important;
    color: var(--lsm-progressive-muted) !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.lsm-progressive-booking__progress {
    display: none !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: 720px;
    margin: 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
}

.lsm-progressive-booking__progress > li {
    position: relative;
    min-width: 0;
}

.lsm-progressive-booking__progress > li::before,
.lsm-progressive-booking__progress > li::after {
    content: "";
    position: absolute;
    top: 17px;
    height: 2px;
    background: var(--lsm-progressive-line);
}

.lsm-progressive-booking__progress > li::before {
    left: 0;
    right: 50%;
}

.lsm-progressive-booking__progress > li::after {
    left: 50%;
    right: 0;
}

.lsm-progressive-booking__progress > li:first-child::before,
.lsm-progressive-booking__progress > li:last-child::after {
    display: none;
}

.lsm-progressive-booking__progress > li[data-lsm-state="complete"]::before,
.lsm-progressive-booking__progress > li[data-lsm-state="complete"]::after,
.lsm-progressive-booking__progress > li[data-lsm-state="active"]::before {
    background: var(--lsm-progressive-gold);
}

.lsm-progressive-booking__progress button {
    position: relative;
    z-index: 1;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 0 4px;
    border: 0;
    background: transparent;
    color: #999;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: default;
}

.lsm-progressive-booking__progress > li[data-lsm-state="complete"] button {
    color: var(--lsm-progressive-gold);
    cursor: pointer;
}

.lsm-progressive-booking__progress > li[data-lsm-state="active"] button {
    color: var(--lsm-progressive-ink);
}

.lsm-progressive-booking__progress-dot {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 2px solid var(--lsm-progressive-line);
    border-radius: 50%;
    background: var(--lsm-progressive-surface);
    color: #999;
    font-size: 12px;
    line-height: 1;
    box-sizing: border-box;
}

[data-lsm-state="active"] > button .lsm-progressive-booking__progress-dot,
[data-lsm-state="complete"] > button .lsm-progressive-booking__progress-dot {
    border-color: var(--lsm-progressive-gold);
    background: var(--lsm-progressive-gold);
    color: #fff;
}

.lsm-progressive-booking .chbs-main-content {
    display: grid !important;
    gap: 16px !important;
    max-width: 920px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

.lsm-progressive-booking .lsm-progressive-section {
    scroll-margin-top: 92px;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--lsm-progressive-line) !important;
    border-radius: 22px !important;
    background: var(--lsm-progressive-surface) !important;
    box-shadow: 0 12px 34px rgba(20, 20, 20, 0.055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] {
    border-color: rgba(145, 103, 44, 0.52) !important;
    box-shadow: 0 18px 50px rgba(42, 32, 18, 0.10) !important;
}

.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="locked"] {
    background: #fbfaf8 !important;
    box-shadow: none !important;
}

.lsm-progressive-section__header {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    min-height: 92px;
    padding: 20px 24px;
    box-sizing: border-box;
}

.lsm-progressive-section[data-lsm-state="active"] > .lsm-progressive-section__header {
    border-bottom: 1px solid var(--lsm-progressive-line);
}

.lsm-progressive-section__number {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--lsm-progressive-line);
    border-radius: 50%;
    background: var(--lsm-progressive-soft);
    color: #8b8b8b;
    font-size: 13px;
    font-weight: 800;
}

[data-lsm-state="active"] > .lsm-progressive-section__header .lsm-progressive-section__number {
    border-color: var(--lsm-progressive-gold);
    background: var(--lsm-progressive-gold);
    color: #fff;
}

[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__number {
    border-color: rgba(145, 103, 44, 0.3);
    background: rgba(145, 103, 44, 0.10);
    color: var(--lsm-progressive-gold);
}

[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__number {
    font-size: 0;
}

[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__number::after {
    content: "✓";
    font-size: 15px;
}

.lsm-progressive-section__title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.lsm-progressive-section__heading h2 {
    margin: 0 !important;
    color: var(--lsm-progressive-ink) !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em !important;
}

.lsm-progressive-section__heading p {
    margin: 4px 0 0 !important;
    color: var(--lsm-progressive-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.lsm-progressive-section__status {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 9px;
    border-radius: 999px;
    background: var(--lsm-progressive-soft);
    color: #858585;
    font-size: 10px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

[data-lsm-state="active"] > .lsm-progressive-section__header .lsm-progressive-section__status {
    background: rgba(145, 103, 44, 0.11);
    color: var(--lsm-progressive-gold);
}

[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__status {
    background: #edf6ef;
    color: #347247;
}

.lsm-progressive-section__edit {
    padding: 8px 12px;
    border: 0;
    background: transparent;
    color: var(--lsm-progressive-gold);
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.lsm-progressive-section__edit[hidden] {
    display: none !important;
}

.lsm-progressive-section[data-lsm-state="locked"] > :not(.lsm-progressive-section__header),
.lsm-progressive-section[data-lsm-state="complete"] > :not(.lsm-progressive-section__header):not(.lsm-progressive-section__summary) {
    display: none !important;
}

.lsm-progressive-section[data-lsm-state="active"] > .lsm-progressive-section__summary {
    display: none !important;
}

.lsm-progressive-section[data-lsm-state="active"].lsm-trip-prefilled:not(.lsm-trip-prefill-editing) > .lsm-progressive-section__summary {
    display: block !important;
    padding-top: 24px;
}

.lsm-progressive-section.lsm-trip-details-complete > .lsm-progressive-section__header .lsm-progressive-section__number {
    border-color: rgba(145, 103, 44, 0.3);
    background: rgba(145, 103, 44, 0.10);
    color: var(--lsm-progressive-gold);
    font-size: 0;
}

.lsm-progressive-section.lsm-trip-details-complete > .lsm-progressive-section__header .lsm-progressive-section__number::after {
    content: "✓";
    font-size: 15px;
}

.lsm-progressive-section.lsm-trip-details-complete > .lsm-progressive-section__header .lsm-progressive-section__status {
    background: #edf6ef;
    color: #347247;
}

.lsm-progressive-section__summary {
    padding: 0 24px 24px;
}

.lsm-progressive-summary__route {
    display: flex;
    align-items: stretch;
    gap: 12px;
    padding: 16px 18px;
    border-radius: 14px;
    background: var(--lsm-progressive-soft);
}

.lsm-progressive-summary__route-markers {
    display: flex;
    flex: 0 0 10px;
    flex-direction: column;
    align-items: center;
    padding: 4px 0;
}

.lsm-progressive-summary__route-dot {
    flex: 0 0 auto;
    width: 9px;
    height: 9px;
    border: 2px solid var(--lsm-progressive-gold);
    border-radius: 50%;
    background: #fff;
    box-sizing: border-box;
}

.lsm-progressive-summary__route-dot--end {
    background: var(--lsm-progressive-gold);
}

.lsm-progressive-summary__route-line {
    flex: 1 1 auto;
    width: 1px;
    min-height: 10px;
    background: rgba(145, 103, 44, 0.45);
}

.lsm-progressive-summary__route-locations {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
}

.lsm-progressive-summary__route strong {
    color: var(--lsm-progressive-ink);
    font-size: 14px;
    line-height: 1.4;
}

.lsm-progressive-summary__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.lsm-progressive-summary__item {
    min-width: 0;
}

.lsm-progressive-summary__label {
    display: block;
    margin-bottom: 3px;
    color: #8b8b8b;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.lsm-progressive-summary__item strong {
    display: block;
    overflow: hidden;
    color: var(--lsm-progressive-ink);
    font-size: 13px;
    line-height: 1.4;
    text-overflow: ellipsis;
}

.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-50x50,
.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-100,
.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-25x75,
.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 {
    width: auto !important;
    margin: 0 !important;
    padding: 26px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-sizing: border-box !important;
}

.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-50x50 > .chbs-layout-column-left,
.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-100 > .chbs-layout-column-left {
    float: none !important;
    width: 100% !important;
}

.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-50x50 > .chbs-layout-column-right,
.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-100 > .chbs-layout-column-right {
    display: none !important;
    float: none !important;
    width: 100% !important;
    margin: 14px 0 0 !important;
}

.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-50x50.lsm-route-map-open > .chbs-layout-column-right,
.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-100.lsm-route-map-open > .chbs-layout-column-right {
    display: block !important;
}

.lsm-route-map-toggle {
    display: flex !important;
    align-items: center;
    gap: 11px;
    width: 100%;
    margin: 16px 0 0;
    padding: 13px 15px;
    border: 1px solid var(--lsm-progressive-line);
    border-radius: 12px;
    background: var(--lsm-progressive-soft);
    color: var(--lsm-progressive-ink);
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    text-align: left;
    cursor: pointer;
    box-sizing: border-box;
}

.lsm-route-map-toggle[hidden],
.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-50x50 > .chbs-layout-column-right[hidden],
.lsm-progressive-booking .chbs-main-content-step-1 > .chbs-layout-100 > .chbs-layout-column-right[hidden] {
    display: none !important;
}

.lsm-route-map-toggle:hover,
.lsm-route-map-toggle:focus-visible {
    border-color: rgba(145, 103, 44, 0.55);
    outline: none;
}

.lsm-route-map-toggle__icon {
    position: relative;
    width: 24px;
    height: 24px;
    border-radius: 7px;
    background:
        linear-gradient(135deg, transparent 43%, rgba(145, 103, 44, 0.55) 44%, rgba(145, 103, 44, 0.55) 53%, transparent 54%),
        #ece7de;
}

.lsm-route-map-toggle__icon::before,
.lsm-route-map-toggle__icon::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border: 2px solid var(--lsm-progressive-gold);
    border-radius: 50%;
    background: #fff;
}

.lsm-route-map-toggle__icon::before {
    top: 3px;
    left: 3px;
}

.lsm-route-map-toggle__icon::after {
    right: 3px;
    bottom: 3px;
    background: var(--lsm-progressive-gold);
}

.lsm-route-map-toggle__label {
    flex: 1;
}

.lsm-route-map-toggle__chevron {
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--lsm-progressive-gold);
    border-bottom: 2px solid var(--lsm-progressive-gold);
    transform: rotate(45deg) translateY(-2px);
    transition: transform 0.18s ease;
}

.lsm-route-map-toggle[aria-expanded="true"] .lsm-route-map-toggle__chevron {
    transform: rotate(225deg) translate(-1px, -1px);
}

.lsm-progressive-booking .lsm-route-map-open .chbs-google-map {
    height: min(460px, 58vh) !important;
    min-height: 320px !important;
    border: 1px solid var(--lsm-progressive-line) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
}

.lsm-progressive-booking .lsm-route-map-open #chbs_google_map {
    height: 100% !important;
    min-height: 320px !important;
    /* Do not filter the full Google Map canvas: CHBS draws the route as a
       blue polyline, and a grayscale filter makes it blend into the roads. */
    filter: none !important;
}

.lsm-progressive-booking .lsm-route-map-open .chbs-ride-info {
    margin-top: 10px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

.lsm-progressive-estimate {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin: 0 26px 22px;
    padding: 16px 18px;
    border: 1px solid rgba(145, 103, 44, 0.25);
    border-radius: 14px;
    background: rgba(145, 103, 44, 0.07);
}

.lsm-progressive-booking .lsm-trip-prefilled:not(.lsm-trip-prefill-editing) .chbs-tab > ul,
.lsm-progressive-booking .lsm-trip-prefilled:not(.lsm-trip-prefill-editing) .lsm-trip-detail-field {
    display: none !important;
}

.lsm-progressive-booking .lsm-trip-prefilled:not(.lsm-trip-prefill-editing) .chbs-form-field-pickup-date-time > .chbs-form-field:not(.lsm-trip-detail-field) {
    width: 100% !important;
}

.lsm-progressive-estimate > span {
    color: var(--lsm-progressive-gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.lsm-progressive-estimate > div {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.lsm-progressive-estimate strong {
    color: var(--lsm-progressive-ink);
    font-size: 22px;
}

.lsm-progressive-estimate small {
    color: var(--lsm-progressive-muted);
}

.lsm-progressive-estimate p {
    flex-basis: 100%;
    margin: 0 !important;
    color: var(--lsm-progressive-muted) !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 26px 26px !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button {
    min-height: 50px !important;
    padding: 14px 22px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    box-sizing: border-box !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-prev {
    background: transparent !important;
    color: var(--lsm-progressive-gold) !important;
    border: 1px solid rgba(145, 103, 44, 0.45) !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-next {
    min-width: 210px;
    background: var(--lsm-progressive-gold) !important;
    color: #fff !important;
    border: 1px solid var(--lsm-progressive-gold) !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-next:hover,
.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-next:focus {
    background: #242424 !important;
    border-color: #242424 !important;
}

.lsm-progressive-booking .chbs-main-content-step-2 > .chbs-layout-25x75 > .chbs-layout-column-left,
.lsm-progressive-booking .chbs-main-content-step-3 > .chbs-layout-25x75 > .chbs-layout-column-left {
    display: none !important;
}

.lsm-progressive-booking .chbs-main-content-step-4 .chbs-google-map-summary {
    display: none !important;
}

.lsm-progressive-booking .chbs-main-content-step-2 > .chbs-layout-25x75 > .chbs-layout-column-right,
.lsm-progressive-booking .chbs-main-content-step-3 > .chbs-layout-25x75 > .chbs-layout-column-right {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    body.lsm-progressive-booking-page {
        overflow-x: hidden !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab > ul > li > a,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab.ui-tabs .ui-tabs-nav > li > a {
        color: var(--lsm-progressive-ink) !important;
        -webkit-text-fill-color: var(--lsm-progressive-ink) !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab > ul > li.ui-tabs-active > a,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab > ul > li.ui-state-active > a,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab.ui-tabs .ui-tabs-nav > li.ui-tabs-active > a,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-tab.ui-tabs .ui-tabs-nav > li.ui-state-active > a {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking #panel-1 > .chbs-form-label-group,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking #panel-2 > .chbs-form-label-group {
        color: var(--lsm-progressive-muted) !important;
        -webkit-text-fill-color: var(--lsm-progressive-muted) !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field input::placeholder,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field textarea::placeholder {
        color: #99958e !important;
        -webkit-text-fill-color: #99958e !important;
    }

    body.page-booking .lsm-progressive-booking,
    body.page .lsm-progressive-booking {
        margin: 24px auto 48px !important;
    }

    .lsm-progressive-booking__intro {
        margin-bottom: 22px;
        padding: 0 16px;
    }

    .lsm-progressive-booking__intro h1 {
        max-width: 100%;
        font-size: 28px !important;
        overflow-wrap: anywhere;
        text-wrap: balance;
    }

    .lsm-progressive-booking__lead {
        margin: 10px auto 24px !important;
        font-size: 14px !important;
    }

    .lsm-progressive-booking__progress button {
        min-width: 0;
        font-size: 10px;
    }

    .lsm-progressive-booking__progress-dot {
        width: 30px;
        height: 30px;
    }

    .lsm-progressive-booking__progress > li::before,
    .lsm-progressive-booking__progress > li::after {
        top: 15px;
    }

    .lsm-progressive-booking .chbs-main-content {
        gap: 12px !important;
        padding: 0 10px !important;
    }

    .lsm-progressive-booking .lsm-progressive-section {
        border-radius: 18px !important;
    }

    .lsm-progressive-section__header {
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 11px;
        min-height: 78px;
        padding: 16px;
    }

    .lsm-progressive-section__number {
        width: 32px;
        height: 32px;
    }

    .lsm-progressive-section__heading h2 {
        font-size: 17px !important;
    }

    .lsm-progressive-section__heading p,
    .lsm-progressive-section__status {
        display: none;
    }

    .lsm-progressive-section__edit {
        padding: 7px 0 7px 8px;
    }

    .lsm-progressive-section__summary {
        padding: 0 16px 18px;
    }

    .lsm-progressive-summary__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-50x50,
    .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-100,
    .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-25x75,
    .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 {
        padding: 18px 14px !important;
    }

    .lsm-progressive-estimate {
        margin: 0 14px 18px;
    }

    .lsm-progressive-booking .chbs-main-content-navigation-button {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 14px 18px !important;
    }

    .lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button {
        width: auto !important;
        min-width: min-content !important;
        margin: 0 !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    .lsm-progressive-booking .lsm-route-map-open .chbs-google-map,
    .lsm-progressive-booking .lsm-route-map-open #chbs_google_map {
        min-height: 390px !important;
        height: 56vh !important;
    }
}

/* Final booking review: keep native submission controls intact and singular. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content {
    column-gap: 36px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-extras {
    display: grid;
    gap: 6px;
    margin-top: 6px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-extras span {
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

/* Extra notes are not a customer-facing selection control; leaving them visible
   created empty white boxes beneath every extra option. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra-list .chbs-booking-form-extra-note {
    display: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 > .chbs-main-content-navigation-button.lsm-review-booking__submit {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    padding-top: 8px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__submit-copy {
    max-width: 330px;
    margin: 0 auto 0 0 !important;
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 > .chbs-main-content-navigation-button.lsm-review-booking__submit .chbs-button-step-next {
    min-width: 220px !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content {
        row-gap: 18px !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 > .chbs-main-content-navigation-button.lsm-review-booking__submit {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__submit-copy {
        max-width: none;
        margin: 0 !important;
        text-align: center;
    }
}

/* Review refinements: vehicle is intentionally simple. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle > h3 {
    padding: 0 20px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image img {
    border-radius: 18px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy {
    align-content: start !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy .lsm-review-booking__field,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy .lsm-review-booking__field + .lsm-review-booking__field {
    padding: 18px 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot {
    padding: 18px 20px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element {
    display: block !important;
    margin: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 2px 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div > span:first-child {
    flex: 1 1 auto;
    text-align: left !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div > span:last-child {
    flex: 0 0 auto;
    text-align: right !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > .chbs-summary-price-element-total {
    margin-top: 12px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(242, 202, 117, 0.72) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > .chbs-summary-price-element-total > span {
    font-size: 23px !important;
    font-weight: 800 !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle > h3 {
        padding: 0 !important;
    }

}

/* Passenger controls are a single glass group, not the native white table. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-label-group:has(+ .chbs-form-field-passenger) {
    padding: 0 0 12px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.76) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.76) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    border-radius: 16px !important;
    background: rgba(18, 20, 24, 0.32) !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.1) !important;
    backdrop-filter: blur(14px) saturate(1.1) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger > .chbs-form-field {
    min-height: 108px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger > .chbs-form-field + .chbs-form-field {
    border-left: 1px solid rgba(255, 255, 255, 0.17) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .chbs-form-field-label {
    display: block !important;
    margin: 0 !important;
    padding: 16px 18px 7px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.66) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.66) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger input[type="text"],
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .ui-selectmenu-button {
    width: calc(100% - 28px) !important;
    min-height: 44px !important;
    margin: 0 14px 14px !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.19) !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.10) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
}

@media (max-width: 560px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .chbs-form-field-label {
        padding: 13px 10px 6px !important;
        font-size: 9px !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger input[type="text"],
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .ui-selectmenu-button {
        width: calc(100% - 16px) !important;
        margin: 0 8px 10px !important;
        padding: 8px 10px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lsm-progressive-booking *,
    .lsm-progressive-booking *::before,
    .lsm-progressive-booking *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

/* Booking is the expanded state of the homepage estimate: carry the same
   airport hero image and glass language into the complete booking flow. */
body.page.page.lsm-progressive-booking-page {
    --lsm-progressive-ink: #ffffff;
    --lsm-progressive-muted: rgba(255, 255, 255, 0.72);
    --lsm-progressive-line: rgba(255, 255, 255, 0.22);
    --lsm-progressive-surface: rgba(39, 42, 47, 0.58);
    --lsm-progressive-soft: rgba(255, 255, 255, 0.08);
    --lsm-booking-mobile-shell-bg: transparent;
    --lsm-booking-mobile-panel-bg: transparent;
    --lsm-booking-mobile-field-bg: rgba(39, 42, 47, 0.56);
    --lsm-booking-mobile-field-border: rgba(255, 255, 255, 0.26);
    --lsm-booking-mobile-accent: #a7772e;
    --lsm-booking-mobile-accent-strong: #a7772e;
    --lsm-booking-mobile-copy: #ffffff;
    --lsm-booking-mobile-copy-soft: rgba(255, 255, 255, 0.72);
    background: #151515 !important;
}

body.page.page.lsm-progressive-booking-page .theme-page-content,
body.page.page.lsm-progressive-booking-page .theme-page-content .theme-main,
body.page.page.lsm-progressive-booking-page .lsm-site-content,
body.page.page.lsm-progressive-booking-page .lsm-site-main {
    min-height: 100vh;
    background-color: #151515 !important;
    background-image: url("https://limostar.com.au/wp-content/uploads/2025/11/Airport-Pickup-Curbside-3.webp") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-attachment: fixed !important;
}

body.page.page.lsm-progressive-booking-page .theme-page-content .theme-main,
body.page.page.lsm-progressive-booking-page .lsm-site-main {
    background: transparent !important;
}

/* The shared theme keeps booking content contained while the visual backdrop
   belongs to the full-width main shell. */
body.page.page.lsm-progressive-booking-page .lsm-site-content {
    background-color: transparent !important;
    background-image: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-site-main {
    background-color: #151515 !important;
    background-image: url("https://limostar.com.au/wp-content/uploads/2025/11/Airport-Pickup-Curbside-3.webp") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-attachment: fixed !important;
}

body.page-booking .lsm-progressive-booking,
body.page .lsm-progressive-booking {
    color: #ffffff !important;
}

.lsm-progressive-booking__intro {
    margin-bottom: 22px;
}

.lsm-progressive-booking__eyebrow {
    display: none !important;
}

.lsm-progressive-booking__intro h1 {
    color: #ffffff !important;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.34);
}

.lsm-progressive-booking__lead {
    color: rgba(255, 255, 255, 0.78) !important;
}

.lsm-progressive-booking .lsm-progressive-section,
.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="locked"] {
    border-color: rgba(255, 255, 255, 0.26) !important;
    background: rgba(39, 42, 47, 0.58) !important;
    box-shadow: 0 22px 56px rgba(0, 0, 0, 0.24) !important;
    -webkit-backdrop-filter: blur(22px) saturate(1.15) !important;
    backdrop-filter: blur(22px) saturate(1.15) !important;
}

.lsm-progressive-booking .lsm-progressive-section[data-lsm-state="active"] {
    border-color: rgba(242, 202, 117, 0.52) !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.38) !important;
}

.lsm-progressive-section[data-lsm-state="active"] > .lsm-progressive-section__header,
.lsm-progressive-booking .lsm-route-map-open .chbs-google-map {
    border-color: rgba(255, 255, 255, 0.18) !important;
}

.lsm-progressive-section__heading h2,
.lsm-progressive-summary__route strong,
.lsm-progressive-summary__item strong {
    color: #ffffff !important;
}

.lsm-progressive-section__heading p,
.lsm-progressive-summary__label {
    color: rgba(255, 255, 255, 0.67) !important;
}

.lsm-progressive-section__number {
    border-color: rgba(255, 255, 255, 0.30) !important;
    background: rgba(255, 255, 255, 0.10) !important;
    color: #ffffff !important;
}

.lsm-progressive-summary__route,
.lsm-progressive-booking .lsm-route-map-toggle {
    border-color: rgba(255, 255, 255, 0.16) !important;
    background: rgba(0, 0, 0, 0.20) !important;
    color: #ffffff !important;
}

.lsm-progressive-booking .chbs-form-field input,
.lsm-progressive-booking .chbs-form-field textarea,
.lsm-progressive-booking .chbs-form-field select,
.lsm-progressive-booking .ui-selectmenu-button {
    border-color: rgba(255, 255, 255, 0.24) !important;
    background: rgba(19, 21, 25, 0.58) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.1) !important;
    backdrop-filter: blur(14px) saturate(1.1) !important;
}

.lsm-progressive-booking .chbs-form-label-group,
.lsm-progressive-booking .chbs-form-field label,
.lsm-progressive-booking .ui-selectmenu-text,
.lsm-progressive-booking .chbs-form-field input::placeholder,
.lsm-progressive-booking .chbs-form-field textarea::placeholder {
    color: rgba(255, 255, 255, 0.68) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.68) !important;
}

.lsm-progressive-estimate {
    display: grid !important;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px 18px;
    margin: 2px 26px 24px;
    padding: 20px 22px;
    border-color: rgba(242, 202, 117, 0.44) !important;
    border-radius: 16px;
    background: rgba(12, 13, 16, 0.48) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10);
    -webkit-backdrop-filter: blur(16px) saturate(1.12);
    backdrop-filter: blur(16px) saturate(1.12);
}

.lsm-progressive-estimate > span {
    color: #f2ca75 !important;
}

.lsm-progressive-estimate strong {
    color: #ffffff !important;
    font-size: 28px;
}

.lsm-progressive-estimate small,
.lsm-progressive-estimate p {
    color: rgba(255, 255, 255, 0.72) !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-prev {
    border-color: rgba(255, 255, 255, 0.36) !important;
    color: #ffffff !important;
}

.lsm-progressive-booking .chbs-main-content-navigation-button .chbs-button-step-next {
    background: #a7772e !important;
    border-color: rgba(242, 202, 117, 0.36) !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .theme-page-content,
    body.page.page.lsm-progressive-booking-page .theme-page-content .theme-main,
    body.page.page.lsm-progressive-booking-page .lsm-site-content,
    body.page.page.lsm-progressive-booking-page .lsm-site-main {
        background-position: 58% center !important;
        background-attachment: scroll !important;
    }

    .lsm-progressive-booking .lsm-progressive-section,
    .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="locked"] {
        background: rgba(39, 42, 47, 0.64) !important;
        -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
        backdrop-filter: blur(18px) saturate(1.12) !important;
    }

    .lsm-progressive-estimate {
        grid-template-columns: 1fr;
        margin: 2px 14px 18px;
        padding: 18px;
    }

}

/* The original CHBS total is also used on desktop. Its markup stays intact;
   this only places it in the glass flow below the vehicle extras. */
@media (min-width: 769px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger {
        display: flex !important;
        align-items: center !important;
        gap: 28px !important;
        min-height: 0 !important;
        padding: 14px 18px !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger > .chbs-form-field,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger > .chbs-form-field + .chbs-form-field {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .chbs-form-field-label {
        display: inline !important;
        margin: 0 !important;
        padding: 0 !important;
        color: rgba(255, 255, 255, 0.76) !important;
        font-size: 11px !important;
        line-height: 1 !important;
        white-space: nowrap;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .chbs-tooltip {
        display: none !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger input[type="text"],
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-form-field-passenger .ui-selectmenu-button {
        width: 48px !important;
        min-width: 48px !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 7px 10px !important;
        text-align: center !important;
        font-size: 16px !important;
    }

    .lsm-progressive-booking .lsm-mobile-price-card {
        display: block !important;
        width: auto !important;
        margin: 20px 26px 0 !important;
        padding: 18px !important;
        border: 1px solid rgba(255, 255, 255, 0.26) !important;
        border-radius: 18px !important;
        background: rgba(39, 42, 47, 0.56) !important;
        color: #ffffff !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        -webkit-backdrop-filter: blur(16px) saturate(1.12) !important;
        backdrop-filter: blur(16px) saturate(1.12) !important;
    }

    .lsm-progressive-booking .lsm-mobile-price-card > div {
        display: flex !important;
        align-items: baseline !important;
        justify-content: space-between !important;
        gap: 18px !important;
        color: #ffffff !important;
    }

    .lsm-progressive-booking .lsm-mobile-price-card > div > span:last-child {
        flex: 0 0 auto !important;
        text-align: right !important;
        font-weight: 700 !important;
    }

    .lsm-progressive-booking .lsm-mobile-price-card > div.chbs-summary-price-element-total {
        margin-top: 14px !important;
        padding-top: 14px !important;
        border-top: 1px solid rgba(242, 202, 117, 0.54) !important;
    }

    .lsm-progressive-booking .lsm-mobile-price-card > div.chbs-summary-price-element-total > span {
        color: #ffffff !important;
        font-size: 22px !important;
        font-weight: 800 !important;
    }
}

/* Vehicle cards: neutral text and an outlined secondary Select action. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-vehicle .chbs-vehicle-content > div.chbs-vehicle-content-header > span,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-vehicle .chbs-vehicle-content > div.chbs-vehicle-content-header > span * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-vehicle .chbs-vehicle-content-header > .chbs-button:not(.chbs-state-selected),
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-vehicle .chbs-vehicle-content-header > .chbs-button:not(.chbs-state-selected):hover,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-vehicle .chbs-vehicle-content-header > .chbs-button:not(.chbs-state-selected):focus {
    background: rgba(16, 18, 21, 0.82) !important;
    border: 1px solid #a7772e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-mobile-price-card > div.chbs-summary-price-element-total > span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Extra options keep the same high-contrast vehicle treatment. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra-header > span:first-child + span,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-form-extra-name {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-form-extra-description {
    color: rgba(255, 255, 255, 0.74) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.74) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra-list .chbs-button:not(.chbs-state-selected),
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra-list .chbs-button:not(.chbs-state-selected):hover,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra-list .chbs-button:not(.chbs-state-selected):focus {
    background: rgba(16, 18, 21, 0.82) !important;
    border: 1px solid #a7772e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
}

/* A vehicle with no available extras must not leave an empty header/icon. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-booking-extra:not(:has(.chbs-booking-extra-list > ul > li:not([hidden]):not(.chbs-hidden):not(.chbs-hidden-by-category):not(.lsm-extra-condition-hidden))) {
    display: none !important;
}

/* Contact Details: remove the native white form shell and use glass fields. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-client-form-sign-up,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-box-shadow,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-clear-fix {
    background: transparent !important;
    box-shadow: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form > .chbs-form-label-group,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-client-form-sign-up > .chbs-form-label-group,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-box-shadow > .chbs-form-label-group,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-clear-fix > .chbs-form-label-group {
    padding: 0 0 14px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.78) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.78) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.07em !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-form-field {
    border-color: rgba(255, 255, 255, 0.24) !important;
    background: rgba(35, 38, 43, 0.58) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.12) !important;
    backdrop-filter: blur(16px) saturate(1.12) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-form-field-label,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .chbs-form-field label {
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form input,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form textarea,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .iti {
    background: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form input::placeholder,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form textarea::placeholder,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .iti__selected-dial-code,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-3 .chbs-client-form .iti__arrow {
    color: rgba(255, 255, 255, 0.74) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.74) !important;
}

/* Never expose the final-step navigation before the Review step is active. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-progressive-section[data-lsm-state="locked"] > .chbs-main-content-navigation-button {
    display: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 > .chbs-main-content-navigation-button .chbs-button-step-prev {
    display: none !important;
}

/* Secondary actions use the LIMOSTAR dark button, not the native white outline. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-button-step-prev,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-button.chbs-button-style-2,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-route-map-toggle {
    border-color: #a7772e !important;
    background: rgba(16, 18, 21, 0.86) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Selection is the positive gold state; unselected choices stay dark outlined. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-button.chbs-state-selected,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-button.chbs-state-selected:hover,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-button.chbs-state-selected:focus {
    border-color: #a7772e !important;
    background: #a7772e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* A direct /booking/ visit begins with the same glass field treatment as the rest of the flow. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul > li,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav > li {
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul > li > a,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav > li > a {
    min-height: 56px !important;
    padding: 14px 30px !important;
    border: 2px solid #91672c !important;
    border-radius: 999px !important;
    background: #262626 !important;
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul > li.ui-tabs-active > a,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav > li.ui-tabs-active > a {
    background: #91672c !important;
    border-color: #91672c !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

@media (min-width: 769px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav {
        width: 68% !important;
        gap: 14px !important;
        margin: 0 auto 22px !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul > li,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav > li {
        display: block !important;
        flex: 1 1 0 !important;
        float: none !important;
        width: auto !important;
        margin: 0 !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul > li > a,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-nav > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab.ui-tabs .ui-tabs-panel {
        border-top-width: 0 !important;
    }
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab::after,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-tab > ul::after,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .ui-tabs-nav::after {
    display: none !important;
    content: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field {
    border-color: rgba(255, 255, 255, 0.24) !important;
    background: rgba(35, 38, 43, 0.58) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.12) !important;
    backdrop-filter: blur(16px) saturate(1.12) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field input,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-1 .chbs-form-field .ui-selectmenu-button {
    border-color: transparent !important;
    background: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-extra-direct-quantity .chbs-quantity-section-button {
    display: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-extra-direct-quantity .chbs-quantity-section {
    width: 100% !important;
    padding: 0 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-extra-direct-quantity input[name*="_quantity"] {
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 12px !important;
    background: rgba(35, 38, 43, 0.58) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element-total,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element-total > span {
    border-top-color: rgba(242, 202, 117, 0.82) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__submit-copy {
    font-size: 15px !important;
    line-height: 1.5 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-section__number,
body.page.page.lsm-progressive-booking-page .lsm-progressive-section[data-lsm-state="active"] > .lsm-progressive-section__header .lsm-progressive-section__number,
body.page.page.lsm-progressive-booking-page .lsm-progressive-section[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__number {
    display: grid !important;
    place-items: center !important;
    border-color: #a7772e !important;
    background: transparent !important;
    color: #f2ca75 !important;
    -webkit-text-fill-color: #f2ca75 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-section[data-lsm-state="complete"] > .lsm-progressive-section__header .lsm-progressive-section__number::after,
body.page.page.lsm-progressive-booking-page .lsm-progressive-section.lsm-trip-details-complete > .lsm-progressive-section__header .lsm-progressive-section__number::after {
    color: #f2ca75 !important;
    -webkit-text-fill-color: #f2ca75 !important;
    line-height: 1 !important;
}

/* Keep the final Review refinements after all shared/mobile CHBS overrides. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle > h3 {
    padding: 0 20px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy,
body.page.page.lsm-progressive-booking-page .lsm-review-booking__vehicle-copy .lsm-review-booking__field {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image img {
    border-radius: 18px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot {
    padding: 18px 20px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div {
    display: block !important;
    margin: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 2px 0 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div > span:first-child {
    flex: 1 1 auto !important;
    text-align: left !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > div > span:last-child {
    flex: 0 0 auto !important;
    text-align: right !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > .chbs-summary-price-element-total {
    margin-top: 12px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(242, 202, 117, 0.72) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element > .chbs-summary-price-element-total > span {
    font-size: 23px !important;
    font-weight: 800 !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle > h3 {
        padding: 0 !important;
    }

}

/* Review uses one full-width reading column on every screen, matching mobile. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 > .chbs-layout-column-left,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 > .chbs-layout-column-center,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-layout-33x33x33 > .chbs-layout-column-right {
    display: contents !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-left > * {
    order: 10 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-center > .chbs-summary {
    order: 20 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-center > .chbs-google-map-summary {
    order: 25 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-right > .chbs-summary:not(.lsm-step-four-payment-card),
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-right > div:first-child:not(.chbs-summary) {
    order: 30 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-right > .chbs-summary-price-element {
    order: 50 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-right > .lsm-step-four-payment-card {
    order: 60 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-left > *,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-center > *,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-layout-column-right > * {
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Review cards retain the same transparent glass surface as Trip, Vehicle and Contact. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .lsm-step-four-payment-card {
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 18px !important;
    background: rgba(39, 42, 47, 0.58) !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: blur(22px) saturate(1.15) !important;
    backdrop-filter: blur(22px) saturate(1.15) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-header,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-field {
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-header,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-field {
    border-color: rgba(255, 255, 255, 0.18) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-header h4,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-field-value,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-price-element,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-price-element * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-field-name {
    color: rgba(255, 255, 255, 0.68) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.68) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-summary-header > a {
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    border-radius: 999px !important;
    background: rgba(16, 18, 21, 0.28) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Final confirmation is a familiar read-only version of the earlier steps. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4:has(> .lsm-review-booking) > .chbs-layout-33x33x33 {
    display: none !important;
}

/* The final review is read-only; gratuity is collected after confirmation. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4 .chbs-gratuity-section {
    display: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking {
    display: grid;
    gap: 16px;
    padding: 26px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__card,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot {
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 18px;
    background: rgba(39, 42, 47, 0.58);
    box-sizing: border-box;
    box-shadow: none;
    -webkit-backdrop-filter: blur(22px) saturate(1.15);
    backdrop-filter: blur(22px) saturate(1.15);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking h3 {
    margin: 0 0 16px !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__ride,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__contact,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle {
    padding: 20px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__ride .lsm-progressive-summary__route {
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(0, 0, 0, 0.18);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__ride .lsm-progressive-summary__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__map-toggle {
    width: 100%;
    margin-top: 14px;
    padding: 13px 15px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.18);
    color: #ffffff;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    text-align: left;
    cursor: pointer;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source {
    display: none !important;
    width: 100% !important;
    margin-top: 12px !important;
    float: none !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking--map-open .lsm-review-map-source {
    display: block !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source #chbs_google_map {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 360px !important;
    height: 48vh !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source #chbs_google_map > div,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .gm-style {
    width: 100% !important;
    height: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* CHBS places Distance and Time below its map in a white native panel. */
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary {
    margin-top: 14px !important;
    padding: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 14px !important;
    background: rgba(39, 42, 47, 0.58) !important;
    overflow: hidden !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
    backdrop-filter: blur(18px) saturate(1.12) !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info .chbs-layout-50x50,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary .chbs-layout-50x50 {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info .chbs-layout-column-left,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info .chbs-layout-column-right,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary .chbs-layout-column-left,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary .chbs-layout-column-right {
    float: none !important;
    width: 50% !important;
    margin: 0 !important;
    padding: 18px !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info *,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-ride-info .chbs-ride-info-name,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map-summary .chbs-summary-field-name {
    color: rgba(255, 255, 255, 0.68) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.68) !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source .chbs-google-map,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking .lsm-review-map-source #chbs_google_map {
        min-height: 320px !important;
        height: 52vh !important;
    }
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__contact-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field {
    min-width: 0;
    padding: 15px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(17, 19, 23, 0.26);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:nth-child(even) {
    border-left: 1px solid rgba(255, 255, 255, 0.16);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:first-child,
body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:last-child {
    grid-column: 1 / -1;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field span {
    display: block;
    margin-bottom: 7px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content {
    display: grid;
    grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;
    background: rgba(17, 19, 23, 0.26);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image {
    min-height: 190px;
    background: rgba(0, 0, 0, 0.18);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 190px;
    object-fit: cover;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy {
    display: grid;
    align-content: center;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-copy .lsm-review-booking__field + .lsm-review-booking__field {
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot {
    padding: 18px 20px;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__money-slot .chbs-summary-price-element {
    margin: 0 !important;
    background: transparent !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-main-content-navigation-button {
    display: flex !important;
    margin: 0 !important;
    padding: 0 26px 26px !important;
}

body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-main-content-navigation-button .chbs-button-step-next {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 220px !important;
    border-color: #a7772e !important;
    background: #a7772e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 768px) {
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking {
        gap: 12px;
        padding: 18px 14px;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__ride,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__contact,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle {
        padding: 16px;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__ride .lsm-progressive-summary__grid,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__contact-grid,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-content {
        grid-template-columns: 1fr;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:nth-child(even) {
        border-left: 0;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:first-child,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__field:last-child {
        grid-column: auto;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image,
    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .lsm-review-booking__vehicle-image img {
        min-height: 180px;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-main-content-navigation-button .chbs-button-step-next {
        width: auto !important;
        min-width: min-content !important;
    }

    body.page.page.lsm-progressive-booking-page .lsm-progressive-booking .chbs-main-content-step-4.lsm-progressive-section[data-lsm-state="active"] > .chbs-main-content-navigation-button {
        padding: 0 14px 18px !important;
    }
}
