.finder-wrap { max-width: 1120px; }
body.landing .finder-hero { padding: 60px 0 72px; }
.finder-hero h1 { font-size: clamp(42px, 6vw, 72px); margin: 20px 0; }
.finder-hero .lede { max-width: 650px; margin-bottom: 14px; }
.finder-promise { color: var(--accent); font-size: 14px; margin: 0 0 38px; }
.finder-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; scroll-margin-top: 100px; }
.finder-card { min-width: 0; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: 30px; }
.finder-card h2 { font-family: var(--font-display); font-size: 30px; line-height: 1.15; font-weight: 500; margin: 18px 0 12px; }
.finder-result { background: #edf1e9; border-color: #cdd8c7; }
.finder-card label { display: block; font-size: 14px; font-weight: 600; margin: 22px 0 8px; }
.finder-card label span { font-weight: 400; color: var(--ink-2); }
.finder-card input:not([type="checkbox"]), .finder-card select, .finder-card textarea { display: block; box-sizing: border-box; width: 100%; min-width: 0; padding: 12px; font: inherit; font-size: 16px; border: 1px solid var(--line-strong); border-radius: 8px; background: var(--surface); color: var(--ink); }
.finder-card textarea { font-family: var(--font-mono); font-size: 13px; line-height: 1.65; resize: vertical; min-height: 140px; }
.finder-card select:focus-visible, .finder-card input:focus-visible, .finder-card textarea:focus-visible, .finder-card a:focus-visible, .finder-card button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.finder-card [aria-invalid="true"] { border-color: var(--danger); }
.finder-dates { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.finder-card .finder-check { display: flex; gap: 10px; align-items: center; font-weight: 400; }
.finder-check input { width: 18px; height: 18px; accent-color: var(--accent); }
.finder-help { color: var(--ink-2); font-size: 13px; line-height: 1.6; margin: 10px 0; }
.finder-summary { color: var(--ink-2); font-size: 14px; overflow-wrap: anywhere; }
.finder-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 12px; }
.finder-card [hidden] { display: none; }
.finder-privacy { border-top: 1px solid #cdd8c7; margin-top: 22px; padding-top: 18px; color: var(--ink-2); font-size: 13px; }
.finder-error { border-left: 3px solid var(--danger); padding: 12px 16px; background: #fff4f1; font-size: 14px; }
.finder-error ul { padding-left: 18px; margin-bottom: 0; }
.finder-error a { color: var(--danger); }
body.landing .finder-explainer { padding: 64px 0; }
.finder-tips { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.finder-tips .section-title { font-size: 36px; }
.finder-tips ul { padding-left: 20px; }
.finder-tips li { margin-bottom: 14px; }
.finder-tips p, .finder-tips li { color: var(--ink-2); }
.finder-guide-link { font-size: 14px; }
@media (max-width: 760px) {
    .finder-grid, .finder-tips { grid-template-columns: 1fr; gap: 24px; }
    .finder-card { padding: 22px; }
    body.landing .finder-hero { padding-top: 36px; }
    .finder-card h2 { font-size: 28px; }
}
@media (max-width: 380px) {
    .finder-dates { grid-template-columns: 1fr; gap: 0; }
}

.finder-instructions { padding-left: 20px; font-size: 14px; line-height: 1.6; color: var(--ink-2); }
.finder-instructions li { margin: 12px 0; }
