/* Existing form, modal glass and button tokens, scoped to client onboarding. */
.onboarding-page [hidden] {display:none!important}
.onboarding-document {max-width:840px;margin:0 auto;padding:clamp(7.5rem,12vw,10rem) 24px 5rem;position:relative;z-index:2}
.ob-intro {margin-bottom:2.8rem}
.ob-intro .pg-display {max-width:none;font-size:clamp(2.6rem,5.1vw,4.4rem);line-height:1.06;letter-spacing:-.04em}
.ob-subtitle {color:var(--mute);font-size:16px;line-height:1.65;margin-top:1.2rem;max-width:42ch}
.ob-card {min-width:0;margin:0 0 26px;padding:28px;border:1px solid #dce1e9;border-radius:28px;background:linear-gradient(145deg,#fffffffa,#f8fafff5 58%,#edf2fcf5);box-shadow:inset 0 0 0 5px #ffffff9c,0 10px 30px -25px #2031514d}
.ob-card legend {padding:0 8px;margin-left:-8px;font-size:22px;font-weight:500;line-height:1.3;letter-spacing:-.025em;color:var(--ink)}
.ob-section-note {font-size:14px;color:var(--mute);margin:-4px 0 22px}
.ob-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 22px}
.ob-wide {grid-column:1/-1}
.ob-field {min-width:0}
.ob-field label {display:block;margin-bottom:8px;font-size:14px;line-height:1.4;font-weight:500;color:#353b47}
.ob-optional {font-weight:400;color:var(--mute);font-size:12px}
.onboarding-page .ob-field input,.onboarding-page .ob-field textarea,.onboarding-page .ob-field select {font-family:Ubuntu,system-ui,sans-serif;font-size:16px;line-height:1.5;min-height:48px;width:100%;max-width:100%;min-width:0;border:1px solid #dfe5f0;border-radius:12px;background:#ffffff7d;box-shadow:inset 0 1px 0 #fff;padding:12px 14px;color:var(--ink);transition:border-color .25s,box-shadow .25s,background .25s;transform:none}
.onboarding-page .ob-field textarea {min-height:108px;resize:vertical}
.onboarding-page .ob-field select {appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238B857A' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.onboarding-page .ob-field input:focus,.onboarding-page .ob-field textarea:focus,.onboarding-page .ob-field select:focus {outline:0;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-tint);background-color:var(--panel);transform:none}
.ob-field input::placeholder,.ob-field textarea::placeholder {color:var(--mute);opacity:.8}
.onboarding-page .ob-hint {font-size:13px;line-height:1.55;color:var(--mute);margin:7px 0 0;overflow-wrap:anywhere}
.onboarding-page .ob-error {font-size:13px;line-height:1.5;color:var(--ink);margin:8px 0 0;animation:ob-fade .2s ease both}
.onboarding-page [aria-invalid="true"] {border-color:var(--ink)!important}
.ob-check {display:flex;gap:13px;align-items:center;min-height:56px;padding:13px 14px;border:1px solid #dfe5f0;border-radius:14px;background:#ffffff7d;font-size:15px;font-weight:500;line-height:1.55;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}
.ob-check input {appearance:none;-webkit-appearance:none;flex:0 0 22px;width:22px;height:22px;margin:0;padding:0;border:1px solid #c7cfde;border-radius:6px;background:#fff;box-shadow:inset 0 1px 1px #ffffff9c;cursor:inherit;touch-action:manipulation;transition:background-color .15s,border-color .15s}
.ob-check input:checked {border-color:var(--blue);background-color:var(--blue);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3.5 3.5L15 7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-size:20px 20px;background-position:center;background-repeat:no-repeat}
.ob-check:has(input:checked) {border-color:var(--blue);background:var(--blue-tint)}
.ob-check input:focus-visible {outline:none}
.ob-check:has(input:focus-visible) {outline:2px solid var(--blue);outline-offset:4px}
.ob-check:has(input:disabled) {cursor:wait}
.ob-project {margin:6px 0 28px}
.ob-project>.ob-hint {padding-left:50px;max-width:60ch}
.ob-brief {overflow:hidden}
.ob-brief .ob-card {margin:24px 0 0}
.ob-payment .ob-field {margin-top:24px}
.ob-actions {text-align:center;padding-top:4px}
.onboarding-page .ob-actions .btn {min-height:48px;width:100%;font-size:15px!important;text-transform:none!important;letter-spacing:0!important;border-radius:999px!important;color:#fff!important;border:1px solid #333!important;background:linear-gradient(180deg,#626262,#272727)!important;box-shadow:inset 0 1px 1px #ffffff9c,inset 0 0 0 2px #ffffff26,0 4px 7px #00000024!important;transition:opacity .2s!important}
.onboarding-page .ob-actions .btn:disabled {opacity:.38!important;cursor:not-allowed!important}
.ob-status {min-height:1.6em;font-size:14px;line-height:1.6;margin-top:16px;color:var(--mute)}
.ob-thanks {position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:28px;text-align:center;background:var(--paper)}
.ob-thanks h1 {font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.08;font-weight:500;letter-spacing:-.04em;outline:0}
.ob-thanks p {font-size:16px;line-height:1.6;color:var(--mute);margin-top:20px}
.ob-thanks.is-visible>div {animation:ob-fade .5s ease both}
.onboarding-page.ob-submitted {background:var(--paper)}
.onboarding-page.ob-submitted::before,.onboarding-page.ob-submitted::after {display:none!important}
@keyframes ob-fade {from{opacity:0}to{opacity:1}}
@media(max-width:600px){.onboarding-document{padding-left:20px;padding-right:20px}.ob-grid{grid-template-columns:minmax(0,1fr);gap:22px}.ob-card{padding:22px 20px;border-radius:24px}.ob-card legend{font-size:21px}.ob-optional{font-size:12px}.ob-thanks h1{max-width:12ch}}
@media(forced-colors:active){.ob-check input{appearance:auto;-webkit-appearance:auto}.ob-check:has(input:checked){border-color:Highlight}.ob-check:has(input:focus-visible){outline-color:Highlight}}
@media(prefers-reduced-motion:reduce){.onboarding-page main,.onboarding-page nav,.onboarding-page footer{transform:none!important;filter:none!important;animation:ob-fade .2s ease both!important}.onboarding-page #pageVeil{display:none!important}.onboarding-page *, .onboarding-page *::before,.onboarding-page *::after{scroll-behavior:auto!important}.onboarding-page .ob-field input,.onboarding-page .ob-field textarea,.onboarding-page .ob-field select{transition:none}}
