/* Shared listing grid, quick search and compliance styles. Uses each page's own tokens
   (--night, --slab, --line, --stone, --mute, --jac, --display, --body, --mono). */

.lx-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:36px}
.lx-head h2{margin-top:12px;font-size:clamp(2rem,4.4vw,3.2rem)}
.lx-intro{max-width:46ch;color:var(--mute)}
.lx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:28px}
.lx-card{min-width:0}
.lx-link{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;height:100%}
.lx-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--slab);border:1px solid var(--line)}
.lx-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.lx-link:hover .lx-photo img{transform:scale(1.04)}
.lx-nophoto{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.lx-tag{position:absolute;top:12px;left:12px;background:var(--night);color:var(--jac);border:1px solid var(--line);font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;padding:.35rem .6rem}
.lx-body{display:flex;flex-direction:column;gap:4px}
.lx-label{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--jac)}
.lx-price{font-family:var(--display);font-size:1.7rem;line-height:1.1}
.lx-addr{font-family:var(--body);font-size:1rem;font-weight:500;margin:4px 0 0}
.lx-meta{font-family:var(--mono);font-size:.74rem;color:var(--mute);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.lx-courtesy{font-size:.72rem;color:var(--mute);margin-top:6px;line-height:1.45}
.lx-link:focus-visible{outline:2px solid var(--jac);outline-offset:4px}
.lx-empty{color:var(--mute);border:1px solid var(--line);padding:28px;max-width:62ch}
.lx-more{margin-top:32px}
.lx-compliance{display:flex;gap:16px;align-items:flex-start;margin-top:32px;padding-top:20px;border-top:1px solid var(--line);font-size:.72rem;color:var(--mute);line-height:1.55}
.lx-compliance p+p{margin-top:6px}
.lx-mlslogo{height:28px;width:auto;flex:none;opacity:.85}
.lx-updated{font-family:var(--mono);letter-spacing:.04em}
.lx-footlegal{max-width:90ch}

/* quick search */
.lx-search{position:relative;z-index:2;margin:0 0 48px;background:var(--slab);border:1px solid var(--line);display:grid;grid-template-columns:1.4fr repeat(4,1fr) auto;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.lx-search label{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-right:1px solid var(--line);min-width:0}
.lx-search label span{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.lx-search select{background:transparent;border:0;color:var(--stone);font:500 1rem var(--body);padding:2px 0;cursor:pointer;width:100%;-webkit-appearance:none;appearance:none}
.lx-search select:disabled{cursor:default;opacity:1;color:var(--stone)}
.lx-search select option{background:var(--slab);color:var(--stone)}
.lx-search .btn{border:0;height:100%;justify-content:center;padding-inline:1.6rem}
@media (max-width:900px){.lx-search{grid-template-columns:1fr 1fr}.lx-search label:first-of-type{grid-column:1/-1}.lx-search label{border-bottom:1px solid var(--line)}.lx-search .btn{grid-column:1/-1;padding:1.1rem}}

/* investment page */
.lx-pagehead{padding-block:clamp(64px,9vw,120px) 40px;display:flex;flex-direction:column;gap:18px}
.lx-pagehead h1{font-size:clamp(2.8rem,7vw,5.6rem)}
.lx-lede{color:var(--mute);max-width:58ch;font-size:1.05rem}
.lx-section{padding-block:clamp(48px,7vw,96px)}
.lx-inquire{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);border-top:1px solid var(--line);padding-top:clamp(40px,6vw,72px)}
@media (max-width:820px){.lx-inquire{grid-template-columns:1fr}}
.lx-form{display:flex;flex-direction:column;gap:12px}
.lx-form input:not([type=checkbox]),.lx-form textarea{background:transparent;border:1px solid var(--line);color:var(--stone);font:400 1rem var(--body);padding:.85rem 1rem;width:100%}
.lx-consent{font-size:.74rem;color:var(--mute);display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.lx-consent input{margin-top:3px;accent-color:var(--jac)}
.lx-ok,.lx-err{font-size:.9rem;color:var(--jac)}
.lx-err{color:#e6a08c}

/* honeypot added by /js/leads.js */
.lx-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
