.form fieldset { display: grid; gap: 18px; border: 0; margin: 0; padding: 0; min-width: 0; }
.form fieldset:disabled { opacity: .55; }
.request-steps { padding-left: 1.3rem; margin: 20px 0 28px; }
.request-steps li { padding-left: .3rem; margin-bottom: 14px; }
.web-brief { display: grid; gap: 16px; padding: 20px; border: 1px solid #bdab83; border-radius: 6px; background: #faf7ef; }
.web-brief[hidden] { display: none; }
.web-brief h4 { font: 700 1.1rem/1.4 Manrope, sans-serif; color: #12384f; }
.web-brief .form-note { margin: 8px 0 0; }
.web-brief a { text-decoration: underline; }
.web-brief select { width: 100%; max-width: 100%; min-width: 0; }
.form, .contact__grid > *, .request-preview { min-width: 0; }
.form .form-note { margin-bottom: 20px; }
.request-preview { border-top: 1px solid #c7b799; margin-top: 28px; padding-top: 24px; }
.request-preview[hidden] { display: none; }
.request-preview h4 { color: #12384f; font-size: 1.2rem; margin-bottom: 12px; }
.request-preview label { display: block; margin-bottom: 8px; }
.request-preview textarea { width: 100%; max-width: 100%; padding: 14px; font: inherit; font-size: .9rem; line-height: 1.6; color: #12384f; background: #fff; border: 1px solid #aaa; border-radius: 4px; resize: vertical; scroll-margin-top: 130px; }
.request-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0; }
.request-actions .btn { white-space: normal; text-align: center; max-width: 100%; }
.form :focus-visible { outline: 3px solid #715522; outline-offset: 3px; }
.form noscript a { text-decoration: underline; }
.form .field input, .form .field textarea, .form .field select { font: inherit; font-size: 16px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
#richiesta { scroll-margin-top: 110px; }
#request-status { color: #12384f; overflow-wrap: anywhere; }
@media (max-width: 480px) { .request-actions .btn { width: 100%; } .web-brief { padding: 14px; } }
