.onboarding { margin: 0; background: #f4f8f7; color: #153e43; font: 1rem/1.5 system-ui, sans-serif; }
.onboarding main h1 { font-size: clamp(1.75rem, 5vw, 2.65rem); line-height: 1.12; }
.onboarding main section, .onboarding main article { padding: clamp(.85rem, 3vw, 1.5rem); background: white; border: 1px solid #ccdcd9; border-radius: 1rem; margin: 1rem 0; overflow-wrap: anywhere; }
.onboarding main form, .onboarding main label, .onboarding fieldset { display: grid; gap: .5rem; }
.onboarding form { margin-block: 1rem; }
.onboarding main input, .onboarding main select, .onboarding main textarea, .onboarding main button { font: inherit; min-height: 2.75rem; max-width: 100%; box-sizing: border-box; border-radius: .55rem; }
.onboarding main input, .onboarding main select, .onboarding main textarea { width: 100%; padding: .55rem; border: 1px solid #829b98; background: white; color: inherit; }
.onboarding main input[type=checkbox] { width: 1.4rem; min-height: 1.4rem; }
.onboarding main button { justify-self: start; border: 0; padding: .6rem 1rem; background: #075961; color: white; cursor: pointer; }
.onboarding main button:disabled { opacity: .6; cursor: default; }
.onboarding fieldset { min-width: 0; margin: .75rem 0; border: 1px solid #ccdcd9; }
.onboarding :focus-visible { outline: 3px solid #b76609; outline-offset: 2px; }
.onboarding [hidden] { display: none !important; }

.onboarding > main { box-sizing: border-box; max-width: 52rem; }
.onboarding main button { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; min-height: 48px; min-width: 48px; }
.onboarding main a { display: inline-flex; align-items: center; min-height: 44px; }
.onboarding label:has(input[type=checkbox]) { display: flex; align-items: center; min-height: 44px; }
