
body {
    --form-height: 75px;
}

h1.pageTitle {
    width: 100%;
}

@media (max-width: 767px) {
    body {
        --form-height: 475px;
    }

    #ui-datepicker-div {
        top: 50px !important;
    }

    #paymentForm h6 {
        line-height: 20px !important;
    }
}

.ui-dialog-titlebar.ui-corner-all.ui-widget-header.ui-helper-clearfix.ui-draggable-handle {
    padding: .4em 1em !important;
}

.ui-dialog .ui-dialog-buttonpane {
    margin-top: 0px;
}

.ui-dialog .ui-dialog-buttonpane button {
    margin: 0;
    padding: .25em .5em;
}

@media (min-width: 767px) {
    .section--booking-form {
        height: 0px;
    }

    .content-main .socials {
        display: none;
    }

    span.LDSImage.voucher-tile {
        width: 30%;
        margin-right: 2%;
        float: left;
    }

    .voucher-longDescription img {
        width: 46% !important;
        margin-right: 4%;
    }

    .LDSVoucherItem table .quantity input {
        width: 50px !important;
    }

    div.vouchers-purchase div.details textarea {
        min-width: 483px;
    }

}

#LDSGrid { display: block !important; }

.content-main a {
    color: #3e6f93 !important;
}

li.LDSVouchers.LDSNewNode {
    list-style-type: none !important;
}

.LDSVouchers p {
    margin-left: 0 !important;
}

div.vouchers-purchase div.vouchers-summary table {
    width: 100% !important;
}

div.vouchers-purchase div.details ul li span.label {
    width: 100% !important;
    float: left !important;
    margin-right: 10px !important;
}

div.vouchers-purchase {
    width: inherit !important;
}

.details.personalisation span.label {
    width: 365px !important;
}

.recipient .label {
    width: 410px !important;
}

@media (max-width: 768px) {
    .LDSVoucherItem table {
        font-size: 10px;
    }

    div.vouchers-purchase div.details ul li span.label, div.vouchers-purchase div.details textarea {
        width: 100% !important;
    }

    .grid-packages form label {
        margin: 0px !important;
    }

    #select2-grid-adults-container, #select2-grid-children-container {
        padding-left: 20px !important;
        font-size: 14px;
        font-family: interstate-mono, CircularStd-book, Calibre, Helvetica Neue, Helvetica, Arial, Lucida Grande, monopace;
    }

    #grid-fromDate {
        text-align: center;
    }

    .grid-packages form input, .grid-packages form .select2 {
        margin-bottom: 13px !important;
    }

}

.booking-active #LDSSearch {
    display: block;
}

@media (min-width: 768px) {
    #ui-datepicker-div.datepicker-package {
        width: 17em !important;
    }

    .grid-packages .select2-selection {
        height: 100% !important;
        line-height: 50px !important;
    }

    .grid-packages .select2-container {
        height: 50px;
        margin-top: -10px;
    }

    #select2-grid-adults-container, #select2-grid-children-container {
        height: 50px !important;
        line-height: 50px !important;
        font-size: 16px;
        font-family: interstate-mono, CircularStd-book, Calibre, Helvetica Neue, Helvetica, Arial, Lucida Grande, monopace;
    }

    .grid-packages .select2-selection__arrow {
        height: 50px !important;
    }

}

/* FLASH MESSAGES */
.LDSFlashMessages { margin: 10px auto; width: 100%; }

.LDSFlashMessages .flash {
    position: relative; display: block; clear: both; margin: 5px auto; width: 100%; padding: 15px 30px 15px 15px;
    border-left: 5px solid #333; border-radius: 0 4px 4px 0; font-weight: bold; font-size: 14px; text-align: left;
    box-sizing: border-box; -moz-box-sizing: border-box;
}

.LDSFlashMessages .flash.error { background: #f9eded; color: #b94a48; border-color: #b94a48; }

.LDSFlashMessages .flash.success { background: #ebfcee; color: #3cc051; border-color: #3cc051; }

.LDSFlashMessages .flash.warning { background: #fcf8e3; color: #e5be52; border-color: #e5be52; }

.LDSFlashMessages .flash.info { background: #e6f1f7; color: #3a87ad; border-color: #3a87ad; }

.LDSFlashMessages .flash .close { display: block; cursor: pointer; position: absolute; height: 20px; margin-top: -0.7em; top: 50%; right: 15px; font-size: 1.2em; font-weight: bold; pointer-events: none; }

#LDSBookingCartPaymentDetails_cardName.col-sm-9 {
    width: 75% !important;
}

body.menu-active #masthead {
    position: fixed;
    z-index: 99;

    .site-header-wrapper {
        height: 100vh;
        max-width: 1880px;
        margin-inline: auto;
        position: static;
    }

    #site-menu {
        display: flex;
        height: calc(100vh - 110px);
        position: absolute;
        left: 0;
        width: 100vw;
        border-top: solid 1px #557344;

        @media (max-width: 966px) {
            padding-top: 20px;
        }

        #menu-main-menu,
        nav {
            display: flex;
        }

        nav {
            flex-direction: column;
            justify-content: center;
            align-items: flex-end;

            @media (max-width: 966px) {
                justify-content: flex-start;
            }
        }

        #menu-main-menu {
            flex-wrap: wrap;
            gap: 20px;

            li {
                flex-basis: 100%;
            }
        }

        .menu-main-menu-container {
            max-width: 525px;
        }

        .landing-page-inner {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            row-gap: 30px;
            max-width: 525px;
        }

        .menu-bottom {
            display: flex;
            position: absolute;
            inset: auto 0 0 0;
            padding: 30px 60px;
            background-color: #ede9e1;
            border-top: solid 1px #faf8f4;
            flex-direction: row;
            justify-content: space-between;
            align-items: center;
            column-gap: 40px;
            font-size: 15px;
            height: auto;
            bottom: 0;
            left: 0;
            width: 100vw;

            .menu-right,
            ul {
                display: flex;
                justify-content: space-between;
                gap: 40px;
                list-style: none;
                margin: 0;
            }

            a {
                color: #403f3d;
            }

        }

        .menu-bottom,
        #nav-cta {
            @media (max-width: 966px) {
                display: none;
            }
        }
    }

    #site-navigation,
    #nav-cta {
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 1;
        height: 100%;
        padding: 0 60px;
    }

    #nav-cta {
        --link-color: #403f3d;
        border-left: 1px solid #faf8f4;

        .menu-button a {
            font-size: 24px;
            color: var(--link-color);
            display: inline-flex;
            gap: 20px;
            align-items: center;
            font-family: "Lato", sans-serif;

            &:hover {
                --link-color: #557344;
            }
        }

        .menu-button i {
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 16px;
            border: 1px dashed var(--link-color);
            border-radius: 22px;
            width: 44px;
            height: 44px;
        }

    }

}
