/* Registration only: a quiet workspace for choosing, editing and confirming. */
.registration-page{background:#f5f6f2}
.registration-page .register-copy>*,.registration-page .wizard-step{animation:none}
.registration-page .register-layout{max-width:1180px;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:64px;padding-top:52px;padding-bottom:68px}
.registration-page .register-copy{top:108px;padding:18px 0}
.registration-page .register-copy>.eyebrow{font-size:11px;letter-spacing:1.7px;color:#526258;margin:0 0 16px}
.registration-page .register-copy h1{font-size:clamp(32px,3.3vw,45px);line-height:1.13;letter-spacing:-1.4px;margin:0 0 20px;color:#143d2d}
.registration-page .register-copy h1 em{color:#537c36}
.registration-page .register-copy .lead{max-width:370px;font-size:16px;line-height:26px;color:#536359}
.registration-page .wizard-progress{position:relative;margin:30px 0;gap:5px;padding:0;list-style:none}
.registration-page .wizard-progress li{padding:0;min-height:0;background:none;border-radius:12px;display:block}
.registration-page .wizard-progress button{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:14px;border:0;border-radius:12px;padding:12px;text-align:left;box-shadow:none;background:transparent;color:#536359;font:500 14px/20px var(--md-font-display);cursor:pointer}
.registration-page .wizard-progress button:disabled{opacity:1;cursor:default;color:#657068}
.registration-page .wizard-progress button:focus-visible{outline:2px solid #386642;outline-offset:2px}
.registration-page .wizard-progress li.current button{background:#e5eddd;color:#143d2d}
.registration-page .wizard-progress button:not(:disabled):hover{background:#edf1e7}
.registration-page .wizard-progress button b{width:34px;height:34px;border:1px solid #b7c3b2;font:500 13px/20px var(--md-font-display);flex:none;background:transparent;color:inherit}
.registration-page .wizard-progress li.current b{background:#173e2d;border-color:#173e2d;color:#fff}
.registration-page .wizard-progress li.done b{background:#e5eddd;border-color:#e5eddd;color:#2f603c}
.registration-page .wizard-progress small{display:block;font:400 12px/18px var(--md-font-display);color:#637166;margin-top:1px}
.registration-page .onboarding-help{display:flex;align-items:flex-start;gap:12px;max-width:380px;padding:20px 0;border-top:1px solid #d9e0d3}
.registration-page .onboarding-help-mark{display:grid;place-items:center;flex:none;width:24px;height:24px;background:#e5eddd;color:#2f603c;border-radius:50%;font-size:13px}
.registration-page .onboarding-help h2{font:600 13px/20px var(--md-font-display);margin:0 0 5px;color:#254a33}
.registration-page .onboarding-help p{font-size:12px;line-height:20px;margin:0;color:#657068}
.registration-page .onboarding-home-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#526258;text-decoration:underline;text-underline-offset:4px}
.registration-page .register-card{padding:32px;border:1px solid #dce4d7;border-radius:20px;background:#fff;box-shadow:0 8px 32px #183a2410;scroll-margin-top:102px}
.registration-page .onboarding-card-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px}
.registration-page .onboarding-card-top .eyebrow{margin:0;color:#5d705f;font-size:10px;letter-spacing:1.4px}
.registration-page #wizard-step-status{font:500 11px/18px var(--md-font-display);color:#536359;white-space:nowrap;padding:5px 10px;border:1px solid #e1e7dc;border-radius:20px;background:#f8faf5}
.registration-page #wizard-title{font-size:27px;line-height:1.25;letter-spacing:-.7px;margin:0;color:#143d2d;outline-offset:6px}
.registration-page .register-intro{font-size:14px;line-height:23px;color:#607065;margin:12px 0 24px}
.registration-page .wizard-step{gap:16px}
.registration-page .mode-cards{gap:12px}
.registration-page .mode-card{padding:48px 16px 18px;border-radius:13px;background:#fff;border-color:#dce4d7;gap:10px}
.registration-page .mode-card input{top:17px;left:16px;width:19px;height:19px}
.registration-page .mode-card:has(input:checked){background:#f4f8ef;box-shadow:inset 0 0 0 1px #3f6339;border-color:#3f6339}
.registration-page .mode-card:has(input:focus-visible){outline:3px solid #749d50;outline-offset:3px}
.registration-page .mode-name{font-size:18px;color:#173e2d}
.registration-page .mode-headline{font-size:13px;line-height:21px;color:#4b5e50}
.registration-page .mode-badges{border-top:1px solid #dfe7d8;padding-top:12px;gap:5px;display:grid}
.registration-page .mode-badges li{font-size:11px;line-height:17px;color:#546351}
.registration-page .mode-detail{background:#f5f7f1;border:1px solid #e5eadd;padding:16px;font-size:13px;line-height:21px}
.registration-page .mode-detail h3{font-size:13px;line-height:21px}
.registration-page .mode-compare{font-size:13px}
.registration-page .mode-explanation summary,.registration-page .mode-compare summary{font-size:13px;line-height:20px;min-height:44px}
.registration-page .onboarding-edit-note{margin:0 0 20px;padding:10px 12px;border-left:3px solid #87ae59;background:#f3f7ee;font-size:12px;line-height:20px;color:#40583d}
.registration-page .onboarding-field-error{margin:-6px 0 0;font-size:12px;line-height:20px;color:#a12519}
.registration-page input[aria-invalid=true],.registration-page select[aria-invalid=true]{border-color:#ba3325;outline:1px solid #ba3325;outline-offset:0}
.registration-page .wizard-summary{display:grid;gap:16px;padding:0;background:none;border-radius:0}
.registration-page .onboarding-summary-group{border:1px solid #dfe6d8;border-radius:12px;padding:0 16px 10px;min-width:0}
.registration-page .onboarding-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e7ebdf;padding:7px 0}
.registration-page .onboarding-summary-heading h3{font-size:14px;line-height:22px;margin:0;color:#234932}
.registration-page .onboarding-edit,.registration-page .onboarding-retry{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 0 8px 10px;border:0;border-radius:6px;background:none;box-shadow:none;color:#315e35;font:500 12px/20px var(--md-font-display);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.registration-page .onboarding-edit:focus-visible,.registration-page .onboarding-retry:focus-visible{outline:2px solid #386642;outline-offset:2px}
.registration-page .onboarding-summary-group dl{margin:8px 0 0}
.registration-page .summary-row{display:grid;grid-template-columns:minmax(100px,.75fr) minmax(0,1.25fr);gap:14px;border:0;padding:5px 0;font-size:13px;line-height:21px}
.registration-page .summary-row dt{color:#637061;overflow-wrap:anywhere}
.registration-page .summary-row dd{margin:0;color:#283e2c;overflow-wrap:anywhere;font-weight:500;text-align:right}
.registration-page .onboarding-consents{display:grid;gap:16px;margin-top:6px;padding:20px 0;border-top:1px solid #e0e7d9;border-bottom:1px solid #e0e7d9}
.registration-page .onboarding-consents>h3,.registration-page .onboarding-after h3{font-size:13px;line-height:20px;margin:0;color:#254b34}
.registration-page .onboarding-consents .check{margin:0;align-items:flex-start;font-size:13px;line-height:22px;color:#50604f}
.registration-page .onboarding-consents .check input{flex:none;margin-top:2px}
.registration-page .onboarding-terms summary{display:flex;align-items:center;min-height:44px;font-size:12px;line-height:20px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:#315e35}
.registration-page .onboarding-terms .conditions-box{margin-top:8px;font-size:12px;line-height:20px;background:#f7f9f3;border:1px solid #e0e7d9}
.registration-page .onboarding-after{display:block!important;padding:14px 16px;border-radius:10px;background:#f4f7ef}
.registration-page .onboarding-after p{margin:6px 0 0;font-size:12px;line-height:21px;color:#5a6956}
.registration-page .onboarding-after[hidden]{display:none!important}
.registration-page .wizard-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:4px;padding-top:20px;border-top:1px solid #e0e7d9}
.registration-page .wizard-actions .btn{min-height:48px;border-radius:10px;font-size:13px;padding:12px 18px}
.registration-page .wizard-actions .btn:not(.secondary){background:#1c4a34;color:#fff;box-shadow:none}
.registration-page .wizard-actions .btn:not(.secondary):hover{background:#153b29}
.registration-page .onboarding-note{font-size:11px;line-height:18px;text-align:right;color:#73806c;margin:0}
.registration-page .onboarding-pending{display:flex;align-items:center;gap:12px;padding:14px;background:#f1f6e9;border:1px solid #dce8ce;border-radius:10px;color:#315338}
.registration-page .onboarding-pending strong,.registration-page .onboarding-pending div>span{display:block;font-size:12px;line-height:20px}
.registration-page .onboarding-pending div>span{font-size:11px;color:#607059}
.registration-page .onboarding-loading{display:flex;gap:10px;align-items:center;margin:0!important}
.registration-page .onboarding-spinner{display:block;flex:none;width:20px;height:20px;border:2px solid #d0dfc1;border-top-color:#3b6a34;border-radius:50%;animation:onboarding-spin .8s linear infinite}
.registration-page .onboarding-footer-links{display:flex;justify-content:center;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 16px;color:#66725f;font-size:11px;line-height:20px}
.registration-page .onboarding-footer-links a{display:inline-flex;min-height:32px;align-items:center;color:inherit;text-underline-offset:3px}
@keyframes onboarding-spin{to{transform:rotate(360deg)}}
@media(max-width:1000px){.registration-page .register-layout{grid-template-columns:1fr;max-width:760px;gap:26px;padding-top:28px}.registration-page .register-copy{position:static;padding:0}.registration-page .register-copy h1{font-size:36px}.registration-page .register-copy h1 br{display:none}.registration-page .register-copy .lead{max-width:620px;margin-bottom:0}.registration-page .wizard-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:22px 0 0}.registration-page .wizard-progress button{flex-direction:column;gap:7px;text-align:center;padding:10px 4px;font-size:12px}.registration-page .wizard-progress small{display:none}.registration-page .wizard-progress button b{width:29px;height:29px}.registration-page .onboarding-help,.registration-page .onboarding-home-link{display:none}.registration-page .register-card{padding:28px}}
@media(max-width:600px){.registration-page .register-layout{gap:22px;padding-top:24px;padding-bottom:44px}.registration-page .register-copy>.eyebrow{margin-bottom:12px}.registration-page .register-copy h1{font-size:29px;letter-spacing:-.9px;max-width:300px;line-height:1.18;margin-bottom:12px}.registration-page .register-copy .lead{font-size:14px;line-height:23px}.registration-page .wizard-progress button{font-size:10px;line-height:16px;padding:9px 2px}.registration-page .wizard-progress button b{width:26px;height:26px;font-size:11px}.registration-page .register-card{padding:22px 18px;border-radius:16px}.registration-page #wizard-title{font-size:24px}.registration-page .register-intro{font-size:13px;line-height:22px;margin-bottom:20px}.registration-page .onboarding-card-top{margin-bottom:18px;gap:8px}.registration-page .onboarding-card-top .eyebrow{font-size:9px;letter-spacing:1px}.registration-page #wizard-step-status{font-size:10px;padding:4px 8px}.registration-page .mode-cards{grid-template-columns:1fr}.registration-page .mode-card{padding:16px 14px 16px 43px;gap:8px}.registration-page .mode-card input{left:13px;top:17px}.registration-page .mode-name{font-size:17px}.registration-page .mode-headline{font-size:12px;line-height:20px}.registration-page .mode-badges{padding-top:10px;gap:4px}.registration-page .mode-detail{padding:14px}.registration-page .summary-row{grid-template-columns:minmax(70px,.7fr) minmax(0,1.3fr);gap:10px;font-size:12px;line-height:20px}.registration-page .onboarding-summary-group{padding-left:12px;padding-right:12px}.registration-page .onboarding-summary-heading h3{font-size:13px}.registration-page .wizard-actions .btn{min-width:0;font-size:12px;padding:11px 12px}.registration-page .onboarding-note{text-align:center}}
@media(prefers-reduced-motion:reduce){.registration-page .onboarding-spinner{animation:none;border-style:dotted}}
.registration-page [hidden]{display:none!important}
