/* /assumable-homes (Eddie 11/5). Uses the site's tokens: --orange, --ink, --paper, --cream, --muted, --r. */
.idx-brand{display:flex;flex:none;align-items:center;gap:10px;min-width:0;text-decoration:none!important;color:#fff}
.idx-brand img{flex:none;width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #ffffff40}
.idx-brand b{display:block;font-family:var(--display);font-size:28px;font-weight:400;line-height:1;letter-spacing:.03em;color:#fff}
.idx-brand small{display:block;margin-top:3px;font-family:var(--body);font-size:13px;font-weight:500;line-height:1.2;color:#f4f1ea}
.asm-brandrow{display:flex;align-items:center;gap:14px;flex:none}
.asm-brandrow .idx-real{flex:none;height:30px;width:auto}
.asm-brandrow .idx-brand>span{white-space:nowrap}
@media (max-width:1180px){.asm-brandrow .idx-real{display:none}}
@media (min-width:901px){header.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px}header.nav .wrap ul{flex-wrap:nowrap}header.nav .wrap ul a{white-space:nowrap}}
@media (min-width:901px) and (max-width:1279px){header.nav .wrap ul{gap:14px}header.nav .wrap ul a{font-size:14px}}
@media (max-width:900px){.idx-brand b{font-size:22px}.idx-brand img{width:40px;height:40px}.asm-brandrow .idx-real{display:none}}

.asm-sec{padding-top:64px}
.asm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:22px}
.asm-head .sec-h{margin-bottom:6px}
.asm-sub{color:var(--muted);max-width:640px;margin:0}
.asm-view{display:flex;border:1.5px solid #14120f26;border-radius:999px;overflow:hidden}
.asm-view button{font:600 13px var(--body);letter-spacing:.06em;text-transform:uppercase;padding:10px 18px;border:0;background:transparent;color:var(--ink);cursor:pointer}
.asm-view button.on{background:var(--ink);color:#fff}

.asm-filters{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end;padding:18px;border-radius:var(--r);background:var(--cream-2,#f4f1ea);border:1px solid #14120f14;margin-bottom:26px}
.asm-filters label{display:flex;flex-direction:column;gap:5px;font:600 11px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.asm-filters select,.asm-filters input[type=search]{font:500 15px var(--body);color:var(--ink);background:#fff;border:1px solid #14120f29;border-radius:10px;padding:10px 12px;min-width:120px;text-transform:none;letter-spacing:0}
.asm-filters .asm-q input{min-width:220px}
.asm-filters .asm-check{flex-direction:row;align-items:center;gap:8px;padding-bottom:11px;font-size:13px;letter-spacing:.02em;text-transform:none;color:var(--ink)}
.asm-filters .asm-check input{width:18px;height:18px;accent-color:var(--orange)}
.asm-loanfields{display:contents}
.asm-loanfields[hidden]{display:none}
.asm-reset{font:600 13px var(--body);background:none;border:0;color:var(--orange);cursor:pointer;padding:0 4px 12px;text-decoration:underline}

.asm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}
.asm-grid[hidden],.asm-map[hidden]{display:none}
.asm-card{background:#fff;border:1px solid #14120f17;border-radius:var(--r);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.asm-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #14120f1f}
.asm-link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none!important}
.asm-img{aspect-ratio:3/2;background:#e8e4d8;overflow:hidden}
.asm-img img{width:100%;height:100%;object-fit:cover;display:block}
.asm-body{display:flex;flex-direction:column;gap:9px;padding:16px 18px 18px;flex:1}
.asm-price{font-family:var(--display);font-size:32px;line-height:1;letter-spacing:.02em;color:var(--ink)}
.asm-specs{display:flex;gap:14px;font-size:14px;color:var(--ink)}
.asm-addr{font-size:14px;line-height:1.4;color:var(--ink)}
.asm-loan{margin-top:2px;padding:11px 12px;border-radius:10px;background:#e0562a12;border-left:3px solid var(--orange)}
.asm-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.asm-chips span{font:700 11px var(--body);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--olive,#384028);padding:4px 8px;border-radius:999px}
.asm-chips span+span{background:var(--orange-dk,#b8431f)}
.asm-loan p{margin:0;font-size:14px;line-height:1.45;color:var(--ink)}
.asm-loan small{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:2px}
/* 18.2.12: listing firm and phone no smaller than the listing data (14px), in a readily visible color. */
.asm-firm{margin-top:auto;padding-top:8px;border-top:1px solid #14120f14;font-size:14px;font-weight:600;color:var(--ink)}
.asm-map{height:620px;border-radius:var(--r);overflow:hidden;border:1px solid #14120f17}
.asm-more{text-align:center;margin-top:28px}
.asm-empty,.asm-error p{padding:30px;text-align:center;color:var(--muted)}
.asm-legal{display:flex;gap:16px;align-items:flex-start;margin-top:40px;padding-top:22px;border-top:1px solid #14120f1f;font-size:13px;line-height:1.55;color:var(--ink)}
.asm-legal p{margin:0 0 8px}
.asm-legal-logo img{height:40px;width:auto}

.asm-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:start}
.asm-note{font-size:14px;color:var(--muted)}
.asm-calc-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#fff;border-radius:var(--r);padding:24px;border:1px solid #14120f14}
.asm-calc-form label{display:flex;flex-direction:column;gap:6px;font:600 11px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.asm-calc-form input{font:500 16px var(--body);color:var(--ink);border:1px solid #14120f29;border-radius:10px;padding:11px 12px;letter-spacing:0;text-transform:none}
.asm-calc-out{grid-column:1/-1;display:grid;gap:8px;margin-top:6px}
.asm-calc-out div{display:flex;justify-content:space-between;gap:12px;font-size:15px;color:var(--ink)}
.asm-calc-out .t{border-top:1px solid #14120f1f;padding-top:10px;font-size:17px}
.asm-calc-out .t b{color:var(--orange-dk,#b8431f)}
@media (max-width:860px){.asm-calc{grid-template-columns:1fr;gap:24px}.asm-calc-form{grid-template-columns:1fr}.asm-map{height:480px}.asm-filters label,.asm-filters select,.asm-filters .asm-q input{min-width:0;width:100%}.asm-filters label{flex:1 1 42%}.asm-filters .asm-q{flex-basis:100%}}
