﻿/* Version: 2026.05.06 */

.tacts-box {
width: 64%;
}

.tacts-intro {
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
gap: 2vw;
}

.tacts-intro-left {
flex: 3;
}

.tacts-intro-right {
position: relative;
flex: 1;
aspect-ratio: 1;
}

.tacts-intro-right::before {
content: "";
position: absolute;
inset: 0;
background-image: url('/images/adamo.svg');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
opacity: 0.75;
pointer-events: none;
}

form {
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
}

fieldset {
width: 100%;
border: none;
margin: 2vh 0;
padding: 0;
}

legend {
width: 100%;
display: block;
text-align: center;
font-size: 1.25rem;
color: #000080;
margin-bottom: 2vh;
}

.form-row {
width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.form-row label {
width: 30%; /* stessa dimensione per tutte */
flex-shrink: 0;
}

.flex-max {
width: 69%;
}

.flex-mid {
width: 35%;
}

.flex-min {
width: 18%;
}

.form-submit {
width: 100%;
    display: flex;
    align-items: center;
margin-bottom: 1rem;
}

.form-sub1 {
flex: 3;
}

.form-sub2 {
flex: 1;
}

form:invalid button[type="submit"] {
opacity: 0.5;
pointer-events: none;
}

input,
textarea,
button {
padding: 0.25rem;
border: 1px solid #777;
border-radius: 0.25rem;
transition: all 0.2s ease;
}

input:required:invalid,
textarea:required:invalid {
border-color: #b00020;
background-color: #fff4f6;
box-shadow: 0 0 0 3px rgba(176, 0, 32, 0.15);
}

input:required:valid,
textarea:required:valid {
border-color: #005fcc;
background-color: #f2f8ff;
box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.15);
}