.registration-dialog{width:min(920px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:hidden;border-color:#bcaa89;color:var(--ink)}.reg-header{padding:24px 32px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper)}.reg-header .eyebrow{font-size:8px;margin-bottom:6px}.reg-header h2{font-size:38px;margin:0;letter-spacing:-.5px}.reg-close{width:44px;height:44px;flex-shrink:0;background:transparent;font:32px/1 var(--cnvs-body-font);color:var(--ink)}.reg-scroll{overflow:auto;overscroll-behavior:contain;max-height:calc(100svh - 153px);padding:27px 40px 23px;background:var(--paper)}.reg-intro>p{font-size:13px;margin-bottom:22px;max-width:640px}.reg-steps{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.reg-steps li{font-size:11px;color:#888074;padding:12px 8px 17px;border-bottom:2px solid transparent;margin-bottom:-1px}.reg-steps li span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #cfbea0;font-size:10px;margin-right:8px}.reg-steps li[aria-current]{color:var(--ink);border-color:var(--gold);font-weight:600}.reg-steps li[aria-current] span{background:var(--gold);border-color:var(--gold)}.reg-steps li.is-done{color:#716444}.reg-step h3{font-family:var(--cnvs-secondary-font);font-size:32px;line-height:1.15;margin-bottom:24px;outline:none}.reg-step label,.reg-step legend{font:500 12px/1.6 var(--cnvs-body-font);color:var(--ink);text-transform:none;letter-spacing:0;margin-bottom:9px;display:block}.reg-step input:not([type=checkbox]):not([type=radio]),.reg-step select,.reg-step textarea{width:100%;min-height:52px;border:1px solid #d2c5b0;background:#fffefa;border-radius:0;padding:14px;font:400 14px/1.5 var(--cnvs-body-font);color:var(--ink);box-shadow:none}.reg-step select{padding-right:30px}.reg-step textarea{resize:vertical;min-height:105px}.reg-step input[type=checkbox],.reg-step input[type=radio]{appearance:auto;width:17px;height:17px;margin:2px 0 0;flex-shrink:0;accent-color:#9c7c44}.reg-plan-summary{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);margin-top:20px;background:var(--sand)}.reg-plan-summary>div{padding:18px 22px}.reg-plan-summary>div+div{border-left:1px solid var(--line)}.reg-plan-summary span{display:block;font-size:10px;color:#746747;margin-bottom:5px}.reg-plan-summary strong{font:500 29px/1.1 var(--cnvs-secondary-font)}.reg-plan-summary small{display:block;font:400 10px/1.7 var(--cnvs-body-font);margin-top:5px}.reg-hint{font-size:11px;color:#776d5e;line-height:1.7;margin:13px 0 20px}.reg-step fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}.reg-mode{margin-top:24px!important;padding-top:22px!important;border-top:1px solid var(--line)!important}.reg-mode legend{float:none;width:auto;margin-bottom:12px}.reg-mode label{display:flex;gap:10px;align-items:flex-start;font-size:12px;margin:10px 0}.reg-quota{font-size:12px;background:#eae4d8;padding:12px 15px;color:#635238;margin:18px 0}.reg-day legend{font-family:var(--cnvs-secondary-font);font-size:23px;float:none;line-height:1.2;margin-bottom:13px}.reg-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.reg-slot{padding:14px;border:1px solid var(--line);background:#fffdf8;display:flex!important;gap:11px;align-items:flex-start;margin:0!important;cursor:pointer;transition:background .15s,border-color .15s}.reg-slot:has(input:checked){border-color:#94733d;background:#ede4d1}.reg-slot:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.reg-slot strong{display:block;font:500 24px/1.2 var(--cnvs-secondary-font)}.reg-slot>span>span{display:block;font-size:10px;margin-top:3px}.reg-slot small{display:block;font-size:8px;line-height:1.5;color:#80704e;margin-top:5px}.reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.reg-full{grid-column:1/-1}.reg-error{color:#91392d;background:#f8eae5;border-left:2px solid #91392d;padding:13px 15px;font-size:12px;line-height:1.7;margin:18px 0}.reg-actions{display:flex;align-items:center;gap:18px;padding-top:23px;margin-top:25px;border-top:1px solid var(--line)}.reg-actions .button{margin-left:auto}.reg-back{font-size:12px;background:none;color:#726046;padding:10px 0}.reg-actions>span{font-size:10px;color:#7a6d5b}.reg-review{padding:4px 22px;background:var(--sand);margin-bottom:25px}.reg-review-row{padding:15px 0;border-bottom:1px solid #d8cdbb;display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.reg-review-row:last-child{border:0}.reg-review-row>div{min-width:0}.reg-review-row span{font-size:9px;text-transform:uppercase;letter-spacing:1.3px;display:block;color:#7c6844;margin-bottom:6px}.reg-review-row strong{font-size:12px;font-weight:500;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.reg-edit{background:transparent;color:#755d32;font-size:10px;padding:4px 0;border-bottom:1px solid #b8a582;flex-shrink:0}.reg-payment{margin-bottom:24px}.reg-check{display:flex!important;align-items:flex-start;gap:11px;font-size:11px!important;line-height:1.8!important;margin:16px 0!important}.reg-check a{text-decoration:underline}.reg-pay-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reg-pay-options label{display:flex;align-items:center;gap:12px;padding:18px;border:1px solid var(--line);background:#fffdf8;margin:0;cursor:pointer}.reg-pay-options label:has(input:checked){border-color:#94733d;background:#ede4d1}.reg-payment fieldset{margin-top:22px}.reg-payment legend{float:none;font-size:12px;margin-bottom:12px}.reg-payment-note{padding:16px;background:var(--sand);font-size:11px;line-height:1.8}.reg-payment-note strong{display:block;color:#625031;margin-bottom:5px}.reg-conditions{font-size:11px;border-top:1px solid var(--line);margin-top:20px}.reg-conditions summary{padding:15px 0;cursor:pointer}.reg-conditions p{font-size:11px;margin-bottom:12px}#reg-submit-status{font-size:12px;line-height:1.8;color:#8c4732;margin:15px 0 0}.reg-help{border-top:1px solid var(--line);margin-top:26px;padding-top:18px;text-align:center;font-size:11px}.reg-help a{text-decoration:underline}.reg-help small{display:block;font-size:9px;margin-top:4px;color:#7e7360}.reg-success{text-align:center;padding:35px 15px 15px;outline:none}.reg-success h3{font:500 53px/1.2 var(--cnvs-secondary-font);margin-bottom:20px}.reg-success>p{font-size:13px;max-width:540px;margin:0 auto 24px}.reg-reference{border:1px solid var(--line);background:var(--sand);padding:18px 25px;margin:25px auto;max-width:400px}.reg-reference span{display:block;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:5px}.reg-reference strong{font:500 25px var(--cnvs-secondary-font)}#reg-success-details{text-align:left;max-width:440px;margin:0 auto 25px}.reg-success .reg-hint{font-size:11px}.registration-dialog button:disabled{cursor:wait;opacity:.6}
@media(max-width:767px){.registration-dialog{width:calc(100% - 16px);max-height:calc(100svh - 16px);margin:auto}.reg-header{padding:17px 20px}.reg-header h2{font-size:31px}.reg-scroll{padding:22px 20px;max-height:calc(100svh - 115px)}.reg-intro>p{font-size:12px}.reg-steps{margin-bottom:26px}.reg-steps li{padding:10px 4px 14px;font-size:9px;line-height:1.5;text-align:center}.reg-steps li span{display:flex;margin:0 auto 7px;width:25px;height:25px}.reg-step h3{font-size:29px}.reg-step input:not([type=checkbox]):not([type=radio]),.reg-step select,.reg-step textarea{font-size:16px;min-height:54px;padding:13px}.reg-step select{font-size:14px}.reg-plan-summary>div{padding:14px 12px}.reg-plan-summary span{font-size:9px;line-height:1.5}.reg-plan-summary strong{font-size:25px}.reg-plan-summary small{font-size:9px}.reg-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.reg-slot{padding:12px 10px;gap:8px}.reg-slot strong{font-size:24px}.reg-day legend{font-size:22px}.reg-grid{grid-template-columns:1fr;gap:18px}.reg-step label{font-size:11px}.reg-actions{flex-wrap:wrap;gap:12px;margin-top:22px}.reg-actions .button{font-size:9px;padding:15px 18px;min-height:49px}.reg-actions>span{font-size:9px}.reg-review{padding:3px 15px}.reg-review-row strong{font-size:11px}.reg-review-row{gap:10px}.reg-pay-options{grid-template-columns:1fr;gap:10px}.reg-pay-options label{padding:15px}.reg-success{padding:20px 0}.reg-success h3{font-size:44px}.reg-success>p{font-size:12px}}
.registration-dialog[open]{display:flex;flex-direction:column}.reg-header{flex-shrink:0}.reg-scroll{flex:1 1 auto;min-height:0;max-height:none}
.reg-mode label{padding:8px 0;min-height:44px;margin:0}.reg-step input:invalid:not(:placeholder-shown):not([type=date]):not([type=checkbox]):not([type=radio]){border-color:#c2ae8b}
