.register-page { background: #f5ead9; }
.register-hero { min-height: 390px; }
.registration-section { position: relative; overflow: hidden; background: #f5ead9; }
.registration-section::before { content: ""; position: absolute; width: 420px; height: 420px; left: -210px; bottom: -230px; border: 1px solid rgba(183,122,43,.16); border-radius: 50%; }
.registration-layout { position: relative; display: grid; grid-template-columns: .86fr 1.14fr; gap: 8%; align-items: center; }
.registration-copy { padding-block: 34px; }
.registration-copy .eyebrow { color: #a86e3d; }
.registration-copy h2 { max-width: 610px; margin: 12px 0 30px; font: 700 clamp(40px,5vw,64px)/1.08 "Manrope", sans-serif; letter-spacing: -.05em; }
.registration-copy > p { max-width: 630px; color: #81746a; font-size: 17px; line-height: 1.85; }
.registration-note { display: flex; align-items: center; gap: 18px; max-width: 520px; padding-top: 28px; margin-top: 34px; border-top: 1px solid #d8cbbc; }
.registration-note > span { flex: 0 0 auto; color: #bd7d42; font: 800 28px/1 "Manrope",sans-serif; }
.registration-note p { margin: 0; color: #62564e; font-size: 15px; line-height: 1.65; }
.registration-form { position: relative; padding: 58px 56px 50px; background: rgba(255,255,255,.96); border: 1px solid rgba(91,65,46,.08); box-shadow: 0 24px 70px rgba(67,43,27,.1); }
.registration-form::before { content: ""; position: absolute; top: 0; left: 0; width: 90px; height: 4px; background: #bd7d42; }
.registration-form-heading { margin-bottom: 36px; }
.registration-form-heading > span { color: #a86e3d; font-size: 13px; font-weight: 700; line-height: 1.3; letter-spacing: .1em; text-transform: uppercase; }
.registration-form-heading h3 { margin: 7px 0 0; font: 600 26px/1.3 "Manrope", sans-serif; letter-spacing: -.025em; }
.registration-fields { display: grid; grid-template-columns: 1fr 1fr; column-gap: 34px; row-gap: 25px; }
.register-field { display: grid; gap: 3px; color: #8f8781; font-size: 14px; }
.register-field > span { transition: color .2s ease; }
.register-field input, .register-field select { width: 100%; height: 42px; padding: 0; border: 0; border-bottom: 1px solid #8f969b; border-radius: 0; outline: 0; color: #2b231f; background: transparent; font: 500 15px "DM Sans",sans-serif; transition: border-color .2s ease; }
.register-field input:focus, .register-field select:focus { border-bottom-color: #bd7d42; }
.register-field:focus-within > span { color: #8f5c2e; }
.register-field select { appearance: none; padding-right: 24px; cursor: pointer; }
.register-select { position: relative; }
.register-select::after { content: "⌄"; position: absolute; right: 2px; bottom: 12px; color: #887d74; pointer-events: none; }
.field-wide { grid-column: 1 / -1; }
.register-submit { display: flex; justify-content: center; gap: 14px; min-width: 190px; margin: 40px auto 0; border: 0; cursor: pointer; }
.registration-status { padding: 13px 16px; margin: 20px 0 0; color: #72502e; background: #f7ead7; border-left: 3px solid #bd7d42; font-size: 14px; line-height: 1.5; }
.registration-status[hidden] { display: none; }
.register-page footer { margin-top: 0; }

@media (max-width: 980px) {
    .registration-layout { grid-template-columns: 1fr; gap: 52px; }
    .registration-copy { max-width: 760px; padding-block: 0; }
    .registration-form { max-width: 820px; }
}

@media (max-width: 620px) {
    .register-hero { min-height: 350px; }
    .registration-copy h2 { font-size: 39px; }
    .registration-copy > p { font-size: 15px; }
    .registration-form { padding: 40px 24px 36px; }
    .registration-fields { grid-template-columns: 1fr; gap: 22px; }
    .field-wide { grid-column: auto; }
    .register-submit { width: 100%; }
}
