/******************************************************************************/
/* Import                                                                      */
/******************************************************************************/

@import "icon.css";

/******************************************************************************/
/* Base                                                                        */
/******************************************************************************/

.cbs-list-reset {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

.cbs-clear-fix:after {
    height: 0;
    clear: both;
    content: " ";
    font-size: 0;
    min-height: 0;
    display: block;
    visibility: hidden;
}

* html .cbs-clear-fix { zoom: 1; }
*:first-child+html .cbs-clear-fix { zoom: 1; }

/******************************************************************************/
/* Default                                                                     */
/******************************************************************************/

.cbs-hidden {
    display: none;
}

.cbs-main * {
    font-size: 15px;
    font-weight: 400;
    line-height: 150%;
    font-family: 'Lato';
    box-sizing: border-box;
}

.cbs-main a {
    outline: none;
    text-decoration: none;
}

.cbs-main a:hover {
    text-decoration: underline;
}

.cbs-state-to-hidden .cbs-state-to-hidden {
    display: none;
}

.cbs-state-hidden {
    display: none;
}

/******************************************************************************/
/* Transition                                                                  */
/******************************************************************************/

a.cbs-button,
.cbs-vehicle-list>li,
.cbs-vehicle-list>li>div>div,
.cbs-calendar .cbs-calendar-data a,
.cbs-form .cbs-form-summary .cbs-button,
.cbs-calendar-header .cbs-calendar-header-arrow-left,
.cbs-calendar-header .cbs-calendar-header-arrow-right,
.cbs-calendar-header .cbs-calendar-header-caption .cbs-calendar-header-month-arrow-left,
.cbs-calendar-header .cbs-calendar-header-caption .cbs-calendar-header-month-arrow-right {
    transition: all 150ms ease;
}

/******************************************************************************/
/* Border Radius                                                               */
/******************************************************************************/

.cbs-vehicle-list>li,
.cbs-package-list>li,
.cbs-booking-summary>li {
    border-radius: 5px;
}

.filter-services-container .cbs-service-list>li:first-child {
    border-radius: 5px 5px 0px 0px;
}

.filter-services-container .cbs-service-list>li:last-child,
.cbs-main-list-item-section-content .cbs-clear-fix:nth-last-of-type(2) .cbs-form-field {
    border-radius: 0px 0px 5px 5px;
}

.cbs-form-field-first-name {
    border-top-left-radius: 5px;
}

.cbs-main.cbs-width-0 .cbs-form-field-first-name,
.cbs-main.cbs-width-480 .cbs-form-field-first-name,
.cbs-main.cbs-width-300 .cbs-form-field-first-name {
    border-radius: 5px 5px 0px 0px;
}

.cbs-form-field-company-name {
    border-top-right-radius: 5px;
}

.cbs-main.cbs-width-0 .cbs-form-field-company-name,
.cbs-main.cbs-width-480 .cbs-form-field-company-name,
.cbs-main.cbs-width-300 .cbs-form-field-company-name {
    border-radius: 0px;
}

/******************************************************************************/
/* Color Scheme                                                                */
/******************************************************************************/

/* Color 1 - Primary Blue */
.cbs-main a,
.cbs-main .cbs-button,
.cbs-main .cbs-booking-summary>li>h5,
.cbs-main .cbs-package-list>li>.cbs-package-price {
    color: #199CDB;
}

.cbs-main .cbs-button:hover,
.cbs-main .cbs-state-selected>.cbs-button,
.cbs-main .cbs-state-selected>.cbs-button-box>.cbs-button,
.cbs-main .cbs-location-list>li:hover,
.cbs-main .cbs-location-list>li.cbs-state-selected,
.cbs-main .cbs-vehicle-list>li:hover,
.cbs-main .cbs-vehicle-list>li.cbs-state-selected,
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-right:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-right:hover,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number.cbs-state-selected,
.cbs-main .cbs-calendar .cbs-calendar-data a:hover,
.cbs-main .cbs-calendar .cbs-calendar-data .cbs-state-selected>a {
    background-color: #199CDB;
}

.cbs-main .cbs-button,
.cbs-main .cbs-location-list>li:hover,
.cbs-main .cbs-location-list>li.cbs-state-selected,
.cbs-main .cbs-vehicle-list>li:hover,
.cbs-main .cbs-vehicle-list>li.cbs-state-selected,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-right:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-right:hover,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number.cbs-state-selected,
.cbs-main .cbs-calendar .cbs-calendar-data a:hover,
.cbs-main .cbs-calendar .cbs-calendar-data .cbs-state-selected>a {
    border-color: #199CDB;
}

/* Color 2 - White */
.cbs-main .cbs-button:hover,
.cbs-main .cbs-state-selected>.cbs-button,
.cbs-main .cbs-state-selected>.cbs-button-box>.cbs-button,
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step,
.cbs-main .cbs-location-list>li:hover,
.cbs-main .cbs-location-list>li.cbs-state-selected,
.cbs-main .cbs-vehicle-list>li:hover,
.cbs-main .cbs-vehicle-list>li:hover .cbs-vehicle-icon,
.cbs-main .cbs-vehicle-list>li.cbs-state-selected,
.cbs-main .cbs-vehicle-list>li.cbs-state-selected .cbs-vehicle-icon,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-right:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-left:hover,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-right:hover,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number.cbs-state-selected,
.cbs-main .cbs-calendar .cbs-calendar-data a:hover,
.cbs-main .cbs-calendar .cbs-calendar-data .cbs-state-selected>a {
    color: #FFFFFF;
}

/* Color 3 - Dark Gray */
.cbs-main .cbs-service-list>li>.cbs-service-name,
.cbs-main .cbs-package-list>li>.cbs-package-name,
.cbs-main .cbs-calendar-header .cbs-calendar-header-caption,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number,
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header>span,
.cbs-main .cbs-form .cbs-agreement-header {
    color: #222222;
}

/* Color 4 - Medium Gray */
.cbs-main .cbs-form .cbs-form-summary .cbs-form-info,
.cbs-main .cbs-package-list>li>.cbs-package-service-list>li,
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader,
.cbs-main .cbs-service-list>li>div.cbs-service-name .cbs-more-content,
.cbs-main .cbs-calendar .cbs-calendar-data a,
.cbs-main .cbs-agreement>div>div,
.cbs-main .cbs-form textarea,
.cbs-main .cbs-form input[type="text"],
.cbs-main .cbs-form select {
    color: #777777;
}

/* Color 5 - Light Gray */
.cbs-main .cbs-form label,
.cbs-main .cbs-location-list>li,
.cbs-main .cbs-vehicle-list>li,
.cbs-main .cbs-booking-summary>li>span,
.cbs-main .cbs-package-list>li>.cbs-package-duration,
.cbs-main .cbs-service-list>li>div.cbs-service-price,
.cbs-main .cbs-service-list>li>div.cbs-service-duration,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-name,
.cbs-main .cbs-calendar .cbs-calendar-data,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number.cbs-state-disable {
    color: #A8B1B6;
}

/* Color 6 - Border Color */
.cbs-main .cbs-location-list>li,
.cbs-main .cbs-location-drop-down>select,
.cbs-main .cbs-vehicle-list>li,
.cbs-main .cbs-package-list>li,
.cbs-main .cbs-service-list>li,
.cbs-main .cbs-booking-summary>li,
.cbs-main .cbs-form .cbs-form-field,
.cbs-main .cbs-form .cbs-form-checkbox,
.cbs-main .cbs-package-list>li>.cbs-package-duration,
.cbs-main .cbs-calendar tr>th,
.cbs-main .cbs-calendar tr>td,
.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number,
.cbs-main .cbs-calendar .cbs-calendar-data a,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-left,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-right,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-left,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-right,
.cbs-main .cbs-to-tab.ui-tabs .ui-tabs-nav li,
.cbs-main .cbs-coupon-code input[name="coupon_code"] {
    border-color: #E2E6E7;
}

/* Color 7 - Disabled Background */
.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-state-disable>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step {
    background-color: #E0E0E0;
}

/* Color 8 - Disabled Text */
.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-state-disable>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step>span {
    color: #FFFFFF;
}

/* Color 9 - Disabled Headers */
.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-state-disable>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header>span,
.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-state-disable>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader>span {
    color: #CCCCCC;
}

/* Color 10 - Icons */
.cbs-main .cbs-meta-icon,
.cbs-main .cbs-vehicle-icon,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-left,
.cbs-main .cbs-calendar-header .cbs-calendar-header-arrow-right,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-left,
.cbs-main .cbs-calendar-header .cbs-calendar-header-month-arrow-right {
    color: #A8B1B6;
}

/******************************************************************************/
/* Main                                                                        */
/******************************************************************************/

.cbs-main {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

/* Main List */
.cbs-main .cbs-main-list>li.cbs-main-list-item {
    margin-bottom: 80px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-location-list {
    margin-bottom: 50px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-vehicle-list {
    margin-bottom: 68px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-package-list {
    margin-bottom: 50px;
}

/* Step Header */
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step {
    float: left;
    width: 80px;
    height: 80px;
    padding: 3px;
    line-height: 80px;
    text-align: center;
    border-radius: 100%;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step>span {
    font-size: 28px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step>span+span {
    font-size: 18px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header,
.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader {
    margin: 0px 0px 0px 110px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader {
    margin-top: 4px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header>span {
    font-size: 26px;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader>span {
    font-size: 20px;
    font-weight: 300;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-content {
    margin-top: 50px;
}

/* Sticky Booking */
.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-header {
    display: none;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content {
    left: 0px;
    width: 100%;
    bottom: 0px;
    z-index: 999;
    position: fixed;
    background: #FFFFFF;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary {
    display: flex;
    border-style: solid;
    border-width: 2px 0px 0px 0px;
}

.cbs-main.cbs-width-480 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary,
.cbs-main.cbs-width-300 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary,
.cbs-main.cbs-width-0 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary {
    flex-wrap: wrap;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li {
    float: none;
    margin: 0px;
    border-top: none;
}

.cbs-main.cbs-width-480 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li,
.cbs-main.cbs-width-300 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li,
.cbs-main.cbs-width-0 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li {
    width: 50%;
}

.cbs-main .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li+li {
    border-left: 0px;
}

.cbs-main.cbs-width-768 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li>.cbs-meta-icon,
.cbs-main.cbs-width-480 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li>.cbs-meta-icon,
.cbs-main.cbs-width-300 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li>.cbs-meta-icon,
.cbs-main.cbs-width-0 .cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li>.cbs-meta-icon {
    display: none;
}

.cbs-main-list>li.cbs-main-list-item.cbs-main-list-item-booking.cbs-main-list-item-booking-sticky>.cbs-main-list-item-section-content>.cbs-main-list-item-section-content>.cbs-booking-summary>li>h5>span {
    font-size: 20px;
    letter-spacing: 0px;
}

/******************************************************************************/
/* Preloader                                                                   */
/******************************************************************************/

#cbs-preloader {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    cursor: wait;
    display: none;
    position: absolute;
    background: rgba(255, 255, 255, 0.3);
}

#cbs-preloader.cbs-state-enable {
    display: block;
}

/******************************************************************************/
/* Notice                                                                      */
/******************************************************************************/

.cbs-notice {
    padding: 10px;
    border-style: solid;
    border-width: 2px;
}

/******************************************************************************/
/* Button                                                                      */
/******************************************************************************/

.cbs-button {
    outline: none;
    line-height: 1;
    cursor: pointer;
    text-align: left;
    border-width: 2px;
    position: relative;
    border-style: solid;
    border-radius: 999px;
    display: inline-block;
    padding: 13px 30px 15px 30px;
    background-color: transparent;
}

.cbs-button.cbs-state-hidden {
    display: none;
}

a.cbs-button,
a.cbs-button:hover {
    text-decoration: none;
}

.cbs-button,
.cbs-state-selected .cbs-button:before {
    transition: padding-right 100ms ease, opacity 200ms ease 100ms;
}

.cbs-button:before {
    opacity: 0;
    right: 25px;
    position: absolute;
}

.cbs-state-selected .cbs-button {
    padding-right: 50px;
}

.cbs-state-selected .cbs-button:before {
    opacity: 1;
}

.cbs-button,
.cbs-button>* {
    line-height: 1;
}

/******************************************************************************/
/* More Link                                                                   */
/******************************************************************************/

.cbs-more-link {
    margin-left: 10px;
}

/******************************************************************************/
/* Location List - Blue Gradient Theme (Fully Responsive)                     */
/******************************************************************************/

.cbs-location-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Base card */
.cbs-location-list > li {
    flex: 1 1 180px; /* Minimum width per item */
    max-width: 240px; /* Prevents giant cards on large screens */
    padding: 30px 0;
    border: 2px solid #2563eb;
    border-radius: 12px;
    background: #1e1e1e;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
}

/* Hover */
.cbs-location-list > li:hover {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    color: #fff;
    border-color: transparent;
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(37, 99, 235, 0.45);
}

/* Text */
.cbs-location-list > li > div > div {
    font-size: 20px;
    font-weight: 700;
    color: #2563eb;
}

.cbs-location-list > li:hover > div > div,
.cbs-location-list > li.cbs-state-selected > div > div {
    color: #fff;
}

/* Selected state */
.cbs-location-list > li.cbs-state-selected {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    border-color: transparent;
    color: #fff !important;
}

.cbs-location-list > li.cbs-state-selected > div > div {
    color: #fff !important;
}

.cbs-location-list > li.cbs-state-selected .cbs-location-url {
    color: #fff !important;
}

.cbs-location-url {
    position: relative !important;
    padding-right: 22px !important;
}

.cbs-location-list > li.cbs-state-selected .cbs-location-url::after {
    content: "✓";
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-weight: 900 !important;
    color: #fff !important;
}



/******************************************************************************/
/* RESPONSIVE BREAKPOINTS                                                     */
/******************************************************************************/

/* Large tablets / small laptops */
@media (max-width: 1200px) {
    .cbs-location-list > li {
        flex: 1 1 160px;
        max-width: 220px;
    }
}

/* Tablets */
@media (max-width: 900px) {
    .cbs-location-list > li {
        flex: 1 1 45%;
        max-width: 45%;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .cbs-location-list > li {
        flex: 1 1 100%;
        max-width: 100%;
    }
}

/******************************************************************************/
/* Vehicle List                                                                */
/******************************************************************************/

.cbs-vehicle-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-start;
    margin: 0px -6px -12px -6px;
}

.cbs-vehicle-list>li {
    flex-grow: 1;
    flex-basis: 140px;
    height: auto;
    cursor: pointer;
    border-width: 1px;
    border-style: solid;
    text-align: center;
    margin: 0px 6px 12px 6px;
    padding: 10px 10px 30px 10px;
}

.cbs-vehicle-list>li:only-child {
    flex-grow: 0.1;
}

.cbs-vehicle-list>li>div>img {
    max-width: 100%;
    border-radius: 5px;
    margin-bottom: 15px;
}

.cbs-vehicle-list>li>div>div.cbs-vehicle-icon {
    padding-top: 30px;
    margin-bottom: 8px;
}

.cbs-vehicle-list>li>div>div {
    position: relative;
    top: 3px;
}

.cbs-vehicle-list>li>div>div+div {
    top: 5px;
}

/******************************************************************************/
/* Package List - Blue Gradient Theme                                         */
/******************************************************************************/

.cbs-package-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: stretch;
    margin: 0 -15px;
    gap: 30px;
}

.cbs-package-list > li {
    flex: 0 0 calc(33.333% - 30px);
    max-width: calc(33.333% - 30px);
    text-align: center;
    position: relative;
    margin: 0 15px 30px 15px;
    padding: 25px 20px 75px 20px;
    box-sizing: border-box;
    border-radius: 12px;
    border: 2px solid #2563eb;
    background: #1e1e1e;
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: visible;
}

.cbs-package-list > li:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(37, 99, 235, 0.45);
    z-index: 1;
}

/* ================================
   Blue Gradient Animation
   ================================ */
@keyframes blue-shimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Title */
.cbs-package-list > li > .cbs-package-name {
    font-size: 32px;
    font-weight: 800;
    margin: 0 0 20px 0;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: inline-block;
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: blue-shimmer 6s infinite linear;
}

/* Price Styling */
.cbs-package-list > li > .cbs-package-price {
    text-align: center;
    margin-bottom: 20px;
}
.cbs-package-list > li > .cbs-package-price > span {
    font-weight: bold;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: blue-shimmer 6s infinite linear;
}
.cbs-package-list > li > .cbs-package-price > span.cbs-package-price-unit {
    font-size: 60px;
    line-height: 1;
}
.cbs-package-list > li > .cbs-package-price > span.cbs-package-price-decimal {
    font-size: 30px;
    line-height: 1;
}
.cbs-package-list > li > .cbs-package-price > span.cbs-package-price-currency {
    font-size: 20px;
    font-weight: 500;
    display: block;
    margin-top: 10px;
}

/* Button Styling */
.cbs-package-list > li > div.cbs-button-box {
    position: absolute;
    bottom: 30px;
    width: 50%;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}
.cbs-package-list > li > div.cbs-button-box a.cbs-button {
    display: inline-block;
    font-weight: bold;
   padding: 12px 40px;
    border-radius: 30px;
    border: 2px solid transparent;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    background-size: 200% 200%;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
    animation: blue-shimmer 6s infinite linear;
}
.cbs-package-list > li > div.cbs-button-box a.cbs-button:hover {
    transform: scale(1.05);
    box-shadow: 0 0 12px rgba(37, 99, 235, 0.55);
}

/* ================================
   Responsive Breakpoints
   ================================ */

/* Tablet (≤1024px but >768px) → 2 per row */
/* FORCE SERVICES TO ALWAYS BE ONE COLUMN */
.cbs-service-list > li {
    flex: 0 0 100% !important;
    max-width: 100% !important;
}
/******************************************************************************/
/* SERVICE HEADER ROW — NAME LEFT, PRICE + DURATION RIGHT                     */
/******************************************************************************/

.cbs-service-list > li .service-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin-bottom: 10px !important;
}

/* Left side: service name */
.cbs-service-list > li .cbs-service-name {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 !important;
}

/* Right side: duration + price */
.cbs-service-list > li .service-meta {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
    white-space: nowrap !important;
}

.cbs-service-list > li .cbs-service-duration,
.cbs-service-list > li .cbs-service-price {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
}


/* Mobile (≤768px but >480px) → 2 per row tighter */
@media (max-width: 768px) {
    .cbs-package-list > li {
        flex: 0 0 calc(50% - 20px);
        max-width: calc(50% - 20px);
    }
}

/* Small Mobile (≤480px) → 1 per row */
@media (max-width: 480px) {
    .cbs-package-list > li {
        flex: 0 0 100%;
        max-width: 100%;
        margin: 0 0 30px 0;
    }
}

			
/******************************************************************************/
/* Service List - Complete Blue Gradient Theme (FINAL VERSION)                */
/******************************************************************************/

/* ============================================================================
   FILTER INSTRUCTIONS
   ============================================================================ */
.filter-instructions {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%) !important;
    border: none !important;
    padding: 20px 25px !important;
    margin: 20px 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(59, 130, 246, 0.25) !important;
}

.filter-instructions h3 {
    margin: 0 0 10px 0 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: white !important;
}

.filter-instructions p {
    margin: 0 !important;
    font-size: 14px !important;
    color: rgba(255,255,255,0.95) !important;
    line-height: 1.6 !important;
}

/* ============================================================================
   FILTER GROUPS & LAYOUT
   ============================================================================ */
#dynamic-room-filters {
    margin: 20px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.filter-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    background: white !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    border-left: 3px solid #3b82f6 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
}

.filter-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

.filter-label {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #1e293b !important;
    min-width: 100px !important;
    text-align: right !important;
}

.filter-row {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

/* ============================================================================
   SERVICES CONTAINER — MATCH PACKAGE LAYOUT
   ============================================================================ */
.filter-services-container {
    margin-top: 14px !important;
    padding-left: 18px !important;
    border-left: 3px solid #3b82f6 !important;
    display: none !important;
}

.filter-services-container.active {
    display: block !important;
}

/* ============================================================================
   SERVICE LIST — FLEX LIKE PACKAGES
   ============================================================================ */
.cbs-service-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
    margin: 0 -15px !important;
    padding: 0 !important;
    list-style: none !important;
}

/* ============================================================================
   SERVICE CARD — MATCH PACKAGE CARD
   ============================================================================ */
/* ============================================================================
   SERVICE CARD — ALWAYS ONE COLUMN
   ============================================================================ */
.cbs-service-list > li {
    flex: 0 0 100% !important;
    max-width: 100% !important;

    background: #1e1e1e !important;
    border: 2px solid #2563eb !important;
    border-radius: 12px !important;

    padding: 20px !important;
    margin: 0 0 20px 0 !important;
    box-sizing: border-box !important;

    box-shadow: 0 6px 18px rgba(0,0,0,0.25) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.cbs-service-list > li:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 24px rgba(37, 99, 235, 0.45) !important;
}

/* ============================================================================
   SERVICE TEXT
   ============================================================================ */
.cbs-service-title,
.cbs-service-name,
.cbs-service-duration,
.cbs-service-price {
    color: #fff !important;
    font-weight: 600 !important;
}

.cbs-service-title {
    font-size: 18px !important;
    margin-bottom: 6px !important;
}

.cbs-more-content {
    margin-top: 10px !important;
    color: rgba(255,255,255,0.9) !important;
}

/* ============================================================================
   SELECTED SERVICE — BLUE SHIMMER
   ============================================================================ */
.cbs-service-list > li.cbs-state-selected {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
    border-color: transparent !important;
    animation: blue-shimmer 6s infinite linear !important;
    box-shadow: 0 6px 18px rgba(59,130,246,0.45) !important;
}

.cbs-service-list > li.cbs-state-selected * {
    color: #fff !important;
}

/******************************************************************************/
/* FIX: Restore Category Button Styling                                       */
/******************************************************************************/

.dynamic-filter-btn {
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #475569 !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
}

.dynamic-filter-btn:hover {
    background: white !important;
    border-color: #3b82f6 !important;
    color: #1e40af !important;
    box-shadow: 0 2px 4px rgba(59,130,246,0.15) !important;
}

.dynamic-filter-btn.active {
    background: #3b82f6 !important;
    border-color: #3b82f6 !important;
    color: white !important;
    box-shadow: 0 2px 8px rgba(59,130,246,0.35) !important;
}

.dynamic-filter-btn.active:hover {
    background: #2563eb !important;
    box-shadow: 0 4px 12px rgba(59,130,246,0.4) !important;
}

/* ============================================================================
   SELECT BUTTON — MATCH PACKAGE BUTTON
   ============================================================================ */
.cbs-button.cbs-select-toggle {
    display: inline-block !important;
    font-weight: bold !important;
    padding: 10px 30px !important;
    border-radius: 30px !important;
    border: 2px solid transparent !important;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
    background-size: 200% 200% !important;
    color: #fff !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    animation: blue-shimmer 6s infinite linear !important;
    margin-top: 15px !important;
}

.cbs-button.cbs-select-toggle:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 0 12px rgba(37, 99, 235, 0.55) !important;
}

/* ============================================================================
   RESPONSIVE BREAKPOINTS — SAME AS PACKAGES
   ============================================================================ */
@media (max-width: 1024px) {
    .cbs-service-list > li {
        flex: 0 0 calc(50% - 30px) !important;
        max-width: calc(50% - 30px) !important;
    }
}

@media (max-width: 768px) {
    .cbs-service-list > li {
        flex: 0 0 calc(50% - 20px) !important;
        max-width: calc(50% - 20px) !important;
    }
}

@media (max-width: 480px) {
    .cbs-service-list > li {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin: 0 0 30px 0 !important;
    }
}

/* ============================================================================
   PACKAGE LIST STYLES
   ============================================================================ */

/* Package Duration */
.cbs-package-list > li > .cbs-package-duration {
    color: #fff !important;
    display: inline-block !important;
}

.cbs-package-list > li > .cbs-package-duration .cbs-meta-icon {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
    background-size: 200% 200% !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    animation: blue-shimmer 6s infinite linear !important;
}

/* Package Service List */
.cbs-package-list > li > .cbs-package-service-list > li {
    color: #fff !important;
}


/* Package Button - Unselected */
.cbs-package-list > li > .cbs-button-box > .cbs-button {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
    background-size: 200% 200% !important;
    color: #fff !important;
    border-color: transparent !important;
    animation: blue-shimmer 6s infinite linear !important;
}

.cbs-package-list > li > .cbs-button-box > .cbs-button:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 0 12px rgba(37, 99, 235, 0.55) !important;
}

/* Package Selected State */
.cbs-package-list > li.cbs-state-selected {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
    border-color: transparent !important;
}

.cbs-package-list > li.cbs-state-selected .cbs-package-name,
.cbs-package-list > li.cbs-state-selected .cbs-package-price span,
.cbs-package-list > li.cbs-state-selected .cbs-package-duration,
.cbs-package-list > li.cbs-state-selected .cbs-package-duration .cbs-meta-icon,
.cbs-package-list > li.cbs-state-selected .cbs-package-service-list li {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

.cbs-package-list > li.cbs-state-selected .cbs-button {
    background: #fff !important;
    color: #2563eb !important;
    border-color: #fff !important;
    animation: none !important;
}

.cbs-package-list > li.cbs-state-selected .cbs-button:hover {
    background: #f0f9ff !important;
}


/* ============================================================================
   LOADING SPINNER
   ============================================================================ */
.cbs-location-loading {
    display: inline-block !important;
    width: 16px !important;
    height: 16px !important;
    border: 3px solid rgba(255,255,255,0.4) !important;
    border-top-color: #fff !important;
    border-radius: 50% !important;
    animation: cbs-spin 0.6s linear infinite !important;
    margin-left: 6px !important;
}

@keyframes cbs-spin {
    to { transform: rotate(360deg); }
}


    
  


			
/******************************************************************************/
/* Calendar																	  */	
/******************************************************************************/

.cbs-calendar-table-wrapper {
    clear: both;
    margin-top: 20px;
    overflow-x: hidden;
}

.cbs-calendar {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border: none;
}

.cbs-calendar tr > th,
.cbs-calendar tr > td {
    padding: 0;
    min-width: 140px;
    border: 1px solid #2563eb; /* blue border */
    vertical-align: top;
    box-sizing: border-box;
}

.cbs-calendar tr > th > div,
.cbs-calendar tr > td > div {
    padding: 20px;
}

	/******************************************************************************/
/* Calendar — Blue Gradient Professional Theme                                */
/******************************************************************************/

.cbs-calendar-table-wrapper {
    clear: both;
    margin-top: 20px;
    overflow-x: hidden;
}

/* Base Calendar Table */
.cbs-calendar {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border: none;
}

.cbs-calendar tr > th,
.cbs-calendar tr > td {
    padding: 0;
    min-width: 140px;
    border: 1px solid #2563eb; /* Blue border */
    vertical-align: top;
    box-sizing: border-box;
}

.cbs-calendar tr > th > div,
.cbs-calendar tr > td > div {
    padding: 20px;
}

/******************************************************************************/
/* Calendar Header                                                             */
/******************************************************************************/

.cbs-calendar-header {
    text-align: center;
}

/* Navigation Arrows */
.cbs-calendar-header .cbs-calendar-header-arrow-left,
.cbs-calendar-header .cbs-calendar-header-arrow-right {
    top: -6px;
    width: 47px;
    height: 47px;
    line-height: 42px;
    border-radius: 100%;
    border: 2px solid #2563eb;
    color: #2563eb;
    text-align: center;
    position: relative;
    transition: all 0.3s ease;
}

/* Hover → Blue Gradient */
.cbs-calendar-header .cbs-calendar-header-arrow-left:hover,
.cbs-calendar-header .cbs-calendar-header-arrow-right:hover {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    color: #fff;
    border-color: transparent;
    transform: scale(1.08);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.45);
}

/* Left Arrow Flip */
.cbs-calendar-header .cbs-calendar-header-arrow-left {
    float: left;
    transform: scaleX(-1);
}

/* Right Arrow */
.cbs-calendar-header .cbs-calendar-header-arrow-right {
    float: right;
}

/* Month Caption */
.cbs-calendar-header .cbs-calendar-header-caption > span {
    font-size: 24px;
    font-weight: 700;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/******************************************************************************/
/* Calendar Subheader (Day Numbers + Names)                                   */
/******************************************************************************/

.cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number {
    float: left;
    width: 47px;
    height: 47px;
    font-size: 24px;
    line-height: 43px;
    border-radius: 100%;
    border: 2px solid #2563eb;
    color: #2563eb;
    text-align: center;
    transition: all 0.3s ease;
}

/* Hover → Gradient */
.cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number:hover {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    color: #fff;
    transform: scale(1.08);
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.45);
}

.cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-name {
    float: right;
    position: relative;
    top: -0.5em;
    font-weight: 600;
    color: #2563eb;
}

/******************************************************************************/
/* Calendar Data (Buttons / Time Slots)                                       */
/******************************************************************************/

.cbs-calendar .cbs-calendar-data {
    text-align: center;
}

.cbs-calendar .cbs-calendar-data a {
    width: 100%;
    font-size: 14px;
    margin-bottom: 10px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 2px solid #2563eb;
    color: #2563eb;
    display: inline-block;
    transition: all 0.3s ease;
    text-decoration: none;
}

/* Hover → Gradient Button */
.cbs-calendar .cbs-calendar-data a:hover {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    color: #fff;
    border-color: transparent;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.45);
}

/* "More" Button */
.cbs-calendar .cbs-calendar-data .cbs-calendar-data-button-more {
    margin-bottom: 0;
}


/******************************************************************************/
/* Booking Summary — Fully Responsive, Modern Flex Layout                     */
/******************************************************************************/

.cbs-booking-summary {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Each summary item */
.cbs-booking-summary > li {
    flex: 1 1 calc(50% - 20px) !important; /* 2 columns on desktop */
    background: #1e1e1e !important;
    border: 2px solid #2563eb !important;
    border-radius: 12px !important;
    padding: 30px !important;
    box-sizing: border-box !important;
    text-align: right !important;
    position: relative !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
}

/* Icon on the left */
.cbs-booking-summary > li .cbs-meta-icon {
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Title */
.cbs-booking-summary > li > h5 {
    margin: 0 0 10px 0 !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #fff !important;
}

/* Value text */
.cbs-booking-summary > li > span {
    font-size: 18px !important;
    color: #fff !important;
}

/******************************************************************************/
/* RESPONSIVE BREAKPOINTS                                                     */
/******************************************************************************/

/* Tablet + Mobile → 1 column */
@media (max-width: 900px) {
    .cbs-booking-summary > li {
        flex: 1 1 100% !important;
        text-align: left !important;
        padding-left: 60px !important; /* space for icon */
    }

    .cbs-booking-summary > li .cbs-meta-icon {
        left: 20px !important;
        transform: translateY(-50%) !important;
    }
}

/* Small Mobile → cleaner spacing */
@media (max-width: 480px) {
    .cbs-booking-summary > li {
        padding: 25px 20px 25px 60px !important;
    }

    .cbs-booking-summary > li > h5 {
        font-size: 20px !important;
    }

    .cbs-booking-summary > li > span {
        font-size: 16px !important;
    }
}


/******************************************************************************/
/* Steps navigation															  */
/******************************************************************************/

.cbs-main-list-item-navigation-list
{
	
}

	.cbs-main-list-item-navigation-list .cbs-main-list-item-section-content
	{
		text-align: center;
	}
	
		.cbs-main-list-item-navigation-list .cbs-main-list-item-section-content .cbs-button
		{
			margin: 0 10px;
		}

/******************************************************************************/
/* Contact Details															  */
/******************************************************************************/

.cbs-contact-details-options
{
	text-align:center;
	margin-bottom:30px;
}

	.cbs-contact-details-options .cbs-button
	{
		margin-left:10px;
		margin-right:10px;
	}

/******************************************************************************/
/* Tabs																		  */
/******************************************************************************/

.cbs-to-tab
{
	padding:0;
}

	.cbs-to-tab.ui-tabs .ui-tabs-nav
	{
		padding:0;
	}

		.cbs-to-tab.ui-tabs .ui-tabs-nav li
		{
			border-width:1px;
			border-style:solid;
			padding:0;
		}

		.cbs-to-tab.ui-tabs .ui-tabs-nav li:last-child
		{
			float:right;
			margin-right:0px;
		}

	.cbs-to-tab.ui-tabs .ui-tabs-panel
	{
		padding:0;
	}

/******************************************************************************/
/* Form																		  */
/******************************************************************************/
				
.cbs-form
{
	
}

	.cbs-form label
	{
		font-size:14px;
	}
	
	.cbs-form textarea:focus,
	.cbs-form input[type="text"]:focus,
	.cbs-form input[type="password"]:focus,
	.cbs-form select:focus
	{
		outline:none;
	}
	
	.cbs-form textarea,
	.cbs-form input[type="text"],
	.cbs-form input[type="password"],
	.cbs-form select
	{
		width:100%;
		border:none;
		padding:10px 0px 10px 0px;
	}

	.cbs-form textarea
	{
		resize:none;
		overflow:hidden;
		min-height:95px;
	}
	
	.cbs-form input[type="text"]
	{

	}
	
	.cbs-form .cbs-form-field
	{
		float:left;
		padding:15px;
		margin-top:-1px;
		border-width:1px;
		border-style:solid;
	}
	
		.cbs-form .cbs-form-field *
		{
			clear:both;
			display:block;
		}
		
		.cbs-form .cbs-form-field select,
		.cbs-form .cbs-form-field select option
		{
			background:#FFFFFF;
		}
		
	.cbs-form .cbs-form-summary
	{
		float:left;
		width:100%;
		text-align:center;
	}
	
		.cbs-form .cbs-form-summary .cbs-form-info
		{
			margin-top:40px;
		}
	
		.cbs-form .cbs-form-summary .cbs-button
		{
			margin-top:40px;
		}
		
	.cbs-form .cbs-form-field.cbs-form-width-33
	{
		width:33.333333%;
	}
	
	.cbs-form .cbs-form-field.cbs-form-width-50
	{
		width:50%;
	}
	
	.cbs-form .cbs-form-field.cbs-form-width-100
	{
		width:100%;
	}
		
	.cbs-form .cbs-form-field.cbs-form-width-33+.cbs-form-width-33,
	.cbs-form .cbs-form-field.cbs-form-width-50+.cbs-form-width-50
	{
		border-left-width:0px;
	}
	
	.cbs-main.cbs-width-0 .cbs-form .cbs-form-field.cbs-form-width-33,
	.cbs-main.cbs-width-0 .cbs-form .cbs-form-field.cbs-form-width-50,
	.cbs-main.cbs-width-300 .cbs-form .cbs-form-field.cbs-form-width-33,
	.cbs-main.cbs-width-300 .cbs-form .cbs-form-field.cbs-form-width-50,
	.cbs-main.cbs-width-480 .cbs-form .cbs-form-field.cbs-form-width-33,
	.cbs-main.cbs-width-480 .cbs-form .cbs-form-field.cbs-form-width-50
	{
		width:100%;
		border-left-width:1px;
	}
	
/******************************************************************************/
/* Form checkbox                                                              */
/******************************************************************************/

.cbs-main .cbs-form .cbs-form-checkbox
{
    float:left;
    width:30px;
    height:30px;
    display:block;
    cursor:pointer;
    margin-top:-5px;
    margin-right:20px;
    border-width:2px;
    border-style:solid;
}

    .cbs-main .cbs-form .cbs-form-checkbox>.cbs-meta-icon-check::before
    {
        display:none;
        font-size:22px;
        line-height:28px;
        text-align:center;
    }
    
    .cbs-main .cbs-form .cbs-form-checkbox.cbs-state-selected>.cbs-meta-icon-check::before
    {
        display:block;
    }
    
.cbs-main .cbs-form .cbs-form-checkbox+input[type="checkbox"]
{
    opacity:0;
}

/******************************************************************************/
/* Agreement                                                                  */
/******************************************************************************/

.cbs-main .cbs-agreement-header
{
    font-size:18px;
    font-weight:700;
    margin-top:70px;
    line-height:30px;
    text-align:center;
}

.cbs-agreement
{
    margin-top:40px;
	text-align:left;
}

    .cbs-agreement>div
    {
        margin-top:15px;
    }
    
        .cbs-agreement>div>div
        {
            margin-left:50px;
        }
		
/******************************************************************************/
/* Coupon code																  */
/******************************************************************************/

.cbs-form .cbs-coupon-code
{
	text-align:left;
	margin-top:30px;
}

	.cbs-form .cbs-coupon-code a.cbs-show-coupon
	{
		display:inline-block;
		line-height:34px;
	}

	.cbs-form .cbs-coupon-code input[name="coupon_code"]
	{
		width:auto;
		display:none;
		padding:5px;
		border-width:1px;
		border-style:solid;
		margin-left:10px;
	}
	
	.cbs-form .cbs-coupon-code a.cbs-button-apply-coupon
	{
		display:none;
		margin-left:10px;
		margin-top:0;
		padding:5px 20px 7px 20px;
		line-height:1;
	}

	.cbs-form .cbs-coupon-code div
	{
		display:none;
		margin-top:10px;
	}

	.cbs-form .cbs-coupon-code div.cbs-coupon-code-success
	{
		color:#5AAC4A;
	}

	.cbs-form .cbs-coupon-code div.cbs-coupon-code-failure
	{
		color:#BD432D;
	}

/******************************************************************************/
/* Register																	  */
/******************************************************************************/

.cbs-register
{
	text-align:left;
	margin-top:30px;
}

	.cbs-register label
	{
		font-size:15px;
		font-weight:400;
	}

	.cbs-register input[type="checkbox"]
	{
		margin:0;
	}

/******************************************************************************/
/* Notice																	  */
/******************************************************************************/

.cbs-notice
{
	border:none;
	display:none;
	margin-bottom:40px;
	padding:35px 35px 20px 35px;
}

.cbs-width-0 .cbs-notice 
{
	text-align:center;
}

.cbs-notice.cbs-notice-success
{
	background-color:#F5F5F5;
}

.cbs-notice.cbs-notice-error
{
	background-color:#FAEEED;
}

	.cbs-notice>div
	{
		display:inline-block;
		vertical-align:middle;
	}
	
	.cbs-notice .cbs-notice-content
	{
		margin-top:-20px;
		margin-left:20px;
	}
	
	.cbs-width-0 .cbs-notice .cbs-notice-content
	{
		margin-top:10px;
		margin-left:0px;
	}

	.cbs-notice .cbs-notice-content .cbs-notice-header
	{
		font-size:24px;
	}
	
	.cbs-notice .cbs-notice-content .cbs-notice-text
	{
		
	}
	
		.cbs-notice.cbs-notice-success .cbs-notice-content .cbs-notice-header
		{
			color:#5AAC4A;
		}

		.cbs-notice.cbs-notice-success .cbs-notice-content .cbs-notice-text
		{
			color:#777777;
		}
	
		.cbs-notice.cbs-notice-error .cbs-notice-content .cbs-notice-header
		{
			color:#BD432D;
		}

		.cbs-notice.cbs-notice-error .cbs-notice-content .cbs-notice-text
		{
			color:#BD432D;
		}

/******************************************************************************/
/* Stripe form																  */
/******************************************************************************/

#cbs-stripe-form button.stripe-button-el
{
	display:none !important;
}
		
/******************************************************************************/
/* Responsive																  */
/******************************************************************************/

	/**************************************************************************/
	/* Responsive / 1189													  */
	/**************************************************************************/

	@media screen and (max-width:1189px)
	{
		.cbs-package-list>li
		{
			padding:25px 15px 75px 15px;
			margin:0px 10px 20px 10px;
		}
		
		.cbs-package-list
		{
			margin:0px -10px 0px -10px;
		}
		
		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header>span
		{
			font-size:24px;
		}

		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step>span
		{
			font-size:24px;
		}

		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step>span+span
		{
			font-size:18px;
		}

		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-step
		{
			width:70px;
			height:70px;
			line-height:70px;
		}

		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-header, 
		.cbs-main .cbs-main-list>li.cbs-main-list-item>div.cbs-main-list-item-section-header>.cbs-main-list-item-section-header-subheader
		{
			margin:0px 0px 0px 95px;
		}
		
		.cbs-main .cbs-location-list>li>div>div
		{
			font-size:20px;
		}
		
		.cbs-main .cbs-package-list>li>.cbs-package-name
		{
			font-size:20px;
		}

		.cbs-main .cbs-calendar-header .cbs-calendar-header-caption>span
		{
			font-size:20px;
		}

		.cbs-main .cbs-calendar .cbs-calendar-subheader .cbs-calendar-subheader-day-number
		{
			font-size:20px;
		}

		.cbs-main .cbs-booking-summary>li>h5, 
		.cbs-main .cbs-booking-summary>li>h5>span
		{
			font-size:20px;
		}

		.cbs-main .cbs-calendar tr>th>div,
		.cbs-main .cbs-calendar tr>td>div
		{
			padding:15px;
		}

		.cbs-main .cbs-service-list>li
		{
			padding:12px 15px 12px 15px;
		}

		.cbs-main .cbs-booking-summary>li
		{
			padding:32px 25px 25px 25px;
		}

		.cbs-main .cbs-meta-icon-date::before, 
		.cbs-main .cbs-meta-icon-time::before, 
		.cbs-main .cbs-meta-icon-total-price::before, 
		.cbs-main .cbs-meta-icon-total-duration::before
		{
			top:7px;
		}		
	}
	
	/**************************************************************************/
	/* Responsive / 959														  */
	/**************************************************************************/

	@media screen and (max-width:959px)
	{	
		.cbs-booking-summary>li
		{
			margin-bottom:20px;
		}
	}
	
/**************************************************************************/
/* Responsive Styles for Devices ≤ 767px                                  */
/**************************************************************************/

@media screen and (max-width: 767px) {

  /* Header Text Sizes */
  .cbs-main .cbs-main-list-item-section-header-header > span {
    font-size: 22px;
  }

  .cbs-main .cbs-main-list-item-section-header-subheader > span {
    font-size: 18px;
  }

  .cbs-main .cbs-main-list-item-section-header-step > span {
    font-size: 22px;
  }

  /* Service List Layout */
  .cbs-main .cbs-service-list > li {
    display: block;
  }

  .cbs-main .cbs-service-list.cbs-state-to-hidden > li.cbs-state-to-hidden {
    display: none;
  }

  .cbs-main .cbs-service-list > li > .cbs-button-box {
    width: auto;
  }

  .cbs-main .cbs-service-list > li > .cbs-button-box > .cbs-button {
    float: none;
  }

  /* Calendar Navigation */
  .cbs-calendar-header .cbs-month-navigation-desktop {
    display: none;
  }

  .cbs-calendar-header .cbs-month-navigation-responsive {
    display: inline-block;
  }

  /* Button Padding */
  .cbs-button {
    padding: 10px 25px 12px 25px;
  }
}

	/**************************************************************************/
	/* Responsive / 479														  */
	/**************************************************************************/

	@media screen and (max-width:479px)
	{
		.cbs-contact-details-options .cbs-button:first-of-type
		{
			margin-bottom:10px;
		}
		.cbs-to-tab.ui-tabs .ui-tabs-nav li:last-child
		{
			float:left;
		}
	}





@keyframes cbs-spin {
    to { transform: rotate(360deg); }
}




.filter-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    background: white !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border-left: 3px solid #3b82f6 !important;
}
.filter-group:hover {
    box-shadow: 0 4px 6px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.06) !important;
}


 






/* TW - CSS for STEP 2 */

              
                /* Scroll container */
.vehicle-table-container {
  max-height: calc(7 * 40px);
  overflow-y: auto;
  border: 1px solid white;

}

/* Base table */
#vehicleModelTable {
  width: 100%;
  border-collapse: collapse;
  background-color: #1e1e1e !important;
  color: white;
  font-family: Arial, sans-serif;
  overflow: hidden;
}

/* Alternating stripes */
#vehicleModelTable tbody tr:nth-child(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
#vehicleModelTable tbody tr:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.12);
}
/* Default idle state for all rows */
#vehicleModelTable tbody tr {
  background: #f8fafc !important;
  color: black !important;
 
  overflow: hidden; /* ensures corners clip correctly */
}

/* Hover */
#vehicleModelTable tbody tr:hover,
#vehicleModelTable tr.selected-row {
 
}


/* Cells */
#vehicleModelTable td {
  border: 1px solid white;
  padding: 8px;
  text-align: left;
}

/* CATEGORY ACCENTS */
tr[data-vehicle-type="small-car"] td:first-child {
  border-left: 4px solid #00e1ff;
}
tr[data-vehicle-type="medium-car"] td:first-child {
  border-left: 4px solid #ffb400;
}
tr[data-vehicle-type="compact-suv"] td:first-child {
  border-left: 4px solid #7dff6b;
}
tr[data-vehicle-type="sports-car"] td:first-child {
  border-left: 4px solid #ff4a4a;
}
tr[data-vehicle-type="hypercar"] td:first-child {
  border-left: 4px solid #b44aff;
}

/* SELECTED ROW */
#vehicleModelTable tr.selected-row {
  background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
  color: white !important;
  font-weight: bold;
  position: relative;
  transform: scale(1.02);
  transition: 0.25s ease-in-out;
  box-shadow: inset 0 0 12px rgba(255,255,255,0.4);
  animation: selectFadeSlide 0.35s ease forwards;
}

/* Make borders transparent on selection */
#vehicleModelTable tr.selected-row td {
  color: white !important;
  border-color: transparent !important;
}

/* Checkmark stays white */
#vehicleModelTable tr.selected-row td:first-child::before {
  color: white !important;
}


@keyframes checkPop {
  0% { transform: scale(0); }
  80% { transform: scale(1.3); }
  100% { transform: scale(1); }
}

/* SLIDE-UP DRAWER */
#selectionDrawer {
  position: fixed;
  bottom: -120px; /* hidden */
  left: 0;
  width: 100%;
  background-color: linear-gradient(135deg,#3b82f6,#1d4ed8) !important;
                                    color: white;
  padding: 15px;
  border-top: 3px solid white;
  transition: bottom 0.35s ease;
  z-index: 9999;
}

#selectionDrawer.open {
  bottom: 0;
}

#drawerContent {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.drawer-buttons {
  display: flex;
  gap: 10px;
}

.drawer-buttons button {
  background: white;
  color: #4a65ed;

  padding: 8px 14px;
  font-weight: bold;
  cursor: pointer;
  transition: 0.2s ease;


.drawer-buttons button:hover {
  background: #dfe3ff;
  border: transparent;
}

/******************************************************************************/
/* GLOBAL: Prevent ANY horizontal scrolling                                   */
/******************************************************************************/

html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    position: relative !important;
}

/******************************************************************************/
/* GLOBAL: Prevent any element from exceeding viewport width                  */
/******************************************************************************/

body * {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

/******************************************************************************/
/* FIX: Bootstrap containers & rows (negative margins)                        */
/******************************************************************************/

.container,
.container-fluid,
.row,
.footer-area,
.footer,
.footer .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/******************************************************************************/
/* FIX: Flex containers that can push wider                                   */
/******************************************************************************/

.cbs-service-list,
.cbs-package-list,
.cbs-booking-summary,
.filter-group,
.filter-services-container,
#dynamic-room-filters,
footer,
footer * {
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/******************************************************************************/
/* FIX: Old float behavior in booking summary                                 */
/******************************************************************************/

.cbs-booking-summary > li {
    float: none !important;
    max-width: 100% !important;
}

/* Completely neutralize hidden iframes so they cannot overflow */
iframe {
    display: block !important;
    max-width: 0 !important;
    max-height: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
/* MOBILE FIX — Make booking summary readable */
@media (max-width: 600px) {

    /* Force the container to behave responsively */
    .cbs-main-list-item-section-content {
        width: 100% !important;
        overflow: hidden !important;
    }

/****************************************************/
/* BOOKING SUMMARY — PREMIUM BLUE GRADIENT THEME    */
/****************************************************/

.cbs-booking-summary {
    display: flex;
    flex-direction: row;
    gap: 20px;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

.cbs-booking-summary > li {
    flex: 1 1 calc(50% - 20px);
    background: #1e1e1e;
    border: 2px solid #2563eb;
    border-radius: 12px;
    padding: 20px;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    transition: all 0.3s ease;
    float: none !important;
}

.cbs-booking-summary > li:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(37,99,235,0.45);
    border-color: transparent;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
}

.cbs-booking-summary > li .cbs-meta-icon {
    font-size: 28px;
    color: #3b82f6;
    flex-shrink: 0;
}

.cbs-booking-summary > li:hover .cbs-meta-icon {
    color: #fff;
}

.cbs-booking-summary > li h5 {
    margin: 0;
    padding: 0;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.cbs-booking-summary > li span {
    font-size: 14px;
    color: #A8B1B6;
}

.cbs-booking-summary > li:hover span {
    color: #fff;
}

/****************************************************/
/* MOBILE FIX — FULL RESPONSIVE                     */
/****************************************************/
@media (max-width: 600px) {

    .cbs-main-list-item-section-content {
        width: 100% !important;
        overflow: hidden !important;
    }

    .cbs-booking-summary {
        flex-direction: column !important;
        gap: 20px !important;
        width: 100% !important;
    }

    .cbs-booking-summary > li {
        width: 100% !important;
        flex: none !important;
        float: none !important;
        padding: 18px !important;
        gap: 12px !important;
    }

    .cbs-booking-summary > li .cbs-meta-icon {
        font-size: 24px !important;
    }

    .cbs-booking-summary > li h5 {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    .cbs-booking-summary > li span {
        font-size: 14px !important;
        white-space: nowrap !important;
    }
}
/* FORCE BOOKING SUMMARY TO STICK TO BOTTOM */
.cbs-main-list-item-booking .cbs-main-list-item-section-content {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: #ffffff !important;
    z-index: 9999 !important;
    padding: 10px 0 !important;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.15) !important;
}

/* Make the summary itself flex and readable */
.cbs-main-list-item-booking .cbs-booking-summary {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 0 20px !important;
}

/* Mobile: stack items vertically */
@media (max-width: 600px) {
    .cbs-main-list-item-booking .cbs-booking-summary {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 15px !important;
    }
}
.cbs-main {
    padding-bottom: 140px !important;
}
/* HIDE .tw-book-wrapper ON DESKTOP ONLY WHEN ON SUMMARY STEP */
@media (min-width: 769px) {
    .cbs-main-list-item-booking-sticky .tw-book-wrapper {
        display: none !important;
    }
}
/* HIDE THE TOP SUMMARY — KEEP ONLY THE BOTTOM STICKY ONE */
.cbs-main-list-item-booking:not(.cbs-main-list-item-booking-sticky)
    .cbs-main-list-item-section-content > .cbs-booking-summary {
    display: none !important;
}
/* HIDE THE TOP SUMMARY — KEEP ONLY THE BOTTOM ONE */
.cbs-main-list-item-booking:not(.cbs-main-list-item-booking-sticky)
    .cbs-booking-summary.cbs-list-reset.cbs-clear-fix {
    display: none !important;
}
/* MOBILE — Make booking summary items inline instead of stacked */
@media (max-width: 600px) {

    .cbs-booking-summary {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .cbs-booking-summary > li {
        width: 48% !important; /* two per row */
        float: none !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 12px !important;
        box-sizing: border-box !important;
    }

    .cbs-booking-summary > li .cbs-meta-icon {
        font-size: 20px !important;
        flex-shrink: 0 !important;
    }

    .cbs-booking-summary > li h5 {
        font-size: 16px !important;
        margin: 0 !important;
        line-height: 1.2 !important;
        display: flex !important;
        gap: 4px !important;
        flex-wrap: wrap !important;
    }

    .cbs-booking-summary > li span {
        font-size: 13px !important;
        white-space: nowrap !important;
    }
}
/* STICKY SUMMARY BAR ON ALL BOOKING STEPS */
.cbs-main-list-item-booking .cbs-main-list-item-section-content {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: #ffffff !important;
    z-index: 9999 !important;
    padding: 10px 0 !important;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.15) !important;
}
/* INLINE SUMMARY ITEMS (LEFT TO RIGHT) */
.cbs-main-list-item-booking .cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    padding: 0 20px !important;
    width: 100% !important;
}

.cbs-main-list-item-booking .cbs-booking-summary > li {
    float: none !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 !important;
}
/* REMOVE THE TOP SUMMARY — KEEP ONLY THE BOTTOM STICKY ONE */
.cbs-main-list-item-booking:not(.cbs-main-list-item-booking-sticky)
    .cbs-booking-summary.cbs-list-reset.cbs-clear-fix {
    display: none !important;
}
/* PREVENT OVERLAP WITH PAGE CONTENT */
.cbs-main {
    padding-bottom: 140px !important;
}
/* FIXED BOTTOM SUMMARY BAR */
.cbs-booking-summary-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ffffff;
    z-index: 9999;
    padding: 12px 20px;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.15);
    display: none; /* hidden by default, JS will show it */
}
/* INLINE SUMMARY ITEMS */
.cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
    flex-wrap: nowrap !important;
    width: 100%;
}

.cbs-booking-summary > li {
    float: none !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
/* REMOVE TOP SUMMARY */
.cbs-main-list-item-booking:not(.cbs-main-list-item-booking-sticky)
    .cbs-booking-summary.cbs-list-reset.cbs-clear-fix {
    display: none !important;
}
    /* STICKY SUMMARY BAR */
.cbs-summary-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ffffff;
    z-index: 9999;
    padding: 12px 20px;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.15);
    display: none; /* JS will toggle this */
}

/* INLINE SUMMARY ITEMS (LEFT → RIGHT) */
.cbs-summary-sticky-bar .cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    margin: 0;
    padding: 0;
}

.cbs-summary-sticky-bar .cbs-booking-summary > li {
    float: none !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
}

/* HIDE THE ORIGINAL TOP SUMMARY */
.cbs-main-list-item-booking .cbs-main-list-item-section-content > .cbs-booking-summary {
    display: none !important;
}

/* PREVENT CONTENT FROM BEING COVERED BY THE BAR */
.cbs-main {
    padding-bottom: 140px !important;
}
    /* REMOVE ALL ORIGINAL BOOKING SUMMARY INSTANCES */
.cbs-main-list-item-section-content > .cbs-booking-summary {
    display: none !important;
}

.cbs-main-list-item-booking-sticky .cbs-booking-summary {
    display: none !important;
}
/* YOUR NEW STICKY SUMMARY BAR */
.cbs-summary-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ffffff;
    z-index: 99999;
    padding: 12px 20px;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.15);
    display: none; /* JS controls visibility */
}

/* INLINE SUMMARY ITEMS */
.cbs-summary-sticky-bar .cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    margin: 0;
    padding: 0;
}

.cbs-summary-sticky-bar .cbs-booking-summary > li {
    float: none !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
}
.cbs-main {
    padding-bottom: 140px !important;
}
    /****************************************************/
/* TARGETWASH / WEBNUOVO PREMIUM STICKY SUMMARY BAR */
/****************************************************/

.cbs-summary-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #1e1e1e;
    border-top: 2px solid transparent;
    border-image: linear-gradient(90deg, #3b82f6, #1d4ed8) 1;
    padding: 14px 22px;
    z-index: 99999;
    display: none; /* JS toggles visibility */
    box-shadow: 0 -6px 20px rgba(37, 99, 235, 0.35);
}

/* INLINE SUMMARY ITEMS */
.cbs-summary-sticky-bar .cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    margin: 0;
    padding: 0;
}

/* EACH ITEM */
.cbs-summary-sticky-bar .cbs-booking-summary > li {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 !important;
    width: auto !important;
    float: none !important;
}

/* ICONS */
.cbs-summary-sticky-bar .cbs-meta-icon {
    font-size: 22px;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* MAIN VALUE */
.cbs-summary-sticky-bar .cbs-booking-summary h5 {
    margin: 0;
    padding: 0;
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    display: flex;
    gap: 6px;
}

/* LABELS */
.cbs-summary-sticky-bar .cbs-booking-summary > li > span {
    font-size: 13px;
    color: #A8B1B6;
}

/* PREVENT OVERLAP */
.cbs-main {
    padding-bottom: 140px !important;
}
.cbs-main-list-item-section-content > .cbs-booking-summary,
.cbs-main-list-item-booking-sticky .cbs-booking-summary {
    display: none !important;
}
/****************************************************/
/* PREMIUM FROSTED GLASS STICKY SUMMARY BAR         */
/****************************************************/

.cbs-summary-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;

    /* Apple-style frosted glass */
    background: rgba(30, 30, 30, 0.55);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    /* Gradient top border */
    border-top: 2px solid transparent;
    border-image: linear-gradient(90deg, #3b82f6, #1d4ed8) 1;

    padding: 16px 24px;
    z-index: 99999;

    /* Hidden by default — JS toggles */
    display: none;

    /* Slide-in animation */
    animation: summarySlideIn 0.45s ease forwards;
    transform: translateY(100%);
}

/* Slide-in keyframes */
@keyframes summarySlideIn {
    from { transform: translateY(100%); opacity: 0; }
    to   { transform: translateY(0%); opacity: 1; }
}
.cbs-summary-sticky-bar .cbs-booking-summary {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    margin: 0;
    padding: 0;
}

.cbs-summary-sticky-bar .cbs-booking-summary > li {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
    float: none !important;
    padding: 0 !important;
}
/* Icons with gradient text */
.cbs-summary-sticky-bar .cbs-meta-icon {
    font-size: 22px;
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Main values */
.cbs-summary-sticky-bar h5 {
    margin: 0;
    padding: 0;
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    display: flex;
    gap: 6px;
}

/* Labels */
.cbs-summary-sticky-bar .cbs-booking-summary > li > span {
    font-size: 13px;
    color: rgba(255,255,255,0.75);
}
.cbs-main {
    padding-bottom: 160px !important;
}
.cbs-main-list-item-section-content > .cbs-booking-summary,
.cbs-main-list-item-booking-sticky .cbs-booking-summary {
    display: none !important;
}
    .cbs-summary-sticky-bar {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.35s ease, transform 0.35s ease;
}

.cbs-summary-sticky-bar.is-visible {
    opacity: 1;
    transform: translateY(0);
}