/* Additional form states; loaded after site.css. */
.form-notice{padding:18px 20px;margin:0 0 26px;border-left:3px solid var(--blue);background:#E8EDF1;color:var(--ink);font-size:15px;line-height:1.6}
.form-notice h3{margin:0 0 7px;font:700 23px/1.15 var(--display);color:var(--ink)}
.form-notice p{margin:0}.form-notice a,.form-privacy a,.quote-copy-fallback a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.form-fields>.quote-field{font-size:15px;gap:8px;line-height:1.4}.form-fields .required-mark{font-size:12px;color:var(--body);font-weight:400}
.form-fields input:not([type=checkbox]),.form-fields select,.form-fields textarea{font-size:16px;line-height:1.45;min-height:48px;border-color:#82918F;outline-offset:3px}
.form-fields input:focus-visible,.form-fields select:focus-visible,.form-fields textarea:focus-visible{outline:2px solid var(--link);box-shadow:none;border-color:var(--link)}
.form-fields input::placeholder,.form-fields textarea::placeholder{color:#5C6F75}
.form-fields [aria-invalid=true]{border:2px solid #a3272d}
.form-fields .field-error{color:#9b2026;font-size:13px;font-weight:500;line-height:1.4;min-height:0}
.form-privacy{font-size:14px;line-height:1.65;color:var(--body);margin:23px 0 0;max-width:65ch}
.form-status{font-size:15px;line-height:1.55;min-height:24px;color:var(--ink)}
.form-status[data-kind=success]{color:#235736}.form-status[data-kind=error]{color:#9b2026}
.form-submit{font-size:14px;min-height:48px;cursor:pointer}.form-submit:disabled{opacity:.7;cursor:wait}
.form-submit:focus-visible,.quote-copy-fallback button:focus-visible{outline:3px solid var(--link);outline-offset:4px}
.quote-copy-fallback{padding-top:20px;border-top:1px solid var(--line)}
.quote-copy-fallback[hidden]{display:none!important}
.quote-copy-fallback label{display:block;color:var(--ink);font-size:15px;font-weight:600;margin-bottom:8px}
.quote-copy-fallback textarea{width:100%;padding:12px;border:1px solid #82918F;font:14px/1.6 var(--sans);resize:vertical;margin-bottom:15px;color:var(--ink);background:#fff}
.quote-copy-fallback button{white-space:normal;min-height:48px;text-align:left;color:var(--link);border-color:var(--link)}
.quote-form-panel noscript{font-size:14px;color:var(--body)}
@media(max-width:700px){.quote-form-panel{padding:24px 18px}.form-fields>.quote-field{font-size:15px}.form-notice{padding:16px}.quote-copy-fallback button{width:100%}.quote-form-points{grid-template-columns:1fr}.form-privacy{font-size:14px}}

.form-direct-contact{display:grid;gap:12px;margin-bottom:24px}.form-direct-contact a{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--line);padding:0 0 13px;overflow-wrap:anywhere}.form-direct-contact span{color:var(--body);font-size:13px}.form-direct-contact strong{color:var(--ink);font-size:18px;font-weight:600}.form-direct-contact a:hover strong{text-decoration:underline;text-underline-offset:4px}.form-direct-contact a:focus-visible{outline:3px solid var(--link);outline-offset:4px}.quote-copy-button{margin-top:12px;margin-left:12px;color:var(--link);border-color:var(--link);min-height:48px;font-size:14px;cursor:pointer}.quote-copy-button:focus-visible{outline:3px solid var(--link);outline-offset:4px}@media(max-width:700px){.quote-copy-button{width:100%;margin-left:0}.form-direct-contact strong{font-size:17px}}

.form-secondary-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.form-secondary-actions .quote-copy-button{margin:0;color:var(--link);flex:1 1 180px;padding:10px 14px;white-space:normal;text-align:center}.form-secondary-actions button:disabled{opacity:.7;cursor:wait}

/* Use the same copper/steel identity without weakening form feedback. */
.form-notice{border-left-color:var(--accent)}
.form-fields input:focus-visible,.form-fields select:focus-visible,.form-fields textarea:focus-visible{outline-color:var(--link);border-color:var(--link)}
.form-fields [aria-invalid=true]{border-color:#A3272D}
.form-fields [aria-invalid=true]:focus-visible{outline-color:#A3272D}
.quote-copy-button:hover,.form-secondary-actions .quote-copy-button:hover,.quote-copy-fallback button:hover{color:var(--navy-2);border-color:var(--accent);background:var(--accent)}

/* Keep the first request short; additional project details stay available. */
.form-extra{margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.form-extra summary{padding:16px 0;cursor:pointer;color:var(--ink);font-size:15px;font-weight:600;line-height:1.5}
.form-extra summary span{font-weight:400;color:var(--body);font-size:13px}
.form-extra[open] summary{margin-bottom:4px}
.form-extra .form-fields{padding-bottom:18px}
.form-extra .quote-field{display:flex;flex-direction:column;color:var(--ink);font-weight:700}
.form-extra .quote-field:last-child{grid-column:1/-1}
@media(max-width:700px){.form-extra summary span{display:block}.form-extra .quote-field:last-child{grid-column:auto}}
