/* ---------- IDX (Bridge / REcolorado feed) ---------- */
.idx-live,.idx-search{text-align:left}
.idx-sample{background:#fff6e0;border:1px dashed #d9b46a;color:#6b4a00;padding:10px 14px;border-radius:4px;font-size:13px;margin:0 0 18px}
.idx-loading,.idx-empty,.idx-error{padding:24px 0;color:#5b6b7a;font-size:15px}.idx-error{color:#a3271d}
.idx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:24px}
.idx-card{display:block;background:#fff;border:1px solid #e6e6e6;border-radius:6px;overflow:hidden;color:inherit;transition:box-shadow .2s,transform .2s}
.idx-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.12);transform:translateY(-2px)}
.idx-card-img{position:relative;aspect-ratio:4/3;background:#eef1f4;overflow:hidden}.idx-card-img img{position:relative;width:100%;height:100%;object-fit:cover;display:block}
.idx-noimg{position:absolute;inset:0;display:grid;place-items:center;color:#8e99a4;font-size:13px}
.idx-tag{position:absolute;top:10px;left:10px;background:rgba(20,34,46,.85);color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:3px}
.idx-tag.sold{background:#8a3b2a}.idx-tag.own{left:auto;right:10px;background:var(--g-btn-background,#249bff)}
.idx-photos{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.6);color:#fff;font-size:11px;padding:3px 7px;border-radius:3px}
.idx-card-body{padding:14px 16px 16px}.idx-card-price{font-size:20px;font-weight:700;margin:0 0 4px;color:#1c2733}.idx-card-addr{font-weight:600;margin:0}.idx-card-city,.idx-card-facts{margin:2px 0 0;font-size:13px;color:#5b6b7a}.idx-card-office{margin:8px 0 0;font-size:11px;color:#8e99a4}
.idx-muted{color:#8e99a4;font-weight:400;font-size:.8em}.idx-small{font-size:12px}
.idx-more{text-align:center;margin:8px 0 20px}.idx-more .mg-more{display:inline-block;width:auto;padding:0 32px}
.idx-disclaimer{font-size:11.5px;color:#8e99a4;line-height:1.5;margin:12px 0 0}
.idx-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:8px 0 12px}.idx-stats div{background:#f5f7fa;border-radius:6px;padding:16px;text-align:center}.idx-stats strong{display:block;font-size:24px;color:#1c2733}.idx-stats span{font-size:12px;color:#5b6b7a}
.idx-types{font-size:13px;color:#5b6b7a;margin:0 0 4px}
.idx-map{height:420px;background:#eef1f4;border-radius:6px}.idx-map-live{z-index:0}
.idx-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;align-items:end;background:#f5f7fa;padding:16px;border-radius:6px;margin-bottom:18px}.idx-form .grow{grid-column:span 2}
.idx-form label{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#5b6b7a;font-weight:600}.idx-form input,.idx-form select{width:100%;margin-top:6px;padding:10px 12px;border:1px solid #d9dee3;border-radius:4px;font:inherit;font-size:14px;background:#fff}
.idx-form .btn-primary{width:100%;line-height:40px;padding:0 14px}
.idx-results-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.idx-count{margin:0;font-weight:600}
.idx-toggle-map{font-size:13px;padding:8px 14px;border:1px solid #d9dee3;border-radius:4px;background:#fff}
.idx-layout{display:grid;grid-template-columns:1fr;gap:20px}.idx-search.with-map .idx-layout{grid-template-columns:1fr 1fr}.idx-search.with-map .idx-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.idx-search-map{position:sticky;top:90px;height:70vh}
.idx-pager{display:flex;gap:16px;align-items:center;justify-content:center;margin:8px 0 16px;font-size:14px}.idx-pager a{color:var(--g-btn-background,#249bff);font-weight:600}
@media (max-width:900px){.idx-search.with-map .idx-layout{grid-template-columns:1fr}.idx-search-map{position:static;height:50vh}.idx-form .grow{grid-column:span 1}}
/* detail page */
.idx-detail{padding:24px 20px 60px}.idx-gallery{margin-bottom:24px}.idx-gallery-main{position:relative;aspect-ratio:16/9;background:#111;border-radius:6px;overflow:hidden}.idx-gallery-main img{width:100%;height:100%;object-fit:contain;display:block}
.idx-gal-prev,.idx-gal-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.9);font-size:28px;line-height:44px;text-align:center;color:#1c2733}.idx-gal-prev{left:14px}.idx-gal-next{right:14px}
.idx-gal-count{position:absolute;right:14px;bottom:12px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;padding:3px 8px;border-radius:3px}
.idx-gallery-thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 0 4px}.idx-gallery-thumbs button{flex:0 0 96px;aspect-ratio:4/3;border-radius:4px;overflow:hidden;opacity:.6;border:2px solid transparent}.idx-gallery-thumbs button.on{opacity:1;border-color:var(--g-btn-background,#249bff)}.idx-gallery-thumbs img{width:100%;height:100%;object-fit:cover}
.idx-nophoto{aspect-ratio:16/6;display:grid;place-items:center;background:#eef1f4;color:#8e99a4;border-radius:6px}
.idx-detail-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;align-items:flex-start;margin-bottom:14px}.idx-detail-head h1{font-size:30px;line-height:1.2;margin:0}.idx-sub{margin:4px 0 0;color:#5b6b7a}
.idx-pricebox{text-align:right}.idx-price{display:block;font-size:32px;font-weight:700;color:#1c2733}.idx-status{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:3px;background:#e3f4e8;color:#1c6b3a;margin-top:4px}.idx-status.pending{background:#fff3cd;color:#7a5a00}.idx-status.sold{background:#f3e7e3;color:#8a3b2a}
.idx-keyfacts{display:flex;flex-wrap:wrap;gap:10px 28px;list-style:none;margin:0 0 28px;padding:16px 0;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;font-size:14px;color:#5b6b7a}.idx-keyfacts strong{font-size:20px;color:#1c2733;margin-right:4px}
.idx-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px}@media (max-width:900px){.idx-detail-grid{grid-template-columns:1fr}}
.idx-section{margin-bottom:32px}.idx-section h2{font-size:22px;margin-bottom:12px}.idx-remarks{font-size:15px;line-height:1.7}
.idx-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 24px;margin:0}.idx-facts div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #eef1f4;font-size:14px}.idx-facts dt{color:#5b6b7a}.idx-facts dd{margin:0;color:#1c2733}
.idx-attribution{font-size:12px;color:#5b6b7a;margin-top:24px}
.idx-inquiry{background:#f5f7fa;border-radius:6px;padding:20px}.idx-inquiry h3{font-size:18px;margin-bottom:12px}.idx-inquiry .v-input{margin-bottom:12px}.idx-inquiry .v-input .title{font-size:12px;color:#5b6b7a;margin:0 0 4px}.idx-inquiry input,.idx-inquiry textarea{width:100%;padding:10px 12px;border:1px solid #d9dee3;border-radius:4px;font:inherit;font-size:14px;background:#fff}.idx-inquiry textarea{min-height:90px}.idx-inquiry .submit{width:100%;line-height:42px;padding:0;margin-top:4px}
.idx-contact{font-size:14px;color:#5b6b7a;margin-top:14px;line-height:1.6}.idx-back{margin-top:16px;font-size:14px}
.idx-notfound{padding:60px 20px;text-align:center}.idx-notfound h1{margin-bottom:12px}
.idx-card-meta{margin:6px 0 0;font-size:13px;color:#1c2733}.idx-card-office{margin:2px 0 0;font-size:13px;color:#3b4550}
.idx-required{margin:8px 0 0;font-size:14px;color:#1c2733}
.idx-legal{font-size:13px;color:#3b4550;line-height:1.55;margin:16px 0 0;border-top:1px solid #eef1f4;padding-top:12px}.idx-legal p{margin:0 0 8px}.idx-legal a{text-decoration:underline}
.idx-legal-page{padding:40px 20px 70px;max-width:900px}.idx-legal-page h1{font-size:30px;margin-bottom:18px}.idx-legal-page p{font-size:15px;line-height:1.7;margin-bottom:14px}
