:root {
                --hb-bg-1: #f2f8f6;
                --hb-bg-2: #f9f7ef;
                --hb-surface: #ffffff;
                --hb-surface-soft: #f7fbff;
                --hb-border: #d9e6e3;
                --hb-text: #11223a;
                --hb-muted: #5f7187;
                --hb-primary: #0d6b63;
                --hb-primary-2: #128071;
                --hb-success-soft: #ecf9f5;
                --hb-shadow: 0 24px 40px rgba(17, 34, 58, 0.08);
                --hb-radius-lg: 22px;
                --hb-radius-md: 14px;
                --hb-radius-sm: 10px;
            }
            html {
                overflow-x: hidden;
            }
            .wizard .actions > ul{
                border-bottom: 0 !important;
            }
            body.booking-v2-modern {
                font-family: "Inter", sans-serif;
                color: var(--hb-text);
                background:
                    radial-gradient(circle at 10% 15%, rgba(18, 128, 113, 0.12), transparent 36%),
                    radial-gradient(circle at 90% 0%, rgba(245, 158, 11, 0.10), transparent 28%),
                    linear-gradient(150deg, var(--hb-bg-1) 0%, #f3fbfa 46%, var(--hb-bg-2) 100%);
                min-height: 100vh;
                overflow-x: hidden;
            }
            body.booking-v2-modern main {
                position: relative;
                z-index: 1;
            }
            .booking-v2-modern .container {
                max-width: 1060px;
            }
            .booking-v2-modern .img-thumbnail {
                border-radius: var(--hb-radius-md);
                border: 1px solid var(--hb-border);
                background-color: #fff;
                box-shadow: 0 14px 26px rgba(17, 34, 58, 0.10);
                padding: 8px 14px;
            }
            .booking-v2-modern .booking-brand-logo {
                width: auto;
                max-width: min(100%, 420px);
                height: auto !important;
                max-height: clamp(52px, 9vw, 84px);
                min-height: 0 !important;
                object-fit: contain;
            }
            .booking-v2-modern .booking-topbar {
                margin-top: 1.35rem;
                margin-bottom: 1.15rem;
            }
            .booking-v2-modern .booking-topbar-inner {
                position: relative;
                min-height: 70px;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            .booking-v2-modern .booking-topbar-logo {
                width: 100%;
                text-align: center;
            }
            .booking-v2-modern .booking-topbar-lang {
                position: absolute;
                right: 0;
                top: 50%;
                transform: translateY(-50%);
                width: 92px;
            }
            .booking-v2-modern .booking-topbar-lang #lingua {
                width: 100%;
            }
            .booking-v2-modern #lingua {
                border-radius: 999px;
                border: 1px solid var(--hb-border);
                font-weight: 700;
                color: var(--hb-text);
                background-color: #fff;
            }
            .booking-v2-modern #wizard {
                background: rgba(255, 255, 255, 0.95);
                border: 1px solid var(--hb-border);
                border-radius: var(--hb-radius-lg);
                box-shadow: var(--hb-shadow);
                overflow: hidden;
            }
            .booking-v2-modern #wizard > .steps {
                padding: 1.1rem 1.3rem 0.55rem;
                background: linear-gradient(180deg, #f7fcfb 0%, #f3f8ff 100%);
                border-bottom: 1px solid #e4edeb;
            }
            .booking-v2-modern #wizard > .steps ul {
                display: flex;
                flex-wrap: wrap;
                gap: 0.55rem;
                margin: 0;
                padding: 0;
            }
            .booking-v2-modern #wizard > .steps ul li {
                flex: 1 1 180px;
            }
            .booking-v2-modern #wizard > .steps a {
                border: 1px solid #d6e4e1;
                border-radius: var(--hb-radius-md);
                background-color: #fff;
                min-height: 74px;
                padding: 0.66rem 0.85rem;
                transition: all 0.22s ease;
            }
            .booking-v2-modern #wizard > .steps .number {
                display: none;
            }
            .booking-v2-modern #wizard > .steps li.current a {
                border-color: var(--hb-primary-2);
                box-shadow: 0 10px 20px rgba(13, 107, 99, 0.16);
                transform: translateY(-1px);
            }
            .booking-v2-modern #wizard > .steps li.done a {
                background: #f0fcf8;
                border-color: #9fd4cb;
            }
            .booking-v2-modern .bd-wizard-step-icon {
                width: 38px;
                height: 38px;
                border-radius: 11px;
                background: #e9f6f3;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                font-size: 1.15rem;
                color: var(--hb-primary);
            }
            .booking-v2-modern #wizard > .steps li.current .bd-wizard-step-icon {
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2));
                color: #fff;
            }
            .booking-v2-modern .bd-wizard-step-title {
                font-weight: 700;
                color: var(--hb-text);
            }
            .booking-v2-modern .bd-wizard-step-subtitle {
                color: var(--hb-muted);
                font-weight: 600;
                letter-spacing: 0.02em;
            }
            .booking-v2-modern #wizard section {
                padding: 2rem 2.2rem 1.8rem;
                background: transparent;
            }
            .booking-v2-modern .content-wrapper {
                animation: hbFadeUp 0.26s ease-out;
            }
            @keyframes hbFadeUp {
                from { opacity: 0; transform: translateY(6px); }
                to { opacity: 1; transform: translateY(0); }
            }
            .booking-v2-modern .section-heading {
                position: relative;
                padding-left: 0.95rem;
                margin-bottom: 1.65rem;
                color: var(--hb-text);
                font-size: 1.24rem;
                font-weight: 700;
            }
            .booking-v2-modern .section-heading::before {
                content: "";
                position: absolute;
                left: 0;
                top: 0.18rem;
                bottom: 0.18rem;
                width: 4px;
                border-radius: 99px;
                background: linear-gradient(180deg, var(--hb-primary), var(--hb-primary-2));
            }
            .booking-v2-modern .form-group label {
                font-weight: 700;
                color: #31425b;
            }
            .booking-v2-modern .form-control,
            .booking-v2-modern .select2-selection {
                border-radius: 12px;
                border: 1px solid #d4e0e6;
                background: #fff;
                min-height: 46px;
                color: var(--hb-text);
            }
            .booking-v2-modern textarea.form-control {
                min-height: 118px;
                padding-top: 0.8rem;
            }
            .booking-v2-modern .form-control:focus {
                border-color: var(--hb-primary-2);
                box-shadow: 0 0 0 3px rgba(18, 128, 113, 0.14);
            }
            .booking-v2-modern #invoicepanel .select2-container {
                width: 100% !important;
            }
            .booking-v2-modern #invoicepanel .select2-container .select2-selection--single {
                min-height: 46px;
                height: 46px;
                border-radius: 12px;
                border: 1px solid #d4e0e6;
                background: #fff;
                display: flex;
                align-items: center;
                padding: 0.4rem 2rem 0.4rem 0.95rem;
            }
            .booking-v2-modern #invoicepanel .select2-container--default .select2-selection--single .select2-selection__rendered {
                color: var(--hb-text);
                line-height: 1.2;
                padding-left: 0;
                padding-right: 0;
            }
            .booking-v2-modern #invoicepanel .select2-container--default .select2-selection--single .select2-selection__arrow {
                height: 44px;
                right: 8px;
            }
            .booking-v2-modern #invoicepanel .select2-container--default.select2-container--focus .select2-selection--single,
            .booking-v2-modern #invoicepanel .select2-container--default.select2-container--open .select2-selection--single {
                border-color: var(--hb-primary-2);
                box-shadow: 0 0 0 3px rgba(18, 128, 113, 0.14);
            }
            .booking-v2-modern #invoicepanel .select2-hidden-accessible.error + .select2 .select2-selection--single {
                border-color: #d43b3b !important;
            }
            .booking-v2-modern #carlist_row .form-group {
                margin-bottom: 1.25rem;
                display: flex;
                justify-content: center;
            }
            .booking-v2-modern #carlist_row .col.text-center {
                border: 1px solid #d7e4ea;
                border-radius: 18px;
                background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
                box-shadow: 0 8px 16px rgba(17, 34, 58, 0.07);
                width: 100%;
                max-width: 340px;
                padding: 0;
                overflow: hidden;
                position: relative;
                cursor: pointer;
                transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
            }
            .booking-v2-modern #carlist_row .col.text-center::after {
                content: "";
                position: absolute;
                inset: 0;
                border: 2px solid transparent;
                border-radius: inherit;
                pointer-events: none;
                z-index: 2;
                transition: border-color 0.18s ease;
            }
            .booking-v2-modern #carlist_row .col.text-center:hover {
                transform: none;
                box-shadow: 0 14px 24px rgba(17, 34, 58, 0.12);
                border-color: #b7ceda;
            }
            .booking-v2-modern #carlist_row .col.text-center:hover::after {
                border-color: #b9d0dc;
            }
            .booking-v2-modern #carlist_row .col.text-center.vehicle-selected {
                border-color: var(--hb-primary-2);
                box-shadow: 0 16px 28px rgba(13, 107, 99, 0.22);
                background: #ffffff;
            }
            .booking-v2-modern #carlist_row .col.text-center.vehicle-selected::after {
                border-color: rgba(18, 128, 113, 0.7);
            }
            .booking-v2-modern #carlist_row label {
                display: block;
                margin: 0;
                position: relative;
                border-radius: 16px 16px 0 0;
                border: 0;
                background: #ffffff !important;
                transition: box-shadow 0.2s ease;
                padding: 0.64rem 0.45rem 0.16rem;
                cursor: pointer;
            }
            .booking-v2-modern #carlist_row .vehicle-photo-frame {
                display: block;
                background: #ffffff !important;
                border-radius: 12px;
                padding: 0.18rem 0;
            }
            .booking-v2-modern #carlist_row label img {
                width: min(100%, 246px);
                height: auto !important;
                max-height: none !important;
                display: block;
                margin: 0 auto;
                object-fit: contain;
                filter: none;
            }
            .booking-v2-modern #carlist_row .tick_container {
                top: 13px;
                right: 13px;
                left: auto;
                transform: none;
                -ms-transform: none;
            }
            .booking-v2-modern #carlist_row .tick {
                width: 42px;
                height: 42px;
                padding: 0;
                border-radius: 50%;
                border: 2px solid #d8efea;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                font-size: 18px;
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2));
                box-shadow: 0 10px 18px rgba(13, 107, 99, 0.28);
            }
            .booking-v2-modern #carlist_row .imgbgchk:checked + label {
                background: #ffffff !important;
                box-shadow: none;
            }
            .booking-v2-modern #carlist_row .imgbgchk:checked + label .vehicle-photo-frame {
                background: #ffffff !important;
            }
            .booking-v2-modern .card-price-list {
                margin-top: 0;
                padding: 0.76rem 0.3rem 0.78rem;
                border-top: 1px dashed #d8e2e8;
                border-radius: 0;
                color: #20354d;
                font-weight: 700;
                line-height: 1.38;
                cursor: pointer;
                width: 100%;
            }
            .booking-v2-modern .card-price-list small {
                display: block;
                margin-top: 0.18rem;
                color: #364c63;
                font-size: 0.93rem;
                line-height: 1.45;
            }
            .booking-v2-modern .card-price-list i {
                opacity: 0.82;
            }
            .booking-v2-modern #carlist_row .col.text-center.vehicle-selected .card-price-list {
                border-top-color: #90c8be;
                background: linear-gradient(180deg, #f5fcfa 0%, #eef8f4 100%);
            }
            .booking-v2-modern #paymentdriver,
            .booking-v2-modern #paymentcreditcard,
            .booking-v2-modern #paymentstructure {
                border-radius: var(--hb-radius-md);
                border: 1px solid #d3e2df;
                background: linear-gradient(180deg, #ffffff 0%, #f8fcff 100%);
                color: var(--hb-text);
                font-weight: 700;
                min-height: 78px;
                padding: 0.9rem 0.8rem;
                box-shadow: 0 8px 18px rgba(17, 34, 58, 0.07);
                transition: all 0.2s ease;
            }
            .booking-v2-modern #paymentdriver:hover,
            .booking-v2-modern #paymentcreditcard:hover,
            .booking-v2-modern #paymentstructure:hover {
                transform: translateY(-1px);
                box-shadow: 0 14px 22px rgba(17, 34, 58, 0.12);
                border-color: #a9c8d0;
            }
            .booking-v2-modern .paymentselected {
                border-color: var(--hb-primary-2) !important;
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2)) !important;
                color: #fff !important;
                box-shadow: 0 16px 24px rgba(13, 107, 99, 0.27) !important;
            }
            .booking-v2-modern #payment_garanzia_info {
                border: 1px solid #c9e8df;
                background: var(--hb-success-soft);
                color: #0d4f45;
                border-radius: 12px;
                font-weight: 700;
            }
            .booking-v2-modern .policy-text-row {
                margin-top: 1.4rem !important;
                margin-bottom: 1.4rem !important;
            }
            .booking-v2-modern .policy-text-title {
                font-size: 1rem;
                font-weight: 800;
                color: #1a3953;
                margin-bottom: 0.55rem;
                letter-spacing: 0.01em;
            }
            .booking-v2-modern .policy-text-box {
                height: 220px;
                overflow-y: auto;
                overflow-x: hidden;
                border: 1px solid #cfe0dd;
                border-radius: 12px;
                background: #fff;
                box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
                padding: 0.95rem 1rem;
                color: #243a50;
                line-height: 1.52;
                scrollbar-width: thin;
                scrollbar-color: var(--hb-primary-2) #e8f2ef;
            }
            .booking-v2-modern .policy-text-box::-webkit-scrollbar {
                width: 10px;
            }
            .booking-v2-modern .policy-text-box::-webkit-scrollbar-track {
                background: #e8f2ef;
                border-radius: 99px;
            }
            .booking-v2-modern .policy-text-box::-webkit-scrollbar-thumb {
                background: linear-gradient(180deg, var(--hb-primary-2), var(--hb-primary));
                border-radius: 99px;
                border: 2px solid #e8f2ef;
            }
            .booking-v2-modern .policy-text-box p:last-child,
            .booking-v2-modern .policy-text-box ul:last-child,
            .booking-v2-modern .policy-text-box ol:last-child {
                margin-bottom: 0;
            }
            .booking-v2-modern .policy-consent-row {
                margin-top: 1.8rem !important;
                margin-bottom: 2rem !important;
            }
            .booking-v2-modern .policy-consent.custom-control {
                width: 100%;
                background: linear-gradient(180deg, #f5fbf9 0%, #eef8f6 100%);
                border: 1px solid #c5ddd8;
                border-left: 4px solid var(--hb-primary-2);
                border-radius: 14px;
                box-shadow: 0 8px 16px rgba(17, 34, 58, 0.06);
                padding: 0.9rem 1rem 0.9rem 3rem;
            }
            .booking-v2-modern .policy-consent .custom-control-label {
                display: block;
                font-size: 1rem;
                line-height: 1.45;
                font-weight: 700;
                color: #16344c;
                cursor: pointer;
                user-select: none;
            }
            .booking-v2-modern .policy-consent .custom-control-label::before {
                left: -2.1rem;
                top: 0.15rem;
                width: 1.3rem;
                height: 1.3rem;
                border-radius: 0.35rem;
                border: 2px solid #7a9693;
                background: #fff;
                box-shadow: 0 1px 2px rgba(17, 34, 58, 0.18);
            }
            .booking-v2-modern .policy-consent .custom-control-label::after {
                left: -2.1rem;
                top: 0.15rem;
                width: 1.3rem;
                height: 1.3rem;
                background-size: 74% 74%;
            }
            .booking-v2-modern .policy-consent .custom-control-input:checked~.custom-control-label::before {
                background-color: var(--hb-primary-2);
                border-color: var(--hb-primary-2);
                box-shadow: 0 3px 9px rgba(13, 107, 99, 0.3);
            }
            .booking-v2-modern .policy-consent .custom-control-input:focus~.custom-control-label::before {
                box-shadow: 0 0 0 4px rgba(18, 128, 113, 0.18);
            }
            .booking-v2-modern .policy-consent:hover {
                border-color: #a9cbc4;
                box-shadow: 0 10px 18px rgba(17, 34, 58, 0.08);
            }
            .booking-v2-modern #invoicepanel {
                background: var(--hb-surface-soft);
                border: 1px solid #d9e4f1;
                border-radius: 16px;
                padding: 1.15rem 0.8rem 0.3rem;
            }
            .booking-v2-modern .invoice-switch {
                padding-left: 4.2rem;
            }
            .booking-v2-modern .invoice-switch-row {
                margin-bottom: 2.1rem !important;
            }
            .booking-v2-modern .invoice-switch .custom-control-label {
                font-weight: 700;
                font-size: 1.05rem;
                cursor: pointer;
                user-select: none;
            }
            .booking-v2-modern .invoice-switch .custom-control-label::before {
                left: -4.2rem;
                width: 3.5rem;
                height: 1.9rem;
                border-radius: 1rem;
                top: 0.02rem;
                background-color: #d5dee6;
                border-color: #9aadb9;
                box-shadow: inset 0 1px 2px rgba(16, 34, 57, 0.18);
            }
            .booking-v2-modern .invoice-switch .custom-control-label::after {
                left: calc(-4.2rem + 0.2rem);
                top: calc(0.02rem + 0.2rem);
                width: 1.5rem;
                height: 1.5rem;
                border-radius: 50%;
                background-color: #fff;
                border: 1px solid #9aadb9;
                box-shadow: 0 1px 3px rgba(16, 34, 57, 0.24);
            }
            .booking-v2-modern .invoice-switch .custom-control-input:checked~.custom-control-label::before {
                background-color: var(--hb-primary-2);
                border-color: var(--hb-primary-2);
                box-shadow: none;
            }
            .booking-v2-modern .invoice-switch .custom-control-input:checked~.custom-control-label::after {
                transform: translateX(1.6rem);
                border-color: #d6ece8;
            }
            .booking-v2-modern #wizard > .actions {
                border-top: 1px solid #e3ecea;
                background: #fcfffe;
                padding: 1rem 1.35rem 1.3rem;
            }
            .booking-v2-modern #wizard > .actions ul {
                display: flex;
                flex-wrap: nowrap;
                align-items: center;
                width: 100%;
                max-width: none;
                gap: 0.65rem;
                justify-content: flex-start;
                margin: 0;
                padding: 0;
            }
            .booking-v2-modern #wizard > .actions li {
                margin: 0 !important;
                flex: 0 0 auto;
            }
            .booking-v2-modern #wizard > .actions li:first-child {
                margin-right: 0 !important;
            }
            .booking-v2-modern #wizard > .actions li.disabled + li:not(.disabled),
            .booking-v2-modern #wizard > .actions li:not(.disabled) + li:not(.disabled) {
                margin-left: auto !important;
                margin-right: 0 !important;
            }
            .booking-v2-modern #wizard > .actions a {
                border-radius: 999px;
                font-weight: 700;
                min-width: 150px;
                text-align: center;
                padding: 0.63rem 1.26rem;
                border: 1px solid #d3e0df;
                background: #fff;
                color: var(--hb-text);
                transition: all 0.2s ease;
            }
            .booking-v2-modern #wizard > .actions a[href="#next"],
            .booking-v2-modern #wizard > .actions a[href="#finish"] {
                min-width: 220px;
                padding-left: 1.9rem;
                padding-right: 1.9rem;
            }
            .booking-v2-modern #wizard > .actions li:last-child a {
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2));
                color: #fff;
                border-color: transparent;
                box-shadow: 0 12px 20px rgba(13, 107, 99, 0.25);
            }
            .booking-v2-modern #wizard > .actions li:last-child a:hover {
                transform: translateY(-1px);
                box-shadow: 0 15px 24px rgba(13, 107, 99, 0.31);
            }
            .booking-v2-modern #wizard > .actions .disabled a {
                opacity: 0.42;
                pointer-events: none;
            }
            .booking-v2-modern #modalresult .modal-content,
            .booking-v2-modern #modalpayment .modal-content {
                border-radius: 16px;
                border: 1px solid #d7e4e2;
                box-shadow: 0 20px 36px rgba(17, 34, 58, 0.18);
                overflow: hidden;
            }
            .booking-v2-modern #modalresult .modal-header,
            .booking-v2-modern #modalpayment .modal-header {
                border-top-left-radius: 16px;
                border-top-right-radius: 16px;
            }
            .booking-v2-modern #modalpayment .modal-header {
                background: linear-gradient(140deg, #0e645d, #0b5c56) !important;
            }
            /* Stronger overrides to beat legacy wizard styles and improve readability */
            .booking-v2-modern #wizard .steps > ul li a {
                border: 1px solid #d6e3e8 !important;
                border-radius: var(--hb-radius-md) !important;
                background: #ffffff !important;
                min-height: 78px !important;
                padding: 0.72rem 0.9rem !important;
            }
            .booking-v2-modern #wizard .steps > ul li .bd-wizard-step-icon {
                width: 38px !important;
                height: 38px !important;
                border-radius: 11px !important;
                background: #e7f6f3 !important;
                color: var(--hb-primary) !important;
                line-height: 38px !important;
                margin-right: 11px !important;
            }
            .booking-v2-modern #wizard .steps > ul li .bd-wizard-step-title {
                color: #1e2f45 !important;
                font-size: 1.16rem !important;
                font-weight: 700 !important;
                line-height: 1.05 !important;
            }
            .booking-v2-modern #wizard .steps > ul li .bd-wizard-step-subtitle {
                color: #55677d !important;
                font-size: 0.82rem !important;
                font-weight: 600 !important;
                margin-top: 0.12rem !important;
            }
            .booking-v2-modern #wizard .steps > ul li.current a {
                border-color: var(--hb-primary-2) !important;
                box-shadow: 0 10px 20px rgba(13, 107, 99, 0.16) !important;
                transform: translateY(-1px);
            }
            .booking-v2-modern #wizard .steps > ul li.current .bd-wizard-step-icon,
            .booking-v2-modern #wizard .steps > ul li.done .bd-wizard-step-icon {
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2)) !important;
                color: #fff !important;
            }
            .booking-v2-modern #wizard .steps > ul li.done a {
                background: #f0fcf8 !important;
                border-color: #9fd4cb !important;
            }
            .booking-v2-modern #wizard .content {
                padding: 3rem 2.2rem 1.2rem !important;
                background: #fff !important;
                min-height: 300px !important;
            }
            .booking-v2-modern #wizard .content .content-wrapper {
                max-width: 760px !important;
            }
            .booking-v2-modern #wizard .content .section-heading {
                color: #132a43 !important;
                font-size: 1.46rem !important;
                font-weight: 700 !important;
                margin-bottom: 1.15rem !important;
            }
            .booking-v2-modern #wizard .content .form-group label {
                color: #2f425a !important;
                font-size: 0.94rem !important;
                font-weight: 700 !important;
            }
            .booking-v2-modern #wizard .content .form-control {
                border: 1px solid #b8cad5 !important;
                border-radius: 12px !important;
                min-height: 50px !important;
                padding: 0.72rem 0.95rem !important;
                color: #11223a !important;
                background: #fff !important;
                font-size: 0.94rem !important;
            }
            .booking-v2-modern #wizard .content .form-control::placeholder {
                color: #7b8a98 !important;
            }
            .booking-v2-modern #start_point,
            .booking-v2-modern #tratta {
                padding: 15px !important;
            }
            .booking-v2-modern #carlist_row {
                display: none;
            }
            .booking-v2-modern #carlist_row .imgbgchk {
                display: none;
            }
            .booking-v2-modern #wizard .content .form-group {
                position: relative;
            }
            .booking-v2-modern #wizard .content .form-group > label:first-child {
                display: inline-block;
                padding-right: 86px;
            }
            .booking-v2-modern #wizard .content label.error {
                position: absolute;
                top: 0.08rem;
                right: 0;
                margin: 0;
                color: #d43b3b !important;
                font-size: 0.72rem !important;
                font-weight: 700 !important;
                line-height: 1;
                z-index: 2;
            }
            .booking-v2-modern #wizard .content .iti {
                display: block !important;
                width: 100% !important;
                max-width: 100% !important;
                min-width: 0;
            }
            .booking-v2-modern #wizard .content .iti input.form-control {
                width: 100% !important;
                padding-left: 94px !important;
            }
            .booking-v2-modern #wizard .content .iti .flag-container,
            .booking-v2-modern #wizard .content .iti__flag-container {
                z-index: 3;
            }
            .booking-v2-modern #wizard .content .iti .selected-flag,
            .booking-v2-modern #wizard .content .iti__selected-flag {
                height: 100% !important;
                border-right: 1px solid #d7e1e8;
                border-top-left-radius: 12px;
                border-bottom-left-radius: 12px;
                background: #f8fbfd;
                padding-left: 12px !important;
                padding-right: 10px !important;
            }
            .booking-v2-modern #wizard .actions li a,
            .booking-v2-modern #wizard .actions a[href="#previous"],
            .booking-v2-modern #wizard .actions a[href="#next"],
            .booking-v2-modern #wizard .actions a[href="#finish"] {
                border-radius: 999px !important;
                font-weight: 700 !important;
                font-size: 0.94rem !important;
                min-width: 150px !important;
                text-align: center !important;
                padding: 0.72rem 1.32rem !important;
                border: 1px solid #d3e0df !important;
                background: #fff !important;
                color: #1a2f45 !important;
                transition: all 0.2s ease !important;
            }
            .booking-v2-modern #wizard .actions a[href="#next"],
            .booking-v2-modern #wizard .actions a[href="#finish"] {
                min-width: 220px !important;
                padding-left: 1.9rem !important;
                padding-right: 1.9rem !important;
            }
            .booking-v2-modern #wizard .actions li:last-child a,
            .booking-v2-modern #wizard .actions a[href="#next"],
            .booking-v2-modern #wizard .actions a[href="#finish"] {
                background: linear-gradient(140deg, var(--hb-primary), var(--hb-primary-2)) !important;
                color: #fff !important;
                border-color: transparent !important;
                box-shadow: 0 12px 20px rgba(13, 107, 99, 0.25) !important;
            }
            .booking-v2-modern #wizard .actions li:last-child a:hover,
            .booking-v2-modern #wizard .actions a[href="#next"]:hover,
            .booking-v2-modern #wizard .actions a[href="#finish"]:hover {
                transform: translateY(-1px);
                box-shadow: 0 15px 24px rgba(13, 107, 99, 0.31) !important;
            }
            .booking-v2-modern #wizard .actions .disabled a {
                opacity: 0.42 !important;
                pointer-events: none !important;
            }
            .booking-v2-modern .booking-powered {
                color: #5d6d7d !important;
                font-size: 0.9rem;
                font-weight: 600;
                letter-spacing: 0.01em;
            }
            .booking-v2-modern .booking-powered-link {
                color: #5d6d7d !important;
                font-weight: 600;
                text-decoration: none;
                display: inline-block;
                line-height: 1.35;
            }
            .booking-v2-modern .booking-powered-link:hover {
                color: #1d6f67 !important;
                text-decoration: none;
            }
            .booking-v2-modern .booking-powered-logo {
                display: inline-block;
                margin-top: 0.46rem;
                width: auto;
                vertical-align: middle;
            }
            @media (max-width: 992px) {
                .booking-v2-modern #wizard section {
                    padding: 1.4rem 1.15rem 1.2rem;
                }
                .booking-v2-modern #wizard .content {
                    padding: 2rem 1.3rem 0.9rem !important;
                }
            }
            @media (max-width: 768px) {
                .booking-v2-modern .container {
                    padding-left: 15px;
                    padding-right: 15px;
                }
                .booking-v2-modern .booking-topbar {
                    margin-top: 1rem;
                    margin-bottom: 0.75rem;
                }
                .booking-v2-modern .booking-topbar-inner {
                    min-height: 0;
                    justify-content: space-between;
                    gap: 0.72rem;
                }
                .booking-v2-modern .booking-topbar-logo {
                    width: auto;
                    flex: 1 1 auto;
                    text-align: left;
                }
                .booking-v2-modern .booking-topbar-lang {
                    position: static;
                    top: auto;
                    right: auto;
                    transform: none;
                    width: 92px;
                    flex: 0 0 92px;
                }
                .booking-v2-modern .booking-brand-logo {
                    max-width: min(100%, 290px);
                    max-height: clamp(58px, 14vw, 76px);
                }
                .booking-v2-modern #lingua {
                    min-height: 42px;
                }
                .booking-v2-modern .container > .row,
                .booking-v2-modern .container-fluid > .row {
                    margin-left: 0;
                    margin-right: 0;
                }
                .booking-v2-modern .invoice-switch {
                    padding-left: 0;
                }
                .booking-v2-modern .invoice-switch .custom-control-label {
                    display: inline-block;
                    padding-left: 4.2rem;
                }
                .booking-v2-modern .invoice-switch .custom-control-label::before {
                    left: 0;
                }
                .booking-v2-modern .invoice-switch .custom-control-label::after {
                    left: 0.2rem;
                }
                .booking-v2-modern .policy-consent.custom-control {
                    padding: 0.82rem 0.78rem 0.82rem 2.6rem;
                    border-radius: 12px;
                }
                .booking-v2-modern .policy-text-row {
                    margin-top: 1rem !important;
                    margin-bottom: 1rem !important;
                }
                .booking-v2-modern .policy-text-title {
                    font-size: 0.95rem;
                    margin-bottom: 0.45rem;
                }
                .booking-v2-modern .policy-text-box {
                    height: 180px;
                    padding: 0.78rem 0.8rem;
                    border-radius: 10px;
                    font-size: 0.93rem;
                    line-height: 1.46;
                }
                .booking-v2-modern .policy-consent .custom-control-label {
                    font-size: 0.95rem;
                    line-height: 1.4;
                }
                .booking-v2-modern .policy-consent .custom-control-label::before,
                .booking-v2-modern .policy-consent .custom-control-label::after {
                    left: -1.95rem;
                    top: 0.1rem;
                    width: 1.2rem;
                    height: 1.2rem;
                }
                .booking-v2-modern #wizard > .steps {
                    padding: 0.72rem 0.62rem 0.4rem;
                }
                .booking-v2-modern #wizard > .steps ul {
                    display: grid;
                    grid-template-columns: repeat(4, minmax(0, 1fr));
                    gap: 0.42rem;
                }
                .booking-v2-modern #wizard > .steps ul li {
                    flex: 0 0 auto;
                    width: auto !important;
                    max-width: none !important;
                }
                .booking-v2-modern #wizard > .steps ul li a {
                    display: flex !important;
                    align-items: center !important;
                    justify-content: center !important;
                    min-height: 60px !important;
                    padding: 0.48rem !important;
                    border-radius: 12px !important;
                    text-align: center;
                }
                .booking-v2-modern #wizard > .steps ul li a .media {
                    display: flex !important;
                    justify-content: center !important;
                    align-items: center !important;
                    width: auto !important;
                    margin: 0 !important;
                }
                .booking-v2-modern #wizard > .steps ul li a .media-body {
                    display: none !important;
                    flex: 0 0 auto !important;
                    width: 0 !important;
                    margin: 0 !important;
                    padding: 0 !important;
                }
                .booking-v2-modern #wizard > .steps .bd-wizard-step-icon {
                    width: 34px;
                    height: 34px;
                    margin: 0 !important;
                    margin-right: 0 !important;
                    display: inline-flex !important;
                    align-items: center;
                    justify-content: center;
                }
                .booking-v2-modern #wizard > .steps .bd-wizard-step-title,
                .booking-v2-modern #wizard > .steps .bd-wizard-step-subtitle {
                    display: none !important;
                }
                .booking-v2-modern #wizard .content {
                    padding: 1.2rem 0.95rem 0.7rem !important;
                    min-height: 0 !important;
                }
                .booking-v2-modern #wizard .content .section-heading {
                    font-size: 1.2rem !important;
                }
                .booking-v2-modern .invoice-switch-row {
                    margin-bottom: 2.35rem !important;
                }
                .booking-v2-modern #wizard .content .form-group > label:first-child {
                    padding-right: 74px;
                }
                .booking-v2-modern #wizard .content label.error {
                    font-size: 0.68rem !important;
                }
                .booking-v2-modern #wizard > .actions a {
                    width: 100%;
                }
                .booking-v2-modern #wizard > .actions ul {
                    display: grid;
                    grid-template-columns: 1fr;
                    gap: 0.55rem;
                    width: 100%;
                }
                .booking-v2-modern #wizard > .actions li {
                    width: 100%;
                    margin: 0 !important;
                }
                .booking-v2-modern #wizard > .actions li:first-child {
                    margin-right: 0 !important;
                }
                .booking-v2-modern #wizard > .actions li.disabled + li:not(.disabled),
                .booking-v2-modern #wizard > .actions li:not(.disabled) + li:not(.disabled) {
                    margin-left: 0 !important;
                }
                .booking-v2-modern #wizard > .actions li:not(.disabled) + li,
                .booking-v2-modern #wizard > .actions li:not(:first-child):last-child {
                    margin-left: 0 !important;
                }
                .booking-v2-modern #carlist_row .form-group {
                    padding-left: 0.08rem;
                    padding-right: 0.08rem;
                    margin-bottom: 0.95rem;
                }
                .booking-v2-modern #carlist_row .col.text-center {
                    max-width: 100%;
                    border-radius: 16px;
                }
                .booking-v2-modern #carlist_row label {
                    padding: 0.5rem 0.3rem 0.12rem;
                }
                .booking-v2-modern #carlist_row label img {
                    width: min(100%, 220px);
                }
                .booking-v2-modern .card-price-list {
                    padding: 0.64rem 0.2rem 0.68rem;
                }
            }

