@import url("../../../icomoon/style.css");

/* Container */
.gform_wrapper .gform_body .gform_fields {
    column-gap: var(--wp--preset--spacing--30);
    row-gap: var(--wp--preset--spacing--40);
}

.gform_wrapper .gform_body .gform-grid-row {
    margin-inline: calc(var(--wp--preset--spacing--30) * -1 / 2);
    row-gap: var(--wp--preset--spacing--40);
}

/* Labels */
.gform_wrapper .gfield .gfield_label.gform-field-label,
.gform_wrapper .gfield .gform-field-label {
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--small);
    text-transform: uppercase;
    font-weight: 700;
}

/* Description */
.gform_wrapper .gfield .gfield_description.gfield_consent_description {
    border: none;
    padding: 0;
    color: inherit;
}

/* Inputs */
.gform_wrapper .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]),
.gform_wrapper .gfield .ginput_container textarea,
.gform_wrapper .gfield .ginput_container select {
    display: flex;
    width: 100%;
    height: 50px;
    padding: 0 var(--wp--preset--spacing--40);
    align-items: center;
    align-self: stretch;
    border: 1px solid #D9D9D9;
    border-radius: var(--wp--custom--global--border--radius--base);
    box-shadow: none;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--normal);
    background-color: var(--wp--preset--color--base);
}
.gform_wrapper .gfield.gfield_error .ginput_container input:not([type="checkbox"]):not([type="radio"]),
.gform_wrapper .gfield.gfield_error .ginput_container textarea,
.gform_wrapper .gfield.gfield_error .ginput_container select {
    border-color: var(--wp--preset--color--red);
}
.gform_wrapper .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]):focus,
.gform_wrapper .gfield .ginput_container textarea:focus,
.gform_wrapper .gfield .ginput_container select:focus {
    outline: none;
    border-color: var(--wp--preset--color--primary);
}
.gform_wrapper .gfield .ginput_container textarea {
    padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
    min-block-size: 120px !important;
}
.gform_wrapper .gfield .ginput_container select {
    background: var(--wp--preset--color--base) url(../../../svg/chevron-down.svg) no-repeat right var(--wp--preset--spacing--40) center;
    background-size: 16px;
}
.gform_wrapper .gfield .ginput_container input[type="file"] {
    padding: 0 !important;
}
@media (min-width: 784px) {
    .gform_wrapper .gfield .ginput_container input[type="file"] {
        background: var(--wp--preset--color--base) url(../../../svg/paper-clip.svg) no-repeat right var(--wp--preset--spacing--40) center;
        background-size: 16px;
    }
}
.gform_wrapper .gfield .ginput_container input.datepicker,
.gform_wrapper .gfield .ginput_container input.awp_datetimepicker {
    background: var(--wp--preset--color--base) url(../../../svg/calendar.svg) no-repeat right var(--wp--preset--spacing--40) center;
    background-size: 16px;
}
.gform_wrapper .gfield .gform-grid-col {
    padding-inline: calc(var(--wp--preset--spacing--30) / 2);
}

/* Checkbox */
.gform_wrapper .gfield .ginput_container input[type="checkbox"] {
    width: 32px;
    height: 32px;
    border-radius: 0;
    opacity: 0;
}
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label:before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    border-radius: var(--wp--custom--global--border--radius--base);
    border: 1px solid #D9D9D9;
    position: absolute;
    background-color: var(--wp--preset--color--base);
    top: 0;
    left: 0;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container input[type="checkbox"]:checked + label.gform-field-label:before {
    background-color: var(--wp--preset--color--primary);
    border-color: var(--wp--preset--color--primary);
}
.gform_wrapper .gfield .ginput_container.ginput_container_checkbox div,
.gform_wrapper .gfield .ginput_container {
    position: relative;
}
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label {
    cursor: pointer;
}
.gform_wrapper .gfield .ginput_container input[type="checkbox"] + label.gform-field-label:after {
    content: "\e96e";
    font-family: "icomoon" !important;
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1;
    color: var(--wp--preset--color--base);
    position: absolute;
    width: 32px;
    height: 32px;
    top: 0;
    left: 0;
    display: none;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container input[type="checkbox"]:checked + label.gform-field-label:after {
    display: flex;
}

/* Radio */
.gform_wrapper .gfield .ginput_container input[type="radio"] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    opacity: 0;
}
.gform_wrapper .gfield .ginput_container.ginput_container_radio label.gform-field-label:before {
    content: "";
    display: block;
    background-color: var(--wp--preset--color--base);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid #D9D9D9;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}
.gform_wrapper .gfield .ginput_container.ginput_container_radio input[type="radio"]:checked + label.gform-field-label:before {
    background-color: var(--wp--preset--color--primary);
    border-color: var(--wp--preset--color--primary);
}
.gform_wrapper .gfield .ginput_container.ginput_container_radio div {
    position: relative;
}
.gform_wrapper .gfield .ginput_container:has(input[type="radio"]) label.gform-field-label,
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label {
    cursor: pointer;
    text-transform: none;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: var(--wp--preset--font-size--normal);
}
.gform_wrapper .gfield .ginput_container:has(input[type="radio"]) label.gform-field-label.gfield_consent_label,
.gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label.gfield_consent_label {
    display: block;
    padding-top: 2px;
}
.gform_wrapper .gfield .ginput_container input[type="radio"]:checked + label.gform-field-label,
.gform_wrapper .gfield .ginput_container input[type="checkbox"]:checked + label.gform-field-label {
    font-weight: 500;
}
.gform_wrapper .gfield .ginput_container input[type="radio"] + label.gform-field-label:after {
    content: "";
    background-color: var(--wp--preset--color--base);
    position: absolute;
    width: 16px;
    border-radius: 50%;
    height: 16px;
    top: 8px;
    left: 8px;
    display: none;
}
.gform_wrapper .gfield .ginput_container input[type="radio"]:checked + label.gform-field-label:after {
    display: flex;
}

.gform_wrapper .gfield.gf_list_inline .ginput_container {
    & > .gfield_radio,
    & > .gfield_checkbox {
        display: flex;
        flex-direction: row;
        white-space: pre;
        .gchoice {
            flex: 1;
            padding: 0;
            display: flex;
            & > label {
                margin: 0;
                background-color: var(--wp--preset--color--base);
                border: 1px solid #E6E8E8;
                width: 100%;
                align-items: center;
                justify-content: center;
                padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
                border-radius: var(--wp--custom--global--border--radius--base);
                height: 56px;
                transition: border-color 0.2s ease-in-out;
                &:hover {
                    border-color: var(--wp--preset--color--primary-dark);
                }
                &::before,
                &::after {
                    display: none !important;
                }
            }
            & > input {
                display: none;
                &:checked + label {
                    border: 2px solid var(--wp--preset--color--primary);
                    font-weight: 600;
                }
            }
        }
    }
}

/* Product */
.gform_wrapper .gfield.donation-amount-notice,
.gform_wrapper [class*="gfield_price_description"] .gfield_description,
.gform_wrapper [class*="gfield-price-description"] .gfield_description,
.gfield_price.field_description_below.horizontal-gray .gfield_description, 
.gfield_price.field_description_above.horizontal-gray .gfield_description {
    background-color: #D2DEE4;
    margin: calc(-1 * var(--wp--preset--spacing--20)) auto 0;
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
    border-radius: var(--wp--custom--global--border--radius--base);
    font-size: var(--wp--preset--font-size--small);
    color: var(--wp--preset--color--contrast);
    text-align: center;
    position: relative;
    text-wrap: balance;
    /* &::after {
        content: "";
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-bottom: 8px solid #D2DEE4;
        position: absolute;
        top: -8px;
        left: 50%;
        transform: translateX(-50%);
    } */
} 

.gform_wrapper [class*="gfield-price-description"]:not(.gfield_contains_required):has(.gfield_description) {
    .ginput_container {
        display: none !important;
    }
}


/* Warnings */
.gform_wrapper .gform_heading {
    display: none;
}
.gform_wrapper .gfield .gfield_description.gfield_validation_message {
    color: var(--wp--preset--color--red);
    font-size: var(--wp--preset--font-size--small);
    margin-top: var(--wp--preset--spacing--20);
}
.gform_wrapper .gform_validation_errors {
    border: 0 !important;
    padding: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    margin-bottom: 28px !important;
    padding: var(--wp--preset--spacing--30) !important;
    border: 1px solid var(--wp--preset--color--red) !important;
    border-radius: var(--wp--custom--global--border--radius--base) !important;
    background-color: var(--wp--preset--color--base) !important;
}
.gform_wrapper .gform_validation_errors h2.gform_submission_error {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--30);
    font-size: var(--wp--preset--font-size--normal);
    color: var(--wp--preset--color--contrast);
}
.gform_wrapper .gform_validation_errors h2:before {
    content: '';
    width: 18px;
    min-width: 18px;
    height: 18px;
    background-image: url(../../../svg/alert-triangle.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: 2px;
}
.gform_wrapper .gform_validation_errors .gform-icon {
    display: none !important;
}
.gform_wrapper .gform_validation_errors ol {
    display: block;
    margin: 0;
    list-style: none !important;
    padding: 0 !important;
    color: var(--wp--preset--color--contrast);
    padding-left: 34px !important;
}
.gform_wrapper .gform_validation_errors ol li a {
    color: var(--wp--preset--color--contrast);
    text-decoration: none;
}
.gform_wrapper .gfield .gform-field-label .gfield_required {
    color: var(--wp--preset--color--primary);
}

/* Footer */
body .wp-site-blocks .gform_wrapper .gform_page_footer,
body .wp-site-blocks .gform_wrapper .gform_footer {
    display: flex;
    & > .gform-button-wrapper {
        flex: 1;
        .gform-loader {
            margin: var(--wp--preset--spacing--20) 0;
        }
    }
}

/* Submit */
body .wp-site-blocks .gform_wrapper form .gform-button-wrapper {
    position: relative;
    display: flex;
    color: var(--wp--preset--color--base);
    &::after {
        content: "\e91c";
        font-family: "icomoon" !important;
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        right: 24px;
        top: calc(50% - 16px);
        font-size: var(--wp--preset--font-size--normal);
        transition: all 0.3s ease-in-out;
        pointer-events: none;
    }
    &:hover::after {
        transform: translateX(5px);
    }
    &:has(.gform_previous_button) {
        color: var(--wp--preset--color--contrast);
        &::after {
            right: auto;
            left: 24px;
            transform: rotate(180deg);
        }
        &:hover::after {
            transform: rotate(180deg) translateX(5px);
        }
    }
}

body .wp-site-blocks .gform_wrapper form[id*="gform_"] .gform-button-wrapper .button,
body .wp-site-blocks .gform_wrapper form[id*="gform_"] .gform-button-wrapper input[type="submit"].button {
    width: 100%;
    flex: 1;
    background-color: var(--wp--preset--color--primary);
    border-radius: var(--wp--custom--global--border--radius--button);
    border-color: var(--wp--preset--color--primary);
    border-width: 2px;
    color: var(--wp--preset--color--base);
    font-family: var(--wp--custom--global--typography--font-family--button);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 700;
    line-height: 1.1;
    padding-top: 18px;
    padding-right: 64px;
    padding-bottom: 18px;
    padding-left: 32px;
    text-decoration: none;
    &.gform_previous_button {
        background-color: var(--wp--preset--color--base);
        border-color: var(--wp--preset--color--base);
        color: var(--wp--preset--color--contrast);
        padding-left: 64px;
        padding-right: 32px;
    }
}

body .wp-site-blocks .gform_wrapper form[id*="gform_"] .gform-button-wrapper input[type="submit"].button {
    background-color: var(--wp--preset--color--accent);
    border-color: var(--wp--preset--color--accent);
    color: var(--wp--preset--color--base);
}


/* Succes */
.gform_wrapper .gform_confirmation_message {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: var(--wp--preset--font-size--normal);
    color: var(--wp--preset--color--primary);
}
.gform_wrapper .gform_confirmation_message:before {
    content: "\e96d";
    font-family: "icomoon" !important;
    font-size: 24px;
    line-height: 1;
}

/* Progress bar */
.gform_wrapper .gf_progressbar_wrapper {
    .gf_progressbar_title {
        color: var(--wp--preset--color--contrast);
        font-size: var(--wp--preset--font-size--small);
        text-transform: uppercase;
        font-weight: 700;
        margin-bottom: var(--wp--preset--spacing--20);
    }
    .gf_progressbar {
        padding: 6px;
        border-radius: var(--wp--custom--global--border--radius--base);
        background-color: var(--wp--preset--color--base);
        border: 1px solid #E6E8E8;
    }
    .gf_progressbar_percentage,
    .gf_progressbar_percentage.percentbar_blue {
        background-color: var(--wp--preset--color--primary);
    }
}

input.gchoice_other_control:disabled {
    display: none !important;
}

.gform_wrapper .gfield .ginput_container.ginput_container_radio .gfield_radio div:has(.gchoice_other_control) {
    display: block;
    flex-wrap: wrap;
    align-items: center;
}

.gform_wrapper .gfield .ginput_container.ginput_container_radio .gfield_radio div:has(.gchoice_other_control) label {
    display: inline-block;
    margin-top: 3px;
    margin-left: 10px;
}

input.gchoice_other_control {
    display: block;
    margin-top: var(--wp--preset--spacing--20) !important;
}

.footer-newsletter-form_wrapper {
    position: relative;
    display: flex;
    flex-direction: column;

    .gform_validation_errors {
        order: 999;
        margin: var(--wp--preset--spacing--20) 0 0 !important;
        border-color: var(--wp--preset--color--base) !important;
    }
}

.footer-newsletter-form {
    position: relative;
    width: 100%;

    .gform_wrapper & .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]) {
        display: block;
        border: 1px solid var(--wp--preset--color--midtone);
        padding-right: calc(var(--newsletter-submit-button-width) + var(--wp--preset--spacing--20) + var(--wp--preset--spacing--20));

        &::placeholder {
            color: var(--wp--preset--color--contrast);
            opacity: .35;
        }
    }
}

@media (min-width: 1055px) {
    .footer-newsletter-form_wrapper form .gform_footer {
        margin: 0;
    }
    .footer-newsletter-form {
        .gform_wrapper & .gfield .ginput_container input:not([type="checkbox"]):not([type="radio"]) {
            padding: 0 40% 0 var(--wp--preset--spacing--50);
            border-radius: 40px;
            height: 72px;
            margin-bottom: 0;
        }
        body .wp-site-blocks .gform_wrapper & .gform-button-wrapper { 
            position: absolute;
            right: 6px;
            top: 6px;
        }
    }
}

input::placeholder {
  opacity: .7;
}

.gform_wrapper .ginput_complex.ginput_container.ginput_container_address {
    margin: calc(var(--wp--preset--spacing--40) / 2) calc(-1 * var(--wp--preset--spacing--40) / 2) calc(-1 * var(--wp--preset--spacing--40) / 2) !important;
}

.gform_wrapper .ginput_complex.ginput_container.ginput_container_address span {
    padding: calc(var(--wp--preset--spacing--40) / 2) !important;
}

.gform_wrapper .ginput_complex.ginput_container.ginput_container_address span label {
    color: var(--wp--preset--color--contrast) !important;
    font-size: var(--wp--preset--font-size--small) !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    margin-bottom: var(--gf-label-space-primary);
}

@media (max-width: 782px) {
    .gform_wrapper .gfield.gf_list_inline .ginput_container {
        & > .gfield_radio, & > .gfield_checkbox {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            justify-content: space-between;
            .gchoice {
                flex: 1 1 auto;
                min-width: 0;
            }
        }
    }
    body .wp-site-blocks .gform_wrapper .gform_page_footer, body .wp-site-blocks .gform_wrapper .gform_footer {
        flex-direction: column;
         & > .gform-button-wrapper:has(.gform_previous_button) {
            order: 2;
        }
        & > .gform-button-wrapper:has(.gform_next_button, ) {
            order: 1;
        }
    }
    .gform_wrapper .gfield .ginput_container:has(input[type="radio"]) label.gform-field-label:has(a), .gform_wrapper .gfield .ginput_container:has(input[type="checkbox"]) label.gform-field-label:has(a) {
        display: block;
    }
}

/* Footer */
footer .gform_wrapper .gform_confirmation_message,
footer .gform_wrapper .gfield .gfield_description.gfield_validation_message {
    color: var(--wp--preset--color--base);
}