﻿.StepsContainer {
    background-color: #e8e6df;
    padding: 20px 10px 0;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

@media (max-width: 768px) {
    .StepsContainer {
        flex-direction: column;
        align-items: flex-end;
    }
}

.divMenuSteps {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
}

    .divMenuSteps div:first-child {
        margin-bottom: -1px;
    }

    .divMenuSteps div:not(:first-child):not(:last-child) {
        margin-top: -1px;
        margin-bottom: -1px;
    }

    .divMenuSteps div:last-child {
        margin-top: -1px;
    }

#ctl00_cphMainPage_lblNamedTickets {
    text-align: center;
}

@media (min-width: 576px) {
    .divMenuSteps {
        flex-direction: row;
        flex-wrap: wrap;
        width: 550px;
    }

        .divMenuSteps div {
            flex: 50%;
        }

            .divMenuSteps div:not(:last-child):nth-child(2n+1) {
                margin-top: 0px !important;
                margin-right: -1px !important;
                margin-bottom: 0px !important;
                margin-left: 0px !important;
            }

            .divMenuSteps div:nth-child(2n) {
                margin-top: 0px !important;
                margin-right: 0px !important;
                margin-bottom: 0px !important;
                margin-left: -1px !important;
            }

            .divMenuSteps div:first-child, .divMenuSteps div:nth-child(2) {
                margin-bottom: -1px !important;
            }

            .divMenuSteps div:nth-child(3), .divMenuSteps div:nth-child(4) {
                margin-top: -1px !important;
            }

            .divMenuSteps div:last-child {
                margin-top: -2px !important;
                max-width: 50%;
            }
}

@media (min-width: 900px) {

    .divMenuSteps {
        flex-wrap: nowrap;
        flex-direction: row;
        width: auto;
    }

        .divMenuSteps div {
            flex: initial !important;
        }

            .divMenuSteps div:first-child {
                margin-top: 0px !important;
                margin-bottom: 0px !important;
                margin-left: 0px !important;
                margin-right: -1px !important;
            }

            .divMenuSteps div:not(:first-child):not(:last-child) {
                margin-top: 0px !important;
                margin-bottom: 0px !important;
                margin-left: -1px !important;
                margin-right: -1px !important;
            }

            .divMenuSteps div:last-child {
                margin-top: 0px !important;
                margin-bottom: 0px !important;
                margin-left: -1px !important;
                margin-right: 0px !important;
            }
}

.ActiveButton, .InactiveButton {
    font-size: 18px;
    font-family: 'Crimson Text',serif;
    border: 2px solid #fc4f59;
    padding: 10px 30px;
}

h2#h2PageTitle {
    margin-bottom: 15px;
}

h4 span {
    font-size: inherit !important;
    font-family: inherit !important;
    line-height: inherit !important;
}

.card {
    font-size: 18px;
    font-family: "Open Sans", sans-serif;
    line-height: 140%;
    display: flex;
    flex-wrap: wrap;
    background-color: #fafafa;
    border: 1px solid #eaeaea;
    margin-bottom: 2rem;
    border-radius: 0px;
}

.card-footer, .card-header {
    background-color: #efeeed;
    border: 1px solid #ddd;
    padding: 10px 20px;
    border-radius: 0px !important;
    margin-left: -1px;
    margin-right: -1px;
}

.card-footer {
    margin-bottom: -1px;
}

.card-header {
    margin-top: -1px;
}


.GenericButton, .K3GenericButton, .btn {
    margin-left: 0.5rem;
    padding: 0.5rem 1rem;
    border: 1px solid #fc3641;
    color: #fc3641;
    font-size: .9rem !important;
    text-transform: uppercase;
    border-radius: 0px;
    font-weight: bold;
    background-color: transparent;
    border-radius: 0.75rem;
}

    .GenericButton:hover, .K3GenericButton:hover, .btn:hover {
        background-color: #fc3641;
        color: #fff !important;
        border-color: #fc3641;
    }

@media (min-width: 900px) {
    .linkbtn {
        padding-top: 3rem;
    }
}

.linkbtn {
    flex-grow: 1;
}

select.form-select {
    border-radius: 0px;
}

input.form-control {
    border-radius: 0px;
}

.dgMeracQTY {
    width: 25%;
}

.gridTotalHeader {
    width: 6em;
    text-align: right;
}

.grandTotal {
    text-align: right !important;
}

@media (min-width: 700px) {
    .gridQtyHeader, .gridQty {
        padding-left: 2em !important;
    }
}

.basketfooter td:last-child {
    text-align: right;
}

.dgMeracItem {
    text-align: left;
}

.number-spinner {
    position: relative;
    left: calc(-50px / 4);
}

    .number-spinner span.form-control, .number-spinner input[type=image] {
        padding-right: 50px;
        border: 1px solid black;
        border-radius: 0;
    }

    .number-spinner input.qty-button {
        padding: 0.2rem;
    }

    .number-spinner input[type=image] {
        border-radius: 0;
    }

.accordion, .accordion-item:first-of-type, .accordion-header btn, .accordion-header {
    border-radius: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

body {
    --bs-accordion-inner-border-radius: 0 !important;
}

.StepsContainer, #aspnetForm > div.white-container.sticky-header-buffer, .page-footer-lower {
    background: #f4f4f4;
}

#aspnetForm > div.white-container.sticky-header-buffer {
    height: 100px;
}

.page-footer-lower {
    height: 425px;
}



.GenericButton:hover, .K3GenericButton:hover, .btn:hover, #ctl00_cphMainPage_Login > div.card-footer > div > div.login-button > div > div.remember-me > label:hover {
    background-color: #0E376D !important;
    color: #fff !important;
    border-color: #0E376D !important;
}

.portal-login-widget .logged-out button:not(:last-child) {
    border-color: #ced4da;
    color: #77797b;
}

#ctl00_cphMainPage_lblVoucherCode {
    color: black;
}

.k3-required svg {
    top: 0rem !important;
}

{
    color: #0E376D;
    font-size: 18px;
    text-decoration: none;
    font-weight: bold;
    line-height: 140%;
}

.form-check:has(input:checked[type=checkbox]) {
    box-shadow: unset;
}

#btnUser {
    border: 0px;
}

    #btnUser:hover, #btnUser:focus, #btnUser:focus-visible, #btnUser:active {
        border: unset !important;
        background-color: unset !important;
        color: black !important;
    }

#h2PageTitle, #title {
    display: none !important;
}

#headerContainer > div > header > div > div > div > a > img {
    height: 80px;
}

#headerContainer.sticky-header {
    -webkit-box-shadow: 0 1px 11px -6px rgba(0, 0, 0, 1.75) !important;
}

#ctl00_cphMainPage_calAvailability > tbody > tr:nth-child(1) > td > table > tbody > tr > td:nth-child(3),
#ctl00_cphMainPage_calAvailability > tbody > tr:nth-child(1) > td > table > tbody > tr > td:nth-child(1),
#ctl00_divMenuSteps > div.portal-login-widget > div > button.btn.btn-light,
#btnLoginReg {
    border-color: #19355B !important;
}

#ctl00_divMenuSteps > div.portal-login-widget > div > button.btn.btn-light {
    border-width: 1px;
}

#ctl00_divMenuSteps > div.portal-login-widget > div > button.btn.btn-light,
#btnLoginReg:hover {
    color: white !important;
    background-color: #19355B !important;
}

#ctl00_cphMainPage_calAvailability > tbody > tr:nth-child(1) > td > table > tbody > tr > td:nth-child(3):hover,
#ctl00_cphMainPage_calAvailability > tbody > tr:nth-child(1) > td > table > tbody > tr > td:nth-child(1):hover {
    background-color: #19355B !important;
}

.btnLoginReg.dropdown-toggle::after, #btnLoginReg > span > svg, .user-dropdown-icon {
    color: unset;
}

td.calToday {
    border: 2px solid #19355B;
}

.calSelected {
    font-weight: bold;
    background-clip: padding-box;
    border-radius: 40px;
    border: 2px solid white;
    color: white !Important;
    background-color: #358E95A !important;
}

#ctl00_cphMainPage_calAvailability > tbody > tr > td.calSelected > a {
    color: white !important
}

#ctl00_divStep4 .ActiveButton {
    color: white !important;
}

/* === Gilbert White’s House Footer Style === */

.site-footer {
    background: #f9f8f6;
    color: #222;
    font-size: 14px !important;
    line-height: 1.6;
    padding: 40px 0;
}

    .site-footer a {
        color: #36b6b6;
        text-decoration: none;
        font-weight: 400;
        font-family: "Roboto", "Open Sans", Arial, sans-serif !important;
    }

    .site-footer .widgettitle {
        font-weight: 700;
        text-transform: uppercase;
        font-size: 13px;
        letter-spacing: 0.5px;
        margin-bottom: 1em;
        font-family: "Roboto", "Open Sans", Arial, sans-serif !important;
    }

    .site-footer .textwidget p {
        margin: 0 0 0.7em;
        font-family: "Roboto", "Open Sans", Arial, sans-serif !important;
    }

    .site-footer .textwidget strong {
        font-weight: 600;
    }

    .site-footer .container {
        max-width: 1100px;
        margin: 0 auto;
    }

    .site-footer .row {
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
    }

    .site-footer .col-md-3 {
        flex: 1;
        min-width: 280px;
    }

@media (max-width: 768px) {
    .site-footer {
        text-align: left;
    }

        .site-footer .row {
            flex-direction: column;
        }
}

.calSelected > a {
    color: white !Important;
}


/*MOBILE RESPONSIVE FIXES:*/

.sticky-logo {
    margin-left: 20px;
}

@media (max-width: 1000px) {
    .portal-login-widget {
        margin-top: 0px !Important;
    }
}

#ctl00_cphMainPage_calSession > tbody > tr > td.calSelected > a {
    color: white !important;
}

.sessions-container {
    margin: 0px !important;
}

#ctl00_cphMainPage_divSessionGiftAid {
    padding: 10px;
}

#ctl00_cphMainPage_chkGiftAid2, #ctl00_cphMainPage_chkNoGiftAid2 {
    margin-right: 5px;
}

@media (max-width: 450px) {
    #ctl00_cphMainPage_btnEditBasket {
        font-size: 12px !important;
    }

    .k3_decrement-btn, .k3increment-btn {
        width: 15px !important;
        height: 15px !important;
    }

    div.divSessionTickets .k3_quantity-input {
        gap: 0px !important;
    }

    #ctl00_cphMainPage_dlstUpcoming > tbody > tr > td {
        padding: 1px !important;
    }

    .content td, .k3_quantity, .divExtDesc, div.divSessionTickets, .basketHeader th, .grdSales-desc {
        font-size: 12px !important;
    }

    .k3_decrement-btn svg, .k3increment-btn svg {
        height: 12px !important;
        width: 11px !important;
    }

    button svg {
        padding-bottom: 0 !important;
        margin-bottom: 0.10rem !important;
    }

    #MembershipSteps > li:nth-child(1) {
        padding-right: 5px;
    }

    #ctl00_cphMainPage_Step2Tab, #ctl00_cphMainPage_Step3Tab {
        padding-right: 5px;
        padding-left: 5px;
    }

    #ctl00_cphMainPage_Step4Tab {
        padding-left: 5px;
    }

    #ctl00_cphMainPage_udpBasket > div > div.card-footer > div {
        display: flex !important;
        flex-direction: column;
        gap: 10px;
    }
}

.calendar-container {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 20px !important;
    width: 90% !important;
    max-width: unset !important;
}

#ctl00_cphMainPage_btnViewItems {
    margin-top: 10px;
}

#ctl00_cphMainPage_btnRemoveItems, #ctl00_cphMainPage_btnViewItems {
    background: white;
}

#ctl00_cphMainPage_divMemberPaying {
    margin-bottom: 20px;
}


/*Reskin changes*/

.divMenuSteps a, .InactiveButton, .ActiveButton {
    font-family: "Roboto", sans-serif !important;
    font-size: 18px;
}

.ActiveButton, .InactiveButton, .GenericButton, .K3GenericButton, .btn {
    border: 2px solid #0E376D;
    color: #0E376D !important;
}

#divNoAccContinue a:hover, .ActiveButton {
    color: white !important;
}

    .ActiveButton, .ActiveButton a {
        color: #fff;
        background-color: #0E376D;
    }

.InactiveButton {
    color: #56565a;
}

    .InactiveButton a {
        color: #0E376D !important;
    }

    .InactiveButton a, .ActiveButton a {
        font-size: 18px;
        font-family: 'Crimson Text',serif;
        text-decoration: none;
    }

    .InactiveButton:has(a):hover, .InactiveButton:hover a {
        color: #fff !important;
        background-color: #fc4f59;
    }

    /*Calendar Availability colours*/
/*.calendar-container td.calSelected {
    background-color: #358E95 !important;
}

#ctl00_cphMainPage_calSession > tbody > tr > td.calDays:has(a),
#ctl00_cphMainPage_calSession > tbody > tr > td.calOtherMonth:has(a),
#ctl00_cphMainPage_calSession > tbody > tr > td.calToday:has(a) {
    background-color: #0E376D !important;
}

#ctl00_cphMainPage_calSession > tbody > tr > td.calDays > a,
#ctl00_cphMainPage_calSession > tbody > tr > td.calOtherMonth > a,
#ctl00_cphMainPage_calSession > tbody > tr > td.calToday > a {
    color: white !important;
}
*/
.ActiveButton, .ActiveButton a {
    background-color: #0E376D;
}

.InactiveButton:has(a):hover, .InactiveButton:hover a {
    background-color: #0E376D;
}

.cblTimeSlots .btn-check:checked + .btn, .cblTimeSlots tr:not(:has(td:only-child)) .btn {
    background-color: #006e50 !important;
    color: white !important;
}

.k3_decrement-btn, .k3increment-btn {
    background: #358E95;
}

#ctl00_cphMainPage_divGiftAidBlurb2 > h3, #ctl00_cphMainPage_divGiftAidBlurb2 > p {
    display: none;
}

#divSessionSelDate span {
    background: #0E376D !important;
}

.cblTimeSlots .btn-check:checked + .btn {
    background-color: #358E95 !important;
}

.cblTimeSlots tr:not(:has(td:only-child)) .btn {
    background-color: #0E376D !important;
}