/* SECTION - Modulo contatti */

.input_wrapper .has_error,
textarea .has_error {
    border-color: red!important;
}

/* .input_wrapper.is_checkbox label.has_error{
    background-color: rgba(255, 0, 0, 0.596);
} */

.form_total_container {
    width: 100%;
    /* border: 1px solid var(--grigiochiaro); */
    /* padding: 2rem; */
    /* background-color: var(--white); */
    /* box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset,
        rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,
        rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; */
}

.form_total_container .form_header {
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    /* border-bottom: 1px solid var(--grigiochiaro); */
    /* max-width: 50%; */
    /* margin-left: auto; */
    /* margin-right: auto; */
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.form_row .input_wrapper {
    width: 100%;
}

.form_row .form_col:not(:last-of-type) {
    margin-bottom: 1rem;
}


.form_row .input_wrapper label {
    font-size: .9rem;
    display: inline-block;
}

.form_row .input_wrapper input, .form_row .input_wrapper textarea {
    width: 100%;
    height: 45px;
    border: 1px solid var(--grigioscuro);
    padding: 0 1rem;
    font-size: 1rem;
    outline: none;
    transition: .2s;
}

.form_row .input_wrapper.is_textarea textarea {
    height: 175px;
}

.form_row .input_wrapper input:focus,
.form_row .input_wrapper textarea:focus {
    border-color: var(--maincolor);
}

.form_row .input_wrapper textarea {
    padding: 1rem;
    resize: none;
}

.form_row .input_wrapper.is_checkbox {
    height: auto;
}

.form_row .input_wrapper.is_checkbox input[type="checkbox"] {
    height: initial;
    width: initial;
    display: none;
}

.form_row .input_wrapper.is_submit {
    margin-bottom: 0;
    height: initial;
}

.form_row .input_wrapper.is_checkbox label {
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

.fake_check {
    width: 40px;
    height: 24px;
    border-radius: 40px;
    background-color: var(--grigiochiaro);
    border: 1px solid var(--grigio);
    position: relative;
    flex-shrink: 0;
    transition: .3s;
}

.fake_check::after {
    content: '';
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    left: 3px;
    translate: 0 -50%;
    background-color: var(--grigio);
    transition: .3s;
    border-radius: 50%;
}

.form_row .input_wrapper.is_checkbox input[type="checkbox"]:checked~.fake_check {
    background-color: var(--maincolor);
    border-color: var(--secondarycolor);
}

.form_row .input_wrapper.is_checkbox input[type="checkbox"]:checked~.fake_check::after {
    background-color: var(--white);
    left: calc(100% - 3px - 16px);
}

.form_row .input_wrapper.is_checkbox label span {
    font-size: 0.75rem;
    line-height: 1.2;
}

.form_row .input_wrapper.is_checkbox label a {
    text-decoration: underline;
}

.form_row .input_wrapper.is_submit button {
    width: 100%;
    padding: 8px 1.2rem;
    background-color: var(--maincolor);
    border-radius: 0;
    font-size: 1rem;
    color: var(--white);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: .3s;
}

.form_row .input_wrapper.is_submit button:hover {
    background-color: var(--secondarycolor);
}

.form_row .input_wrapper ::-webkit-input-placeholder {
    color: transparent;
}

.form_row .input_wrapper ::-moz-placeholder {
    color: transparent;
}

.form_row .input_wrapper :-ms-input-placeholder {
    color: transparent;
}

.form_row .input_wrapper ::-ms-input-placeholder {
    color: transparent;
}

.form_row .input_wrapper ::placeholder {
    color: transparent;
}

/* Vendor prefix per WebKit (Chrome, Safari) */
.form_row .input_wrapper ::-webkit-input-placeholder {
    color: transparent;
}

/* Vendor prefix per Mozilla Firefox */
.form_row .input_wrapper ::-moz-placeholder {
    color: transparent;
    opacity: 1;
}

/* Vendor prefix per Microsoft Edge */
.form_row .input_wrapper :-ms-input-placeholder {
    color: transparent;
}

.form_row .other_checks_space {
    align-items: initial;
    margin-bottom: 1rem;
}

p.extra_msg_form {
    font-size: .85rem;
    bottom: 2rem;
    left: 0;
}

/* !SECTION */