:root{--homes-navy:#063457;--homes-blue:#0b628a;--homes-sky:#e9f5f7;--homes-orange:#f47f4e;--homes-ink:#082f4d;--homes-line:#d6e2e7}
.homes-hero{background:linear-gradient(135deg,#dff1f3 0%,#f4faf9 62%,#ffede3 100%);color:var(--homes-ink)}
.homes-hero h1{color:var(--homes-navy);text-shadow:none}.homes-hero>p:not(.eyebrow){color:#345767}.homes-hero .eyebrow{color:var(--homes-blue)}.homes-hero .back-link{color:var(--homes-navy)}.homes-hero .topic-menu summary{color:var(--homes-navy)}
.homes-main{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:34px 0 72px}
.demo-note{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:17px 20px;border:1px solid #f4c4ae;border-left:5px solid var(--homes-orange);border-radius:14px;background:#fff7f2;color:var(--homes-ink);margin-bottom:24px}
.demo-note strong{white-space:nowrap}.demo-note span{font-size:.92rem;line-height:1.45}.demo-note a{font-weight:700;color:var(--homes-blue)}.demo-note.compact{margin-top:28px}
.home-controls{display:grid;grid-template-columns:2fr 1.25fr 1fr 1fr 1.1fr auto;gap:12px;align-items:end;padding:20px;border:1px solid var(--homes-line);border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(8,47,77,.07)}
.home-controls div{min-width:0}.home-controls label{display:block;margin:0 0 7px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4d6878}.home-controls input,.home-controls select{width:100%;height:48px;border:1px solid #bfcfd7;border-radius:10px;background:#fff;padding:0 13px;color:var(--homes-ink);font:inherit}.home-controls input:focus,.home-controls select:focus{outline:3px solid rgba(11,98,138,.17);border-color:var(--homes-blue)}
.clear-filters{height:48px;padding:0 16px;border:0;border-radius:10px;background:var(--homes-navy);color:#fff;font-weight:700;cursor:pointer}.clear-filters:hover{background:var(--homes-blue)}
.broker-section{padding:34px 0 12px}.broker-section h2{font-family:Newsreader,serif;font-size:clamp(1.8rem,4vw,2.5rem);color:var(--homes-ink);margin:2px 0 18px}.broker-buttons{display:flex;flex-wrap:wrap;gap:9px}.broker-button{display:inline-flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid #bed0d9;border-radius:999px;background:#fff;color:var(--homes-ink);font-size:.88rem;font-weight:700;text-decoration:none;transition:.16s ease}.broker-button span{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:var(--homes-sky);color:var(--homes-blue)}.broker-button:hover,.broker-button:focus-visible,.broker-button.active{border-color:var(--homes-blue);background:var(--homes-blue);color:#fff;transform:translateY(-1px)}.broker-button:hover span,.broker-button.active span{background:#fff;color:var(--homes-blue)}
.homes-resultbar{display:flex;justify-content:space-between;align-items:center;margin:22px 0 13px;color:#506b79}.homes-resultbar p{margin:0}.homes-resultbar strong{font-size:1.25rem;color:var(--homes-ink)}
.homes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.home-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--homes-line);border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 12px 30px rgba(8,47,77,.08);transition:transform .18s ease,box-shadow .18s ease}.home-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(8,47,77,.13)}
[data-listing][hidden]{display:none!important}
.home-photo{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#dcecef,#bcd8dd)}.home-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.home-card:hover .home-photo img{transform:scale(1.025)}.home-photo span{position:absolute;right:10px;bottom:10px;padding:7px 10px;border-radius:8px;background:rgba(6,52,87,.92);color:#fff;font-size:.78rem;font-weight:700}.home-photo.image-missing img{display:none}.home-photo.image-missing:before{content:'Woningfoto niet beschikbaar';position:absolute;inset:0;display:grid;place-items:center;color:#3f6776;font-weight:700}
.scan-note{display:flex;gap:14px;align-items:center;margin-bottom:22px;padding:16px 18px;border:1px solid #b9d8df;border-left:5px solid var(--homes-blue);border-radius:14px;background:#f3fafb;color:var(--homes-ink)}.scan-note strong{white-space:nowrap}.scan-note span{line-height:1.45}.listing-status,.status-badge{display:inline-flex;padding:7px 10px;border-radius:8px;background:rgba(6,52,87,.92);color:#fff;font-size:.78rem;font-weight:800}.home-photo .listing-status{left:10px;right:auto;top:10px;bottom:auto}.broker-directory{margin:24px 0 8px;border:1px solid var(--homes-line);border-radius:13px;background:#fff}.broker-directory summary{padding:15px 17px;cursor:pointer;font-weight:800;color:var(--homes-ink)}.broker-directory>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 15px 15px}.broker-directory-link{display:flex;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:9px;background:#eef6f7;color:var(--homes-ink);text-decoration:none;font-weight:700}.broker-directory-link span{color:var(--homes-blue)}.listing-gallery.single{display:block;max-height:620px}.listing-gallery.single .listing-image{display:block;width:100%;height:min(620px,62vw)}.status-badge{margin-bottom:9px;background:var(--homes-blue)}
.listing-sources{display:grid;gap:7px;margin-top:18px;padding-top:16px;border-top:1px solid var(--homes-line)}.listing-sources strong{font-size:.82rem;color:var(--homes-ink)}.listing-sources a{color:var(--homes-blue);font-size:.8rem;line-height:1.35}
.home-body{display:flex;flex:1;flex-direction:column;padding:18px}.home-place{margin:0 0 4px;color:#5e7783;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.home-body h3{margin:0;color:var(--homes-ink);font-family:Newsreader,serif;font-size:1.62rem;line-height:1.12}.home-price{margin:10px 0 12px;color:var(--homes-blue);font-size:1.22rem;font-weight:800}.home-facts{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0 0 13px;padding:0}.home-facts li{padding:6px 8px;border-radius:7px;background:#eff6f7;color:#345767;font-size:.76rem;font-weight:700}.home-summary{margin:0 0 16px;color:#405e6e;line-height:1.48}.home-broker{display:block;margin-top:auto;padding-top:14px;border-top:1px solid #e2eaed;color:#496776;text-decoration:none;font-size:.82rem;line-height:1.35}.home-broker strong{display:block;margin-top:3px;color:var(--homes-ink)}.home-broker:hover strong{text-decoration:underline}.home-action{display:inline-block;margin-top:14px;color:var(--homes-blue);font-weight:800;text-decoration:none}.home-action:hover{text-decoration:underline}
.empty-results{padding:32px;border:1px dashed #b8ccd5;border-radius:14px;text-align:center;color:#55717e;background:#f7fbfb}.partner-callout{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:42px;padding:30px;border-radius:18px;background:var(--homes-navy);color:#fff}.partner-callout h2{font-family:Newsreader,serif;font-size:2rem;margin:3px 0 8px}.partner-callout p{margin:0;max-width:720px;line-height:1.5}.partner-callout .eyebrow{color:#9fe1e9}.partner-callout a{flex:none;padding:12px 16px;border-radius:10px;background:var(--homes-orange);color:#fff;text-decoration:none;font-weight:800}.broker-page-nav{margin-bottom:22px}.broker-page-nav a{display:inline-flex;padding:10px 13px;border-radius:9px;background:#e8f3f5;color:var(--homes-navy);font-weight:800;text-decoration:none}
@media(max-width:1000px){.home-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.homes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-note{grid-template-columns:1fr}.demo-note strong{white-space:normal}.partner-callout{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.homes-main{width:min(100% - 24px,1180px);padding-top:22px}.home-controls{grid-template-columns:1fr;padding:15px}.home-controls>div:nth-child(4){grid-column:auto}.clear-filters{width:100%}.broker-section{padding-top:28px}.broker-buttons{display:grid;grid-template-columns:1fr}.broker-button{justify-content:space-between;border-radius:10px;padding:11px 13px}.homes-grid{grid-template-columns:1fr;gap:16px}.home-card{border-radius:14px}.home-photo{aspect-ratio:4/3}.partner-callout{padding:23px}.partner-callout a{width:100%;text-align:center}.demo-note{padding:15px}.homes-resultbar{margin-top:18px}}
@media(max-width:640px){.scan-note{align-items:flex-start;flex-direction:column}.broker-directory>div{grid-template-columns:1fr}.listing-gallery.single .listing-image{height:68vw}}
.demo-note{grid-template-columns:auto 1fr}.demo-note strong{padding:7px 10px;border-radius:7px;background:var(--homes-orange);color:#fff;letter-spacing:.08em}.home-slide{display:block;width:100%;height:100%}.home-slide[hidden]{display:none!important}.home-body h3 a{color:inherit;text-decoration:none}.home-body h3 a:hover{text-decoration:underline}.home-photo .demo-badge,.demo-badge.inline{position:absolute;left:10px;right:auto;top:10px;bottom:auto;padding:7px 10px;border-radius:7px;background:var(--homes-orange);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.09em}.home-photo .photo-total{right:10px;bottom:10px}.gallery-arrow{position:absolute;z-index:2;top:50%;width:36px;height:42px;border:0;border-radius:8px;background:rgba(6,52,87,.86);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;transform:translateY(-50%)}.gallery-arrow.prev{left:9px}.gallery-arrow.next{right:9px}.gallery-arrow:hover{background:var(--homes-orange)}
.broker-profile{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;margin-bottom:26px;padding:25px;border-radius:17px;background:var(--homes-navy);color:#fff}.broker-profile .eyebrow{color:#9fe1e9}.broker-profile h2{margin:3px 0 8px;font-family:Newsreader,serif;font-size:2rem}.broker-profile p{margin:0}.broker-contact-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.broker-contact-actions a{color:#fff;font-weight:700;text-decoration:none}.broker-contact-actions .website-button,.listing-contact .website-button{margin-top:7px;padding:11px 14px;border-radius:9px;background:var(--homes-orange);color:#fff}
.listing-hero{background:linear-gradient(135deg,#e9f5f7,#fff7f2)}.listing-page{padding-top:24px}.listing-gallery{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:8px;overflow:hidden;border-radius:18px;background:#d8e7eb}.listing-image{position:relative;border:0;padding:0;overflow:hidden;background:#d8e7eb;cursor:zoom-in}.listing-image.image-1{grid-row:1/3}.listing-image.image-2{grid-column:2/4}.listing-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.listing-image:hover img{transform:scale(1.025)}.gallery-count{position:absolute;right:14px;bottom:14px;padding:9px 12px;border-radius:8px;background:rgba(6,52,87,.9);color:#fff;font-weight:800}.listing-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:27px 2px 20px}.listing-heading .demo-badge.inline,.listing-contact .demo-badge.inline{position:static;display:inline-flex;margin-bottom:8px}.listing-heading h2{margin:0;color:var(--homes-ink);font-family:Newsreader,serif;font-size:clamp(2rem,5vw,3rem)}.listing-heading p{margin:4px 0 0;color:#58717e}.listing-heading>strong{color:var(--homes-blue);font-size:clamp(1.45rem,3vw,2rem)}.listing-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr);gap:24px;align-items:start}.listing-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 24px;border:1px solid var(--homes-line);border-radius:15px;background:#fff;overflow:hidden}.listing-facts div{padding:17px;border-right:1px solid var(--homes-line);border-bottom:1px solid var(--homes-line)}.listing-facts dt{margin-bottom:5px;color:#637b87;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.listing-facts dd{margin:0;color:var(--homes-ink);font-weight:800}.listing-description{padding:28px;border:1px solid var(--homes-line);border-radius:16px;background:#fff}.listing-description h2{margin:3px 0 15px;color:var(--homes-ink);font-family:Newsreader,serif;font-size:2.15rem}.listing-description p:not(.eyebrow){color:#3f5e6d;line-height:1.7}.listing-contact{position:sticky;top:20px;display:flex;flex-direction:column;padding:25px;border-radius:16px;background:var(--homes-navy);color:#fff}.listing-contact .eyebrow{color:#9fe1e9}.listing-contact h2{margin:2px 0 9px;font-family:Newsreader,serif;font-size:1.8rem}.listing-contact p{line-height:1.5}.listing-contact>a{margin-top:8px;color:#fff;font-weight:700;text-decoration:none}.listing-contact .all-broker-homes{margin-top:18px;padding-top:15px;border-top:1px solid rgba(255,255,255,.23)}
.listing-lightbox{width:min(1100px,94vw);max-width:none;border:0;border-radius:14px;padding:10px;background:#071f32;color:#fff}.listing-lightbox::backdrop{background:rgba(2,17,29,.9)}.listing-lightbox img{display:block;width:100%;max-height:82vh;object-fit:contain;border-radius:9px}.lightbox-close{position:absolute;z-index:3;right:17px;top:17px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(6,52,87,.9);color:#fff;font-size:1.7rem;cursor:pointer}.lightbox-arrow{position:absolute;z-index:3;top:50%;width:45px;height:58px;border:0;border-radius:8px;background:rgba(6,52,87,.88);color:#fff;font-size:2rem;transform:translateY(-50%);cursor:pointer}.lightbox-arrow.prev{left:18px}.lightbox-arrow.next{right:18px}.listing-lightbox p{margin:8px 0 0;text-align:center}
@media(max-width:800px){.broker-profile,.listing-layout{grid-template-columns:1fr}.listing-contact{position:static}.listing-gallery{grid-template-columns:1.5fr 1fr;grid-template-rows:190px 150px}.listing-image.image-1{grid-row:1/3}.listing-image.image-2{grid-column:2}.listing-image.image-4{display:none}.listing-heading{align-items:flex-start;flex-direction:column}.listing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.listing-gallery{display:flex;aspect-ratio:4/3}.listing-image{display:none;flex:1}.listing-image.image-1{display:block}.gallery-count{font-size:.8rem}.listing-heading{padding-top:20px}.listing-facts{grid-template-columns:1fr}.listing-description{padding:22px}.broker-profile{padding:21px}.lightbox-arrow{width:38px;height:50px}.lightbox-arrow.prev{left:12px}.lightbox-arrow.next{right:12px}}
