.onboarding-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}
.onboarding-heading h1{margin:4px 0 7px;color:#062f5d;font-size:34px;letter-spacing:-.045em}
.onboarding-heading>div>p:last-child{max-width:760px;color:#637d9e;line-height:1.55}
.onboarding-kicker{margin:0;color:#0878d8;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.onboarding-overall{width:180px;flex:0 0 180px;border:1px solid #d2e3ee;border-radius:12px;background:#fff;padding:14px}
.onboarding-overall strong,.onboarding-overall span{display:block}
.onboarding-overall strong{color:#062f5d;font-size:26px}
.onboarding-overall span{margin:2px 0 10px;color:#637d9e;font-size:11px;font-weight:700}
.onboarding-overall>div,.onboarding-prompt-progress>div{height:7px;overflow:hidden;border-radius:999px;background:#e5eef1}
.onboarding-overall i,.onboarding-prompt-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0878d8,#25a886)}
.onboarding-stepper{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));overflow:hidden;border:1px solid #d2e3ee;border-radius:12px;background:#fff}
.onboarding-stepper button{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:10px;min-height:76px;border:0;border-right:1px solid #e1eaf0;background:#fff;padding:12px 14px;color:#637d9e;text-align:left}
.onboarding-stepper button:last-child{border-right:0}
.onboarding-stepper button>span{grid-row:1/3;display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:#eef4f8;color:#637d9e;font-size:18px}
.onboarding-stepper button small{align-self:end;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.onboarding-stepper button strong{align-self:start;color:#345577;font-size:13px}
.onboarding-stepper button.active{background:#edf8f5;color:#00826b}
.onboarding-stepper button.active>span,.onboarding-stepper button.done>span{background:#dff5ee;color:#00826b}
.onboarding-stepper button.active strong,.onboarding-stepper button.done strong{color:#006e61}
.onboarding-stepper button:focus-visible,.onboarding-chips button:focus-visible,.onboarding-yes-no button:focus-visible,.onboarding-prompt-close:focus-visible{outline:3px solid rgba(25,126,208,.28);outline-offset:-3px}
.onboarding-card{overflow:hidden;border:1px solid #d2e3ee;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(6,47,93,.05)}
.onboarding-card>header{display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid #e0eaf0;padding:22px 24px;background:linear-gradient(110deg,#f8fcff,#f2fbf8)}
.onboarding-card>header span{color:#0878d8;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.onboarding-card>header h2{margin:4px 0;color:#062f5d;font-size:23px}
.onboarding-card>header p{margin:0;color:#637d9e;font-size:13px}
.onboarding-card>header>i{display:grid;width:52px;height:52px;flex:0 0 52px;place-items:center;border-radius:14px;background:#fff;color:#0878d8;font-size:25px;box-shadow:0 7px 20px rgba(6,47,93,.08)}
.onboarding-card-body{padding:24px}
.onboarding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.onboarding-field{display:grid;gap:7px;color:#345577;font-size:12px;font-weight:800}
.onboarding-field.full,.onboarding-choice.full,.onboarding-location.full{grid-column:1/-1}
.onboarding-field input,.onboarding-field select,.onboarding-field textarea{width:100%;min-height:46px;border:1px solid #cbdde8;border-radius:9px;background:#fff;padding:10px 12px;color:#12365e;font:500 14px "DM Sans",sans-serif;outline:0;transition:border .18s,box-shadow .18s}
.onboarding-field textarea{min-height:105px;resize:vertical}
.onboarding-field input:focus,.onboarding-field select:focus,.onboarding-field textarea:focus{border-color:#5eaee8;box-shadow:0 0 0 3px rgba(25,126,208,.12)}
.onboarding-choice{min-width:0;margin:0;border:0;padding:0}
.onboarding-choice legend{margin-bottom:9px;color:#345577;font-size:12px;font-weight:800}
.onboarding-choice legend small{margin-left:5px;color:#8aa0b5;font-weight:600}
.onboarding-chips{display:flex;flex-wrap:wrap;gap:8px}
.onboarding-chips button{min-height:38px;border:1px solid #d2e3ee;border-radius:999px;background:#fff;padding:7px 12px;color:#496782;font-size:12px;font-weight:700}
.onboarding-chips button:hover{border-color:#91c9eb;color:#0872cc}
.onboarding-chips button.selected{border-color:#78cbb8;background:#e7f8f2;color:#007867}
.onboarding-yes-no{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.onboarding-yes-no button{display:flex;min-height:46px;align-items:center;justify-content:center;gap:7px;border:1px solid #d2e3ee;border-radius:9px;background:#fff;color:#637d9e;font-weight:700}
.onboarding-yes-no button.selected{border-color:#78cbb8;background:#e7f8f2;color:#007867}
.onboarding-location{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid #cce3ef;border-radius:12px;background:#f5fbff;padding:16px}
.onboarding-location>div{display:flex;align-items:flex-start;gap:12px}
.onboarding-location-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:10px;background:#e4f4ff;color:#0878d8;font-size:21px}
.onboarding-location strong,.onboarding-location p{display:block}
.onboarding-location p{margin:4px 0 0;color:#637d9e;font-size:12px;line-height:1.45}
.onboarding-location>small{grid-column:1/-1;color:#637d9e;font-size:11px}
.onboarding-ownership,.onboarding-verification,.onboarding-submit-note{display:flex;align-items:flex-start;gap:11px;margin-top:18px;border-radius:10px;padding:14px}
.onboarding-ownership{background:#eef7ff;color:#345577}
.onboarding-verification{border:1px solid #bfe4d9;background:#edfaf6;color:#345577}
.onboarding-submit-note{border:1px solid #d2e3ee;background:#f7fafc;color:#345577}
.onboarding-ownership>i,.onboarding-verification>i,.onboarding-submit-note>i{color:#0878d8;font-size:20px}
.onboarding-verification>i{color:#00826b}
.onboarding-ownership p,.onboarding-verification p,.onboarding-submit-note p{margin:0;font-size:12px;line-height:1.55}
.onboarding-verification strong{display:block;margin-bottom:3px;color:#006e61}
.onboarding-consents{display:grid;gap:10px}
.onboarding-consents label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:11px;border:1px solid #d8e5ec;border-radius:10px;padding:13px;cursor:pointer}
.onboarding-consents label:hover{background:#f8fbfc}
.onboarding-consents input{position:absolute;opacity:0;pointer-events:none}
.onboarding-consents label>span{display:grid;width:23px;height:23px;place-items:center;border:1px solid #b9cfdb;border-radius:6px;background:#fff;color:transparent}
.onboarding-consents input:checked+span{border-color:#15977e;background:#15977e;color:#fff}
.onboarding-consents input:focus-visible+span{outline:3px solid rgba(25,126,208,.25);outline-offset:2px}
.onboarding-consents p{margin:1px 0 0;color:#345577;font-size:12px;line-height:1.45}
.onboarding-card>footer{display:flex;align-items:center;gap:12px;border-top:1px solid #e0eaf0;padding:16px 24px}
.onboarding-card>footer .panel-button{min-height:44px}
.onboarding-status{flex:1;margin:0;color:#b42318;font-size:12px;text-align:right}
.onboarding-error{display:grid;min-height:330px;place-items:center;align-content:center;gap:9px;border:1px solid #f0caca;border-radius:12px;background:#fff;text-align:center}
.onboarding-error>i{color:#c03939;font-size:44px}
.onboarding-error h2,.onboarding-error p{margin:0}.onboarding-error p{color:#637d9e}
.onboarding-prompt-backdrop{position:fixed;z-index:220;inset:0;display:grid;place-items:center;background:rgba(6,47,93,.42);padding:18px;animation:onboardingFade .18s ease both}
.onboarding-prompt-card{position:relative;width:min(100%,440px);border:1px solid #d2e3ee;border-radius:16px;background:#fff;padding:28px;box-shadow:0 28px 80px rgba(6,47,93,.24)}
.onboarding-prompt-close{position:absolute;top:14px;right:14px;display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:8px;background:#eef4f8;color:#345577;font-size:18px}
.onboarding-prompt-icon{display:grid;width:48px;height:48px;margin-bottom:18px;place-items:center;border-radius:13px;background:#e4f7f1;color:#00826b;font-size:24px}
.onboarding-prompt-card h2{margin:5px 0 8px;color:#062f5d;font-size:25px;letter-spacing:-.035em}
.onboarding-prompt-card>p:not(.onboarding-kicker){margin:0;color:#637d9e;font-size:13px;line-height:1.55}
.onboarding-prompt-progress{margin:20px 0}
.onboarding-prompt-progress>span{display:flex;justify-content:space-between;margin-bottom:8px;color:#637d9e;font-size:11px}
.onboarding-prompt-progress strong{color:#062f5d}
.onboarding-prompt-card>a{width:100%;justify-content:center;text-decoration:none}
@keyframes onboardingFade{from{opacity:0}to{opacity:1}}

@media(max-width:900px){
  .onboarding-heading{display:block}
  .onboarding-heading h1{font-size:29px}
  .onboarding-overall{width:100%;margin-top:14px}
  .onboarding-stepper{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
  .onboarding-stepper::-webkit-scrollbar{display:none}
  .onboarding-stepper button{min-width:136px;scroll-snap-align:start}
  .onboarding-card>header,.onboarding-card-body,.onboarding-card>footer{padding-inline:16px}
  .onboarding-grid{grid-template-columns:1fr}
  .onboarding-field.full,.onboarding-choice.full,.onboarding-location.full{grid-column:auto}
  .onboarding-location{grid-template-columns:1fr}
  .onboarding-location .panel-button{width:100%;justify-content:center}
  .onboarding-location>small{grid-column:auto}
  .onboarding-card>footer{display:grid;grid-template-columns:auto 1fr}
  .onboarding-card>footer .onboarding-status{grid-column:1/-1;grid-row:1;text-align:left}
  .onboarding-card>footer .panel-button.primary{grid-column:2;justify-content:center}
}
@media(max-width:520px){
  .onboarding-heading h1{font-size:27px}
  .onboarding-stepper{margin-inline:-2px}
  .onboarding-stepper button{min-width:124px;min-height:70px;padding:10px}
  .onboarding-stepper button>span{width:32px;height:32px}
  .onboarding-card>header{align-items:flex-start}
  .onboarding-card>header>i{width:44px;height:44px;flex-basis:44px}
  .onboarding-card-body{padding-block:18px}
  .onboarding-chips{gap:7px}
  .onboarding-chips button{min-height:36px;padding:6px 10px;font-size:11px}
  .onboarding-card>footer{grid-template-columns:1fr}
  .onboarding-card>footer .panel-button,.onboarding-card>footer .panel-button.primary{grid-column:1;width:100%;justify-content:center}
  .onboarding-prompt-card{padding:24px 20px 20px}
}
@media(prefers-reduced-motion:reduce){
  .onboarding-prompt-backdrop{animation:none}
}
