.intake-shell{--intake-travel: 230px;--intake-travel-dur: .7s;--intake-fade-dur: .26s;--intake-enter-at: .5s;--intake-enter-dur: .38s;--intake-stagger: .13s;--intake-ease: cubic-bezier(.33, 1, .68, 1);--intake-stage: 42rem;min-height:100dvh;display:grid;grid-template-rows:auto 1fr;background:var(--color-bg-primary);color:var(--color-text-primary)}.intake-progress{height:3px;background:color-mix(in oklab,currentcolor 12%,transparent)}.intake-progress-fill{height:100%;width:var(--intake-progress, 0%);background:var(--color-brand-primary);transition:width var(--intake-enter-dur) var(--intake-ease)}.intake-stage{display:grid;place-items:center;padding:2vh 1.5rem 10vh}.intake-stage .field-grid:has(input[value=other]){padding-bottom:4.25rem}.intake-stage .field-grid:has(input[value=other]):has(input[type=text]){padding-bottom:0}.intake-stage-inner{width:100%;max-width:var(--intake-stage);position:relative}.intake-shell .intake-stage .field-grid{display:flex;flex-direction:column;gap:1.1rem}.intake-shell .intake-stage .field-grid>*{width:100%;max-width:none;grid-column:auto}.intake-stage :where(h1,h2,h3)+p{font-size:1rem;line-height:1.6;opacity:.75;margin-block:.75rem 1.75rem;max-width:34rem}.intake-stage button:disabled:first-of-type{visibility:hidden}.intake-ghost{position:absolute;inset:0;pointer-events:none;animation:intake-leave var(--intake-travel-dur) var(--intake-ease) both,intake-dim var(--intake-fade-dur) var(--ease-exit) both}.intake-ghost-back{animation:intake-leave-back var(--intake-travel-dur) var(--intake-ease) both,intake-dim var(--intake-fade-dur) var(--ease-exit) both}.intake-arriving .intake-step section>div:first-child{animation:intake-arrive var(--intake-enter-dur) var(--intake-ease) var(--intake-enter-at) both}.intake-arriving .intake-step .field-grid{animation:intake-arrive var(--intake-enter-dur) var(--intake-ease) calc(var(--intake-enter-at) + var(--intake-stagger)) both}.intake-arriving .intake-step>div>div:last-child{animation:intake-arrive var(--intake-enter-dur) var(--intake-ease) calc(var(--intake-enter-at) + var(--intake-stagger) * 2) both}@keyframes intake-leave{to{transform:translateY(calc(-1 * var(--intake-travel)))}}@keyframes intake-leave-back{to{transform:translateY(var(--intake-travel))}}@keyframes intake-dim{to{opacity:0}}@keyframes intake-arrive{0%{opacity:0;transform:translateY(26px)}}.intake-stage :where(h1,h2,h3){font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1.15;letter-spacing:-.02em;font-weight:600;text-wrap:balance}.intake-stage label:has(input[type=radio]),.intake-stage label:has(input[type=checkbox]){display:flex;align-items:center;gap:.8rem;width:100%;border:1px solid color-mix(in oklab,currentcolor 14%,transparent);border-radius:.9rem;padding:1rem 1.15rem;font-size:1.125rem;line-height:1.3;cursor:pointer;transition:border-color var(--motion-micro) var(--ease-snappy),background-color var(--motion-micro) var(--ease-snappy)}.intake-stage label:has(input[type=radio]):hover,.intake-stage label:has(input[type=checkbox]):hover{border-color:color-mix(in oklab,currentcolor 40%,transparent);background:color-mix(in oklab,currentcolor 4%,transparent)}.intake-stage label:has(input[type=radio]:checked),.intake-stage label:has(input[type=checkbox]:checked){border-color:var(--color-brand-primary);background:color-mix(in oklab,var(--color-brand-primary) 16%,transparent)}.intake-stage label[data-letter]:after{content:attr(data-letter);order:-1;font-size:.8125rem;font-weight:600;line-height:1;padding:.3rem .45rem;min-width:1.5rem;text-align:center;border-radius:.4rem;border:1px solid color-mix(in oklab,currentcolor 14%,transparent);opacity:.6}.intake-stage label:has(input[type=radio]) :where(span,div,p),.intake-stage label:has(input[type=checkbox]) :where(span,div,p){font-size:inherit;line-height:inherit}.intake-stage label[data-letter]{display:flex}.intake-stage input[type=radio],.intake-stage input[type=checkbox]{flex:none;width:1.375rem;height:1.375rem;accent-color:var(--color-brand-primary)}.intake-stage input[type=checkbox]{border-radius:.4rem}.intake-stage input[type=text],.intake-stage input[type=email],.intake-stage input[type=number],.intake-stage input[type=url]{font-size:1.25rem;padding-block:.85rem}.intake-stage label:not(:has(input)){display:block;font-size:1.5rem;line-height:1.2;font-weight:600;letter-spacing:-.01em;margin-block:1.6rem .7rem}.intake-stage label:not(:has(input)):first-child{margin-top:.4rem}@media(prefers-reduced-motion:reduce){.intake-ghost,.intake-arriving .intake-step{animation:none}.intake-ghost{display:none}.intake-progress-fill{transition:none}}
