.tea-contact-form { color: var(--sc-color-text, #25392c); max-width: 52rem; margin-block: 2rem; text-align: left; }
.tea-contact-fields { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.25rem 1.5rem; }
.tea-contact-field { min-width: 0; }
.tea-contact-form label { display: block; font-weight: 600; font-size: 1rem; margin-bottom: .35rem; }
.tea-contact-form :is(input:not([type=checkbox]),textarea) { box-sizing: border-box; width: 100%; min-height: 52px; padding: .8rem 1rem; border: 1px solid var(--sc-color-muted,#526473); border-radius: 3px; background: var(--sc-color-background,#fff); color: var(--sc-color-text,#25392c); font: inherit; }
.tea-contact-form textarea { resize: vertical; }
.tea-contact-wide { grid-column: 1 / -1; }
.tea-contact-form :is(input,textarea,button):focus-visible { outline: 2px solid var(--sc-color-accent,#693a10); outline-offset: 3px; }
.tea-contact-form .tea-contact-error { display: block; color: #9d2020; font-size: .95rem; }
.tea-contact-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.tea-contact-privacy { margin-top: 1.5rem; }
.tea-contact-privacy input { width: 1.2rem; height: 1.2rem; margin-right: .4rem; vertical-align: middle; accent-color: var(--sc-color-accent,#693a10); }
.tea-contact-privacy a { text-decoration: underline; }
/* Feedback persistente: icona, titolo e dettaglio, leggibili anche senza colore. */
.tea-contact-form .tea-contact-status {
 display: grid; grid-template-columns: 2rem minmax(0,1fr); gap: .3rem .85rem;
 margin: 1.5rem 0 1rem; padding: 1.25rem; border: 1px solid #bac6d2;
 border-left: 4px solid var(--sc-color-accent, #693a10); border-radius: 8px;
 background: #f4f7fa; color: #253442; text-align: left; line-height: 1.5;
 scroll-margin-block: 8rem;
}
.tea-contact-status-icon { grid-row: 1 / 3; display: grid; place-items: center; align-self: start; width: 2rem; height: 2rem; border-radius: 50%; background: transparent; border: 2px solid currentColor; font-weight: 700; }
.tea-contact-status-title { display: block; font-size: 1.125rem; }
.tea-contact-status-detail { display: block; font-size: 1rem; font-weight: 400; }
.tea-contact-form .tea-contact-status[data-state=success] { background: #edf7ef; color: #205532; border-color: #76a986; }
.tea-contact-form .tea-contact-status[data-state=error] { background: #fff1ef; color: #832b23; border-color: #cf8a80; }
.tea-contact-status[data-state=pending] .tea-contact-status-icon { border-color: currentColor transparent currentColor currentColor; animation: tea-contact-spin 1s linear infinite; }
.tea-contact-status:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@keyframes tea-contact-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .tea-contact-status[data-state=pending] .tea-contact-status-icon { animation: none; } }
.tea-contact-form button[type=submit] { min-height: 48px; padding: .7rem 1.5rem; border: 0; background: var(--sc-button-bg,var(--sc-color-accent,#693a10)); color: var(--sc-button-ink,var(--sc-color-on-accent,#fff)); font: inherit; font-weight: 700; cursor: pointer; }
.tea-contact-form button:disabled { opacity: .65; cursor: default; }
@media(max-width:600px) { .tea-contact-fields { grid-template-columns: 1fr; } }

.tea-contact-form .tea-contact-status:empty, .tea-contact-error:empty { display: none; }

/* Pagina Contatti: recapiti e fotografia originali, modulo a colonna singola. */
.tea-contact-page .assote-section-inner > p { margin-left: 0; text-align: left; }
.tea-contact-layout { align-items: flex-start; gap: clamp(2rem, 5vw, 4.5rem); margin-top: 2.5rem; }
.tea-contact-info > .wp-block-image { margin: 0 0 2rem; }
.tea-contact-info > .wp-block-image img { display: block; width: 100%; border-radius: 4px; }
.tea-contact-info > :is(h2,h3) { font-size: clamp(1.65rem, 2.4vw, 2rem); line-height: 1.25; }
.tea-contact-info > p { margin-block: 1.25rem; }
.tea-contact-info .wp-block-social-links { justify-content: flex-start; margin-left: 0; }
.tea-contact-page .tea-contact-info .wp-social-link a { color: #fff !important; }
.tea-contact-panel { padding: clamp(1.25rem, 3vw, 2.5rem); background: var(--sc-color-surface); border: 1px solid color-mix(in srgb, var(--sc-color-muted) 25%, transparent); border-radius: 6px; }
.tea-contact-panel > h2 { margin-top: 0; font-size: clamp(1.75rem, 2.6vw, 2.3rem); line-height: 1.25; }
.tea-contact-panel .tea-contact-form { max-width: none; margin: 1rem 0 0; }
.tea-contact-panel .tea-contact-form > p:first-child { margin-top: 0; margin-bottom: 1.75rem; color: var(--sc-color-muted); font-size: 1rem; }
.tea-contact-panel .tea-contact-form small { display: block; margin-top: .35rem; color: var(--sc-color-muted); }
.tea-contact-panel .tea-contact-form label { line-height: 1.4; }
.tea-contact-panel .tea-contact-form button { width: 100%; border-radius: var(--sc-button-radius, 8px); margin-top: .75rem; }
@media(max-width: 900px) {
 .tea-contact-layout { flex-direction: column; }
 .tea-contact-layout > .wp-block-column { flex-basis: auto !important; width: 100%; }
 .tea-contact-info > .wp-block-image { max-width: 32rem; }
}

.entry__content .tea-contact-page .assote-section-inner > :is(h1,p) { max-width: none; margin-inline: 0 !important; text-align: left; }

.tea-contact-form .tea-contact-required { font-size: .8em; vertical-align: super; line-height: 0; }

.tea-contact-fields .tea-contact-newsletter,
.tea-contact-fields .tea-contact-whatsapp { margin-top: 0; }

/* Durante l’invio resta visibile solo il riscontro; i campi conservano i valori. */
.tea-contact-form[data-view=feedback] > :not(.tea-contact-status):not(.tea-contact-reopen) { display: none; }
.tea-contact-form .tea-contact-reopen[hidden] { display: none; }
.tea-contact-form .tea-contact-reopen {
 width: auto; min-height: 44px; padding: .6rem 0; border: 0; background: transparent;
 color: var(--sc-color-text, #25392c); font: inherit; font-weight: 600;
 text-decoration: underline; text-underline-offset: .2em; cursor: pointer;
}
