/* Contact and quote-request journey */
.contact-form-wrap{padding:clamp(24px,3.2vw,38px)}
.request-routing{margin-bottom:22px!important;border-radius:6px!important}
.request-form-guide{margin-bottom:20px!important;border-radius:6px!important}
.request-mode{margin:0 0 24px;padding:0;border:0}
.request-mode>legend{margin:0 0 10px;font-family:var(--font-mono);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-primary-dark)}
.request-mode-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.request-mode-option{position:relative;display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:start;min-height:92px;padding:16px;border:1px solid var(--rule);border-radius:6px;background:var(--paper-b);cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.request-mode-option:hover{border-color:rgba(52,133,183,.48)}
.request-mode-option:has(input:checked){border-color:var(--blue-primary);background:#fff;box-shadow:0 0 0 3px rgba(52,133,183,.1)}
.request-mode-option input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--blue-primary)}
.request-mode-copy strong{display:block;font-family:var(--font-sans);font-size:14px;color:var(--ink)}
.request-mode-copy span{display:block;margin-top:5px;font-family:var(--font-sans);font-size:12px;line-height:1.45;color:var(--muted)}
.technical-fields{margin:4px 0 18px;padding:20px 20px 2px;border-left:3px solid var(--blue-primary);background:linear-gradient(90deg,rgba(173,210,212,.2),rgba(255,255,255,0))}
.technical-fields[hidden]{display:none}
.technical-fields-title{margin:0 0 17px;font-family:var(--font-sans);font-size:13px;font-weight:650;color:var(--blue-primary-dark)}
.field-optional{margin-left:6px;color:var(--muted);font:500 9px var(--font-mono);letter-spacing:.04em;text-transform:uppercase}
.form-optional-details{margin:2px 0 16px;border:1px solid var(--rule);border-radius:5px;background:var(--paper-b)}
.form-optional-details summary{padding:13px 15px;font-family:var(--font-sans);font-size:13px;font-weight:650;color:var(--blue-primary-dark);cursor:pointer}
.form-optional-details[open] summary{border-bottom:1px solid var(--rule)}
.form-optional-body{padding:16px 16px 0}
.form-optional-body .form-attachment-note{margin-top:-9px}
.form-prepared-confirmation{display:grid;grid-template-columns:34px 1fr;gap:13px;align-items:start;margin-top:18px;padding:16px;border:1px solid rgba(52,133,183,.3);border-left:4px solid var(--blue-primary);border-radius:5px;background:rgba(173,210,212,.18)}
.form-prepared-confirmation[hidden]{display:none}
.form-prepared-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--blue-primary);color:#fff;font-family:var(--font-sans);font-size:16px;font-weight:700}
.form-prepared-copy strong{display:block;font-family:var(--font-sans);font-size:14px;color:var(--ink)}
.form-prepared-copy span{display:block;margin-top:4px;font-family:var(--font-sans);font-size:13px;line-height:1.5;color:var(--muted)}
.form-prepared-copy a{display:inline-block;margin-top:8px;font-family:var(--font-sans);font-size:12px;font-weight:700;color:var(--blue-primary);text-decoration:underline;text-underline-offset:4px}
.form-status-link{font-weight:700;color:var(--blue-primary);text-decoration:underline;text-underline-offset:3px}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"],.field select[aria-invalid="true"]{border-color:#a32626;box-shadow:0 0 0 3px rgba(163,38,38,.08)}
@media(max-width:620px){.request-mode-choices{grid-template-columns:1fr}.request-mode-option{min-height:0}.technical-fields{padding:17px 14px 1px}.form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.request-mode-option{transition:none}}
