.grid { grid-template-columns: .7fr 1.3fr; align-items: start; gap: 40px; padding-top: 50px; }
.copy { position: sticky; top: 50px; }
.copy h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); }
.registration-group { margin: 24px 0; padding: 24px 0 0; border: 0; border-top: 1px solid var(--line); min-width: 0; }
.registration-group legend { font-size: 16px; color: var(--wine); font-weight: 800; padding: 0; }
.registration-group .hint { margin: 0 0 18px; }
.field select { width: 100%; padding: 13px 14px; border: 1px solid var(--line); border-radius: 13px; background: #fff; font: inherit; color: var(--ink); }
.address-choice { display: flex; gap: 10px; align-items: start; font-size: 12px; line-height: 1.7; margin: 18px 0; }
.address-choice input { accent-color: var(--wine); margin-top: 4px; }
[hidden] { display: none !important; }
@media(max-width:820px) { .grid { grid-template-columns: 1fr; padding-top: 30px; } .copy { position: static; } .field input, .field select { font-size: 16px; } }
