/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

:root {
    --main-50: #f0ecea;
    --main-100: #E6DFD6;
    --main-200: #CDBEAC;
    --main-400: #9A7C58;
    --main-500: #876D4D;

    --secondary-500: #004225;
    --secondary-700: #002113;

    

    --support-100: #E2E2E2;
    --support-300: #8A8A8A;
    --support-400: #4F4F4F;
    --support-700: #141414;

    --background-100: #FAF8F7;
    --background-200: #F4F1EE;
    --background-400: #D6D3D1;
    --actions-discount: #589A58;

    --white: #ffffff;

    --status-negative-h3: #FDDFDF;
    --status-positive-h3: #7cbf7c
}

svg {
    flex-shrink: 0;
}


.wow-number-input,
.wow-checkbox-input {
    width: 10rem;
}

.wow-number-input {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    background: #fff;
    border-radius: 2rem;
    padding: 0.5rem 1.5rem;
    border: 1px solid var(--support-300);

    &>input[type="number"] {
        -webkit-appearance: textfield;
        -moz-appearance: textfield;
        appearance: textfield;
        outline: none;
        box-shadow: none;
        border: 0;
        text-align: center;
        min-width: 2.5rem;
        min-height: 1.5rem;
        height: 1.5rem;
        font-size: 1rem;
        line-height: 1.5rem;
        font-weight: 500;
        padding: 0;
        flex-grow: 1;

        &::-webkit-inner-spin-button,
        &::-webkit-outer-spin-button {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }
    }

    &>button {
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        display: flex;
        flex: 1 0 auto;
        align-items: center;
        justify-content: center;
        width: 1.5rem;
        height: 1.5rem;
        cursor: pointer;
        padding: 0;
        border: 0;
        background-color: transparent;
        line-height: 1;
        border-radius: 0.25rem;


        &:before {
            display: inline-flex;
            content: '-';
            color: var(--support-700);
            font-size: 1.5rem;
            height: 100%;
            align-items: center;

        }

        &:last-child:before {
            content: '+';
        }

        &:disabled:before {
            color: var(--support-300);
        }

        &:is(:hover, :focus) {
            background-color: var(--background-200);

            &:before {
                color: var(--support-300);
            }
        }

    }
}

/* Checkbox styles */
.wow-checkbox-input {

    &>input[type="checkbox"],
    &>input[type="radio"] {
        all: inherit;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        cursor: pointer;
        outline: none;
        -webkit-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out;
        box-shadow: none;

        background: var(--background-200);
        border-radius: 2rem;
        padding: 0.5rem 1rem !important;
        height: 2.5rem;
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 0.5rem;
        width: 100%;

        &:before {
            all: inherit;
            content: '';
            border-radius: 2rem;
            border: 1px solid #ffffff;
            width: 1.5rem;
            height: 1.5rem;
            margin: 0;
            padding: 0;
            background-repeat: no-repeat;
            background-position: center;
            background-size: 0.75rem;
            background-color: #ffffff;
        }

        &:after {
            content: attr(data-no);
            font-size: 1rem;
            line-height: 1.5rem;
            font-weight: 500;
            color: var(--support-300);
            flex-grow: 1;
            text-align: center;
        }

        &:hover {
            background-color: var(--background-400);
        }

        &:checked {
            background-color: var(--secondary-500);

            &:before {
                background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="11" fill="currentColor" viewBox="0 0 15 11"><path d="M.146 6.854a.5.5 0 1 1 .708-.708L4.5 9.793 14.147.146a.5.5 0 0 1 .707.708l-10 10a.5.5 0 0 1-.707 0l-4-4Z"/></svg>');
            }

            &:after {
                content: attr(data-yes);
                color: #ffffff;
            }
        }
    }
}

.flatpickr-calendar {
    border-radius: 0;

    &.inline {
        border: 0;
        top: inherit;
        box-shadow: none;

        &>.flatpickr-innerContainer {
            flex-direction: column;
        }

        &>.flatpickr-months,
        &>.flatpickr-innerContainer>.flatpickr-rContainer>* {
            gap: 1.5rem;
            justify-content: center;
            width: 100% !important;

            & .dayContainer+.dayContainer {
                box-shadow: none;
            }
        }
    }

    &.rangeMode .flatpickr-day {
        max-width: inherit;
        border: 0;
        font-weight: 600;
        color: var(--support-300);

        &:is(.startRange, .endRange) {
            background: var(--main-400);
            color: #ffffff;
        }

        &.startRange {
            border-top-left-radius: 0.5rem;
            border-bottom-left-radius: 0.5rem;
        }

        &.endRange {
            border-top-right-radius: 0.5rem;
            border-bottom-right-radius: 0.5rem;
        }

        &.inRange {
            box-shadow: none;
            background: var(--main-100);
        }

        &.flatpickr-disabled {
            opacity: 0.25;
        }
    }
}

/* 
.flatpickr-calendar.rangeMode .flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-calendar.rangeMode .flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-calendar.rangeMode .flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)) {
    -webkit-box-shadow: -10px 0 0 #000000;
    box-shadow: -10px 0 0 #000000;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    display: inline-block;
} */

/* .flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
    background: var(--beige);
    border-color: var(--beige);
} */

.form-control.flatpickr-input[readonly],
.form-control[data-fp-omit][readonly] {
    background-color: #fff;
}

input.form-check-input {
    margin-left: -1.25rem;
    margin-top: 0.3rem;
}

.select2-container {

    &>.select2-dropdown{
        border-radius: 0.5rem;

        
        &>.select2-search.select2-search--dropdown .select2-search__field {
            line-height: 1.5;
            border-radius: 0.5rem;
        }
        
        &>.select2-results {

            & ul.select2-results__options {
                font-size: 0.875rem;
                
                & .select2-results__option {
                    margin-bottom: 0;
                    line-height: 1.2;
                    padding: 0.5rem 16px;

                    &[role="group"] {
                        padding: 0;
                    }

                    &.select2-results__option--highlighted[aria-selected] {
                        background-color: #232323;
                    }
                }

                & .select2-results__group {
                    display: block;
                    padding: 0.75rem 16px 0.25rem;
                    font-weight: 700;
                    color: var(--support-700);
                    text-transform: uppercase;
                    font-size: 0.75rem;
                    letter-spacing: 0.05rem;
                }

                & .select2-results__options--nested .select2-results__option {
                    padding-left: 24px;
                }
            }
        }
    }

    &:focus {
        border-color: #b7fbf3;
        outline: 0;
        box-shadow: 0 0 0 0.2rem rgba(62, 245, 224, 0.25);
    }


    &.select2{
        & .select2-selection {

            &.select2-selection--single {
                & .select2-selection__placeholder {
                    color: var(--placeholder);
                }

                & .select2-selection__clear {
                    width: 1rem;
                    text-align: center;
                }

            }

            &.select2-selection--multiple {
                & .select2-selection__choice {
                    background-color: #CEAA7D;
                    color: #fff;
                    padding: 0.01rem 1rem 0.01rem 0.75rem;
                    border: 0;
                }

                & .select2-selection__choice__remove {
                    color: #333;
                    margin-right: 0.5rem;
                    font-size: 19px;
                    line-height: 1;
                }

                & .select2-selection__clear {
                    position: absolute;
                    top: 0;
                    right: 0;
                }

                & .select2-selection__rendered li {
                    max-width: calc(100% - 17px);
                    text-overflow: ellipsis;
                    white-space: nowrap;
                    overflow: hidden;
                    margin: 2px 0;
                }
            }

            &>.select2-selection__rendered {
                padding-left: 0;
                padding-right: 1.5rem;
            }

            & .select2-selection__arrow {
                height: 100%;
                width: calc(0.75rem + 10px);

                &>b {
                    display: none;
                }

                &:before {
                    content: '';
                    position: absolute;
                    top: 50%;
                    right: 0.5rem;
                    margin-top: -0.75rem;
                    transition: transform .2s ease-in-out;
                    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M17.6465 8.64645C17.8417 8.45118 18.1582 8.45118 18.3535 8.64645C18.5488 8.84171 18.5488 9.15822 18.3535 9.35348L12.3535 15.3535C12.1582 15.5487 11.8417 15.5487 11.6465 15.3535L5.64648 9.35348C5.45121 9.15822 5.45121 8.84171 5.64648 8.64645C5.84174 8.45118 6.15825 8.45118 6.35351 8.64645L12 14.2929L17.6465 8.64645Z" fill="black"/></svg>');
                    background-repeat: no-repeat;
                    background-position: center center;
                    width: 1.5rem;
                    height: 1.5rem;
                }
            }
        }
        
        &.select2-container--open .select2-selection .select2-selection__arrow:before {
            transform: rotate(180deg);
        }
    }


}


[class^="icon-"],
[class*=" icon-"] {
    font-size: 1.375rem;
    vertical-align: middle;

    &.small {
        font-size: 1rem;
    }
}

.snackbar {
    visibility: hidden;
    min-width: 150px;
    max-width: calc(100vw - 2rem);
    margin: 1rem;
    background-color: var(--dark);
    color: #ffffff;
    text-align: center;
    border-radius: 2px;
    padding: 1rem;
    position: fixed;
    z-index: 9999;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    transition: visibility 0.5s, opacity 0.5s, bottom 0.5s ease-in-out;
    opacity: 0;

    &.show {
        visibility: visible;
        opacity: 1;
        bottom: 1rem;
    }


    @media (max-width: 768px) {
        & {
            left: 0;
            transform: inherit;
        }
    }
}

body.wow-booking-pre-arrival .snackbar.show {
    bottom: 5rem;
}


[data-help] {
    position: relative;

    &::after {
        content: attr(data-help);
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 0;
        font-size: 11px;
    }
}

table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>td:first-child:before,
table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>th:first-child:before {
    background-color: #0073aa;
    top: 50%;
    margin-top: -9px;
}

table.dataTable>tbody>tr.child ul.dtr-details>li {
    display: flex;
    align-items: center;
}

table.dataTable.dtr-inline.collapsed>tbody>tr>td.child,
table.dataTable.dtr-inline.collapsed>tbody>tr>th.child,
table.dataTable.dtr-inline.collapsed>tbody>tr>td.dataTables_empty {
    background: #f9f9f9;
    border-left: 3px solid #333333;
}

table.dataTable>thead>tr>th {
    border-right: 1px solid #dee2e6;
    background-image: inherit !important;
}

table.dataTable>thead>tr>th:last-child {
    border-right: 0;
}

table.dataTable td a:not(.btn) {
    color: #333;
}



.iti__flag {
    background-image: url("../../lib/intl-tel-input/img/flags.png");
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
    .iti__flag {
        background-image: url("../../lib/intl-tel-input/img/flags@2x.png");
    }
}

.iti__selected-flag {
    padding-left: 13px;
}


/* Form Floating pre-bootstrap v5 */

.form-floating {
    position: relative;

    &>:is(.form-control, .form-select),
    &>.iti input,
    &>.multiselect-native-select>.btn-group>.multiselect,
    &>.select2 .select2-selection {
        min-height: 4rem;
        height: calc(4rem + 2px);
        line-height: 1.25;
        border-radius: 0.5rem;
        border-color: var(--support-300);
    }

    /* .select2-container--default .select2-selection--single .select2-selection__rendered */
    &>.form-control,
    &>.iti .form-control,
    &>.select2 .select2-selection--single .select2-selection__rendered {
        padding: 1.625rem 1rem .625rem;

        &::placeholder {
            color: transparent;
        }

        /* &:focus,
        &:not(:placeholder-shown),
        &:-webkit-autofill{
            padding-top: 1.625rem;
            padding-bottom: .625rem;
        } */

        /* &[readonly] {
            background-color: transparent !important;
            
            &~label {
                color: #BDB8B8;
            }
        } */
    }

    & label+.wow-number-input,
    &>.form-select,
    &>.multiselect-native-select>.btn-group>.multiselect {
        padding-top: 1.625rem;
        padding-bottom: .625rem;
    }

    &>.form-control:focus~label,
    &>.form-control:not(:placeholder-shown)~label,
    &>.form-select~label,
    &>.multiselect-native-select~label,
    &>.form-control:-webkit-autofill~label,
    &>.iti~label {
        line-height: 1.5rem;
        font-size: 0.875rem;
    }

    &>label {
        position: absolute;
        top: 0;
        left: 0;
        padding: 0.5rem 1rem;
        line-height: 3rem;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow-x: hidden;
        overflow: hidden;
        width: 100%;
        pointer-events: none;
        color: var(--support-300);
        margin: 0;
        font-size: 1rem;
        font-weight: 400;
        transition: all 0.05s ease-in-out;

        @media (prefers-reduced-motion:reduce) {
            & {
                transition: none;
            }
        }
    }

    & .wow-number-input {
        padding-top: 1.625rem;
        padding-bottom: 0.1875rem;
        height: calc(3.5rem + 2px);

        &+label {
            opacity: .65;
            transform: scale(.85) translateY(-0.5rem) translateX(0.15rem);
        }

        & input[type="number"] {
            height: initial;
            min-height: inherit;
            font-size: 1rem;
        }

        & button {
            height: 2rem;

            &:before {
                height: 7px;
            }
        }
    }

    /* Phone number field*/
    &>.iti {
        width: 100%;

        &>.iti__flag-container {
            padding-top: 1.625rem;
            padding-bottom: 0.625rem;
        }

        &>.form-control {
            padding-left: 3.5rem !important;
        }
    }


    /* Multiselect */
    &>.multiselect-native-select>.btn-group {
        &>.multiselect {
            min-width: 220px;
            text-align: left !important;
        }

        &>.multiselect-container {
            &>.form-check {
                justify-content: flex-start;
                padding: 0;
            }

            &>.multiselect-option {
                padding: 0.25rem 0.75rem;

                &.multiselect-group-option-indented {
                    padding-left: 2rem;
                }
            }
        }
    }


}



.card .card-body>table {
    /* border-collapse: separate; */
    border-spacing: 0 6px;

    & tbody tr th,
    & tbody tr td {
        vertical-align: middle;
    }
}


.btn-group{
    
    &.btn-group-toggle {
        background: var(--background-200);
        border-radius: 2rem;
        border: 1px solid #C7C3C3;
        padding: 0.5rem;
        gap: 0.5rem;

        &>.btn,
        &>.btn-group>.btn {
            flex-grow: 1;
            flex-shrink: 1;
            flex-basis: 0;
            line-height: 1rem;
        }

        & .btn {
            background-color: var(--background-400);
            color: var(--support-300);
            font-size: 1rem;
            line-height: 1.5rem;
            font-weight: 500;
            padding: 0.5rem 1rem;
            border-radius: 2rem !important;
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            align-items: center;

            &.active {
                color: var(--white);
                background-color: var(--secondary-500);
            }
            &:hover:not(.active) {
                color: var(--secondary-500);
                border-color: var(--secondary-500);
            }
        }
    }
}

.card .card-title {
    color: var(--body-color);
}

.card .card-body>table tbody tr {
    color: var(--body-color);
    border: 1px solid var(--body-color);
    background: transparent;
}

.card:not(#booking-summary-sidebar) .card-header+.card-body {
    border: 1px solid var(--primary);
}

table.table-booking-extras tr>th,
table.table-booking-extras tr>td {
    background-color: transparent !important;
}


.table-booking-extras tbody>tr>th:first-child {
    width: 60px;
    padding-right: 0px;
}

.table-booking-extras .extra_description {
    display: block;
}

.table-booking-extras .extra_description>p {
    margin-bottom: 0;
}


.form-group {
    margin-bottom: 0.625rem;
}




form .stripe-card-errors {
    padding-left: 1rem;
    padding-top: 0.625rem;
    color: var(--alert-danger);
}


.card .card-header {
    display: flex;
    align-items: center;
}

.card .card-header .card-title {
    flex-grow: 1 !important;
    align-self: center !important;
    margin-bottom: 0px;
    /* line-height: 2.25rem; */
    line-height: 1.5rem;
    display: inline-flex;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 300;
}

.card .card-header .card-title .card-description {
    display: block;
    font-weight: 300;
    font-size: 0.8125rem;
    line-height: 1.6;
    text-transform: none;
}

.card>.card-body>.form-group:last-of-type {
    margin-bottom: 0;
}


[class^="icon-"],
[class*=" icon-"] {
    /* font-size: 1.375rem; */
    vertical-align: middle;
}

[class^="icon-"].small,
[class*=" icon-"].small {
    font-size: 0.875rem;
}



form ul.parsley-errors-list {
    display: none;
}

form ul.parsley-errors-list.filled {
    list-style: none;
    margin: 0;
}

form ul.parsley-errors-list.filled,
form .stripe-card-errors {
    padding: 0.5rem 1rem 0 !important;
    padding-top: 0.625rem;
    color: var(--danger);
    font-weight: 400;
    display: block;
}


.dividers>div {
    border-right: 1px solid var(--primary);
}

.dividers>div:last-child {
    border-right: 0;
}

.fit-cover {
    object-fit: cover;
    overflow: hidden;
}

.modal-dialog-scrollable .modal-body {
    overflow-x: hidden;
}

.modal-content {
    border: 0;
}



.modal-header button.close {
    font-size: 2rem;
    color: #333;
    border: 1px solid #333;
    padding: 0.625rem;
    line-height: 0.5;
    margin: 0px;
}


table.dataTable th {
    font-family: 'Albert Sans';
    font-weight: 400;
}

table.dataTable th:before,
table.dataTable th:after {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

table.dataTable th,
table.dataTable td {
    vertical-align: middle;
}

/* Add filter bar to datatable */
table.dataTable thead>tr:nth-child(2) {
    background-color: #E9E3DF;
}

table.dataTable thead>tr:nth-child(2)>td {
    padding: 6px 3px;
}

table.dataTable thead>tr:nth-child(2)>td input {
    width: 100%;
}

table.dataTable thead>tr:nth-child(2)>td .select2 .select2-selection,
table.dataTable thead>tr:nth-child(2)>td input.form-control {
    height: 2rem;
    line-height: 1.625rem;
    padding: 0 0 0 0.5rem;
    min-height: 1.875rem;
    font-size: 0.9375rem;
    font-weight: 400;
    border-radius: 0.375rem;
}

table.dataTable thead>tr:nth-child(2)>td input[type="number"].form-control {
    padding-right: 0;
}

table.dataTable thead>tr:nth-child(2)>td .select2 .select2-selection .select2-selection__arrow {
    line-height: 1.4;
    font-size: 0.75rem;
}

div.dataTables_wrapper table.dataTable div.dataTables_info {
    padding-top: 0;
    width: 100%;
}

table.dataTable.no-footer {
    border-bottom: 0;
}

input.wow-filter-date-range,
input.wow-filter-date-range[readonly] {
    background-color: #fff !important;
    color: inherit;
}

.btn-group-toggle-body {
    background: #F0ECEA;
    margin-bottom: 1rem;
    padding: 1rem 0.5rem 0 0.5rem;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    margin-top: -4px;
}



#bookingPreArrival .tab-content {
    padding: 3.125rem 0 0;
}

#bookingPreArrival .btn.btn-outline-dark {
    border-color: #122223;
    color: #122223;
    text-decoration: none !important;
    border-radius: 50px;
    padding: 10px 30px 10px 30px;
}

#bookingPreArrival .btn.btn-outline-dark:hover {
    color: #fff;
    background-color: #122223;
}

#bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item],
#bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: baseline;
}

#bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item]>label,
#bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item]>button,
#bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item]>label,
#bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item]>button {
    width: 3rem;
}

#bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item]>.form-row,
#bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item]>.form-row {
    flex-grow: 1;
}

#bookingPreArrival .wow-img-fluid {
    object-fit: cover;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    display: flex;
    align-items: center;
    max-width: 100%;
}

#bookingPreArrival #formNewMiniMarketPreOrder table tr th {
    color: #122223;
    font-family: 'Albert Sans', sans-serif;
    font-size: 1rem;
    font-weight: 300;
    vertical-align: middle;
}

#bookingPreArrival #formNewMiniMarketPreOrder table thead tr th {
    font-size: 1.25rem;
    background-color: #ffffff;
}

#bookingPreArrival #formNewMiniMarketPreOrder table tr td {
    vertical-align: middle;
}

#bookingPreArrival #formNewMiniMarketPreOrder table .wow-number-input input[type="number"] {
    font-weight: 300;
}

.wow-timeslot-selector {
    list-style-type: none;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    padding: 0;
}

.wow-timeslot-selector li {
    border: 1px solid #122223;
    flex-basis: clamp(60px, 19%, 80px);
}

.wow-timeslot-selector li input[type="radio"] {
    display: none;
}

.wow-timeslot-selector li label {
    margin: 0;
    font-size: 0.875rem;
    padding: 1rem 0.5rem;
    width: 100%;
    cursor: pointer;
    font-weight: 400;
}

.wow-timeslot-selector input[type="radio"]:checked+label,
.wow-timeslot-selector label:hover {
    background-color: #DADDC6;
    border-color: #DADDC6;
}

@media screen and (max-width: 767px) {
    #bookingPreArrival .tab-content {
        padding: 1.5rem 0 5.5rem;
    }

    #bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item],
    #bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item] {
        flex-wrap: wrap;
    }

    #bookingPreArrival #formPreArrivalGolfRequest [data-repeater-list] [data-repeater-item]>.form-row,
    #bookingPreArrival #preArrivalBabysitting [data-repeater-list] [data-repeater-item]>.form-row {
        order: 10;
    }

    #bookingPreArrival #prearrival-summary ul li,
    #bookingPreArrival ul.prearrival-summary-out li {
        display: flex !important;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    #bookingPreArrival #prearrival-summary ul li>div,
    #bookingPreArrival ul.prearrival-summary-out li>div {
        order: 10;
    }

    #bookingPreArrival #prearrival-summary div:not(.golf-lines)>ul li>div:first-of-type,
    #bookingPreArrival div:not(.golf-lines) ul.prearrival-summary-out li>div:first-of-type {
        flex: 0 1 100%;
    }

    #bookingPreArrival #prearrival-summary ul li .wow-index,
    #bookingPreArrival ul.prearrival-summary-out li .wow-index,
    #bookingPreArrival #prearrival-summary ul li>button,
    #bookingPreArrival ul.prearrival-summary-out li>button {
        order: 1;
    }
}


.select2-search__field,
.select2-selection__clear {
    margin-top: -2px !important;
}





.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)) {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}


.modal-custom-content {
    display: flex;
    width: clamp(460px, 85vw, 1488px);
    /* height: clamp(250px, 80vh, 816px); */
    border-radius: 16px;
    font-family: 'Albert Sans';
    font-style: normal;
    font-weight: 500;
    padding: 0;
    margin: 0;
    flex-direction: row;
    align-items: stretch;
    justify-content: stretch;
    color: #141414;


    & h1 {
        font-size: 2rem;
        line-height: 3rem;
        font-size: 2rem;
        line-height: 3rem;
        /* flex: none;
        order: 1;
        align-self: stretch;
        flex-grow: 0;
        z-index: 1; */
    }

    & h2 {
        padding: 0px;
        font-size: 1.25rem;
        font-size: 1.25rem;
        font-weight: 700;
        line-height: 2rem;
    }

    & h4 {
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 2.5rem;
        line-height: 2rem;
    }

    & h4 {
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 2.5rem;
    }

    & h6 {
        font-size: 1rem;
        line-height: 1.5rem;
        font-size: 1rem;
        line-height: 1.5rem;
    }

    & :is(p, span, ul) {
        font-weight: 400;
        font-size: 0.875rem;
        line-height: 1.5rem;
        font-size: 0.875rem;
        line-height: 1.5rem;
        color: #8A8A8A;
    }

    & .f-1 {
        /* Extras stretch middle content */
        flex: 1;
    }

    & section {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }


    &>div {
        display: flex;

        &>div {
            flex: 1 1 0;
            min-width: 0;
            display: flex;
            flex-direction: column;
        }

        &>div:only-child {
            /* Cancelation Policy (No image) */
            align-items: center;

            & div {
                width: 100%;
            }

            @media (min-width: 724px) {
                & div {
                    flex-direction: row !important;

                }

                & .center {
                    justify-content: center !important;
                }
            }
        }

        @media (min-width: 1024px) {

            /* Extras / Accommodation border on desktop */
            &:has(> div:not(:only-child))>div>div {

                border-radius: 0px 0px 16px 0px;
            }
        }

        &>div:first-child {
            /* Image */
            position: sticky;
            top: 0;
            height: 100%;

            & .swiper {
                width: 100%;
                height: 100%;
            }

            & img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }

        &>div:last-child {
            /* Content */
            position: relative;

            div:has(> h2) {
                padding: 8px 24px;
                /* subheader */
            }

            &>div {
                display: flex;
                box-sizing: border-box;
                flex-direction: column;
                align-items: flex-start;
                padding: 24px;
                gap: 16px;
                border-radius: 0px 0px 16px 16px;

                & div {
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    padding: 0px;
                    gap: 8px;
                }

                & .items-list {
                    /* Facilities */
                    display: flex;
                    flex-wrap: wrap;
                    padding: 0;
                    gap: 8px;

                    & div {
                        box-sizing: border-box;
                        display: flex;
                        align-items: center;
                        padding: 8px 16px;
                        gap: 8px;
                        background: #F4F1EE;
                        border-radius: 8px;
                        min-height: 56px;
                        flex: 0 0 calc((100% - 16px) / 3);
                        max-width: calc((100% - 16px) / 3);
                    }
                }


            }

            &>div:not(:last-child) {
                border-bottom: 1px solid #8A8A8A;
            }

            &>div:first-child {
                /* TODO (first-child is spinner)  Header*/
                align-items: flex-start;
                padding: 24px;
                gap: 16px;
                background: #F4F1EE;

                &>div:first-child {
                    display: flex;
                    flex-direction: row;
                    align-items: flex-start;
                    padding: 0px;
                    gap: 8px;
                    font-weight: 400;
                    font-size: 14px;
                    line-height: 24px;

                    &>span {
                        align-items: center;
                        padding: 0px 8px;
                        gap: 4px;
                        border-radius: 4px;
                    }

                    &>span:last-child {
                        background: #FFFFFF;
                        color: #8A8A8A;
                    }

                    &>span:first-child {
                        background: var(--main-400);
                        color: #FFFFFF;
                    }

                }

                &>div:last-child {
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    padding: 0px;
                    gap: 16px;
                    flex: none;
                    order: 3;
                    align-self: stretch;
                    font-size: 16px;
                    line-height: 24px;
                    color: var(--main-400);

                    &>div {
                        display: flex;
                        flex-direction: row;
                        gap: 8px;
                    }


                }


            }

            & button {
                position: absolute;
                background-color: transparent;
                border: 0;
                top: 8px;
                right: 8px;
                z-index: 10;
            }
        }

    }

    @media (max-width: 1024px) {

        &>div {
            flex-direction: column;

            &>div:first-child {
                position: relative;
                height: 100%;
            }

            &>div:last-child {
                height: auto;
                overflow-y: visible;
            }
        }
    }

}

.modal-extra {
    width: clamp(982px, 61vw, 1184px) !important;
    /* height: clamp(350px, 45vh, 600px) !important; */

    @media (max-width: 1024px) {
        width: clamp(250px, 80vw, 1200px) !important;
        /* height: clamp(350px, 85vh, 600px) !important; */
    }

    &:not(:has(img)) {
        width: clamp(500px, 30vw, 700px) !important;

        @media (max-width: 1024px) {
            width: clamp(400px, 40vw, 1200px) !important;
        }
    }
}

.modal-tariff {
    width: clamp(920px, 60vw, 1200px) !important;
    /* height: clamp(350px, 45vh, 600px) !important; */

    @media (max-width: 1024px) {
        width: clamp(250px, 80vw, 1200px) !important;
        /* height: clamp(350px, 65vh, 600px) !important; */
    }
}




.spinner-border {
    background-color: transparent !important;
    display: inline-block;
    width: 2rem !important;
    height: 2rem !important;
    vertical-align: -0.125em !important;
    border: .25em solid currentColor !important;
    border-right-color: transparent !important;
    border-radius: 50% !important;
    animation: .75s linear infinite spinner-border !important;
}