form p:empty {
    display: none;
}
p:has(~ .gravity-theme) {
    margin-bottom: 0;
}
.gform_wrapper p:empty {
    display: none;
}
input[type="search" i]:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-search-cancel-button {
    display: none;
    opacity: 0;
}
input[type="search"]:focus-visible {
    outline: transparent;
}

form:not(.search-form) input, form:not(.search-form) select, form:not(.search-form) textarea {
    border: solid 1px currentColor;
    border-radius: 0;
    accent-color: var(--clr-highlight);
    transition: all 150ms ease;
    font-size: var(--text-md) !important;
    padding: 0.5rem 0.75rem !important;
    border-radius: calc(var(--rounded) / 2);
}
form:not(.search-form) input:focus, form:not(.search-form) select:focus, form:not(.search-form) textarea:focus {
    border-color: var(--clr-highlight);
    outline: none;
}
.gform-field-label { transition: color 150ms ease; }

.gform-field-label:has( ~ .ginput_container input:focus, ~ .ginput_container select:focus, ~ .ginput_container textarea:focus ) {
    color: var(--clr-highlight);
}

textarea { display: block; }

.gfield {
    margin-bottom: 1rem;
}
.gform_wrapper.gravity-theme fieldset.gfield {
    margin-bottom: 0rem;
}
.gchoice { 
    display: flex; align-items: center; flex-wrap: nowrap; gap: 0.5rem; line-height: 1.2; margin-bottom: 0.5rem; 
}
.gchoice label {
    width: 100%;
}
.gchoice label, .gchoice input {
    cursor: pointer;
}
.gchoice br {
    display: none;
}

.ginput_complex br { display: none; }
.ginput_complex label {opacity: 0.9;}
.ginput_complex span {
    margin-bottom: 1rem !important;
}

body .gform_wrapper.gravity-theme .gform-field-label:not(.gform-field-label--type-inline) {
    font-weight: var(--fw-book);
    font-size: var(--text-md);
    margin-bottom: 0.5rem;
    padding-top: 0;
}

body .gform_wrapper.gravity-theme .gform_footer {
    padding: 0;
    margin: 1rem 0 0;
    display: block;
}
.gform_footer p:last-child {
    display: none;
}

form:not(.search-form) input[type*="submit"] {
    background-color: var(--clr-bg);
    color: var(--clr);
    padding-inline: 2rem;
    padding-block: 0.5rem;
    border-radius: 2rem;
    transition: all 150ms ease;
    cursor: pointer;
    /* font-weight: var(--fw-book); */
    min-width: 12rem;
    transition: all 150ms ease;
}
form:not(.search-form) input[type*="submit"]:hover {
    background-color: var(--clr);
    color: var(--clr-bg);
}

form input[type*="file"] {
    border: none;
    padding-left: 0 !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0 !important;
}
input[type="file" i]::-webkit-file-upload-button {
    border-radius: 2rem;
    border: solid 1px currentColor;
    padding-inline: 2rem;
    padding-block: 0.5rem;
    background-color: var(--white);
    margin-right: 1rem;
    cursor: pointer;
    transition: all 150ms ease;
}
input[type="file" i]::-webkit-file-upload-button:hover {
    color: var(--clr-highlight);
    border-color: var(--clr-highlight);
}

.ginput_container_consent {
    display: flex;
    align-items: flex-start;
    flex-wrap: nowrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}
.ginput_container_consent input { line-height: var(--base-line-height); margin-top: 0.25rem } 
.ginput_container_consent label { cursor: pointer; }

body .gform_wrapper .gfield_required {
    color: currentColor;
    opacity: 0.8;
    font-style: normal;
}
body .gform_wrapper .gfield_required .gfield_required_custom, 
body .gform_wrapper .gfield_required .gfield_required_text {
    font-style: normal;
}

body .gform_wrapper .gfield_validation_message, .gform_wrapper .validation_message {
    border-color: var(--warning);
    color: var(--warning);
    background-color: var(--warning-light);
}
body .gform_wrapper .gform_validation_errors {
    border-color: var(--warning);
    color: var(--warning);
    background-color: var(--warning-light);
    border-radius: 0;
    margin-bottom: 2rem;
    box-shadow: none;
}
body .gform_wrapper .gform_validation_errors h2 {
    font-family: var(--ff-sans);
    font-size: var(--fs-h6);
    line-height: var(--base-line-height);
}
.gform_wrapper .gfield_error [aria-invalid=true] {
    border-color: var(--warning) !important;
    color: var(--warning) !important;
}
.gform_wrapper .gfield_error .gfield_repeater_cell label, .gform_wrapper .gfield_error label, .gform_wrapper .gfield_error legend, .gform_wrapper .gfield_validation_message, .gform_wrapper .validation_message, .gform_wrapper [aria-invalid=true]+label, .gform_wrapper label+[aria-invalid=true] {
    color: var(--warning) !important;
}

form .gform_drop_area {
    background-color: transparent;
    border-radius: 1rem;
    border-width: 2px;
    border-style: dashed;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    gap: 0rem;
}
form .gform_drop_area .gform_drop_instructions { margin-bottom: 0;}
form .gform_drop_area br { display: none; }

form .gform_drop_area .gform_button_select_files {
    background-color: transparent;
    border: none;
    font-weight: bold;
    cursor: pointer;
}
/*
form:not(.search-form) input:not([type="checkbox"],[type="radio"]), 
form:not(.search-form) select, 
form:not(.search-form) textarea {
    opacity: 0.8;  
}
*/
body .gform_wrapper.gravity-theme .gfield_checkbox label, 
body .gform_wrapper.gravity-theme .gfield_radio label {
    font-size: var(--text-md);
}
body .gform_wrapper.gravity-theme .field_sublabel_below .ginput_complex {
    margin-bottom: 0;
}
@media screen and (min-width: 420px) {
    body .gform_wrapper.gravity-theme .field_sublabel_below .ginput_complex { 
        flex-wrap: nowrap;
        gap: 1rem;
    }
}

.gfield div.ginput_container--name, .gfield div.ginput_container--name > p {
    width: 100%;
    margin-bottom: 0;
}
.gfield div.ginput_container--name > p {
    display: flex;
    gap: 1rem;
}
.gfield div.ginput_container--name > p .gform-grid-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 0 !important;
}

body .gform_wrapper.gravity-theme .gfield--type-checkbox legend.gform-field-label,
body .gform_wrapper.gravity-theme .gfield--type-radio legend.gform-field-label {
    margin-bottom: 1rem;
}
.gfield.horizontal .gfield_checkbox,
.gfield.horizontal .gfield_radio {
    display: flex;
    flex-wrap: wrap;
    gap: 0rem 1rem;
}

form.footer {
    margin-right: var(--xy-gutter);
    padding-bottom: 0.75rem;
    padding-top: 2rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    border-bottom: 1px solid var(--clr-gray);
}

.gform_wrapper.gravity-theme form.footer label.gfield_label {
    display: none;
}
form.footer .gfield {
    margin-bottom: 0;
}
form.footer input:not([type='submit']) {
    background-color: transparent;
    border-radius: 0;
    border: 0px solid transparent;
    padding-left: 0 !important;
    color: var(--clr-white);
}
form.footer input:not([type='submit'])::placeholder {
    color: var(--clr-yellow);
}
form.footer input[type='submit'],
form.footer input[type='image'] {
    color: var(--clr-yellow);
    min-width: 0;
    margin-bottom: 0 !important;
}
body .gform_wrapper.gravity-theme form.footer .gform_footer {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-left: auto;
}