/* ES Informatica — pagina Contatti + restyle WPForms */

.contatti-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:44px;align-items:start;padding-top:8px}
.contatti-h{text-align:left;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.4px;margin-bottom:20px}

/* recapiti */
.contatti-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:20px;padding:26px 24px}
.contatti-list{list-style:none;display:flex;flex-direction:column;gap:18px}
.contatti-list li{display:flex;gap:14px;align-items:flex-start}
.contatti-list .ci{flex:none;width:40px;height:40px;border-radius:11px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--blue)}
.contatti-list .ci svg{width:20px;height:20px}
.contatti-list b{display:block;font-size:12px;font-weight:700;letter-spacing:1px;color:#8b99b5;text-transform:uppercase;margin-bottom:3px}
.contatti-list span,.contatti-list a{font-size:14.5px;color:var(--ink-2);line-height:1.45}
.contatti-list a{color:var(--blue);font-weight:600}
.contatti-list a:hover{color:var(--blue-dark)}

/* mappa */
.contatti-map{margin-top:22px}
.contatti-map iframe{width:100%;height:230px;border:1px solid var(--line);border-radius:16px;display:block;filter:saturate(.9)}
.contatti-map__link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:700;color:var(--blue)}
.contatti-map__link svg{width:15px}
.contatti-map__link:hover svg{transform:translateX(3px)}

/* ---------- WPForms restyle (scoped) ---------- */
.contatti-form .wpforms-container{margin:0}
.contatti-form .wpforms-form .wpforms-field{padding:0 0 18px}
.contatti-form .wpforms-field-label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:7px;line-height:1.3}
.contatti-form .wpforms-required-label{color:var(--blue);border:none}
.contatti-form .wpforms-field-sublabel{font-size:12px;color:var(--muted);font-weight:500}
.contatti-form .wpforms-field-description{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.45}
.contatti-form .wpforms-field-description a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}

.contatti-form input[type=text],
.contatti-form input[type=email],
.contatti-form input[type=tel],
.contatti-form input[type=url],
.contatti-form input[type=number],
.contatti-form textarea,
.contatti-form select{
  width:100%;font-family:inherit;font-size:15px;color:var(--ink);
  background:#fff;border:1.5px solid var(--line);border-radius:12px;
  padding:12px 14px;transition:border-color .18s,box-shadow .18s;line-height:1.4;
}
.contatti-form textarea{min-height:130px;resize:vertical}
.contatti-form input:focus,
.contatti-form textarea:focus,
.contatti-form select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(33,88,232,.15)}
.contatti-form ::placeholder{color:#9aa7bf}

/* name field: due colonne */
.contatti-form .wpforms-field-row{display:flex;gap:12px}
.contatti-form .wpforms-field-row .wpforms-field-row-block{flex:1}

/* checkbox privacy */
.contatti-form .wpforms-field-checkbox ul,
.contatti-form ul.wpforms-field-required li{list-style:none;margin:0;padding:0}
.contatti-form .wpforms-field-checkbox li{display:flex;align-items:flex-start;gap:10px}
.contatti-form input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--blue);flex:none}
.contatti-form .wpforms-field-checkbox label{font-size:13.5px;color:var(--ink-2);line-height:1.45}

/* submit — specificità alta: il CSS base di WPForms (div.wpforms-container-full
   .wpforms-form button[type=submit]) vince sui selettori corti e lo lasciava grigio */
.contatti-form .wpforms-submit-container{padding-top:4px}
.contatti-form div.wpforms-container-full .wpforms-form button[type=submit].wpforms-submit,
.contatti-form button.wpforms-submit{
  display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;font-family:inherit;
  background:var(--blue);color:#fff;border:none;border-radius:999px;padding:13px 30px;height:auto;cursor:pointer;
  box-shadow:0 8px 22px -8px rgba(33,88,232,.55);transition:.25s;
}
.contatti-form div.wpforms-container-full .wpforms-form button[type=submit].wpforms-submit:hover,
.contatti-form button.wpforms-submit:hover{background:var(--blue-dark);transform:translateY(-2px)}

/* errori inline */
.contatti-form .wpforms-error{border-color:#e4574c !important}
.contatti-form label.wpforms-error,
.contatti-form .wpforms-error-container{color:#e4574c;font-size:12.5px;font-weight:600;margin-top:6px;display:block}

/* conferma */
.contatti-form .wpforms-confirmation-container-full{
  background:var(--bg-soft);border:1px solid var(--line);border-left:4px solid var(--blue);
  border-radius:14px;padding:22px 24px;color:var(--ink-2);font-size:15.5px;line-height:1.6;margin:0;
}
.contatti-form .wpforms-confirmation-container-full p{margin:0}

@media(max-width:900px){
  .contatti-grid{grid-template-columns:1fr;gap:32px}
}
