.slider_area {
            height: 650px;
            position: relative;
            z-index: 0;
        }

        .background_slider {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        /* Keep the first background in its final position before Slick wraps it. */
        .background_slider:not(.slick-initialized) > .bg_img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
        }

        .background_slider:not(.slick-initialized) > .bg_img:not(:first-child) {
            display: none;
        }

        .background_slider .slick-list,
        .background_slider .slick-track,
        .background_slider .bg_img {
            height: 100%;
        }

        .background_slider .bg_img {
            min-height: 100%;
            background-size: cover !important;
            background-position: center center !important;
        }

        .slider_area .container {
            position: relative;
            z-index: 1;
        }

        .slider_area .slider_text h1 {
            margin-bottom: .5rem !important;
            font-size:30px;
        }

        .slider_area .slider_text h2{
            font-size: 16px;
        }

        .slider_area .slider_text h2 {
            margin-bottom: 25px !important;
            color: #fff;
        }

        .booking_form .dropdown-menu {
            transform: translate3d(0, 50px, 0) !important;
            /* Moves the dropdown menu 10px down */
        }

        .booking_form .dropdown-menu.inner {
            transform: translate3d(0, 0, 0) !important;
            max-height: 200px !important;
        }

        .booking_form .dropdown-menu{
            z-index:2000;
        }

        .bootstrap-select .dropdown-toggle .filter-option {
            height: auto;
        }

        .form-control:not(.textarea.form-control) {
            height: 55px;
        }

        .form-control:focus {
            box-shadow: var(--bg-homepage-0-0);
        }

        .booking_form .bootstrap-select .dropdown-toggle {
            height: 55px !important;
        }

        .bootstrap-select .dropdown-toggle:focus {
            outline: none !important;
            box-shadow: var(--bg-homepage-0-0);
        }

        .btn:focus {
            box-shadow: var(--bg-homepage-0-0) !important;
        }

        .booking_form .input-group-text {
            background-color: transparent;
            border: none;
            position: absolute;
            z-index: 10;
            height: 100% !important;
            border-radius: 25px 0 0 25px;
        }

        .booking_form .form-control {
            border-left: none;
        }

        .booking_slider {
            width: 100% !important;
        }

        .booking_slider .embed-responsive-item {
            border-radius: 0 20px 20px 0;
        }

        .booking_slider .slick-track {
            width: 100% !important;
        }

        .booking_form_info {
            width: 100% !important;
        }

        .advantage_item {
            text-align: center;
            padding: 0;
        }

        #estimatedContainer .dropdown-menu {
            min-height: 150px !important;
            max-height: 150px !important;

        }

        .service_icon {
            width: 60px;
            height: 60px;
            margin: 0 auto;
            margin-bottom: 10px !important;
        }

        #mobile,
        #dmobile,
        #guest_phone {
            padding-left: 50px !important;
        }

        .intl-tel-input {
            margin-bottom: 0 !important;
        }

        .loader {
            border: 5px solid #f3f3f3;
            border-top: var(--bg-homepage-0-1);
            border-radius: 50%;
            width: 30px;
            height: 30px;
            animation: spin 1s linear infinite;
            display: inline-block;
            margin-right: 10px;
        }

        @keyframes spin {
            0% {
                transform: rotate(0deg);
            }

            100% {
                transform: rotate(360deg);
            }
        }

        .action_content .call_btn {
            font-size: 74px !important;
        }

        .app_btn_two {
            color: #000 !important;
        }

        .app_btn_two:hover {
            color: #fff !important;
        }

        @media (max-width:766px) {
            .page-content {
                padding-top: 0 !important;
            }
        }

        input::placeholder {
            opacity: 1 !important;
        }

        .service-type-fieldset {
            border: 0;
            margin: 0;
            padding: 0;
        }

        .service-type-help {
            color: #4b5563;
            font-size: .95rem;
            line-height: 1.5;
        }

        .service-type-options {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px;
        }

        .sr-only {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }

        /* Remove the default calendar arrow from the input */
        #date {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            background: transparent;
        }

        .booking_form_info .col-md-6, .booking_form_info .col-md-4, .booking_form_info .col-md-12 {
            text-align:justify;
        }

        /* Remove arrow icon from Chrome's text input */
        input[type="text"]::-webkit-outer-spin-button,
        input[type="text"]::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }

        /* Additional fix for mobile browsers */
        @media (max-width: 768px) {
            #date {
                background: transparent;
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
            }
        }

        #bookingForm .dropdown-toggle {
            padding-left: 40px !important;
        }


        #card-number-element,
        #card-expiry-element,
        #card-cvc-element {
            background-color: #F3F3F3;
            border-radius: 25px;
            border: none;
            padding-top: 19px;
            height: 67px;
            color: #717171 !important;
        }

        #card-number-element {
            padding-left: 10px !important;
        }

        #card-expiry-element {
            padding-left: 20px !important;
        }

        #card-cvc-element {
            padding-left: 20px !important;
        }

        /* Optional: Focus effect */
        #card-number-element:focus-within,
        #card-expiry-element:focus-within,
        #card-cvc-element:focus-within {
            border: none;
            box-shadow: var(--bg-homepage-0-2);
        }

        .form-check{
            padding:0 1.25rem;
        }

        .form-check-input:checked+.form-check-label::after {
            left: -20px !important;
            transform: translateY(-50%);
            width: auto !important;
            height: auto !important;
            text-align: start;
        }

        .rtl .form-check-input:checked+.form-check-label::after{
            left:auto!important;
            right:-20px!important;
        }

        .gmp-wrapper {
            background-color: transparent !important;
            border: none;
            height:100%;
        }

        .form-check-label {
            margin-left: 0 !important;
            padding: 0 16px !important;
        }

        .boking_content h2 {
            margin-bottom: 15px !important;
        }

        .booking_form .form-group.choose_item {
            padding-bottom: 5px !important;
        }

        .choose_item label * {
            font-family: "Poppins", sans-serif !important;
        }

        .booking_form .form-group.choose_item label span {
            font-size: 15px !important;
        }

        #termsCheck-field .form-check-label::before {
            border-radius: 5px !important;
        }

        div.form-control.StripeElement {
            background-color: #fff;
            /* Bootstrap’s border, padding, radius already apply */
        }

        #termsCheck-field .form-check-input:checked+.form-check-label::after {
            content: '\f14a';
            border-radius: 10px !important;
        }

        #specialNote {
            height: 75px;
            border-radius: 25px !important;
            padding-top: 19px;
        }

        .booking_form .dropdown-menu.show .inner {
            max-height: 200px;
            overflow-y: auto;
            scrollbar-color: var(--bg-homepage-0-3);
        }

        .booking_form .dropdown-menu.show .inner::-webkit-scrollbar-track {
            background: var(--bg-homepage-0-4) !important;
        }

        .booking_form .dropdown-menu.show .inner::-webkit-scrollbar-thumb {
            background-color: var(--bg-homepage-0-4) !important;
            border-radius: 4px;
        }

        .booking_form .dropdown-menu.show .inner::-webkit-scrollbar-thumb:hover {
            /* optional hover tint */
            background-color: var(--bg-homepage-0-5);
        }

        .booking_form_area .slick-list {
            overflow: visible !important;
        }

        .form-check-label::before {
            background-color: #c4c3c3;
        }

        /* Reviews Section */
        .funfact-style-one {
            padding-top: 50px;
            padding-bottom: 50px;
            background-color: #F3F3F3;
        }

        .block-title {
            margin-bottom: 60px;
        }

        .block-title .dot-line {
            display: inline-block;
            vertical-align: middle;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: #30D5C8;
        }

        .block-title p {
            color: #717171;
            font-weight: 600;
            font-size: 16px;
        }

        .block-title h2 {
            font-size: 60px;
            letter-spacing: -.04em;
            font-weight: 700;
        }

        .single-funfact-one {
            padding: 55.5px 0 20px 0;
            max-height: 400px;
            min-height: 300px;
            display: block;
            background-color: #fff;
            border-radius: 10px;
            text-align: center;
            padding: 55.5px 0;
            margin-bottom: 30px;
            width: 100%;
        }

        .advantage_area {
            padding-top: 50px;
            padding-bottom: 50px;
        }

        .hvr-float-shadow {
            display: inline-block;
            vertical-align: middle;
            -webkit-transform: perspective(1px) translateZ(0);
            transform: perspective(1px) translateZ(0);
            box-shadow: 0 0 1px transparent;
            position: relative;
            -webkit-transition-duration: .3s;
            transition-duration: .3s;
            -webkit-transition-property: transform;
            transition-property: transform;
        }

        .hvr-float-shadow:before {
            pointer-events: none;
            position: absolute;
            z-index: -1;
            content: '';
            top: 100%;
            left: 5%;
            height: 10px;
            width: 90%;
            opacity: 0;
            background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, .35) 0, transparent 80%);
            background: radial-gradient(ellipse at center, rgba(0, 0, 0, .35) 0, transparent 80%);
            -webkit-transition-duration: .3s;
            transition-duration: .3s;
            -webkit-transition-property: transform, opacity;
            transition-property: transform, opacity;
        }

        .single-funfact-one p {
            margin: 0;
            font-size: 16px;
            color: #717171;
            text-wrap: auto;
        }

        .single-funfact-one h5 {
            position: absolute;
            bottom: 45px;
            left: 50%;
            transform: translateX(-50%);
        }

        .single-funfact-one .review-avatar {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            position: absolute;
            bottom: -20px;
            left: 50%;
            transform: translateX(-50%);
        }

        .avatar-initial {
            display: flex;
            align-items: center;
            justify-content: center;
            /* change to your desired background */
            color: #fff;
            font-size: 28px;
            font-weight: bold;
            text-transform: uppercase;
        }

        .single-funfact-one i {
            color: #E6E6E6;
            font-size: 55px;
            position: absolute;
            bottom: 90px;
            left: 50%;
            transform: translateX(-50%);
        }

        .single-funfact-one {
            padding: 55.5px 25px 20px 25px;
            max-height: 450px;
            min-height: 370px;
        }

        /* force them to be inline, centered, and visible */
        .custom-arrow-wrapper,
        .custom-service-arrow-wrapper,
        .custom-feature-arrow-wrapper,
        .custom-trust-arrow-wrapper {
            position: relative;
            /* so absolute arrows will be relative to this box */
            height: 50px;
            /* give it some vertical room */
        }

        .custom-arrow-wrapper .slick-prev,
        .custom-arrow-wrapper .slick-next,
        .custom-service-arrow-wrapper .slick-prev,
        .custom-service-arrow-wrapper .slick-next,
        .custom-feature-arrow-wrapper .slick-prev,
        .custom-feature-arrow-wrapper .slick-next,
        .custom-trust-arrow-wrapper .slick-prev,
        .custom-trust-arrow-wrapper .slick-next {
            position: absolute !important;
            top: 50%;
            /* vertically center */
            transform: translateY(-50%);
            display: block;
            /* make sure they’re not display:none */
            width: 36px;
            height: 36px;
            line-height: 36px;
            background: var(--bg-homepage-0-4);
            color: #fff;
            border-radius: 5px;
            border: none;
            text-align: center;
            font-size: 20px;
            cursor: pointer;
        }

        .btn-primary{
            background-color:var(--bg-homepage-0-4);
        }

        .custom-arrow-wrapper .slick-prev,
        .custom-service-arrow-wrapper .slick-prev,
        .custom-feature-arrow-wrapper .slick-prev,
        .custom-trust-arrow-wrapper .slick-prev{
            left: calc(50% - 30px);
            /* tweak these to sit either side of center */
        }

        .custom-arrow-wrapper .slick-prev::before,
        .custom-service-arrow-wrapper .slick-prev::before,
        .custom-feature-arrow-wrapper .slick-prev::before,
        .custom-trust-arrow-wrapper .slick-prev::before{
            content: none;
        }

        .custom-arrow-wrapper .slick-next::before,
        .custom-service-arrow-wrapper .slick-next::before,
        .custom-feature-arrow-wrapper .slick-next::before,
        .custom-trust-arrow-wrapper .slick-next::before{
            content: none;
        }

        .custom-arrow-wrapper .slick-next,
        .custom-service-arrow-wrapper .slick-next,
        .custom-feature-arrow-wrapper .slick-next,
        .custom-trust-arrow-wrapper .slick-next{
            left: calc(50% + -6px);
            margin-left: 20px;
        }

        .funfact-style-one .slick-slide {
            height: auto !important;
        }

        .featured_area {
            padding: 50px 0 50px !important;
        }

        /* iOS-friendly, token-based styling for the web component */
        gmp-place-autocomplete {
            /* prevent iOS auto darkening/translucency */
            color-scheme: light;

            /* Surface + text colors (dropdown + text field) */
            --gmp-mat-color-surface: #ffffff;
            --gmp-mat-color-on-surface: #1f2937;

            /* Field background when “filled” */
            --gmp-text-field-container-color: #f3f3f3;

            /* Outlines/borders & focus ring hue */
            --gmp-mat-color-outline: #d1d5db;
            --gmp-mat-color-primary: #111827;

            /* Typography scale (optional) */
            --gmp-body-medium-font-size: 16px;
            --gmp-body-large-font-size: 16px;

            border: 1px solid #d1d5db;
            /* allowed on host */
            border-radius: 12px;
            display: block;
            /* make sizing predictable */
        }

        /* keep the dropdown above modals/headers etc. (works on iOS) */
        gmp-place-autocomplete {
            position: relative;
            z-index: 1000;
        }


        /* Style the current Places widget through its public CSS parts.
           Explicit opaque colors also work on Safari versions that cannot
           resolve the widget's newer color expressions. */
        #bookingForm gmp-place-autocomplete::part(prediction-list) {
            background: #ffffff;
            color: #1f2937;
            opacity: 1;
            border: 1px solid #d1d5db;
            box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
        }

        #bookingForm gmp-place-autocomplete::part(prediction-item) {
            background: #ffffff;
            color: #1f2937;
        }

        #bookingForm gmp-place-autocomplete::part(prediction-item):hover,
        #bookingForm gmp-place-autocomplete::part(prediction-item-selected) {
            background: #e8f0fe;
            color: #1f2937;
        }

        #bookingForm gmp-place-autocomplete::part(prediction-item-main-text) {
            color: #1f2937;
        }

        #bookingForm gmp-place-autocomplete::part(prediction-item-secondary-text) {
            color: #4b5563;
        }

        #bookingForm gmp-place-autocomplete:focus-within {
            z-index: 1002;
        }

        .bookingFormLabels span:hover{
            color:#fff;
        }

        .location-icons{
            position:absolute;
            top:0;
            right:10px;
            bottom:0;
            display: flex;
            align-items: center;
            justify-content:center;
            gap:5px;
            background-color: #F3F3F3;
            z-index: 1000;
            border-radius: 15px;
        }

        .rtl .location-icons{
            left:10px;
            right: auto;
        }

        .location-icons button{
            background-color:transparent;
            z-index:1000;
            position: relative;
        }

        .location-icons button[data-tooltip]:hover::after {
            content: attr(data-tooltip);
            position: absolute;
            bottom: 100%;
            left: 50%;
            transform: translateX(-50%);
            background-color: #000;
            color: #fff;
            padding: 5px 10px;
            border-radius: 4px;
            white-space: nowrap;
            font-size: 12px;
            margin-bottom: 5px;
            z-index: 10001;
            pointer-events: none;
        }

        .location-icons button[data-tooltip]:hover::before {
            content: '';
            position: absolute;
            bottom: 100%;
            left: 50%;
            transform: translateX(-50%);
            border: 5px solid transparent;
            border-top-color: #000;
            margin-bottom: -5px;
            z-index: 10001;
            pointer-events: none;
        }

        .slider_text{
            max-width:none;
            width:fit-content;
            margin:0 auto;
        }

        /* Map Selector Modal */
        .map-selector-modal {
            display: none;
            position: fixed;
            z-index: 10000;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0,0,0,0.5);
        }

        .map-selector-content {
            position: relative;
            background-color: #fff;
            margin: 30px auto;
            width: 90%;
            max-width: 600px;
            height: calc(100% - 60px);
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 4px 20px rgba(0,0,0,0.3);
            display: flex;
            flex-direction: column;
        }

        .map-selector-header {
            padding: 20px;
            background-color: #fff;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 15px;
            position: relative;
            flex-shrink: 0;
            border-bottom: 1px solid #eee;
        }

        .map-selector-close {
            color: #333;
            font-size: 24px;
            font-weight: normal;
            cursor: pointer;
            background: #f0f0f0;
            border: none;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background-color 0.2s;
            flex-shrink: 0;
        }

        .map-selector-close:hover {
            background-color: #e0e0e0;
        }

        .map-search-input {
            flex: 1;
            padding: 10px 15px;
            border: 1px solid #ddd;
            border-radius: 20px;
            font-size: 14px;
            outline: none;
            transition: border-color 0.2s;
        }

        .map-search-input:focus {
            border-color: var(--bg-homepage-0-4);
            box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
        }

        .map-selector-body {
            flex: 1;
            position: relative;
            background-color: #e5e5e5;
        }

        #mapSelectorCanvas {
            width: 100%;
            height: 100%;
        }

        .map-selector-footer {
            padding: 20px;
            background-color: #fff;
            display: flex;
            flex-direction: column;
            gap: 15px;
            border-top: 1px solid #eee;
            flex-shrink: 0;
        }

        .map-selector-address {
            font-size: 15px;
            color: #333;
            line-height: 1.4;
        }

        .map-confirm-btn {
            width: 100%;
            padding: 14px 25px;
            background-color: var(--bg-homepage-0-4);
            color: white;
            border: none;
            border-radius: 25px;
            cursor: pointer;
            font-size: 16px;
            font-weight: 600;
            transition: opacity 0.2s;
        }

        .map-confirm-btn:hover {
            opacity: 0.9;
        }

        .map-marker-center {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -100%);
            font-size: 40px;
            color: var(--bg-homepage-0-4);
            pointer-events: none;
            z-index: 1000;
            filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
        }

        @media screen and (max-width: 768px) {
            .map-selector-content {
                margin: 0;
                width: 100%;
                height: 100%;
                border-radius: 20px 20px 0 0;
                max-width: none;
            }

            .map-selector-modal {
                background-color: transparent;
            }
        }

        @media screen and (max-width:500px) {
            .booking_slider {
                width: 100% !important;
                height: auto !important;
            }

            .video {
                float: bottom;
            }

            .embed-responsive-item {
                border-radius: 0 0 20px 20px !important;
                margin-bottom: 0;
            }

            .date-input-group {
                display: flex;
                flex-direction: column;
                justify-content: center;
            }

            .date-input-group input {
                width: 100% !important;
            }

            .app_btn {
                margin-bottom: 10px;
            }

            .action_content {
                text-align: center
            }

            .banner_text h1 br {
                display: block !important;
            }

            .choose_item label span {
                font-size: 12px !important;
            }

            #specialNote {
                height: 70px !important;
                border-radius: 25px !important;
                padding-top: 19px;
            }
        }

        @media (max-width: 767px) {
            .bg_img { background-image: var(--mobile-bg) !important; }
        }

