/* TG real-estate.css: Real estate page (/<st>/<town>/real-estate), from mocks/src/real-estate/real-estate.css (the rules the
   no-deeds page uses) + its rs-* rules. EDITED IN PLACE (10/15): change rules here by hand; css_lint guards the result. */
.re-hero h1{font-size:clamp(26px,3.2vw,38px);line-height:1.12;letter-spacing:-.03em;margin:8px 0 0}
.re-hero h1 em{font-style:normal;color:var(--accent-ink)}
.re-qs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;padding:12px;border-radius:14px;background:rgba(255,255,255,.92);border:1px solid var(--line);box-shadow:0 6px 24px rgba(15,22,35,.08);max-width:640px}
.re-qs-l{font-weight:700;font-size:14px;margin-right:4px;flex-basis:100%}
.re-qs .re-more{border:0;background:none;color:var(--accent-ink)}
.re-kpis{position:relative;z-index:1;margin-top:22px}
.re-sec{margin-top:44px}
.re-sec h2{font-size:clamp(22px,2.4vw,28px);letter-spacing:-.025em;line-height:1.2;margin:6px 0 0}
.re-lede{color:var(--ink-2);margin:8px 0 0;max-width:680px}
.re-src{margin:12px 0 0;max-width:760px}
/* search builder + site directory */
.re-build{margin-top:16px;display:flex;flex-wrap:wrap;gap:14px 18px;align-items:flex-end;background:linear-gradient(160deg,var(--accent-tint),#fff 75%)}
.re-build-f{display:flex;flex-wrap:wrap;gap:10px}
.re-build select,.re-rb input,.re-rb select{height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:14px;color:var(--ink);background:#fff;min-width:110px}
.re-build-go{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.re-build-n{font-size:12.5px;color:var(--muted);flex-basis:100%}
.re-sgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-top:22px}
.re-sg h3{font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.re-sl{display:grid;gap:8px}
.re-site{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:#fff;transition:border-color .15s,transform .15s}
.re-site:hover{border-color:var(--accent);transform:translateY(-1px)}
.re-site b{font-size:14.5px}
.re-site span{grid-column:1;font-size:12.5px;color:var(--muted)}
.re-site .ic{grid-row:1/3;grid-column:2;width:16px;height:16px;color:var(--faint)}
.re-tw{margin-top:10px;border:1px solid var(--line);border-radius:14px;overflow-x:auto;background:#fff}
/* budget */
.re-bud{margin-top:16px}
.re-bud-l{display:flex;justify-content:space-between;font-weight:700}
.re-bud-l output{font-size:22px;color:var(--accent-ink)}
.re-bud input[type=range]{width:100%;accent-color:var(--accent);margin:10px 0 4px}
.re-bud-r{margin:6px 0 0;color:var(--ink-2)}
/* rent or buy */
.re-rb{margin-top:16px;display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:24px}
.re-rb-f{display:grid;gap:10px}
.re-rb small{font-weight:500;color:var(--faint)}
.re-rb-out{display:flex;flex-direction:column;gap:10px;justify-content:center}
.re-rb-bar{display:grid;grid-template-columns:100px 1fr 80px;align-items:center;gap:10px;font-size:13.5px}
.re-rb-bar i{display:block;height:14px;border-radius:5px;background:var(--accent);transition:width .3s;min-width:2px}
.re-rb-bar i.tx{background:#4f46e5}
.re-rb-bar i.in{background:#e08a1e}
.re-rb-bar i.rn{background:var(--bar)}
.re-rb-bar b{text-align:right}
.re-rb-rent{border-top:1px dashed var(--line);padding-top:10px}
.re-rb-say{margin:4px 0 0;color:var(--ink-2)}
/* before you buy */
.re-know{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:16px}
.re-know h3{font-size:15px;margin:4px 0 0}
.re-know p{font-size:13.5px;color:var(--ink-2);margin:6px 0 8px}
.re-know .link{font-size:13.5px}
/* owners */
.re-own{display:grid;grid-template-columns:1fr 280px;gap:28px;align-items:center;border-radius:18px;padding:28px;background:var(--night);color:#fff}
.re-own .kick{color:var(--accent-soft)}
.re-own p{color:#c9d0db;max-width:520px}
.re-own-b{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.re-own-b .btn:not(.btn-accent){background:transparent;color:#fff;border-color:#3a4558}
.re-own-card{background:#fff;color:var(--ink);border-radius:14px;overflow:hidden;transform:rotate(1.5deg);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.re-own-ph{height:130px;background:linear-gradient(135deg,#cfe9da,#9fd3b6 50%,#6fbf95)}
.re-own-i{padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:13.5px}
.re-own-i .num{font-size:18px;font-weight:700}
@media (max-width:760px){.re-rb,.re-own{grid-template-columns:1fr}.re-own-card{display:none}}
/* sales history (rh-*) */
.rh-take{margin-top:16px;background:var(--accent-tint);border-color:var(--accent-soft)}
.rh-take h3{margin:0 0 8px;font-size:16px}
.rh-take ul{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--ink-2);font-size:14.5px}
.rh-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.rh-wide{grid-column:1/-1}
.rh-c h3{font-size:18px;letter-spacing:-.02em;line-height:1.25;margin:4px 0 0}
.rh-c p{font-size:14px;color:var(--ink-2);margin:8px 0 0;max-width:720px}
.rh-k{font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.rh-svg{width:100%;height:auto;display:block;margin-top:10px;overflow:visible}
.rh-svg text{font-size:11px;fill:var(--faint)}
.rh-svg .gl{stroke:var(--hair)}
.rh-svg .bar{fill:var(--accent-soft)}
.rh-svg .hot{fill:none;stroke:#e08a1e;stroke-width:2.5;stroke-linejoin:round}
.rh-svg .hotd{fill:#e08a1e;stroke:#fff;stroke-width:1.5}
.rh-svg .ax2{fill:#c0701a}
.rh-svg .sweet{fill:var(--accent-tint)}
.rh-svg .sweet-t{fill:var(--accent-ink);font-weight:700}
.rh-svg .b-inv{fill:#c7d2fe}
.rh-svg .b-inv.now{fill:#4f46e5}
.rh-svg .b-drop{fill:#fcd9a8}
.rh-svg .b-drop.now{fill:#e08a1e}
.rh-svg .nowt{fill:var(--ink);font-weight:700}
.rh-svg .ln-h{fill:none;stroke:var(--accent);stroke-width:2.5}
.rh-svg .ln-hd{fill:var(--accent);stroke:#fff;stroke-width:1.5}
.rh-svg .ln-ht{fill:var(--accent-ink);font-weight:700;font-size:12px}
.rh-svg .ln-c{fill:none;stroke:#4f46e5;stroke-width:2.5}
.rh-svg .ln-cd{fill:#4f46e5;stroke:#fff;stroke-width:1.5}
.rh-svg .ln-ct{fill:#4f46e5;font-weight:700;font-size:12px}
.rh-leg{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);font-weight:600;margin-top:10px}
.rh-leg i{display:inline-block;width:12px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.lg-bar{background:var(--accent-soft)}
.lg-hot{background:#e08a1e;height:3px!important;vertical-align:3px!important}
.rh-tbl th,.rh-tbl td{padding:10px 12px;border-bottom:1px solid var(--hair);text-align:right;white-space:nowrap}
.rh-tbl thead th{font-size:12px;color:var(--muted);background:var(--surface)}
.rh-tbl th[scope=row]{text-align:left;font-weight:600;white-space:normal}
.rh-tbl th small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.rh-tbl .rh-now{background:var(--accent-tint);font-weight:700;color:var(--accent-ink)}
.rh-tbl tr:last-child>*{border-bottom:0}
.rh-c .re-tw{margin-top:12px}
.rh-rks{display:grid;gap:4px;margin:12px 0 10px;max-width:560px}
.rh-rk{display:grid;grid-template-columns:28px 130px 1fr 48px;align-items:center;gap:10px;padding:6px 10px;border-radius:9px;font-size:14px}
.rh-rk:hover{background:var(--surface)}
.rh-rk.me{background:var(--accent-tint);font-weight:700}
.rh-rk-n{color:var(--muted);font-size:12.5px}
.rh-rk-bar{height:9px;border-radius:99px;background:var(--hair)}
.rh-rk-bar i{display:block;height:100%;border-radius:99px;background:#e08a1e}
.rh-rk.me .rh-rk-bar i{background:var(--accent)}
.rh-rk b{text-align:right}
.rh-rk-gap{padding-left:16px;color:var(--faint)}
.rh-fair-f{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.rh-fair-f input,.rh-fair-f select{height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:14px;width:150px;background:#fff}
.rh-fair-v{font-size:15px!important}
.rh-fair-v .hi{color:var(--bad)}
.rh-fair-v .lo{color:var(--good)}
.rh-fair-v .ok{color:var(--accent-ink)}
@media (max-width:760px){.rh-grid{grid-template-columns:1fr}.rh-rk{grid-template-columns:24px 100px 1fr 40px}}
.rh-wide .rh-svg{max-width:820px}
.rh-tbl td,.rh-tbl th{vertical-align:middle}
@media (max-width:760px){.rh-tbl th small{display:none}.rh-tbl th[scope=row]{min-width:120px}.rh-tbl th,.rh-tbl td{padding:9px 8px;font-size:13px}.rh-c{padding:14px}}
/* what sold by type,budget in square feet,nearby markets (the no-deeds page) */
.rs-types{grid-template-columns:repeat(3,minmax(0,1fr))}
.rs-big{display:block;font-size:32px;line-height:1.1;margin:4px 0 2px}
.rs-dl{display:grid;gap:6px;margin:12px 0 0}
.rs-dl div{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:6px}
.rs-dl dt{color:var(--muted)}
.rs-dl dd{margin:0;font-weight:600}
.rs-dl small{font-weight:400;color:var(--muted);margin-left:6px}
.rs-minor p{font-size:15px}
.rs-buys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0 8px}
.rs-buys b{display:block;font-size:24px}
.rs-buys small{color:var(--muted)}
.rs-years,#budget .rh-fair{margin-top:16px}
.rs-nb tr.me th,.rs-nb tr.me td{font-weight:700;box-shadow:inset 0 -2px 0 currentColor}
@media (max-width:760px){.rs-types,.rs-buys{grid-template-columns:1fr}}
