/* Layout del form con verifica Turnstile e messaggi nella stessa sezione. */
.contact .form{position:absolute;left:calc(669 * var(--s));top:calc(510 * var(--s));width:calc(582 * var(--s));display:flex;flex-direction:column;align-items:stretch;gap:12px}
.contact .form input{position:static;left:auto;top:auto;width:100%;height:max(44px,calc(55 * var(--s)));padding:0 22px;font-size:max(14px,calc(14 * var(--s)))}
.contact .form .btn--form{position:static;left:auto;top:auto;align-self:center;width:max(180px,calc(208 * var(--s)));height:max(44px,calc(55 * var(--s)));font-size:max(12px,calc(16 * var(--s)))}
.form__turnstile{width:100%;min-height:65px}
.form__status{min-height:1.6em;font:400 14px/1.6 var(--sans);text-align:center;overflow-wrap:anywhere}
.form__status[data-state=error]{color:#a42424}
.form__status[data-state=success]{color:var(--olive)}
.form__status:focus{outline:none}
.form .btn:disabled{opacity:.55;cursor:not-allowed}
.form input[aria-invalid=true]{border-color:#a42424}
.form__noscript{font:400 14px/1.6 var(--sans);text-align:center}
@media(min-width:1024px){.contact{min-height:calc(510 * var(--s) + 390px)}}
@media(max-width:1023.98px){.contact{min-height:calc(423 * var(--s) + 450px)}.contact .form{left:50%;top:calc(423 * var(--s));width:min(calc(100% - 48px),max(300px,calc(570 * var(--s))));transform:translateX(-50%)}.contact .form input{height:44px;font-size:16px}.contact .form input::placeholder{font-size:13px}.contact .form .btn--form{height:44px;font-size:12px}}

/* Ringraziamento al posto del form dopo l'invio riuscito. */
.contact .form[hidden],.contact .form-thankyou[hidden]{display:none}
.contact .form-thankyou{position:absolute;left:calc(669 * var(--s));top:calc(510 * var(--s));width:calc(582 * var(--s));display:flex;flex-direction:column;align-items:center;gap:16px;padding:36px 28px;border:1px solid var(--stone);border-radius:16px;background:#f6f5f2;color:var(--olive);text-align:center}
.form-thankyou__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--olive);color:var(--white)}
.form-thankyou__icon svg{width:32px;height:32px}
.form-thankyou__title{margin:0;font:500 clamp(30px,3vw,42px)/1.2 var(--serif)}
.form-thankyou__message{font:400 16px/1.65 var(--sans)}
.form-thankyou:focus{outline:none}
@media(max-width:1023.98px){.contact .form-thankyou{left:50%;top:calc(423 * var(--s));width:min(calc(100% - 48px),max(300px,calc(570 * var(--s))));transform:translateX(-50%);padding:28px 20px}}

/* Presa visione della privacy obbligatoria. */
.form__privacy{display:flex;align-items:flex-start;gap:10px;font:400 14px/1.6 var(--sans);color:var(--black)}
.contact .form .form__privacy input[type=checkbox]{appearance:auto;-webkit-appearance:auto;flex:0 0 18px;width:18px;height:18px;min-height:0;margin:3px 0 0;padding:0;border-radius:0;accent-color:var(--olive)}
.form__privacy label{flex:1}
.form__privacy a{text-decoration:underline;text-underline-offset:3px}
.form__privacy input:focus-visible{outline:2px solid var(--olive);outline-offset:3px}
@media(min-width:1024px){.contact{min-height:calc(510 * var(--s) + 440px)}}
@media(max-width:1023.98px){.contact{min-height:calc(423 * var(--s) + 500px)}}
