.homes-page {
  --font-display:'Plus Jakarta Sans',ui-serif,Georgia,serif;
  background-color:#f2ede3;
  background-image:radial-gradient(rgba(16,23,38,.05) 1px,transparent 1px);
  background-size:3px 3px;
  color:var(--text-dark);
}
.homes-page .site-header { position:relative; }
.homes-shell { min-height:100vh; }
.homes-intro { background:linear-gradient(125deg,#101726 0%,#2D3A55 62%,#284d7d 100%); color:#fff; padding:46px 0 36px; }
.homes-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:34px; align-items:end; }
.homes-kicker { color:#e2c46d; font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:.78rem; letter-spacing:2.6px; text-transform:uppercase; margin-bottom:8px; }
.homes-intro h1 { font-family:var(--font-display); font-weight:600; font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.08; margin-bottom:14px; position:relative; display:inline-block; padding-bottom:14px; }
.homes-intro h1::after { content:''; position:absolute; left:0; bottom:0; width:64px; height:3px; background:#e2c46d; border-radius:2px; }
.homes-intro p { color:rgba(255,255,255,.78); max-width:700px; }
.homes-trust { display:flex; gap:16px; flex-wrap:wrap; font-size:.78rem; color:rgba(255,255,255,.78); }
.homes-trust i { color:#e2c46d; margin-right:5px; }
.data-freshness-banner { display:flex; align-items:center; gap:10px; flex-wrap:wrap; background:#fdf7e8; border-bottom:1px solid #f0d98a; padding:10px 24px; font-size:.78rem; color:#5a4a1e; }
.data-freshness-banner i { color:#b8860b; flex-shrink:0; }
.data-freshness-banner .freshness-line { font-weight:600; white-space:nowrap; }
.data-freshness-banner .freshness-disclaimer { color:#6b5a2e; opacity:.92; }
.homes-searchbar { background:#fff; border-radius:14px; padding:12px; box-shadow:0 18px 44px rgba(4,13,29,.28); display:grid; grid-template-columns:minmax(240px,2fr) repeat(3,minmax(120px,1fr)); gap:8px; margin-top:28px; }
.homes-searchbar label { position:relative; }
.homes-searchbar label i { position:absolute; left:15px; top:50%; transform:translateY(-50%); color:#66758e; }
.homes-searchbar input,.homes-searchbar select { width:100%; height:48px; border:1px solid #d9dfeb; border-radius:9px; background:#fff; color:#192233; font:600 .88rem 'Inter',system-ui,sans-serif; padding:0 13px; outline:none; }
.homes-searchbar input { padding-left:42px; }
.homes-searchbar input:focus,.homes-searchbar select:focus { border-color:#2D3A55; box-shadow:0 0 0 3px rgba(27,58,107,.1); }
.homes-content { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:26px; padding:30px 24px 70px; max-width:1320px; margin:0 auto; align-items:start; }
.homes-toolbar { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:16px; }
.homes-count { font-weight:700; color:#192233; }
.homes-count small { display:block; color:#6b7890; font-weight:500; margin-top:2px; }
.demo-pill { display:inline-flex; align-items:center; gap:7px; color:#744f00; background:#fff4cc; border:1px solid #ecd884; border-radius:100px; padding:7px 11px; font-size:.72rem; font-weight:700; }
.homes-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.home-card { appearance:none; width:100%; text-align:left; border:1px solid #dfe4ed; background:#fff; border-radius:15px; overflow:hidden; box-shadow:0 4px 16px rgba(16,23,38,.07); cursor:pointer; transition:.22s ease; color:inherit; }
.home-card:hover,.home-card.selected { transform:translateY(-3px); box-shadow:0 14px 34px rgba(16,23,38,.16); border-color:#a4b2c8; }
.home-card.selected { outline:3px solid rgba(35,71,200,.16); border-color:#2347C8; }
.home-visual { height:184px; position:relative; overflow:hidden; background:linear-gradient(145deg,var(--card-accent),#17243c); }
.home-visual::before { content:""; position:absolute; inset:38% -8% -32%; background:#eef2f7; transform:rotate(-3deg); border-radius:18px 18px 0 0; box-shadow:0 -18px 0 rgba(255,255,255,.16); }
.home-visual::after { content:""; position:absolute; width:46%; height:40%; left:27%; bottom:0; background:linear-gradient(90deg,#d9dfe7 0 12%,#fafafa 12% 40%,#9aa9bb 40% 58%,#fafafa 58% 88%,#d9dfe7 88%); clip-path:polygon(0 35%,50% 0,100% 35%,100% 100%,0 100%); filter:drop-shadow(0 5px 5px rgba(0,0,0,.2)); }
.home-status { position:absolute; z-index:2; top:12px; left:12px; color:#fff; background:rgba(15,26,46,.86); border:1px solid rgba(255,255,255,.22); border-radius:100px; padding:6px 10px; font-size:.67rem; font-weight:700; text-transform:uppercase; letter-spacing:.4px; }
.home-favorite { position:absolute; z-index:2; right:12px; top:12px; width:34px; height:34px; display:grid; place-items:center; color:#192233; background:#fff; border-radius:50%; }
.home-card-body { padding:17px; }
.home-builder { color:#1B37A6; font-size:.73rem; font-weight:800; letter-spacing:.7px; text-transform:uppercase; }
.home-card h2 { font-size:1.2rem; margin:4px 0 2px; color:#17243c; }
.home-location { color:#6c7890; font-size:.8rem; margin-bottom:11px; }
.home-price { font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:1.55rem; color:#192233; font-weight:700; }
.home-facts { display:flex; flex-wrap:wrap; gap:6px 14px; color:#4e5c73; font-size:.78rem; margin:9px 0 13px; }
.home-credit { border-top:1px solid #edf0f5; padding-top:12px; display:flex; justify-content:space-between; align-items:center; gap:8px; color:#526078; font-size:.72rem; }
.home-credit strong { color:#14804a; font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:1rem; }
.savings-panel { position:sticky; top:22px; background:#fff; border:1px solid #dbe1eb; border-radius:18px; overflow:hidden; box-shadow:0 16px 44px rgba(16,23,38,.13); }
.savings-head { background:linear-gradient(135deg,#192233,#2D3A55); color:#fff; padding:24px; }
.savings-label { color:#e2c46d; font-size:.68rem; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; }
.savings-head h2 { font-family:var(--font-display,'Plus Jakarta Sans',serif); font-weight:600; font-size:1.5rem; line-height:1.2; margin:5px 0 4px; }
.savings-home { color:rgba(255,255,255,.7); font-size:.78rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.savings-builder-link { display:none; margin-top:8px; color:#e2c46d; font-size:.72rem; font-weight:700; text-decoration:none; }
.savings-builder-link:hover { text-decoration:underline; }
.savings-price { padding:20px 22px 8px; display:flex; justify-content:space-between; align-items:end; }
.savings-price span { color:#66738a; font-size:.75rem; }
.savings-price strong { font-family:'Plus Jakarta Sans',system-ui,sans-serif; color:#192233; font-size:1.45rem; }
.service-options { padding:8px 14px; }
.service-card { display:block; border:1px solid #e0e5ee; border-radius:12px; padding:14px; margin-bottom:10px; cursor:pointer; transition:.2s; }
.service-card:has(input:checked) { border-color:#2347C8; background:#fff8f7; box-shadow:0 0 0 2px rgba(35,71,200,.08); }
.service-card input { position:absolute; opacity:0; }
.service-top { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.service-name { font-weight:800; color:#192233; font-size:.83rem; }
.service-badge { color:#1B37A6; background:#f9dfdc; border-radius:100px; padding:3px 7px; font-size:.58rem; font-weight:800; text-transform:uppercase; }
.service-amount { display:block; color:#14804a; font:700 1.8rem 'Plus Jakarta Sans',system-ui,sans-serif; margin:4px 0 2px; }
.service-card small { color:#68758b; font-size:.67rem; line-height:1.4; display:block; }
.savings-actions { padding:8px 22px 22px; }
.savings-actions .btn { justify-content:center; width:100%; margin-top:8px; font-size:.85rem; }
.savings-actions .secondary-link { display:block; text-align:center; color:#2D3A55; font-weight:700; font-size:.78rem; padding:12px 0 2px; }
.savings-disclaimer { color:#778298; font-size:.6rem; line-height:1.45; margin-top:10px; }
.mobile-savings { display:none; }
.homes-empty { display:none; grid-column:1/-1; background:#fff; border:1px dashed #b8c2d3; border-radius:14px; padding:48px 20px; text-align:center; color:#66738a; }
@media (max-width:980px) { .homes-content { grid-template-columns:minmax(0,1fr) 310px; } .homes-grid { grid-template-columns:1fr; } .homes-searchbar { grid-template-columns:1fr 1fr; } }
@media (max-width:760px) { .inventory-filters { overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:6px; scrollbar-width:thin; } .homes-intro { padding-top:30px; } .homes-intro-grid { grid-template-columns:1fr; } .homes-trust { display:none; } .data-freshness-banner { flex-direction:column; align-items:flex-start; padding:10px 14px; } .data-freshness-banner .freshness-line { white-space:normal; } .homes-searchbar { grid-template-columns:1fr 1fr; } .homes-searchbar label { grid-column:1/-1; } .homes-content { display:block; padding:20px 14px 178px; } .homes-grid { grid-template-columns:1fr; } .savings-panel { display:none; } .home-visual { height:170px; } .mobile-savings { display:flex; position:fixed; z-index:1000; left:10px; right:10px; bottom:calc(68px + env(safe-area-inset-bottom)); align-items:center; justify-content:space-between; gap:12px; background:#152441; color:#fff; border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:11px 12px 11px 15px; box-shadow:0 10px 34px rgba(0,0,0,.35); } .mobile-savings span { display:block; color:rgba(255,255,255,.68); font-size:.62rem; } .mobile-savings strong { color:#f2ce69; font:700 1.25rem 'Plus Jakarta Sans',system-ui,sans-serif; } .mobile-savings .btn { padding:10px 13px; font-size:.7rem; } }
@media (max-width:480px) { .homes-searchbar { grid-template-columns:1fr; } .homes-searchbar label { grid-column:auto; } .homes-toolbar { align-items:flex-start; } .demo-pill { max-width:145px; border-radius:10px; } }

/* Private home-matching funnel */
.matcher-page{background:#fff}.match-hero{background:radial-gradient(circle at 8% 15%,rgba(127,168,255,.15),transparent 28%),linear-gradient(125deg,#0d182b,#2D3A55);padding:64px 0 72px;color:#fff}.match-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,510px);gap:64px;align-items:center}.match-copy h1{font-size:clamp(2.7rem,5vw,4.6rem);letter-spacing:-1px;margin:8px 0 18px}.match-copy h1 span{color:#e1c36c}.match-lead{font-size:1.08rem;color:rgba(255,255,255,.78);max-width:650px;line-height:1.75}.match-benefits{display:grid;gap:17px;margin:32px 0}.match-benefits>div{display:flex;gap:14px;align-items:center}.match-benefits i{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:rgba(255,255,255,.1);color:#e1c36c}.match-benefits strong{display:block;font-size:.86rem}.match-benefits span{color:rgba(255,255,255,.65);font-size:.78rem}.market-proof{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.7rem}.market-proof strong{margin-right:4px}.market-proof span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);padding:6px 9px;border-radius:100px}.market-proof .coming{color:rgba(255,255,255,.52)}
.match-card{background:#fff;color:#18243a;border-radius:20px;padding:28px;box-shadow:0 28px 70px rgba(0,0,0,.3);min-height:590px}.match-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:27px}.match-progress span{height:4px;background:#e3e7ee;border-radius:10px}.match-progress span.active{background:#2347C8}.match-step{display:none}.match-step.active{display:block;animation:matchIn .25s ease}@keyframes matchIn{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}.match-step-label{color:#a01818;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px}.match-step h2{font-size:1.8rem;margin:5px 0}.match-step>p{color:#738097;font-size:.82rem;margin-bottom:20px}.match-fields{display:grid;gap:14px;margin:20px 0}.match-fields.two-col{grid-template-columns:1fr 1fr}.match-fields label{display:block}.match-fields label>span{display:block;color:#42506a;font-size:.7rem;font-weight:800;margin:0 0 6px}.match-fields select,.match-fields input,.match-fields textarea{width:100%;border:1px solid #d9dfe9;background:#fbfcfe;border-radius:9px;padding:11px 12px;color:#192233;font:600 .79rem 'Inter',system-ui,sans-serif;outline:none}.match-fields select,.match-fields input{height:45px}.match-fields textarea{resize:vertical;line-height:1.5}.match-fields select:focus,.match-fields input:focus,.match-fields textarea:focus{border-color:#2D3A55;box-shadow:0 0 0 3px rgba(27,58,107,.1)}.full-field{grid-column:1/-1}.match-buttons{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.match-back{border:0;background:none;color:#56647b;font-weight:700;cursor:pointer;padding:10px}.match-card .btn{padding:13px 20px;font-size:.82rem}.match-honey{position:absolute!important;left:-10000px!important}.mini-savings{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.mini-savings>div{border:1px solid #dfe4ec;border-radius:11px;padding:13px;background:#f8fafc}.mini-savings span{display:block;color:#647188;font-size:.65rem;font-weight:700}.mini-savings strong{display:block;color:#15804b;font:700 1.55rem 'Plus Jakarta Sans',system-ui,sans-serif}.mini-savings small{display:block;color:#78849a;font-size:.55rem}.match-consent{display:flex;gap:9px;align-items:flex-start;color:#68758a;font-size:.59rem;line-height:1.5;margin:12px 0}.match-consent input{margin-top:2px;flex:0 0 auto}.match-consent a{color:#1B37A6;text-decoration:underline}.match-status{display:none;margin-top:12px;padding:10px;border-radius:8px;font-size:.72rem}.match-status.error{display:block;background:#fdeaea;color:#991b1b}.match-success{text-align:center;padding:20px 5px}.success-check{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;background:#e4f5eb;color:#15804b;font-size:1.7rem;margin:12px auto 18px}.success-next{display:grid;text-align:left;background:#f5f7fa;border-radius:12px;padding:17px;gap:10px;margin:22px 0}.success-next>strong{color:#192233}.success-next span{color:#617087;font-size:.75rem}.success-next b{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#2D3A55;color:#fff;margin-right:8px;font-size:.65rem}
.savings-explainer{padding:76px 0;background:#f5f7fa}.savings-explainer .section-header{margin-bottom:34px}.savings-demo{display:grid;grid-template-columns:minmax(280px,1.4fr) 1fr 1fr;gap:18px;max-width:1040px;margin:auto}.demo-control,.demo-result{background:#fff;border:1px solid #dde3ec;border-radius:15px;padding:24px;box-shadow:0 6px 20px rgba(16,23,38,.07)}.demo-control label{display:flex;justify-content:space-between;color:#536177;font-size:.78rem}.demo-control label strong{font:700 1.3rem 'Plus Jakarta Sans',system-ui,sans-serif;color:#192233}.demo-control input{width:100%;accent-color:#2347C8;margin:27px 0 5px}.range-labels{display:flex;justify-content:space-between;color:#8993a5;font-size:.65rem}.demo-result{display:flex;flex-direction:column;justify-content:center}.demo-result span{color:#56647a;font-size:.73rem;font-weight:700}.demo-result strong{font:700 2.2rem 'Plus Jakarta Sans',system-ui,sans-serif;color:#15804b}.demo-result small{color:#8590a2;font-size:.61rem}.demo-result.featured{border-color:#d8b75c;background:linear-gradient(145deg,#fffdf6,#fff)}.match-disclaimer{max-width:900px;margin:24px auto 0;text-align:center;color:#7a8598;font-size:.65rem;line-height:1.6}.matcher-footer{background:#101726;color:rgba(255,255,255,.65);padding:22px 0;font-size:.67rem}.matcher-footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.matcher-footer a{text-decoration:underline}
@media(max-width:960px){.match-hero-grid{grid-template-columns:1fr;gap:38px}.match-copy{text-align:center}.match-lead{margin:auto}.match-benefits{grid-template-columns:repeat(3,1fr);text-align:left}.market-proof{justify-content:center}.match-card{max-width:580px;width:100%;margin:auto}.savings-demo{grid-template-columns:1fr 1fr}.demo-control{grid-column:1/-1}}
@media(max-width:620px){.match-hero{padding:38px 0 45px}.match-copy h1{font-size:2.5rem}.match-benefits{grid-template-columns:1fr}.match-card{padding:20px;min-height:610px;border-radius:15px}.match-fields.two-col{grid-template-columns:1fr}.full-field{grid-column:auto}.contact-fields{grid-template-columns:1fr 1fr!important}.mini-savings{grid-template-columns:1fr}.savings-explainer{padding:54px 0}.savings-demo{grid-template-columns:1fr}.demo-control{grid-column:auto}.matcher-footer .container{display:grid;text-align:center;justify-content:center}.market-proof .coming{display:none}}

/* Live inventory search */
.inventory-filters{display:grid;grid-template-columns:minmax(280px,2fr) repeat(3,minmax(120px,1fr)) auto;gap:8px;background:#fff;padding:11px;border-radius:14px;box-shadow:0 18px 44px rgba(4,13,29,.28);margin-top:28px}.inventory-filters label{position:relative}.inventory-filters label i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#66758e}.inventory-filters input,.inventory-filters select,.advanced-row select{width:100%;height:48px;border:1px solid #d9dfeb;border-radius:9px;background:#fff;color:#192233;font:600 .8rem 'Inter',system-ui,sans-serif;padding:0 12px;outline:none}.inventory-filters input{padding-left:42px}.filter-button{height:48px;border:0;border-radius:9px;background:#2347C8;color:#fff;padding:0 22px;font:700 .86rem 'Plus Jakarta Sans',system-ui,sans-serif;text-transform:uppercase;cursor:pointer}.quick-toggles{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px}#advanced-toggle{border:0;background:transparent;color:rgba(255,255,255,.75);font-weight:700;cursor:pointer;padding:6px;font-size:.8rem}#advanced-toggle:hover{color:#fff}#advanced-filters{display:none;gap:8px}#advanced-filters.open{display:flex}
.chip-toggle{display:inline-flex;align-items:center;gap:7px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:100px;background:rgba(255,255,255,.08);color:#fff;padding:0 15px;font:700 .74rem 'Inter',system-ui,sans-serif;letter-spacing:.2px;cursor:pointer;transition:.16s ease}
.chip-toggle:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.42)}
.chip-toggle i{color:#e2c46d;font-size:.78rem}
.chip-toggle.is-active{background:#e2c46d;border-color:#e2c46d;color:#17243c}
.chip-toggle.is-active i{color:#17243c}
.chip-toggle:focus-visible,#advanced-toggle:focus-visible{outline:2px solid #e2c46d;outline-offset:2px}.view-label{font-size:.72rem;color:#67748a;background:#fff;border:1px solid #dfe4ec;border-radius:100px;padding:7px 11px}.inventory-loading,.inventory-error{grid-column:1/-1;padding:70px 20px;text-align:center;color:#66738a;background:#fff;border:1px solid #e0e5ee;border-radius:14px}.inventory-loading i{margin-right:7px;color:#2D3A55}.selected-facts{display:flex;flex-wrap:wrap;gap:6px;padding:0 22px 10px}.selected-facts span{background:#eef2f7;color:#526078;border-radius:100px;padding:5px 8px;font-size:.64rem;font-weight:700}.pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:24px;color:#68758a;font-size:.75rem}.pagination button{border:1px solid #d4dbe7;background:#fff;color:#2D3A55;border-radius:8px;padding:9px 13px;font-weight:700;cursor:pointer}.pagination button:disabled{opacity:.4;cursor:default}.savings-actions button:disabled,.mobile-savings button:disabled{opacity:.5;cursor:not-allowed}.lead-dialog{width:min(540px,calc(100% - 28px));border:0;border-radius:18px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.38);color:#192233}.lead-dialog::backdrop{background:rgba(8,18,35,.72);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:none;color:#68758a;font-size:1.8rem;cursor:pointer}.dialog-kicker{color:#a01818;font-size:.68rem;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.lead-dialog h2{font-size:1.75rem;margin:5px 0}.lead-dialog>p{color:#69768b;font-size:.8rem;margin-bottom:18px}.dialog-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dialog-fields label{color:#4b5970;font-size:.68rem;font-weight:800}.dialog-fields input{width:100%;height:43px;border:1px solid #d8dfe9;border-radius:8px;padding:0 10px;margin-top:5px}.match-status.success{display:block;background:#e6f5ec;color:#166534}.lead-dialog .match-status{margin-bottom:10px}
@media(max-width:900px){.inventory-filters{grid-template-columns:1fr 1fr}.search-wide{grid-column:1/-1}.filter-button{grid-column:1/-1}.quick-toggles{align-items:flex-end;flex-direction:column}.chip-select select,.chip-select-input{max-width:none}}
@media(max-width:520px){.inventory-filters{grid-template-columns:1fr}.search-wide,.filter-button{grid-column:auto}#advanced-filters.open{flex-direction:column;align-items:stretch}.chip-select{width:100%}.chip-select select{max-width:none;width:100%}.dialog-fields{grid-template-columns:1fr}.lead-dialog{padding:25px 20px}.homes-intro h1{font-size:2rem}}

.home-card-link{display:block;color:inherit;text-decoration:none}.home-visual.has-photo{background-size:cover;background-position:center}.home-visual.has-photo::before,.home-visual.has-photo::after{display:none}.view-home-link{border-top:1px solid #edf0f5;margin-top:12px;padding-top:12px;color:#2D3A55;font-size:.75rem;font-weight:800;display:flex;justify-content:space-between;align-items:center}.detail-loading,.detail-not-found{min-height:70vh;display:grid;place-content:center;text-align:center;color:#637087;gap:10px}.detail-gallery{height:min(52vw,520px);min-height:320px;background:linear-gradient(145deg,#385a7c,#17243c);background-size:cover;background-position:center;position:relative}.detail-gallery.has-photo .detail-gallery-fallback{display:none}.detail-gallery-fallback{height:100%;display:grid;place-content:center;text-align:center;color:rgba(255,255,255,.65);gap:10px}.detail-gallery-fallback i{font-size:5rem}.detail-gallery-badge{position:absolute;left:max(24px,calc((100vw - 1200px)/2 + 24px));bottom:22px;background:#fff;color:#192233;border-radius:100px;padding:8px 13px;font-size:.72rem;font-weight:800;box-shadow:0 5px 18px rgba(0,0,0,.2)}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:38px;padding-top:42px;padding-bottom:80px;align-items:start}.detail-main h1{font-size:clamp(2rem,4vw,3.1rem);margin:5px 0}.detail-location{color:#68758b}.detail-price{font:700 2rem 'Plus Jakarta Sans',system-ui,sans-serif;color:#192233;margin:14px 0}.detail-specs{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #dde3ec;border-radius:14px;overflow:hidden}.detail-specs span{padding:16px 10px;text-align:center;color:#718097;font-size:.67rem;border-right:1px solid #e5e9f0}.detail-specs span:last-child{border:0}.detail-specs b{display:block;color:#192233;font:700 1.25rem 'Plus Jakarta Sans',system-ui,sans-serif}.detail-section{margin-top:32px}.detail-section h2{font-size:1.4rem;margin-bottom:12px}.detail-section p{color:#536177;line-height:1.75}.detail-section dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-section dl div{background:#f5f7fa;border-radius:10px;padding:12px}.detail-section dt{color:#7c8799;font-size:.63rem;text-transform:uppercase;font-weight:800}.detail-section dd{color:#192233;font-weight:700;font-size:.82rem}.showingnew-handoff{border-top:1px solid #e1e6ee;margin-top:30px;padding-top:24px}.showingnew-handoff p{font-size:.65rem;color:#7a8598;margin-top:6px}.detail-savings{position:sticky;top:24px;background:linear-gradient(145deg,#142440,#2D3A55);color:#fff;border-radius:18px;padding:26px;box-shadow:0 18px 46px rgba(16,23,38,.25)}.detail-savings h2{font-size:1.65rem;margin:5px 0 19px}.detail-credit{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:12px;padding:15px;margin-bottom:10px}.detail-credit.featured{border-color:#d8b75c}.detail-credit span,.detail-credit small{display:block;color:rgba(255,255,255,.68);font-size:.66rem}.detail-credit strong{display:block;color:#f0d271;font:700 2rem 'Plus Jakarta Sans',system-ui,sans-serif}.detail-savings .btn{margin-top:16px}.detail-request{display:block;text-align:center;padding:13px;color:#fff;font-size:.78rem;font-weight:700}.detail-savings>p{color:rgba(255,255,255,.5);font-size:.58rem;line-height:1.5}.detail-savings .savings-label{color:#e1c36c}.detail-page .site-header{position:relative}
@media(max-width:800px){.detail-layout{grid-template-columns:1fr}.detail-savings{position:relative;top:auto}.detail-specs{grid-template-columns:repeat(3,1fr)}.detail-gallery{height:52vh}.detail-section dl{grid-template-columns:1fr}}

/* Spreadsheet-first inventory list. Change these variables to rebrand the module. */
.inventory-page{--inventory-accent:#2347C8;--inventory-ink:#17243c;--inventory-line:#dfe4ed;--inventory-selected:#fff7f5}.inventory-page .homes-content{max-width:1480px;grid-template-columns:minmax(0,1fr) 340px}.inventory-list-head,.inventory-row{display:grid;grid-template-columns:minmax(265px,1.65fr) minmax(220px,1.1fr) minmax(145px,.7fr) minmax(165px,.8fr);gap:16px;align-items:center}.inventory-list-head{padding:0 18px 9px;color:#778398;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.homes-grid.inventory-list{display:grid;grid-template-columns:1fr;gap:7px}.inventory-row{width:100%;border:1px solid var(--inventory-line);border-radius:11px;background:#fff;padding:14px 17px;text-align:left;color:var(--inventory-ink);cursor:pointer;box-shadow:0 2px 8px rgba(16,23,38,.04);transition:.16s ease}.inventory-row:hover{border-color:#9cabc0;box-shadow:0 7px 20px rgba(16,23,38,.1);transform:translateY(-1px)}.inventory-row.selected{border-color:var(--inventory-accent);background:var(--inventory-selected);box-shadow:0 0 0 2px rgba(35,71,200,.09)}.inventory-row span{min-width:0}.inventory-row b,.inventory-row small{display:block}.inventory-home>b{font-size:.91rem}.inventory-home small{color:#6b7890;font-size:.67rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inventory-specs{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:5px 12px}.inventory-specs b{font-size:.76rem}.inventory-specs small{grid-column:1/-1;color:#7a8699;font-size:.62rem}.inventory-price b{font:700 1.18rem 'Plus Jakarta Sans',system-ui,sans-serif}.inventory-price small{color:#788499;font-size:.62rem;margin-top:3px}.inventory-credit{position:relative}.inventory-credit b{color:#14804a;font:700 1.2rem 'Plus Jakarta Sans',system-ui,sans-serif}.inventory-credit small{color:#7a8699;font-size:.61rem}.inventory-credit i{position:absolute;right:0;top:50%;transform:translateY(-50%);color:#a3adbc}#advanced-filters.open{display:flex;flex-wrap:wrap;gap:9px;width:100%;background:rgba(255,255,255,.08);padding:12px;border-radius:14px;border:1px solid rgba(255,255,255,.14)}
.chip-select{position:relative;display:inline-flex;align-items:center;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:100px;background:rgba(255,255,255,.94);padding:0 30px 0 13px;transition:.16s ease}
.chip-select i{color:#1B37A6;font-size:.72rem;margin-right:8px;flex-shrink:0}
.chip-select select,.chip-select input{appearance:none;-webkit-appearance:none;border:0;background:transparent;outline:none;color:#192233;font:600 .72rem 'Inter',system-ui,sans-serif;padding:0;height:36px;cursor:pointer}
.chip-select input{cursor:text;width:88px}
.chip-select select{padding-right:14px;max-width:168px;text-overflow:ellipsis}
.chip-select::after{content:'';position:absolute;right:13px;top:50%;width:7px;height:7px;border-right:2px solid #97a3b8;border-bottom:2px solid #97a3b8;transform:translateY(-65%) rotate(45deg);pointer-events:none}
.chip-select-input::after{display:none}
.chip-select:hover{border-color:rgba(255,255,255,.5)}
.chip-select.is-active{background:#fff;border-color:#e2c46d;box-shadow:0 0 0 2px rgba(226,196,109,.35)}
.chip-select.is-active i{color:#a01818}
.chip-select select:focus-visible,.chip-select input:focus-visible{outline:2px solid #2D3A55;outline-offset:2px;border-radius:6px}
.clear-filters{height:38px;border:1px solid rgba(255,255,255,.4);border-radius:100px;background:transparent;color:#fff;font-weight:800;cursor:pointer;padding:0 16px;font-size:.72rem}
.clear-filters:hover{background:rgba(255,255,255,.1)}
.inventory-page .inventory-filters{grid-template-columns:minmax(150px,.8fr) minmax(280px,2fr) repeat(3,minmax(120px,1fr)) auto}
.active-filters{display:none;flex-wrap:wrap;gap:8px;margin-top:14px}
.filter-pill{display:inline-flex;align-items:center;gap:7px;height:32px;border:1px solid rgba(255,255,255,.3);border-radius:100px;background:rgba(255,255,255,.1);color:#fff;padding:0 12px 0 12px;font:600 .68rem 'Inter',system-ui,sans-serif;cursor:pointer;transition:.16s ease}
.filter-pill i{color:#e2c46d;font-size:.68rem}
.filter-pill:hover{background:rgba(255,255,255,.2)}
.filter-pill .pill-x{font-size:.85rem;color:rgba(255,255,255,.7);margin-left:1px}
.filter-pill-clear-all{background:transparent;border-style:dashed;color:rgba(255,255,255,.7);font-weight:700}
.filter-pill-clear-all:hover{color:#fff;border-color:rgba(255,255,255,.6)}
@media(max-width:1100px){.advanced-row #advanced-filters.open{grid-template-columns:repeat(4,1fr)}.inventory-list-head,.inventory-row{grid-template-columns:minmax(230px,1.5fr) minmax(190px,1fr) minmax(130px,.7fr) minmax(145px,.8fr)}}
@media(max-width:760px){.inventory-list-head{display:none}.inventory-row{grid-template-columns:1fr 1fr;padding:14px}.inventory-home{grid-column:1/-1}.inventory-price,.inventory-credit{border-top:1px solid #edf0f4;padding-top:10px}.inventory-credit{text-align:right}.inventory-credit i{display:none}.advanced-row #advanced-filters.open{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.advanced-row #advanced-filters.open{grid-template-columns:1fr}.inventory-specs{grid-template-columns:repeat(3,auto)}}

/* Inventory dashboard: a dark metro-select band (continuing the hero's gradient) over
   a white KPI + chart canvas. Light-mode only by design — this site has no dark-mode
   system anywhere else, so a lone dark chart would be the one inconsistent element on
   the page; the dark band here is a fixed brand surface, not a theme. */
.homes-dashboard{--chart-seq:#2a78d6;--chart-1:#2a78d6;--chart-2:#eb6834;--chart-3:#1baf7a;--chart-4:#eda100;--chart-5:#e87ba4;--chart-6:#4a3aa7;--chart-7:#1B37A6}
.dash-band{background:linear-gradient(125deg,#101726 0%,#2D3A55 62%,#284d7d 100%);padding:30px 0 34px}
.dash-eyebrow{color:#e2c46d;font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:.72rem;letter-spacing:2.2px;text-transform:uppercase;margin-bottom:6px}
.dash-title{font-family:var(--font-display,'Plus Jakarta Sans',serif);font-size:1.6rem;color:#fff;margin:0 0 18px;font-weight:600;position:relative;display:inline-block;padding-bottom:12px}
.dash-title::after{content:'';position:absolute;left:0;bottom:0;width:44px;height:2px;background:#e2c46d;border-radius:2px}
.metro-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.metro-tile{appearance:none;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:13px 15px;cursor:pointer;transition:.16s ease;opacity:0;animation:dashIn .4s ease forwards}
.metro-tile:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);transform:translateY(-2px)}
.metro-tile.active{background:rgba(226,196,109,.14);border-color:#e2c46d;box-shadow:0 0 0 1px rgba(226,196,109,.3)}
.metro-tile-name{display:block;color:#fff;font-weight:700;font-size:.86rem;margin-bottom:3px}
.metro-tile.active .metro-tile-name{color:#f0d271}
.metro-tile-count{display:block;color:rgba(255,255,255,.62);font-size:.68rem}
.metro-tile:nth-child(1){animation-delay:.02s}.metro-tile:nth-child(2){animation-delay:.07s}.metro-tile:nth-child(3){animation-delay:.12s}.metro-tile:nth-child(4){animation-delay:.17s}.metro-tile:nth-child(5){animation-delay:.22s}
@keyframes dashIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.homes-dashboard>.container{padding-top:26px;padding-bottom:8px;max-width:1320px}
.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}
.dash-stat{background:#f5f7fa;border:1px solid #e5e9f0;border-radius:12px;padding:14px 16px}
.dash-stat-label{display:block;color:#647188;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}
.dash-stat-value{display:block;color:#192233;font:700 1.5rem 'Plus Jakarta Sans',system-ui,sans-serif}
.dash-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.dash-card{background:#fff;border:1px solid #dde3ec;border-radius:14px;padding:18px 20px;box-shadow:0 4px 16px rgba(16,23,38,.05);opacity:0;animation:dashIn .4s ease forwards}
.dash-card-1{animation-delay:.28s}.dash-card-2{animation-delay:.33s}.dash-card-3{animation-delay:.38s}.dash-card-4{animation-delay:.43s}
.dash-card h3{font-size:.86rem;color:#192233;margin:0 0 14px}
.dash-bars{display:flex;flex-direction:column;gap:2px}
.dash-bar-row{display:grid;grid-template-columns:100px minmax(0,1fr) 42px;align-items:center;gap:9px;min-height:27px;border-radius:6px;padding:0 4px}
.dash-bar-row .dash-bar-cat{color:#42506a;font-size:.71rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-bar-track{position:relative;height:18px;background:#f0f2f6;border-radius:4px;overflow:hidden}
.dash-bar-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;min-width:3px;transition:width .3s ease}
.dash-bar-row .dash-bar-value{color:#192233;font-size:.71rem;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}
.dash-bar-row.pickable{cursor:pointer}
.dash-bar-row.pickable:hover{background:#f5f7fa}
.dash-bar-row.pickable:hover .dash-bar-cat{color:#1B37A6}
.dash-bar-row.pickable:focus-visible{outline:2px solid #2D3A55;outline-offset:1px}
.dash-bar-row.active{background:#fff4e0}
.dash-bar-row.active .dash-bar-cat{color:#1B37A6;font-weight:800}
.dash-empty{color:#8590a2;font-size:.78rem;padding:12px 0}
@media(prefers-reduced-motion:reduce){.metro-tile,.dash-card{animation:none;opacity:1}}
@media(max-width:900px){.dash-stats{grid-template-columns:1fr 1fr}.metro-tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.metro-tiles{grid-template-columns:1fr 1fr}.dash-charts{grid-template-columns:1fr}}
@media(max-width:520px){.dash-stats{grid-template-columns:1fr 1fr}.dash-bar-row{grid-template-columns:78px minmax(0,1fr) 36px;gap:6px}.metro-tiles{grid-template-columns:1fr 1fr}}
