.form-layout {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.form-intro h3 {margin-top:2rem;font-size:1.05rem}
.form-intro p {max-width:34rem;line-height:1.7}
.form-contact {min-width:0;padding:clamp(1.25rem,3vw,2.75rem);border:1px solid rgba(255,255,255,.16);border-radius:1.25rem;background:rgba(255,255,255,.025)}
.form-fields {border:0;padding:0;margin:0;min-width:0}
.form-legend {font-size:1.3rem;font-weight:600;margin-bottom:1.75rem;padding:0}
.form-field {display:grid;gap:.65rem;margin-bottom:1.5rem}
.form-field label {font-weight:600;font-size:.95rem}
.form-field label span {font-size:.8rem;font-weight:400;opacity:.72}
.form-field input,.form-field select,.form-field textarea {box-sizing:border-box;width:100%;min-width:0;border:1px solid rgba(255,255,255,.27);border-radius:.5rem;background:#14151b;color:#f5f5f7;padding:.9rem 1rem;font:inherit;line-height:1.5;color-scheme:dark}
.form-field textarea {resize:vertical;min-height:10rem}
.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.form-consent input:focus-visible,.form-retry:focus-visible {outline:2px solid #bdc4ff;outline-offset:3px}
.form-field small {font-size:.8rem;line-height:1.5;opacity:.75}
.form-consent {display:flex;align-items:flex-start;gap:.75rem;font-size:.85rem;line-height:1.65;margin:1.75rem 0;cursor:pointer}
.form-consent input {flex:0 0 auto;width:1rem;height:1rem;margin:.3rem 0 0;accent-color:#bdc4ff}
.form-consent a {text-decoration:underline;text-underline-offset:.2em}
.form-verification {min-width:0;overflow:auto;margin-bottom:1.5rem}
.form-contact button:disabled {opacity:.5;cursor:not-allowed;transform:none}
.form-fields:disabled .form-field,.form-fields:disabled .form-consent {opacity:.6}
.form-status {font-size:.9rem;line-height:1.6;margin:1.25rem 0 0;overflow-wrap:anywhere}
.form-retry {margin-top:1rem;background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:.25em}
.form-retry[hidden] {display:none}
@media(max-width:800px) {.form-layout{grid-template-columns:1fr}.form-intro p{max-width:none}}
@media(max-width:380px) {.form-contact{padding:1rem}.form-verification{margin-left:-.5rem;margin-right:-.5rem}}

.form-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
@media(max-width:600px) {.form-row{grid-template-columns:1fr;gap:0}}
