.registration-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.75fr);gap:clamp(32px,5vw,72px);align-items:start}
.registration-paper{padding:clamp(24px,4vw,50px);background:#fcfaf5;border:1px solid var(--line)}
.registration-form fieldset{padding:0;border:0;margin:0 0 28px;min-width:0}
.registration-form legend{font:1.65rem var(--serif);margin-bottom:24px}
.registration-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.registration-field{display:flex;flex-direction:column;gap:9px;font-size:1rem}
.registration-field.full{grid-column:1/-1}
.registration-field input,.registration-field select{font:1rem var(--sans);color:var(--navy);background:#fff;border:1px solid #a79f8e;border-radius:0;min-height:50px;padding:12px;width:100%}
.registration-field input:focus,.registration-field select:focus{outline:2px solid var(--navy);outline-offset:2px}
.registration-field [aria-invalid=true]{border-color:#aa292b;outline:1px solid #aa292b}
.registration-field-error{font-size:.94rem;color:#8c2527;line-height:1.5}
.registration-consent:has(.registration-field-error){flex-wrap:wrap}
.registration-consent>span:not(.registration-field-error){flex:1;min-width:0}
.registration-consent>.registration-field-error{flex-basis:100%;padding-left:32px}
.registration-form .registration-note{font-size:.95rem;line-height:1.6;color:var(--muted);margin:0 0 20px}
.registration-consent{display:flex;gap:12px;align-items:flex-start;line-height:1.5;font-size:1rem;margin-block:20px}
.registration-consent input{accent-color:var(--navy);width:20px;height:20px;flex:0 0 20px;margin-top:2px}
.registration-form button{width:100%;justify-content:center;min-height:52px}
.registration-form button:disabled{opacity:.65;cursor:wait}
.registration-form [data-form-status]{font-size:1rem;color:#8c2527;line-height:1.5;margin-top:18px}
.registration-form [data-form-status]:empty{display:none}
.registration-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.registration-aside{padding-top:10px}
.registration-aside h2{font-size:2rem;margin:0 0 20px}
.registration-aside p{font-size:1rem;line-height:1.7;margin-bottom:24px}
.registration-aside>a{display:block;font-size:1.1rem;margin:12px 0;overflow-wrap:anywhere}
.registration-success h2{font-size:2.1rem;margin-bottom:20px}
.registration-success p{font-size:1.1rem;line-height:1.7}
.registration-success [data-reference]{font-size:1rem;color:var(--muted);margin:24px 0}
@media(max-width:930px){.registration-layout{grid-template-columns:1fr}.registration-aside{padding-top:0}}
@media(max-width:540px){.registration-fields{grid-template-columns:1fr}.registration-field.full{grid-column:auto}.registration-paper{padding:24px 20px}}
