/* Housing page (app/housing-page.php) — scoped .housing2. Reuses the Guide's .gd2 page-head + rk-chip. */
.housing2 .page-head .gd-lede{color:var(--text);font-size:17px;line-height:1.5;margin-top:8px;max-width:62ch}
.housing2 .page-head .gd-lede+p{margin-top:4px;font-size:14px}
.housing2 .hs-card{background:var(--surface);border:1px solid var(--line-2);border-radius:16px;padding:18px 20px;margin-top:16px;min-width:0}
.housing2 .hs-card h2{font-family:var(--display);font-size:19px;font-weight:700;margin:2px 0 4px}
.housing2 .hs-card .kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.housing2 .hs-sub{color:var(--muted);font-size:13.5px;margin-bottom:12px}
.housing2 .hs-p{font-size:14.5px;color:var(--copy);line-height:1.55}
.housing2 .hs-note{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.5}
.housing2 .hs-tiles{display:grid;grid-template-columns:repeat(var(--hs-n,5),minmax(0,1fr));gap:10px;margin-top:14px;max-width:calc(var(--hs-n,5) * 220px)} /* a lone tile stays tile-sized */
.housing2 .hs-tiles-2{grid-template-columns:1fr 1fr}
.housing2 .hs-tile{background:var(--surface-2);border-radius:12px;padding:12px 14px;min-width:0}
.housing2 .hs-tile .k{font-size:12px;color:var(--muted);font-weight:600}
.housing2 .hs-tile .v{font-family:var(--display);font-size:24px;font-weight:800;color:var(--text);margin-top:2px;font-variant-numeric:tabular-nums}
.housing2 .hs-tile .s{font-size:12px;color:var(--muted);margin-top:2px}
.housing2 .hs-up{color:var(--green);font-weight:700}
.housing2 .hs-down{color:var(--rose);font-weight:700}
.housing2 .hs-temp-bar{position:relative;height:10px;border-radius:999px;background:linear-gradient(90deg,#d9e6f2 0%,var(--surface-hi) 50%,#f2dfd3 100%);margin-top:10px}
.housing2 .hs-temp-dot{position:absolute;top:50%;width:18px;height:18px;border-radius:50%;background:var(--text);border:3px solid var(--surface);transform:translate(-50%,-50%);box-shadow:0 1px 3px rgba(0,0,0,.25)}
.housing2 .hs-temp-lab{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:8px}
.housing2 .hs-temp p{font-size:15px;color:var(--copy);margin-top:10px;line-height:1.55}
.housing2 .hs-legend{display:flex;gap:16px;font-size:13px;color:var(--copy);margin:6px 0}
.housing2 .hs-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;vertical-align:middle;margin-right:6px}
.housing2 .hs-sw-town{background:#0e9f57}
.housing2 .hs-sw-state{background:#6b57c9}
.housing2 .hs-chart{position:relative}
.housing2 .hs-chart svg{width:100%;height:auto;display:block}
.housing2 .hs-grid{stroke:var(--line);stroke-width:1}
.housing2 .hs-ax{font:11px var(--sans);fill:var(--muted)}
.housing2 .hs-lab{font:700 12px var(--display);fill:var(--text)}
.housing2 .hs-line-town,.housing2 .hs-line-state{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.housing2 .hs-line-town{stroke:#0e9f57}
.housing2 .hs-line-state{stroke:#6b57c9}
.housing2 .hs-cross{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3}
.housing2 .hs-dot-town{fill:#0e9f57;stroke:var(--surface);stroke-width:2}
.housing2 .hs-dot-state{fill:#6b57c9;stroke:var(--surface);stroke-width:2}
.housing2 .hs-tip{position:absolute;pointer-events:none;background:var(--text);color:#fff;font-size:12.5px;line-height:1.45;border-radius:8px;padding:7px 10px;white-space:nowrap;transform:translate(-50%,-115%);z-index:2}
.housing2 .hs-tip b{font-family:var(--display)}
.housing2 .hs-table{margin-top:8px;font-size:13px;color:var(--muted)}
.housing2 .hs-table summary{cursor:pointer}
.housing2 .hs-tw{overflow-x:auto}
.housing2 .hs-t{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums;margin-top:8px}
.housing2 .hs-t th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:700;padding:8px 6px;border-bottom:1px solid var(--line-2);white-space:nowrap}
.housing2 .hs-t td{padding:9px 6px;border-bottom:1px solid var(--line);white-space:nowrap}
.housing2 .hs-t tr.me td{font-weight:700;background:var(--green-bg)}
.housing2 .hs-t a{color:var(--green);font-weight:600;text-decoration:none}
.housing2 .hs-list a{display:flex;justify-content:space-between;gap:12px;padding:11px 2px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);font-size:14.5px}
.housing2 .hs-list a small{color:var(--muted);white-space:nowrap}
.housing2 .hs-list a:last-child{border-bottom:0}
.housing2 .hs-list a:hover span{color:var(--green)}
.housing2 .hs-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.housing2 .hs-two>.hs-card:only-child{grid-column:1/-1}
.housing2 .hs-src{font-size:12px;color:var(--faint);margin-top:14px;line-height:1.5}
.housing2 .hs-src a{color:inherit;text-decoration:underline}
@media(max-width:760px){.housing2 .hs-tiles{grid-template-columns:repeat(min(2,var(--hs-n,2)),minmax(0,1fr))}}
@media(max-width:640px){.housing2 .hs-two{grid-template-columns:1fr}.housing2 .hs-list a{flex-direction:column;gap:2px}}
