.intake-page { padding:3rem 0; overflow-wrap:anywhere; }
.intake-header { max-width:76ch; margin-bottom:2.5rem; }.intake-header h1 { margin:1rem 0; }.intake-page p { margin:.8rem 0; }
.intake-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr); gap:2.5rem; align-items:start; }
.intake-page fieldset { min-width:0; border:0; padding:0; margin:0; }.intake-page legend { font-family:Georgia,serif; font-size:1.5rem; margin-bottom:1rem; }
.intake-field { margin:1.5rem 0; }.intake-field label,.intake-review>label { display:block; font-weight:600; margin-bottom:.4rem; }
.intake-field input,.intake-field textarea,.intake-field select,.intake-review textarea { width:100%; min-width:0; min-height:48px; font:inherit; line-height:1.5; color:var(--ink); background:var(--paper); border:1px solid var(--rust); border-radius:3px; padding:.65rem; }
.intake-field textarea,.intake-review textarea { resize:vertical; }.intake-review textarea { white-space:pre-wrap; }
.intake-page .intake-consents { margin:2rem 0; }.intake-checkbox { display:flex; gap:.75rem; align-items:flex-start; margin:1rem 0; cursor:pointer; }
.intake-checkbox input { flex:0 0 24px; width:24px; height:24px; margin-top:.2rem; accent-color:var(--rust); }
.intake-note,.intake-review,.intake-result { padding:1.5rem; background:var(--white); border:1px solid var(--line); }.intake-note h2,.intake-review h2,.intake-result h2 { font-size:1.8rem; line-height:1.3; }
.intake-review,.intake-result,.intake-tools { margin-top:2rem; }.intake-page [hidden] { display:none; }.intake-error { font-weight:600; }
.intake-page button { min-height:44px; padding:.75rem 1rem; border:1px solid var(--rust); background:var(--paper); color:var(--rust); font:inherit; cursor:pointer; }
.intake-page :is(input,textarea,select,button):focus-visible,.intake-page h2:focus { outline:3px solid var(--rust); outline-offset:4px; }.intake-page button:disabled { cursor:wait; }
.intake-actions { display:flex; flex-wrap:wrap; gap:1rem; margin:1rem 0; }
@media(max-width:760px){.intake-layout{grid-template-columns:minmax(0,1fr)}.intake-note,.intake-review,.intake-result{padding:1rem}.intake-actions>*{width:100%}}
@media print{.intake-actions,.intake-tools{display:none}.intake-layout{display:block}.intake-note{margin-top:2rem}}
