form {
    --form-main-color: #0E2A4E;
    --form-error-bg-color: #ff00004a;
    --form-row-gap: 0.5rem;
    --form-label-font-size: 14px;
    --form-label-pb: 8px;
    --form-elements-font-size: 14px;
    --form-elements-radius: 4px;
    --form-submit-font-size: 15px;
    --form-submit-w: 150px;
    --form-submit-h: 40px;
    --form-submit-color: white;
    --form-submit-bg: var(--form-main-color);
    --form-submit-hover-bg: 15px;
    --form-submit-hover-color: var(--form-main-color);
    --form--input-bg-focus: white;
    margin-block: 32px;
}
p{
    margin:0
}

label{
    font-weight: 600;
    padding-bottom:var(--form-label-pb, 16px);
    font-size: var(--form-label-font-size);
}
label:not(.ignore-form-main-color),
.recaptcha-thing{
    color: var(--form-main-color);
}

.recaptcha-thing{
    font-size: 14px;
}

.necessary-field{
    color:red;
}

/**** Privacy ****/

.wpcf7-list-item:last-of-type > label{
    display:inline-flex;
    align-items: center;
}
/**Privacy**/
span.wpcf7-list-item:last-of-type{
    margin:0;
}

/**** FINE PRIVACY ****/



/**** Errori ****/
.wpcf7-not-valid-tip{
    margin-bottom: 0;
    background:var(--form-error-bg-color, none);
    padding:8px 16px;
    border-radius: var(--form-elements-radius, 0);
}
/**** FINE ERRORI ****/


/***CAMPI DI INPUT***/
input,textarea,select{
    font-size:var(--form-elements-font-size, inherit) !important;
    margin-block:0.5rem;
}

input:not([type="submit"],[type="checkbox"]), textarea, select{
    border-radius:var(--form-elements-radius, 0);
    padding:.5rem;
    border-color: var(--form-main-color);
}

input[type="file"]{
    border:none !important;
}


input:not([type="submit"],[type="checkbox"]):focus,
input:not([type="submit"],[type="checkbox"]):active,
textarea:focus,
textarea:active,
select:focus,
select:active {
    background: var(--form--input-bg-focus)
}

/**** FINE CAMPI DI INPUT ****/




/**** SUBMIT ****/
input[type="submit"]{

    transition: all 300ms ease;
    cursor: pointer;
    width:var(--form-submit-w, 150px);
    border-radius: 8px;
    color: var(--form-submit-color);
    background: var(--form-submit-bg);
    font-size: var(--form-submit-font-size, inherit);
    font-weight: 700;
    height:var(--form-submit-h, 57px);

}

input[type="submit"]:hover{
    background: var(--form-submit-hover-bg, inherit);
    color: var(--form-submit-hover-color, inherit);
}

/**** FINE SUBMIT ****/



/**** LAYOUT ****/

form .row{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px, auto));
    gap: 0.5rem;

}

form .row--full{
    grid-column: 1/-1;

}

form .row--half{
    grid-column: span 2;
}

form .row br{
    display: none;
}

/**** FINE LAYOUT****/