/* =============================== */
/*  PAGE CONTACT GENERAL STYLES
/* =============================== */
.form-wrapper {
    position: relative;
    padding: 0 min(10%, 80px);
    z-index: 1;
    max-width: 500px;
}

.form-title {
    text-align: center;
    margin-bottom: 20px;
    font-size: 3rem;
    color: var(--red);
}

 input[type="text"],
 input[type="email"],
 input[type="tel"],
 textarea {
    color: #fff;
    width: 100%;
    min-height: 60px;
    border: 2px solid #FFF;
    background: radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0.25) 0%, rgba(68, 65, 65, 0.25) 100%);

    box-shadow: 0 0 15px 0 rgba(255, 255, 255, 0.50);
}


.form-wrapper label,
.form-wrapper p {
    font-family: hackney, sans-serif;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5rem;
    text-align: center;
}

.form-wrapper label {
    margin-bottom: 3px;
}


input, textarea {
    font-family: myriad-pro, sans-serif;
    font-size: 1rem;
    border: 2px solid #ffffff;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    transition: 0.3s ease-in-out;
}


textarea {
    box-sizing: border-box;
    resize: vertical;
    min-height: 100px;
}

input:focus,
textarea:focus {
    outline: none;
    border: 2px solid #ffffff;
    box-shadow: 0 0 25px 0 rgba(255, 255, 255, 0.90);
}

.text-remaining {
    text-align: left !important;
    margin-top: -10px;
}

.end-date h4, 
.before-start h4 {
    font-family: "cheddar-gothic-rough", sans-serif;
    margin-top: 20px;
    padding: 20px;
    border: 2px solid #fff;
    border-radius: 10px;
    box-shadow: 0 0 20px 0 rgba(255, 255, 255, 0.5);
    color: #fff;
    font-size: 2rem;
    margin-bottom: 50px;
    text-align: center;
}

/* ============================================================ */
/* PAGE AGE GATE ============================================================ */

.promo-code-wrapper input {
    font-weight: 600;
}

.age-gate-button {
    color: #fff;
    font-weight: 600;
    min-width: 100px;
    padding: 7px 10px;
    border: 2px solid #FFF;
    background: radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0.25) 0%, rgba(68, 65, 65, 0.25) 100%);

    box-shadow: 0 0 15px 0 rgba(255, 255, 255, 0.50);
    transition: 0.3s ease-in-out;

    &:hover {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.50) 0%, rgba(100, 95, 95, 0.50) 100%);
        box-shadow: 0 0 25px 0 rgba(255, 255, 255, 0.90);
    }
}

#age-gate-no {
    background-color: #fff;
    color: var(--navy-blue);
}

/* ============================================================ */
/* PAGE SUBMISSION FORM ============================================================ */

/* ============================================================ */
/* SECTION ACCEPTANCES ============================================================ */
.consents {
    margin-top: 10px;
    padding-left: 15px;

    & label {
        font-family: myriad-pro, sans-serif;
        font-size: 1rem;
        line-height: 1.1rem;
        text-align: left;
        position: relative;
    }

    & a {
        text-decoration: underline;
        text-transform: uppercase;
    }

    & input[type='checkbox'] {
        position: absolute;
        left: -35px;
        top:3px;
        border: 1px solid #fff;
        border-radius: 5px;
        width: 10px;
        height: 10px;
        appearance: none;
        background: transparent !important;
        transition: 0.3s ease-in-out;

        &:checked {
            box-shadow: 0 0 15px 0 rgba(255, 255, 255, 0.70);
        }

        &:checked::before {
            content: "✓";
            color: #fff;
            font-size: 25px;
            position: absolute;
            top: -6px;
            left: 0;
            width: 100%;
            height: 100%;
        }
    }
}

.form-acceptances .wpcf7-list-item {
    margin: 0;
}


.consents p {
    font-size: 0.8rem;
    line-height: 1rem;
}

/* Hidden elements */
.read-more-content {
    display: none;
}

.consent.is-expanded .read-more-content {
    display: inline;
}

.read-more {
    display: block;
    cursor: pointer;
    font-weight: 600;
    font-style: italic;
}

/* ============================================================ */
/* SECTION SUBMIT BUTTON ============================================================ */

.cta-form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: center;

    & p {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    & input {
        background: linear-gradient(90deg, #E30000 12%, #E6AE17 100%);
        background-size: 300%;
        background-position: 0 100%;
        width: 288px;
        aspect-ratio: 288/55;
        color: #fff;
        border: none;
        font-family: hackney, sans-serif;
        font-size: 2.3rem;
        transition: 0.4s ease-in-out;
        position: relative;
        overflow: visible;
    }
}

.cta-form-button {
    display: inline-block;
    position: relative;
    isolation: isolate;
    overflow: visible;
}

.cta-form-button::before {
    content: "";
    position: absolute;
    inset: -12px;

    background: url('../images/cta-rectangle.webp') no-repeat center;
    background-size: 100% 100%;

    opacity: 0.6;
    z-index: 1;
    pointer-events: none;
    transition: opacity 0.3s ease-in-out;
}

.cta-form-button:hover::before {
    opacity: 1;
}

/* Keep CF7's loading spinner from widening the wrapper. */
.cta-form-button .wpcf7-spinner {
    position: absolute;
    top: 50%;
    left: calc(100% + 16px);
    margin: 0;
    transform: translateY(-50%);
}

.wpcf7-spinner {
    display: none !important;
}





/* ============================================================ */
/* SECTION ERROR MESSAGES ============================================================ */

.wpcf7-not-valid-tip {
    /* font-family: myriad-pro, sans-serif; */
    font-size: 1.2rem;
    line-height: 1.2rem;
    color: #fff;
    background-color: rgb(185, 0, 0);
    box-shadow: 0 0 15px 0 rgba(158, 20, 20, 0.5);
    padding-inline: 10px;
    margin-top: 2px;
    border-radius: 5px;

}

.wpcf7-response-output {
    background-color: #ffb027;
    color: #000;
    border-radius: 5px;
}

.wpcf7 form.sent .wpcf7-response-output {
    background-color: #0f8828;
    border-color: #0f8828 !important;
    color: #fff;
    border-radius: 5px;
}
