/* A direct route into care; shares the existing brand typography and palette. */
.quick-intake { --qi-ink:#2e2a24; --qi-blue:#405e81; box-sizing:border-box; background:#faf7f0; color:var(--qi-ink); padding:64px clamp(20px,5vw,88px); scroll-margin-top:96px; }
.quick-intake *, .quick-intake *::before, .quick-intake *::after { box-sizing:border-box; }
.quick-intake__intro,.quick-intake__groups,.quick-intake__disclosures { max-width:1280px; margin-inline:auto; }
.quick-intake__options { border-top:1px solid #e2d8c4; }
.quick-intake__shortcuts { display:none; }
.quick-intake a.quick-intake__option { display:grid; grid-template-columns:minmax(0,1fr) auto 14px; align-items:center; gap:12px; min-height:48px; padding:10px 0; color:var(--qi-ink); font-size:14px; text-decoration:none; }
.quick-intake__option + .quick-intake__option { border-top:1px solid #e2d8c4; }
.quick-intake__option > span:first-child { text-decoration:underline; text-underline-offset:4px; }
.quick-intake__option .quick-intake__price { font-size:12px; color:#61584c; }
.quick-intake__option:hover > span:first-child { color:var(--qi-blue); }
.quick-intake__disclosures { max-width:1280px; margin-inline:auto; }
.quick-intake__intro { margin-bottom:32px; }
.quick-intake h2 { font-family:var(--font-display, 'Idealist', Georgia, serif); font-size:clamp(30px,3.1vw,48px); font-weight:400; line-height:1.15; letter-spacing:-.025em; margin:0 0 12px; }
.quick-intake__intro > p { font-size:14px; line-height:1.6; max-width:70ch; margin:0; }
.quick-intake__groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 56px; }
.quick-intake__group { min-width:0; border-top:1px solid #b7ada0; padding-top:22px; }
.quick-intake h3 { font-family:var(--font-body, 'DM Sans', sans-serif); font-size:11px; line-height:1.4; font-weight:500; letter-spacing:.16em; text-transform:uppercase; margin:0 0 16px; color:#61584c; }
.quick-intake__treatment { display:grid; grid-template-columns:56px minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px 0; }
.quick-intake__treatment + .quick-intake__treatment { border-top:1px solid #e2d8c4; }
.quick-intake__treatment img { width:56px; height:80px; object-fit:contain; }
.quick-intake h4 { font:500 19px/1.3 var(--font-body, 'DM Sans', sans-serif); margin:0 0 6px; }
.quick-intake__price { font-size:14px; line-height:1.5; margin:0; font-variant-numeric:tabular-nums; }
.quick-intake__price span { display:block; color:#61584c; font-size:12px; }
.quick-intake__actions { display:flex; flex-direction:column; align-items:center; gap:5px; }
.quick-intake a.quick-intake__start { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:11px 18px; background:var(--qi-blue); color:#fff; border:1px solid var(--qi-blue); font-size:11px; letter-spacing:.06em; font-weight:500; line-height:1.4; text-align:center; text-decoration:none; border-radius:999px; transition:background .15s,color .15s; }
.quick-intake a.quick-intake__start:hover { background:#fff; color:var(--qi-blue); }
.quick-intake a.quick-intake__learn { display:inline-flex; align-items:center; min-height:36px; color:var(--qi-ink); font-size:13px; line-height:1.4; text-decoration:underline; text-underline-offset:4px; }
.quick-intake a:focus-visible { outline:3px solid var(--qi-blue); outline-offset:4px; }
.quick-intake:focus { outline:none; }
.quick-intake__description { font-size:14px; line-height:1.5; margin:0; color:#61584c; }
.quick-intake__disclosures { border-top:1px solid #e2d8c4; margin-top:14px; padding-top:16px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.quick-intake__disclosures p { font-size:12px; line-height:1.6; color:#61584c; margin:0; }
.quick-intake__approval { max-width:1280px; margin:32px auto 0; font-size:12px; line-height:1.6; color:#61584c; }
.quick-intake__sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.quick-intake__page-title { background:#faf7f0; padding:140px clamp(20px,5vw,88px) 0; }
.quick-intake__page-title h1 { max-width:1280px; margin:0 auto; font-family:var(--font-display, 'Idealist', Georgia, serif); font-size:clamp(38px,4.5vw,64px); font-weight:400; letter-spacing:-.025em; }
.quick-intake__page-title + .quick-intake { padding-top:28px; }
@media(max-width:760px) {
 .quick-intake { padding:28px 20px; scroll-margin-top:88px; }
 .quick-intake__groups { grid-template-columns:1fr; gap:28px; }
 .quick-intake__shortcuts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:24px; }
 .quick-intake__shortcuts a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px 10px; border:1px solid #b7ada0; border-radius:999px; color:var(--qi-ink); text-align:center; font-size:12px; line-height:1.4; text-decoration:none; }
 .quick-intake__shortcuts a:hover { background:#f2ede2; }
 .quick-intake__group h3 { scroll-margin-top:80px; }
 .quick-intake__treatment { gap:8px 16px; grid-template-columns:48px minmax(0,1fr); padding:20px 0; }
 .quick-intake__treatment img { width:48px; height:80px; grid-column:1; grid-row:1 / 3; align-self:start; }
 .quick-intake__details { grid-column:2; }
 .quick-intake__actions { grid-column:2; align-items:stretch; }
 .quick-intake h4 { font-size:19px; }
 .quick-intake a.quick-intake__start { min-height:48px; max-width:none; width:100%; font-size:14px; letter-spacing:.02em; padding:12px 16px; }
 .quick-intake a.quick-intake__learn { min-height:44px; font-size:14px; }
 .quick-intake__disclosures { grid-template-columns:1fr; gap:12px; }
 .quick-intake__page-title { padding-top:116px; }
}
@media(prefers-reduced-motion:reduce) { .quick-intake a { transition:none; } }

/* Native modal provides focus containment, Escape dismissal and inert backdrop. */
.quick-intake-dialog { width:min(1120px,calc(100% - 48px)); max-height:calc(100dvh - 64px); margin:auto; padding:0; border:0; border-radius:12px; color:#2e2a24; background:#faf7f0; box-shadow:0 24px 80px rgba(28,25,22,.24); overscroll-behavior:contain; }
.quick-intake-dialog::backdrop { background:rgba(28,25,22,.52); }
html:has(.quick-intake-dialog[open]) { overflow:hidden; }
.quick-intake-dialog__bar { display:flex; justify-content:flex-end; position:sticky; top:0; z-index:1; padding:8px 16px; background:#faf7f0; }
.quick-intake-dialog__close { display:inline-flex; gap:10px; align-items:center; min-height:44px; padding:8px 12px; border:0; background:transparent; color:#2e2a24; font:500 14px/1.4 'DM Sans',sans-serif; cursor:pointer; }
.quick-intake-dialog__close:hover { background:#f2ede2; }
.quick-intake-dialog__close:focus-visible { outline:2px solid #405e81; outline-offset:2px; }
.quick-intake-dialog .quick-intake { padding:0 48px 32px; border:0; }
.quick-intake-dialog .quick-intake__groups { gap:28px 36px; }
.quick-intake-dialog .quick-intake h2 { font-size:clamp(40px,4vw,56px); line-height:1.08; }
.quick-intake-dialog .quick-intake__intro { margin-bottom:36px; border:0; }
@media(max-width:760px) {
 .quick-intake-dialog { width:100%; max-width:none; height:100dvh; max-height:100dvh; margin:0; border-radius:0; }
 .quick-intake-dialog__bar { padding:calc(4px + env(safe-area-inset-top)) 12px 4px; }
 .quick-intake-dialog .quick-intake { padding:8px 20px calc(28px + env(safe-area-inset-bottom)); }
 .quick-intake-dialog .quick-intake h2 { font-size:36px; }
 .quick-intake-dialog .quick-intake__intro { margin-bottom:24px; }
}

/* Keep the landing-page coach available on phones as well as desktop. */
.edit-home .ec-fab:not(.ec-hidden) { display:block !important; }
