/* Housing Finder: one compact work surface, using the site's existing theme. */
.hf-page{background:var(--paper);color:var(--ink)}
.hf-page [hidden]{display:none!important}
.hf-hero{padding:38px 0 32px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 85% 30%,rgba(223,28,54,.07),transparent 50%)}
.hf-hero .eyebrow{display:block;margin-top:23px}
.hf-hero h1{font-size:clamp(2.8rem,5.5vw,5.1rem);line-height:1.02;letter-spacing:-.055em;margin:16px 0 18px;max-width:970px}
.hf-hero h1 em{font-style:normal;color:var(--red)}
.hf-hero .lede{max-width:780px;font-size:1.08rem}
.hf-proof{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.hf-proof span{font-size:.76rem;padding:6px 10px;border:1px solid var(--line);border-radius:999px}
.hf-workspace{padding:32px 0 48px}.hf-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:26px;align-items:start}
.hf-panel{padding:25px;border:1px solid var(--line);border-radius:20px;background:var(--white);margin-bottom:18px;min-width:0}
.hf-panel h2{font-size:1.6rem;line-height:1.15;letter-spacing:-.035em;margin:9px 0 12px}.hf-panel h3{font-size:1.13rem;line-height:1.4;margin:0 0 10px}
.hf-panel p{line-height:1.65}.hf-form-panel{position:sticky;top:94px}
.hf-form-panel .field{margin-top:17px}.hf-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hf-page .input{max-width:100%;min-width:0;font-size:1rem;background:var(--paper);color:var(--ink)}
.hf-page .field>small,.hf-help{font-size:.77rem;color:var(--muted);line-height:1.6;margin:8px 0}
.hf-help a,.hf-links a{color:var(--red);font-weight:750}.hf-page .field>span{font-size:.8rem}
.hf-page .btn{min-height:44px;white-space:normal;text-align:center}.hf-form-panel button.full{margin-top:24px}
.hf-details{margin-top:18px}.hf-details summary{cursor:pointer;font-size:.88rem;font-weight:800;min-height:44px;align-content:center;line-height:1.5}.hf-details summary:focus-visible,.hf-page a:focus-visible,.hf-page button:focus-visible,.hf-page input:focus-visible,.hf-page select:focus-visible,.hf-page textarea:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.hf-details[open]>summary{margin-bottom:14px}.hf-empty{padding:38px;min-height:410px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(125deg,rgba(223,28,54,.045),transparent),var(--white)}
.hf-empty h2{font-size:2.25rem;max-width:570px}.hf-empty p{color:var(--muted)}.hf-empty ol{padding-left:22px;line-height:1.8;margin:22px 0}.hf-empty .meta{font-size:.78rem}
.hf-result-heading{padding:8px 0 21px}.hf-result-heading h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.12;letter-spacing:-.04em;margin:8px 0 12px;overflow-wrap:anywhere}.hf-result-heading p{color:var(--muted);line-height:1.5}
.hf-price{border-left:4px solid var(--red)}.hf-price h3{font-size:1.25rem;margin:8px 0}.hf-price p{font-size:.8rem;color:var(--muted)}.hf-price .hf-budget-note{color:var(--ink);margin-top:10px}
.hf-portals-section{margin:26px 0}.hf-portals-section>h3{font-size:1.35rem;margin-bottom:8px}.hf-portals-section>.meta{line-height:1.65;margin-bottom:16px}
.hf-portals{display:grid;gap:10px}.hf-portal{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);padding:19px;border-radius:17px;background:var(--white)}
.hf-rank{align-self:start;padding-top:2px;font:800 .78rem var(--mono);color:var(--red)}.hf-portal h3{font-size:1rem;margin:0 0 6px}.hf-portal p{font-size:.81rem;line-height:1.6;color:var(--muted);margin:0}.hf-portal .btn{font-size:.75rem;padding:10px 13px}
.hf-more{padding:0 5px}.hf-copy-text{font-size:.86rem!important;line-height:1.6;resize:vertical;width:100%}.hf-page textarea{width:100%;line-height:1.6;resize:vertical}
.hf-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:17px}.hf-actions>a{font-size:.82rem;font-weight:750;padding:10px 0}
.hf-terms{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:16px 0}.hf-terms li{padding:7px 10px;border-radius:10px;background:var(--paper);border:1px solid var(--line);font-size:.78rem;overflow-wrap:anywhere;max-width:100%}
.hf-checks{padding-left:20px;font-size:.9rem;line-height:1.7}.hf-checks li{padding-bottom:10px}.hf-safety{padding:17px;border-radius:12px;background:var(--paper);font-size:.83rem;margin:14px 0}.hf-safety strong{display:block;margin-bottom:3px}
.hf-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:18px;font-size:.82rem}.hf-feedback{font-size:.88rem;font-weight:700;line-height:1.6;margin:14px 0}.hf-feedback:empty{display:none}
.hf-method{background:var(--white);border-top:1px solid var(--line)}.hf-method h2{font-size:1.8rem;margin-bottom:25px}.hf-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.hf-method-grid h3{font-size:1rem;margin-bottom:10px}.hf-method-grid p{font-size:.85rem;color:var(--muted);line-height:1.75}
@media(max-width:1000px){.hf-layout{grid-template-columns:minmax(260px,310px) minmax(0,1fr);gap:18px}.hf-panel{padding:20px}.hf-portal{grid-template-columns:28px minmax(0,1fr)}.hf-portal>a{grid-column:2}.hf-empty{padding:25px}.hf-empty h2{font-size:1.8rem}}
@media(max-width:760px){.hf-hero{padding:26px 0}.hf-hero h1{font-size:clamp(2.65rem,9vw,4rem)}.hf-hero h1 br{display:none}.hf-layout{grid-template-columns:1fr}.hf-form-panel{position:static}.hf-workspace{padding-top:22px}.hf-panel{border-radius:16px}.hf-empty{min-height:260px}.hf-method-grid{grid-template-columns:1fr;gap:25px}.hf-actions .btn{flex:1 1 145px}.hf-hero .lede{font-size:1rem}.hf-proof span{font-size:.7rem}.hf-portal{padding:16px;gap:10px}}
@media(prefers-reduced-motion:reduce){.hf-page *{scroll-behavior:auto!important;transition:none!important}}
/* Native select labels and copyable filters must remain fully visible. */
.hf-form-row{grid-template-columns:1fr}
.hf-page textarea.input{height:auto;min-height:155px}
.hf-page [data-housing-message]{min-height:260px}
