.quick-onboarding { padding-block: clamp(1.5rem, 5vw, 4rem); }
.quick-onboarding__layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(1.5rem,5vw,5rem); align-items:start; max-width:1100px; }
.quick-onboarding h1,.quick-selection h1 { font-family:var(--sans); font-size:clamp(1.75rem,3.5vw,2.6rem); line-height:1.18; letter-spacing:-.035em; max-width:24ch; }
.quick-onboarding__intro p { font-size:1rem; line-height:1.65; max-width:42ch; }
.quick-onboarding__path { display:grid; gap:1rem; list-style:none; padding:0; margin:2rem 0; }
.quick-onboarding__path li { display:flex; gap:.8rem; align-items:center; color:var(--ink-soft); }
.quick-onboarding__path strong { display:grid; place-items:center; width:2rem; height:2rem; flex-shrink:0; border:1px solid var(--line); border-radius:50%; }
.quick-onboarding__path [aria-current] { color:var(--ink); font-weight:600; }
.quick-onboarding__path [aria-current] strong { background:var(--brand-strong); color:#fff; }
.quick-onboarding__form { padding:clamp(1.1rem,3vw,2rem); }
.quick-onboarding__form fieldset { border:0; padding:0; min-width:0; margin-bottom:1.4rem; }
.quick-onboarding__form legend { font-size:1.1rem; font-weight:650; margin-bottom:1rem; color:var(--ink); }
.quick-onboarding__fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; }
.quick-onboarding__fields .form-group { min-width:0; }
.age-compact { grid-column:1/-1; margin-bottom:1.25rem; }
.age-compact__label { color:var(--ink); font-weight:600; font-size:.875rem; margin-bottom:.5rem; }
.age-compact__row { display:flex; align-items:flex-start; gap:.65rem; }
.age-compact__row .form-group { flex:0 0 5.5rem; width:5.5rem; margin:0; }
.age-compact__row input[type=number] { width:100%; min-height:44px; height:44px; padding:.5rem .6rem; font-size:1rem; font-variant-numeric:tabular-nums; text-align:center; }
.age-compact__separator,.age-compact__unit { line-height:44px; color:var(--ink-soft); font-size:.95rem; }
.age-compact__row .invalid-feedback { text-align:left; overflow-wrap:anywhere; }
.quick-onboarding__note,.quick-onboarding .hint-block,.quick-onboarding .form-text.text-muted { font-size:.875rem; color:var(--ink-soft)!important; line-height:1.6; }
.quick-onboarding__consents { padding:1rem; border:1px solid var(--line); border-radius:14px; margin-bottom:1.25rem; }
.quick-onboarding__consents a { display:inline-block; font-size:.875rem; margin-bottom:.75rem; }
.quick-onboarding__captcha { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; }
.quick-onboarding__captcha input { width:min(100%,12rem); }
.quick-onboarding__submit { width:100%; min-height:48px; white-space:normal; }
.quick-selection__heading { display:flex; justify-content:space-between; gap:1rem; align-items:center; flex-wrap:wrap; }
.quick-selection__filter { display:flex; gap:.75rem; align-items:center; flex-wrap:wrap; margin:1.5rem 0; }
.quick-selection__filter select { width:min(100%,18rem); }
.quick-selection__cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.quick-card { overflow:hidden; border:1px solid var(--line); border-radius:20px; background:var(--white); }
.quick-card__photos { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; background:var(--cream); }
.quick-card__photos img { width:100%; flex:0 0 100%; aspect-ratio:4/5; object-fit:cover; scroll-snap-align:start; }
.quick-card__body { padding:1.15rem; }
.quick-card h2,.quick-selection__empty h2 { font-family:var(--sans); font-size:1.25rem; line-height:1.4; margin:0 0 .35rem; }
.quick-card__body .button { width:100%; white-space:normal; }
.quick-selection__saved { margin-top:1.2rem; border-left:4px solid var(--brand); }
.quick-selection__empty { text-align:center; padding:2rem; }
@media(max-width:800px) { .quick-onboarding__layout { grid-template-columns:1fr; gap:1.5rem; } .quick-onboarding__path { margin:1rem 0; } .quick-selection__cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .quick-onboarding__fields { grid-template-columns:1fr; } .quick-onboarding__path { gap:.6rem; } .quick-selection__cards { grid-template-columns:1fr; } .quick-selection__filter label { width:100%; } .quick-selection__filter select { flex:1; min-width:0; } }
