:root{--ink:#141B17;--ink2:#3D4A43;--ink3:#6B7A72;--bg:#FDFDFC;--panel:#F1F3EF;--line:#D6DCD4;--accent:#2F6D4F;--soft:#E3EDE6;--clay:#A8512C;--claysoft:#F5E7DF;--map-bg:#EDF0EA;--map-lot:#E4E8E1;--map-lotline:#BCC7B9;--map-roadcase:#D8DBD4;--map-road:#FAFAF8;--map-lbl:#6B7A72;--map-halo:#E4E8E1;--map-dim:#14281E}
.clist{list-style:none;padding:0;margin:18px 0;display:grid;gap:0}
.clist li{padding:11px 2px;border-bottom:1px solid var(--line);display:flex;
  flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.clist li:last-child{border-bottom:0}
.clist a{font-weight:600;text-decoration:none;color:var(--accent)}
.clist a:hover{text-decoration:underline}
.clist .muted{font-size:.92em}
.lede a{color:var(--accent)}
.deal{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);max-width:64ch}
.deal b{display:block;font-size:13px;margin:10px 0 2px}
.deal b:first-child{margin-top:0}
.dlist{margin:4px 0 8px;padding-left:18px;font-size:13.5px;line-height:1.55}
.dlist li{margin:4px 0}
.slist{margin:6px 0 10px;padding-left:18px}
.slist li{margin:3px 0}
.cty{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.cty a{display:inline-block;padding:6px 12px;border:1px solid var(--line);
  border-radius:999px;text-decoration:none;color:var(--ink2);background:var(--panel);
  font-size:.93em}
.cty a:hover{border-color:var(--accent);color:var(--accent)}
@media(prefers-color-scheme:dark){:root{--ink:#E7ECE7;--ink2:#A9B5AD;--ink3:#7C8B82;--bg:#0F1411;--panel:#18201B;--line:#2E3A31;--accent:#5FA97F;--soft:#1B2C22;--clay:#D4835B;--claysoft:#2C1D14;--map-bg:#141A16;--map-lot:#1C241E;--map-lotline:#36453A;--map-roadcase:#283127;--map-road:#3A4A3F;--map-lbl:#9DAEA3;--map-halo:#141A16;--map-dim:#DCE6DE}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Georgia,serif}
.top{display:flex;align-items:baseline;gap:14px;padding:16px 24px;border-bottom:1px solid var(--line)}
.brand{font:800 19px/1 system-ui,sans-serif;color:var(--ink);text-decoration:none;letter-spacing:-.03em}
.brand em{font-style:normal;color:var(--accent)}
.tag{font:400 10.5px/1 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3)}
main{max-width:980px;margin:0 auto;padding:30px 24px 70px}
h1{font:800 clamp(26px,4vw,38px)/1.15 system-ui,sans-serif;letter-spacing:-.02em;margin:0 0 12px;text-wrap:balance}
h2{font:700 20px/1.2 system-ui,sans-serif;margin:30px 0 10px}
.lede{color:var(--ink2);max-width:62ch}.sub{font:400 11px/1 ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}
.crumb{font:400 12px/1 ui-monospace,monospace;color:var(--ink3);margin-bottom:14px}.crumb a{color:var(--accent)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.filters a{font:600 13px system-ui,sans-serif;padding:6px 12px;border:1px solid var(--line);border-radius:5px;text-decoration:none;color:var(--ink2)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
@media (min-width:1080px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1500px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);overflow:hidden}
.card:hover{border-color:var(--accent)}
.cimg{width:100%;height:auto;aspect-ratio:420/260;object-fit:cover;display:block;margin:0;border-radius:0;background:var(--panel)}
.cbody{display:flex;flex-direction:column;gap:5px;padding:13px 15px 15px}
.caddr{font:800 19px/1.25 system-ui,sans-serif;letter-spacing:-.01em;text-wrap:balance}
.muted{color:var(--ink3)}
.hnote{display:block;font:500 11px/1.3 system-ui,sans-serif;letter-spacing:.02em;
text-transform:uppercase;color:var(--ink3);margin-top:3px}
.cloc{font:400 10px/1 ui-monospace,monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--ink3)}
.cprice{font:800 21px/1 system-ui,sans-serif;margin-top:3px}
.cmeta{font:400 12.5px ui-monospace,monospace;color:var(--ink2)}
.pager{display:flex;align-items:center;justify-content:center;gap:18px;margin:26px 0 8px}
.pager button{padding:9px 16px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink2);font:600 14px system-ui,sans-serif;cursor:pointer}
.pager button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
.pager button:disabled{opacity:.4;cursor:default}
#pstat{font:400 12px ui-monospace,monospace;color:var(--ink3)}
.price{margin:18px 0;padding:14px 18px;background:var(--panel);border:1px solid var(--line);border-radius:7px}
.price .big{font:800 32px/1 system-ui,sans-serif;letter-spacing:-.02em}
.price .ppa{font:400 12px ui-monospace,monospace;color:var(--ink3);margin-left:12px}
.desc{max-width:64ch;color:var(--ink2)}
img{max-width:100%;border-radius:7px;margin:8px 0}
table{width:100%;border-collapse:collapse;font-size:14.5px}
th{text-align:left;font:400 11px ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);padding:8px 10px;border-bottom:1px solid var(--line);width:40%;vertical-align:top}
td{padding:8px 10px;border-bottom:1px solid var(--line);font:400 12.5px ui-monospace,monospace;vertical-align:top}
.disc{border-left:3px solid var(--clay);background:var(--claysoft);padding:12px 15px;margin:10px 0;border-radius:0 6px 6px 0}
.disc b{font:700 15px system-ui,sans-serif}.disc p{margin:4px 0 0;font-size:14.5px;color:var(--ink2)}
.appr{font-size:14px}
.platfig{margin:14px 0}.platfig svg{width:100%;height:auto;border:1px solid var(--line);border-radius:7px;display:block}
.platfig figcaption{font:400 11.5px ui-monospace,monospace;color:var(--ink3);margin-top:6px;line-height:1.6}
.platfig .aerial{background:#2a2a2a}
.plat .rdlbl{font:600 10px ui-monospace,monospace;letter-spacing:.06em;fill:var(--map-lbl)}
.plat .pbg{fill:var(--map-bg)}
.plat .rdcase{stroke:var(--map-roadcase)}
.plat .rdfill{stroke:var(--map-road)}
.plat .nb{fill:var(--map-lot);stroke:var(--map-lotline)}
.plat .hn{fill:var(--map-lbl);stroke:var(--map-halo)}
.plat .subj{fill:var(--accent);stroke:var(--accent)}
.plat .dim,.plat .adr{fill:var(--map-dim);stroke:var(--map-halo)}
.plat .nk{fill:var(--ink2)}
.plat .sc{stroke:var(--ink2)}
.plat .nkt{fill:var(--map-lbl)}
.inq{display:flex;flex-direction:column;gap:9px;max-width:460px;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:8px}
.inq input,.inq textarea{padding:9px 10px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--ink);font:inherit;font-size:15px}
.inq textarea{min-height:80px;resize:vertical}
.inq button{padding:11px;border:0;border-radius:6px;background:var(--accent);color:#fff;font:700 15px system-ui,sans-serif;cursor:pointer}
footer{border-top:1px solid var(--line);padding:22px 24px 50px;color:var(--ink3);font-size:12.5px;line-height:1.7}
footer p{max-width:76ch;margin:0 auto}
.hint{font:400 12px ui-monospace,monospace;color:var(--ink3);margin:0 0 6px}
.term{all:unset;cursor:pointer;font:400 11px ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);border-bottom:1px dotted var(--accent);display:inline}
.term:hover{color:var(--accent)}.term:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.qm{display:inline-grid;place-items:center;width:14px;height:14px;margin-left:5px;border-radius:50%;background:var(--accent);color:#fff;font:700 9px/1 system-ui,sans-serif;text-transform:none;vertical-align:1px}
.term[aria-expanded=true] .qm{background:var(--clay)}
.grow td{padding:0 10px 10px;border-bottom:1px solid var(--line)}
.gpanel{margin:0;padding:10px 12px;background:var(--soft);border-radius:6px;font:400 13.5px/1.55 Georgia,serif;color:var(--ink);text-transform:none;letter-spacing:0}
.gpanel p{margin:0}.gpanel .gex{margin-top:7px;color:var(--ink2)}
.gpanel .gex b{font:700 10px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:2px}
.src{display:block;margin-top:5px;font:400 10.5px/1.5 ui-monospace,monospace;color:var(--ink3);text-transform:none;letter-spacing:0}
.zp{max-width:64ch;color:var(--ink2);margin:8px 0}
.zpnote{max-width:64ch;font:400 12.5px/1.6 ui-monospace,monospace;color:var(--ink3);border-left:2px solid var(--line);padding-left:12px;margin-top:12px}
td a{color:var(--accent)}
.aerial .ardl{font:700 15px ui-monospace,monospace;letter-spacing:.1em;fill:#fff;stroke:#1A1A1A;stroke-width:5.5px;paint-order:stroke;stroke-linejoin:round}
.aerial .arno{font:700 13px ui-monospace,monospace;fill:#fff;stroke:#1A1A1A;stroke-width:3px;paint-order:stroke;text-anchor:middle}
.aerial .arhere{font:800 16px system-ui,sans-serif;letter-spacing:.14em;fill:#FFE14D;stroke:#1A1A1A;stroke-width:4px;paint-order:stroke;text-anchor:middle}
.aerial .arsc{font:700 13px ui-monospace,monospace;fill:#fff;stroke:#1A1A1A;stroke-width:3px;paint-order:stroke}
.aerial .artown{font:700 14px system-ui,sans-serif;letter-spacing:.08em;fill:#fff;stroke:#1A1A1A;stroke-width:3.5px;paint-order:stroke;text-anchor:middle}
.as{max-width:66ch;color:var(--ink2);margin:9px 0}
.as b{color:var(--ink);font-weight:700}
.price .cash{display:block;margin-top:2px;font:400 15px/1.4 Georgia,serif;color:var(--ink2)}
.price .cash strong{color:var(--ink);font-weight:700}
.pdet{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.pdet>summary{cursor:pointer;font:600 13.5px/1.4 system-ui,sans-serif;color:var(--accent);list-style:none;display:inline-flex;align-items:center;gap:6px}
.pdet>summary::-webkit-details-marker{display:none}
.pdet>summary::before{content:"+";font:700 14px/1 ui-monospace,monospace;width:14px;height:14px;display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:3px}
.pdet[open]>summary::before{content:"\2212"}
.pdet>summary:hover{text-decoration:underline}
.pdet .deal{margin-top:10px;border-top:0;padding-top:0}
.price .fin{display:block;margin-top:8px;font:400 13.5px/1.55 Georgia,serif;color:var(--ink2);max-width:60ch}
.price.gone{background:transparent;border-style:dashed}
.price.gone .big{color:var(--ink3);font-weight:600}
.inq label{font:600 12px/1.3 system-ui,sans-serif;color:var(--ink2);margin-bottom:-4px}
.inq .opt{font-weight:400;color:var(--ink3)}
.toplink{margin-left:auto;font:600 13px system-ui,sans-serif;color:var(--accent);text-decoration:none;border-bottom:1px solid transparent}
.toplink:hover{border-bottom-color:var(--accent)}
.g{max-width:68ch;color:var(--ink2);margin:10px 0}
ol.g{padding-left:22px}ol.g li{margin:8px 0}
footer p+p{margin-top:10px}footer a{color:var(--accent)}
.tag-est,.tag-ver{font:600 9px/1.6 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;padding:1px 6px;border-radius:3px;vertical-align:1px}
.tag-est{background:var(--claysoft);color:var(--clay);border:1px solid var(--clay)}
.tag-ver{background:var(--soft);color:var(--accent);border:1px solid var(--accent)}
.term{white-space:nowrap}.term .lbl{white-space:normal}
}
.nc{color:var(--ink3);font-style:italic}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.inqok{padding:14px 16px;background:var(--soft);border:1px solid var(--accent);border-radius:8px;max-width:460px}
.inqok b{font:700 15px system-ui,sans-serif;display:block;margin-bottom:4px}
.inqerr{color:var(--clay);font-size:14px;margin:8px 0 0}
.fbar{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;padding:14px 16px;margin:20px 0 12px;background:var(--panel);border:1px solid var(--line);border-radius:8px}
.f{display:flex;flex-direction:column;gap:4px}
.f>span{font:400 10px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.fbar select{padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--ink);font:400 13.5px system-ui,sans-serif;min-width:140px}
.fq{flex:1 1 320px;min-width:240px}
.fbar input[type=search]{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--ink);font:400 14px system-ui,sans-serif}
.fbar input[type=search]:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.c{display:flex;align-items:center;gap:6px;font:400 13.5px system-ui,sans-serif;color:var(--ink2);padding-bottom:7px}
.c input{width:16px;height:16px;accent-color:var(--accent)}
#freset{padding:7px 14px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--ink2);font:600 13px system-ui,sans-serif;cursor:pointer}
#freset:hover{border-color:var(--accent);color:var(--accent)}
.fcount{font:400 11px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin:0 0 4px}
.fnone{color:var(--ink2)}
.fnone button{all:unset;cursor:pointer;color:var(--accent);border-bottom:1px solid var(--accent)}
.czon{font:400 10px ui-monospace,monospace;letter-spacing:.08em;color:var(--accent);text-transform:uppercase}
.cflags{font:400 11px/1.5 system-ui,sans-serif;color:var(--accent)}
.card[hidden]{display:none}
/* phone last, so these win the specificity ties against the base rules above */
@media(max-width:640px){
  .top{flex-wrap:wrap;gap:4px 12px;padding:14px 16px}
  .brand{white-space:nowrap}
  main{padding:22px 16px 56px}
  th{width:42%;padding:10px 8px 10px 0}
  td{padding:10px 0 10px 8px}
  .fbar{padding:12px;gap:10px}
  .fbar select{min-width:0;width:100%;padding:11px 9px;font-size:16px}
  .fq{flex:1 1 100%}
  .fbar input[type=search]{padding:11px 10px;font-size:16px}
  .f{flex:1 1 44%;min-width:0}
  .c{padding:6px 0;min-height:44px}
  #freset{padding:11px 16px}
  .grid{grid-template-columns:1fr}
  .price .big{font-size:27px}

