.idx-section{padding:118px 28px 64px;min-height:65vh}.idx-section .section-inner{max-width:1200px;margin:0 auto}.idx-intro{max-width:720px;color:var(--text-mid);line-height:1.75;margin:16px 0 28px}.idx-form{padding:24px;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.idx-form label{display:flex;flex-direction:column;gap:7px;font-size:.78rem;font-weight:600;color:var(--navy)}.idx-form input,.idx-form select{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--bg-deep);border-radius:var(--radius-sm);font:inherit;font-size:1rem;background:var(--white);color:var(--navy)}.idx-form-actions{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.idx-form button,.idx-pagination button,.idx-gallery button{cursor:pointer;font-family:var(--sans)}.idx-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin:26px 0 18px}.idx-status{color:var(--text-mid);line-height:1.6}.idx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.idx-card{display:flex;flex-direction:column;border-radius:var(--radius-md);background:var(--white);overflow:hidden;box-shadow:var(--shadow-sm);text-decoration:none;color:var(--navy);transition:transform .2s,box-shadow .2s}.idx-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.idx-card-image{aspect-ratio:4/3;background:var(--bg-mid);width:100%;object-fit:cover}.idx-no-photo{display:flex;align-items:center;justify-content:center;color:var(--text-mid);font-size:.82rem}.idx-card-body{padding:20px;display:flex;flex-direction:column;gap:9px;flex:1}.idx-price{font-family:var(--serif);font-size:1.9rem;font-weight:500;line-height:1.15}.idx-card h2{font:600 1rem/1.4 var(--sans)}.idx-card-meta{font-size:.85rem;color:var(--text-mid);line-height:1.6}.idx-attribution{font-size:.7rem;line-height:1.7;color:var(--text-mid);margin-top:auto;padding-top:12px}.idx-logo{width:70px;max-height:40px;object-fit:contain;display:block;margin:6px 0}.idx-pagination{display:flex;gap:16px;align-items:center;justify-content:center;margin:28px 0}.idx-pagination button:disabled{opacity:.5;cursor:default}.idx-notices{font-size:.72rem;line-height:1.8;color:var(--text-mid);margin-top:28px}.idx-notices p+p{margin-top:10px}.idx-empty{grid-column:1/-1;background:var(--white);padding:32px;border-radius:var(--radius-md);line-height:1.7}.idx-back{display:inline-block;margin-bottom:22px;color:var(--navy);font-size:.87rem}.idx-detail-head{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px;flex-wrap:wrap}.idx-detail-head .idx-price{font-size:2.4rem}.idx-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:26px}.idx-gallery,.idx-detail-panel,.idx-contact{background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.idx-gallery-image{width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--bg-mid);display:block}.idx-gallery-controls{display:flex;gap:12px;align-items:center;justify-content:center;padding:14px}.idx-gallery-controls button{padding:10px 16px;border:1px solid var(--bg-deep);border-radius:var(--radius-sm);color:var(--navy);background:var(--white)}.idx-thumbs{display:flex;overflow-x:auto;gap:10px;padding:0 16px 16px}.idx-thumbs button{border:2px solid transparent;background:var(--white);padding:0;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden}.idx-thumbs button[aria-current="true"]{border-color:var(--steel)}.idx-thumbs img{width:90px;height:65px;object-fit:cover;display:block}.idx-detail-panel,.idx-contact{padding:26px;margin-top:24px}.idx-detail-panel h2,.idx-contact h2{font-family:var(--serif);font-size:1.8rem;font-weight:500;margin-bottom:16px}.idx-description{line-height:1.85;color:var(--text-mid);white-space:pre-line}.idx-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.idx-facts dt{font-size:.72rem;color:var(--text-soft);margin-bottom:6px}.idx-facts dd{font-size:.95rem;line-height:1.6}.idx-contact{margin-top:0;position:sticky;top:95px}.idx-contact p{line-height:1.8;color:var(--text-mid);margin:12px 0}.idx-contact .btn{display:flex;justify-content:center;margin-top:12px}.idx-contact .btn-outline{border-color:rgba(28,53,87,.18);background:rgba(255,255,255,.72);color:var(--navy)}.idx-contact .btn-outline:hover{background:var(--bg);border-color:var(--steel)}.idx-detail-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px}.idx-detail-links a{color:var(--navy);font-size:.85rem}.idx-features{display:grid;gap:14px}.idx-features dt{font-weight:600;font-size:.85rem}.idx-features dd{line-height:1.7;color:var(--text-mid);font-size:.87rem}.idx-retry{margin-top:12px}.idx-reveal{opacity:1;transform:none}[hidden]{display:none!important}button:disabled{cursor:default}.idx-error{background:var(--white);border-radius:var(--radius-md);padding:24px;line-height:1.8;color:var(--navy)}
@media(max-width:960px){.idx-form{grid-template-columns:repeat(2,minmax(0,1fr))}.idx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.idx-detail-grid{grid-template-columns:1fr}.idx-contact{position:static}.idx-section{padding-top:105px}}@media(max-width:600px){.idx-section{padding:100px 16px 40px}.idx-form{padding:18px;gap:14px}.idx-grid{grid-template-columns:1fr;gap:18px}.idx-form-actions .btn{flex:1;justify-content:center}.idx-detail-panel,.idx-contact{padding:20px}.idx-detail-head .idx-price{font-size:2rem}.idx-facts{gap:16px}}@media(prefers-reduced-motion:reduce){.idx-card{transition:none}.idx-card:hover{transform:none}}
@media(max-width:600px){.idx-form label:has(input[name="city"]),.idx-form label:has(select[name="county"]),.idx-form label:has(input[name="zip"]),.idx-form label:has(select[name="type"]),.idx-form label:has(select[name="sort"]){grid-column:1/-1}.idx-form-actions .btn{padding:12px 16px}}
.idx-form .idx-address-field{grid-column:1/-1}.idx-field-help{font-size:.75rem;font-weight:400;line-height:1.5;color:var(--text-mid)}

/* IDX views share the current site navigation and theme. */
.idx-section{padding-top:48px}.idx-title{font:500 clamp(2rem,5vw,3rem)/1.15 var(--serif);margin:12px 0}.idx-facts dd,.idx-features dd{margin:0}.idx-detail-head h1{font:500 clamp(1.8rem,4vw,2.6rem)/1.2 var(--serif)}
@media(max-width:960px){.idx-section{padding-top:40px}}@media(max-width:600px){.idx-section{padding-top:32px}}

.idx-detail-grid>div{min-width:0}.idx-detail-panel,.idx-contact{overflow-wrap:anywhere}
