/* Registration screens use the public site's charcoal, red and gold identity. */
:root{--reg-ink:#111820;--reg-red:#c91425;--reg-gold:#ffcc00;--reg-paper:#f4f3ef;--reg-muted:#666e72;--reg-line:#dcdedb;--reg-sans:'DM Sans',Arial,sans-serif;--reg-display:'Manrope','DM Sans',sans-serif}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--reg-paper);color:var(--reg-ink);font:16px/1.65 var(--reg-sans);overflow-x:hidden}
body.registration-page{min-height:100vh;display:flex;flex-direction:column}
:focus-visible{outline:3px solid #9b7800!important;outline-offset:3px}
main{min-height:calc(100vh - 150px);padding:48px 0 72px;background:linear-gradient(180deg,#fff 0,#fff 190px,var(--reg-paper) 190px)}
.registration-page main{flex:1;min-height:0}
main>.container{width:min(1180px,calc(100% - 48px));margin:auto}
#about{padding:0;overflow:visible}
.registration-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:0 0 27px;border-bottom:1px solid var(--reg-line);margin-bottom:28px}
.registration-heading .eyebrow{margin:0 0 6px;color:var(--reg-red);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.registration-heading h1{margin:0;font:600 clamp(34px,4vw,48px)/1.13 var(--reg-display);letter-spacing:-.05em;color:var(--reg-ink)}
.registration-heading p{max-width:430px;margin:0;color:var(--reg-muted);font-size:15px}
.registration-card{padding:clamp(20px,3vw,38px);background:#fff;border:1px solid #e2e4e2;border-top:4px solid var(--reg-gold);box-shadow:0 12px 34px #1118200c}
.registration-card form{margin:0}
.registration-card hr{height:1px;margin:23px 0;border:0;background:var(--reg-line);opacity:1}
.registration-card .row{--bs-gutter-x:1.25rem;--bs-gutter-y:.75rem}
.registration-card .form-group{min-width:0;margin:0 0 8px}
.registration-card label{display:block;margin:0 0 6px!important;color:#313a40;font-size:13px;font-weight:700;line-height:1.45}
.registration-card .form-group>label:has(+ input[required])::after,.registration-card .form-group>label:has(+ select[required])::after,.registration-card .form-group>label:has(+ .phone-field .phone-local[required])::after{content:' *';color:var(--reg-red)}
.registration-card label h6,.registration-card h6{margin:0;font:700 16px/1.4 var(--reg-display);color:var(--reg-ink)}
.registration-card label small,.registration-card small{color:var(--reg-muted)!important;font:400 13px/1.5 var(--reg-sans)}
.registration-card .form-control,.registration-card select.form-control,.registration-card input.form-control,.registration-card textarea.form-control{display:block;width:100%;min-height:46px;margin:0;padding:10px 12px;border:1px solid #c9cecc;border-radius:2px;background-color:#fff;color:var(--reg-ink);font:400 15px/1.5 var(--reg-sans);box-shadow:none;transition:border-color .15s,box-shadow .15s}
.registration-card .phone-input-group{display:flex;flex-wrap:nowrap}
.registration-card .phone-prefix{display:flex;align-items:center;justify-content:center;min-width:76px;padding:10px 12px;border:1px solid #c9cecc;border-right:0;border-radius:2px 0 0 2px;background:#eceeeb;color:#313a40;font-weight:700;letter-spacing:.03em}
.registration-card .phone-input-group .phone-local{min-width:0;border-radius:0 2px 2px 0}
.registration-card .form-control:focus{border-color:#9b7800;outline:0;box-shadow:0 0 0 3px #ffcc0040}
.registration-card input,.registration-card select,.registration-card textarea{scroll-margin-top:110px}
.registration-card .form-control:disabled{background:#eceeeb;color:#656b6d;opacity:1}
.registration-card input[type=checkbox]{width:17px;height:17px;accent-color:var(--reg-red);vertical-align:-3px}
.registration-card .custom-control{margin-top:8px}
.registration-card .custom-control-label,.registration-card label:has(input[type=checkbox]){display:inline-block;margin:0!important;font-size:13px;font-weight:500}
.registration-card .text-muted{color:var(--reg-muted)!important}
.registration-card .invalid-feedback{font-size:13px;color:#a8101e}
.registration-card .was-validated .phone-field:has(.phone-local:invalid) .invalid-feedback{display:block}
.registration-card .form-control.is-invalid,.registration-card .was-validated .form-control:invalid{border-color:#b42332}
.registration-card .form-control[aria-invalid="true"]{border-width:2px;outline:2px solid #b42332;outline-offset:2px}
.registration-card .submit,.registration-card .btn-primary,.registration-card .btn-danger{min-height:46px;padding:10px 19px;border:0;border-radius:0;font:700 14px/1.4 var(--reg-sans);transition:background .18s,transform .18s}
.registration-card .btn-primary{background:var(--reg-red);color:#fff}.registration-card .btn-primary:hover{background:#a8101e;color:#fff;transform:translateY(-1px)}
.registration-card .btn-danger{background:var(--reg-ink);color:#fff}.registration-card .btn-danger:hover{background:#29353d;color:#fff}
.registration-card .d-flex.justify-content-center{gap:8px;flex-wrap:wrap}
.verify-layout{width:100%;min-height:0;flex:1;display:grid;place-items:center;padding:40px 0}
.verify-layout>.container{display:grid;place-items:center}
.verify-card{width:min(620px,100%);padding:clamp(24px,5vw,48px);background:#fff;border:1px solid #e2e4e2;border-top:4px solid var(--reg-gold);box-shadow:0 12px 34px #1118200c;text-align:center}
.verify-card h1{margin:0 0 9px;font:600 clamp(32px,4vw,44px)/1.15 var(--reg-display);letter-spacing:-.04em}
.verify-card .eyebrow{margin:0 0 8px;color:var(--reg-red);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.verify-card p{margin:0 auto 23px;max-width:430px;color:var(--reg-muted)}
.verify-card .form-control{min-height:48px;text-align:center;letter-spacing:.08em}
.verify-card .btn{min-height:46px;padding:10px 20px;border:0;border-radius:0;font-weight:700}
.verify-card .btn-primary{background:var(--reg-red)}.verify-card .btn-danger{background:var(--reg-ink)}
.swal2-popup{font-family:var(--reg-sans)!important;border-radius:2px!important}.swal2-title{font-family:var(--reg-display)!important;color:var(--reg-ink)!important}.swal2-confirm{background:var(--reg-red)!important;border-radius:0!important}.swal2-cancel{background:var(--reg-ink)!important;border-radius:0!important}
@media(max-width:650px){main{padding:32px 0 48px;background:linear-gradient(180deg,#fff 0,#fff 150px,var(--reg-paper) 150px)}main>.container{width:calc(100% - 28px)}.registration-heading{display:block;margin-bottom:18px;padding-bottom:20px}.registration-heading p{margin-top:10px}.registration-card{padding:19px 15px}.registration-card hr{margin:17px 0}.registration-card .row{--bs-gutter-x:.8rem}.registration-card .form-control{min-height:48px;font-size:16px}.registration-card .d-flex.justify-content-center{align-items:stretch}.registration-card .d-flex.justify-content-center .btn{flex:1}.verify-layout{min-height:0;padding:24px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
