/* Meta Listing Fusion (MR-554). Tokens resolve to the page brand: main site --mr-*, agent sites ACSS --base/--action. */
.mlf{--mlf-ink:var(--mr-ink,var(--base,#1b0e29));--mlf-accent:var(--mr-accent,var(--action,#3d2956));--mlf-gold:var(--mr-gold,var(--action,#b69563));--mlf-gold-ink:var(--mr-gold-ink,#856536);--mlf-paper:var(--mr-paper,var(--base-ultra-light,#f8f7fa));--mlf-line:var(--mr-line,#e8e3eb);--mlf-muted:var(--mr-muted,#6c6473);--mlf-radius:14px;--mlf-radius-s:10px;--mlf-shadow:0 4px 18px #28163c0a;--mlf-gap:clamp(12px,3vw,20px);color:var(--mlf-ink);font-size:16px;line-height:1.6;margin:var(--mlf-gap) 0;box-sizing:border-box}
.mlf *,.mlf *::before,.mlf *::after{box-sizing:border-box}
.mlf a{color:var(--mlf-accent)}
.mlf :is(a,button,summary,select):focus-visible{outline:3px solid var(--mlf-accent);outline-offset:4px}
.mlf img{max-width:100%;height:auto;display:block}
.mlf-card{background:#fff;border:1px solid var(--mlf-line);border-radius:var(--mlf-radius);box-shadow:var(--mlf-shadow);padding:var(--mlf-gap)}
.mlf-h2{font-size:clamp(20px,2.4vw,26px);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 12px;color:var(--mlf-ink)}
.mlf-h3{font-size:19px;font-weight:600;line-height:1.3;margin:0 0 6px;color:var(--mlf-ink)}
.mlf-h3 a{color:inherit;text-decoration:none}.mlf-h3 a:hover{text-decoration:underline}
.mlf-h4{font-size:15px;font-weight:600;margin:14px 0 8px}
.mlf-eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mlf-gold-ink);margin:0 0 12px}
.mlf-meta{font-size:14px;color:var(--mlf-muted);margin:0 0 6px}
.mlf-fine{font-size:13px;line-height:1.5;color:var(--mlf-muted);margin:12px 0 0}
.mlf p{margin:0 0 10px}
.mlf-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border:1px solid var(--mlf-line);border-radius:999px;font-size:14px;background:#fff;color:var(--mlf-ink);text-decoration:none;white-space:nowrap}
.mlf-chip--link{min-height:44px;padding:8px 14px;background:var(--mlf-paper)}
.mlf-chip--link:hover{border-color:var(--mlf-accent)}
.mlf-chip__meta{color:var(--mlf-muted)}.mlf-chip__arrow{margin-left:2px}
.mlf-chip--plan{border-color:var(--mlf-accent);color:var(--mlf-accent)}
.mlf-chip--new{background:var(--mlf-accent);border-color:var(--mlf-accent);color:#fff}
.mlf-hero-chip{margin:8px 0 12px}
.mlf-hero-chip .mlf-chip{white-space:normal}
.mlf-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:10px 0;padding:0}
.mlf-badge{display:inline-flex;align-items:center;min-height:28px;padding:2px 12px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid var(--mlf-line);background:#fff;color:var(--mlf-ink);white-space:nowrap}
.mlf-badge--t1{background:var(--mlf-accent);border-color:var(--mlf-accent);color:#fff}
.mlf-badge--t2{background:var(--mlf-paper);border-color:var(--mlf-accent);color:var(--mlf-accent)}
.mlf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:var(--mlf-radius-s);font-size:15px;font-weight:600;text-decoration:none;border:1px solid var(--mlf-ink);cursor:pointer;transition:background .15s,border-color .15s}
.mlf-btn--primary{background:var(--mlf-ink);color:#fff!important}
.mlf-btn--primary:hover{background:var(--mlf-accent);border-color:var(--mlf-accent)}
.mlf-btn--ghost{background:#fff;color:var(--mlf-ink)!important;border-color:var(--mlf-line)}
.mlf-btn--ghost:hover{border-color:var(--mlf-ink)}
.mlf-link{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-weight:600;text-decoration:none}
.mlf-link:hover{text-decoration:underline}
.mlf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:14px 0 0}
.mlf-fp__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.mlf-fp__head .mlf-h2{margin:0}
.mlf-fp__body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--mlf-gap)}
.mlf-fp__media,.mlf-thumb .mlf-zoom{display:block;aspect-ratio:4/3;background:var(--mlf-paper);border-radius:var(--mlf-radius-s);overflow:hidden;border:1px solid var(--mlf-line)}
.mlf-zoom img{width:100%;height:100%;object-fit:contain;cursor:zoom-in}
.mlf-how{margin:10px 0;font-size:14px}
.mlf-how summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center;gap:6px;list-style:none}.mlf-how summary::-webkit-details-marker{display:none}.mlf-how summary::before{content:'▸';color:var(--mlf-accent)}.mlf-how[open] summary::before{content:'▾'}
.mlf-alts__row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.mlf-alt{flex:0 0 120px;scroll-snap-align:start;display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--mlf-line);border-radius:var(--mlf-radius-s);background:#fff;color:var(--mlf-ink);font:inherit;font-size:13px;text-align:left;cursor:pointer;min-height:44px}
.mlf-alt:hover{border-color:var(--mlf-accent)}
.mlf-alt img{aspect-ratio:4/3;object-fit:contain;background:var(--mlf-paper);border-radius:6px}
.mlf-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;margin:12px 0;padding:0}
.mlf-thumb{margin:0;min-width:0}.mlf-thumb figcaption{display:flex;flex-direction:column;margin-top:6px;font-size:15px;overflow-wrap:anywhere}
.mlf-building__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--mlf-gap)}
.mlf-building__media{display:block;aspect-ratio:16/9;border-radius:var(--mlf-radius-s);overflow:hidden;background:var(--mlf-paper)}
.mlf-building__media img{width:100%;height:100%;object-fit:cover}
.mlf-amen{font-size:14px;color:var(--mlf-muted)}
.mlf-links{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column}
.mlf-links a{display:inline-flex;gap:4px;min-height:44px;align-items:center;font-weight:600;text-decoration:none}
.mlf-notice{border-left:4px solid var(--mlf-gold)}
.mlf-notice__title{font-weight:600;font-size:17px}
.mlf-overview p{max-width:72ch}
.mlf-rows{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.mlf-row{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:10px;border:1px solid var(--mlf-line);border-radius:var(--mlf-radius-s);background:#fff;color:var(--mlf-ink);text-decoration:none;min-height:96px}
.mlf-row:hover{border-color:var(--mlf-accent)}
.mlf-row__img{width:112px;height:84px;object-fit:cover;border-radius:8px;background:var(--mlf-paper);font-size:0;color:transparent;overflow:hidden}
.mlf-row__img--none{display:block}
.mlf-row__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.mlf-row__title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mlf-row__street{font-weight:400;color:var(--mlf-muted)}
.mlf-row__price{font-weight:600;font-size:17px}
.mlf-row__facts,.mlf-row__by{font-size:14px;color:var(--mlf-muted)}.mlf-row .mlf-row__by--brokerage{font-size:inherit}.mlf-disclaimer p{margin:0 0 6px}
.mlf-row__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.mlf-row__chips .mlf-chip{min-height:26px;font-size:12px;padding:2px 10px}
.mlf-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--mlf-line);border-radius:999px;background:var(--mlf-paper);margin:0 0 12px}
.mlf-tab{min-height:40px;padding:6px 16px;border:0;border-radius:999px;background:transparent;color:var(--mlf-ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.mlf-tab[aria-selected=true]{background:#fff;box-shadow:var(--mlf-shadow);color:var(--mlf-accent)}
.mlf-tabbed .mlf-panel__h{display:none}
.mlf-sort{margin:0 0 12px;font-size:14px}.mlf-sort select{min-height:40px;margin-left:6px;border:1px solid var(--mlf-line);border-radius:8px;padding:4px 8px;font:inherit}
.mlf-homes__summary{font-weight:600;margin:0}
.mlf-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.mlf-asg-card{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--mlf-ink);min-height:44px}
.mlf-asg-card:hover{border-color:var(--mlf-accent)}
.mlf-count{font-weight:400;color:var(--mlf-muted)}
.mlf-empty{text-align:left}
.mlf-skeleton{border-radius:var(--mlf-radius-s);background:linear-gradient(90deg,var(--mlf-paper) 25%,#fff 50%,var(--mlf-paper) 75%);background-size:200% 100%;animation:mlf-sh 1.4s infinite linear}
.mlf-skeleton--rows{min-height:420px}.mlf-skeleton--table{min-height:320px}.mlf-skeleton--fp{min-height:160px}
.mlf-units-link{margin:var(--mlf-gap) 0}
@keyframes mlf-sh{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.mlf-skeleton{animation:none}}
.mlf-lightbox{margin:auto;border:0;padding:0;width:min(96vw,1100px);max-height:92vh;border-radius:var(--mlf-radius);background:#fff;color:#1b0e29;box-shadow:0 20px 60px #0004}
.mlf-lightbox::backdrop{background:#1b0e29cc}
.mlf-lightbox__bar{display:flex;align-items:center;gap:6px;padding:8px;border-bottom:1px solid #e8e3eb}
.mlf-lightbox__bar strong{flex:1;padding:0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mlf-lightbox__bar button{min-width:44px;min-height:44px;border:1px solid #e8e3eb;border-radius:10px;background:#fff;font:inherit;font-weight:600;cursor:pointer;color:#1b0e29}
.mlf-lightbox__bar button:hover{border-color:#3d2956}
.mlf-lightbox__stage{min-height:120px;overflow:auto;max-height:calc(92vh - 62px);touch-action:pan-x pan-y pinch-zoom;background:#f8f7fa}
.mlf-lightbox__stage img{max-width:none;margin:auto;display:block;transform-origin:0 0}
@media (min-width:480px){.mlf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:720px){.mlf-skeleton--rows{min-height:600px}.mlf-fp__body{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}.mlf-building__grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start}.mlf-row{grid-template-columns:160px 1fr}.mlf-row__img{width:160px;height:120px}.mlf-units .mlf-rows{grid-template-columns:repeat(3,minmax(0,1fr))}.mlf-units .mlf-row{grid-template-columns:1fr}.mlf-units .mlf-row__img{width:100%;height:auto;aspect-ratio:4/3}.mlf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1024px){.mlf-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}
