/* Fixed-height fields, with small viewport-constrained disclosure menus. */
.search-panel .filters{align-items:center!important}.search-panel .filters>div{position:relative;min-height:64px}
.search-panel .type-picker,.search-panel .price-picker{position:relative}
.search-panel .type-picker>.type-popover,.search-panel .price-picker>.price-popover,.quality-filter>.quality-filter-content{position:fixed!important;z-index:170;box-sizing:border-box!important;overflow-y:auto;overscroll-behavior:contain;margin:0!important;min-width:0!important;max-width:calc(100vw - 24px)!important;padding:16px!important;border:1px solid #cdd4d8;border-radius:10px;background:#fffdf9;box-shadow:0 8px 30px #0f2d4a24;transform:none!important}
.search-panel .type-picker:not([open])>.type-popover,.search-panel .price-picker:not([open])>.price-popover,.quality-filter:not([open])>.quality-filter-content{display:none!important}
.search-panel .price-popover input,.search-panel .price-popover select{width:100%;min-height:42px!important;font:15px 'Nunito Sans',sans-serif!important;border:1px solid #cdd4d8!important;border-radius:6px;padding:8px!important;background:#fffdf9}
.search-panel .price-popover>div{padding:0!important}.search-panel .price-popover label{display:block;font-size:12px;margin:8px 0 4px!important}
.search-panel .quick-filters{display:flex!important;flex:1 1 auto;gap:7px!important;align-items:center;flex-wrap:wrap!important;padding:0!important;overflow:visible!important}
.search-panel .search-secondary{align-items:center!important;gap:8px}.search-panel .more-filters[hidden]{display:none!important}
.quality-filter>summary{list-style:none;cursor:pointer;min-height:42px;display:flex;align-items:center;gap:8px;border:1px solid #d9dedc;border-radius:7px;padding:9px 12px;background:#fffdf9;color:#0f2d4a;font:600 12px 'Nunito Sans',sans-serif}.quality-filter>summary:after{content:'⌄'}.quality-filter>summary::-webkit-details-marker{display:none}.quality-filter[open]>summary,.quality-filter[data-active=true]>summary{border-color:#0f2d4a;background:#f0f3f4}
.quality-filter-content>div{display:block!important;border:0!important;padding:0!important;background:none!important;max-width:none!important}.quality-filter-content .search-field-icon{display:none}.quality-filter-content label{display:block!important;white-space:normal!important;font-size:13px!important;margin-bottom:6px!important}.quality-filter-content input:not([hidden]),.quality-filter-content select{width:100%!important;max-width:100%!important;min-height:44px!important;border:1px solid #cdd4d8!important;border-radius:6px!important;padding:9px!important;background:#fffdf9!important;font:16px 'Nunito Sans',sans-serif!important;box-sizing:border-box}
.quality-filter-content button,.price-popover button{margin-top:12px;min-height:40px;padding:8px 14px;border:0;border-radius:6px;background:#0f2d4a;color:white;font:600 13px 'Nunito Sans',sans-serif}
.search-panel .quick-filters .filter-chip{font-size:12px;min-height:42px}.quality-filter summary:focus-visible,.card .link:focus-visible{outline:3px solid #b17b30;outline-offset:3px}
/* Native stretched anchor: keyboard and context-menu behaviour stay intact. */
.housing-results .card{position:relative;min-height:0;border-radius:11px}.housing-results .card:has(.link):hover{border-color:#61768a;transform:none;box-shadow:0 5px 17px #0f2d4a13}.housing-results .card:focus-within{outline:2px solid #61768a;outline-offset:2px}
.housing-results .card .link{display:inline-flex!important;padding:0!important;min-height:0!important;background:transparent!important;color:#0f2d4a!important;font-size:20px!important;border:0!important;box-shadow:none!important;width:auto!important;float:right;text-decoration:none}.housing-results .card .link:after{content:'';position:absolute;inset:0;z-index:1}
.housing-results .card .content{padding:12px!important}.housing-results .card .card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:6px}.housing-results .card .bottom{margin:0}.housing-results .card .price{font-size:18px!important;font-weight:750}.housing-results .card .details{gap:4px;margin:8px 0}.housing-results .card .source{color:#526675;font-size:11px}.housing-results .card .city{margin-top:3px}.housing-results .card .tag{padding:3px 5px;font-size:11px}.housing-results .card .availability{background:none;padding:0;color:#526675;font-size:11px}
.workspace-card-actions{z-index:4!important}.workspace-card-actions .workspace-icon{position:relative;z-index:4;width:44px!important;height:44px!important;min-width:44px;min-height:44px;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;display:inline-flex;align-items:center;justify-content:center;padding:12px!important}
.workspace-card-actions .workspace-icon:before{content:'';position:absolute;inset:8px;background:#fffdf9e8;border-radius:6px;z-index:-1}.workspace-card-actions .workspace-icon svg{width:18px;height:18px;filter:none}.workspace-card-actions .workspace-icon[aria-pressed=true]{color:#a84437!important}.workspace-card-actions .workspace-icon:focus-visible{outline:3px solid #b17b30;outline-offset:-3px}
/* Raster, compact list and map each have one clear purpose. */
.housing-results[data-compact=true]:not([data-map=true]) .grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1150px;margin:auto!important}.housing-results[data-compact=true] .card{display:grid;grid-template-columns:145px minmax(0,1fr)}.housing-results[data-compact=true] .card .image-wrap{min-height:150px!important;height:100%;aspect-ratio:auto}.housing-results[data-map=true] .results-body{grid-template-columns:minmax(340px,43%) minmax(0,57%)}.housing-results[data-map=true] .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.housing-results[data-map=true] .card{display:block}.housing-results[data-map=true] .card .image-wrap{min-height:0!important;height:auto;aspect-ratio:4/3}.housing-results[data-map=true] #woningMap{height:calc(100vh - 230px);min-height:420px}.map-group-marker>span{width:32px;height:30px;min-width:0;display:flex;align-items:center;justify-content:center;padding:0!important;border-radius:50%;font-size:12px}.map-move-choice{display:none!important}
#resultPagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px 0 0!important;padding:0!important}#resultPagination button{border:1px solid #d1d9dc;background:transparent;color:#0f2d4a;min-width:42px;min-height:42px;border-radius:6px;padding:6px;font-size:18px}#resultPagination span{font-size:13px;color:#526675}#resultPagination button:disabled{opacity:.4}
/* Search-draft invitation never blocks the results or moves focus. */
.save-search-prompt{position:fixed;right:24px;bottom:22px;z-index:180;width:330px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:19px;border:1px solid #becbd1;border-radius:11px;background:#fffdf9;color:#0f2d4a;box-shadow:0 5px 25px #0f2d4a24}.save-search-prompt h2{font:700 16px 'Nunito Sans',sans-serif;margin:0 0 7px}.save-search-prompt p{font:14px/1.5 'Nunito Sans',sans-serif;margin:0 0 12px}.save-search-prompt button{min-height:42px;border:0;border-radius:6px;background:#0f2d4a;color:white;padding:9px 14px;margin-right:7px;font:600 13px 'Nunito Sans',sans-serif}.save-search-prompt button:last-child{background:#eef1f2;color:#0f2d4a}
/* Readable, consistent service and legal pages. */
body[data-page] main{max-width:920px}body[data-page] main p,body[data-page] main details{font-size:16px;line-height:1.65}body[data-page] main>h1{font:600 clamp(30px,4vw,42px)/1.2 'Nunito Sans',sans-serif;margin:22px 0 18px}.service-topics{max-width:360px;margin:20px 0 28px;padding:0;border:0;background:transparent}.service-topics label{display:block;font-size:13px;margin-bottom:7px}.service-topics select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cdd6db;border-radius:7px;color:#0f2d4a;background:#fffdf9;font:16px 'Nunito Sans',sans-serif}body[data-page="/contact"] #contactHelp h2{font:700 21px 'Nunito Sans',sans-serif}body[data-page="/contact"] .help-email{margin-top:30px;padding:0;border:0}body[data-page="/contact"] .help-email h2{font:700 21px 'Nunito Sans',sans-serif}body[data-page="/contact"] .help-email a{font-size:17px;color:#0f2d4a}
.wr-footer a{font-size:13px!important}.wr-footer small{font-size:13px!important}.wr-footer .cookie-link{display:inline-block;min-height:36px;padding:7px 0;font-size:12px!important;color:#526675}
#cookiePreferences{border:1px solid #bac8d0;border-radius:12px;width:420px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:24px;background:#fffdf9;color:#0f2d4a;box-shadow:0 8px 35px #0f2d4a24}#cookiePreferences::backdrop{background:#0f2d4a22}#cookiePreferences h2{font:700 21px 'Nunito Sans',sans-serif!important;padding-right:25px}#cookiePreferences p{font:14px/1.6 'Nunito Sans',sans-serif}#cookiePreferences [data-cookie-close]{position:absolute;right:12px;top:10px;background:none;border:0;font-size:25px;color:#0f2d4a;width:36px;height:36px}#cookiePreferences [data-metrics-choice]{display:block;min-height:44px;padding:10px 14px;margin:10px 0;border:1px solid #acbbc4;border-radius:6px;background:#fffdf9;color:#0f2d4a;font:600 14px 'Nunito Sans',sans-serif;width:100%}#cookiePreferences [data-metrics-choice=yes]{background:#0f2d4a;color:white}
html[data-view=account] #authPanel h1{font-family:'Nunito Sans',sans-serif!important;font-size:29px!important}
@media(max-width:1000px){.housing-results[data-compact=true]:not([data-map=true]) .grid{grid-template-columns:1fr;max-width:720px}}
@media(max-width:800px){.housing-results[data-map=true] .results-list{display:none}.housing-results[data-map=true] .map-section{width:100%}.housing-results[data-map=true] #woningMap{height:65vh;min-height:360px}.housing-results[data-compact=true] .card{grid-template-columns:120px minmax(0,1fr)}.search-panel .quick-filters{gap:6px!important}.quality-filter>summary{padding:8px 10px}.save-search-prompt{right:50%;transform:translateX(50%);bottom:14px;width:350px}.wr-footer .wr-footer-columns{gap:24px 16px}}
@media(max-width:400px){.housing-results[data-compact=true] .card{grid-template-columns:105px minmax(0,1fr)}.housing-results[data-compact=true] .card .content{padding:10px!important}.quality-filter>summary{font-size:11px}}
/* An opaque search panel needs no backdrop filter. Removing that containing block
   makes fixed popovers follow viewport coordinates rather than the panel origin. */
html .search-panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html .search-panel:has(.price-picker[open],.type-picker[open],.quality-filter[open]){z-index:190}
.search-panel .filters .radius-picker>summary{border:0;background:transparent;padding:0;min-height:40px;font:15px 'Nunito Sans',sans-serif;justify-content:space-between;width:100%;box-sizing:border-box}
.search-panel .filters .search-radius{display:block!important}.search-panel .filters .radius-picker .quality-filter-content input,.search-panel .filters .radius-picker .quality-filter-content select{display:block;width:100%;max-width:none;min-height:44px;margin-top:8px;border:1px solid #cdd4d8;border-radius:6px;padding:8px;background:#fffdf9;font-size:16px}


/* Mobile map and its cards are both visible; no map-only screen. */
@media(max-width:800px){
 .housing-results[data-map=true] .results-body{display:flex!important;flex-direction:column!important;gap:18px!important}
 .housing-results[data-map=true] .results-list{display:block!important;visibility:visible!important;width:100%!important;min-width:0!important;order:2!important}
 .housing-results[data-map=true] .map-section{display:block!important;position:relative!important;top:auto!important;order:1!important}
 .housing-results[data-map=true] .results-list .grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
 .housing-results .sort-control{display:flex!important;visibility:visible!important;grid-column:1 / -1!important;grid-row:auto!important;align-items:center!important;font-size:13px!important}
 .housing-results .sort-control select{display:block!important;max-width:100%!important;min-height:44px!important;font-size:14px!important}
}
.wr-account[data-signed-in=true]::after{display:none!important;content:none!important}


/* Place the sorting control directly below the matching-home count on mobile. */
@media(max-width:800px){
 .housing-results .results-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto auto auto!important;align-items:center!important;gap:10px!important}
 .housing-results .results-header .offer-heading{grid-column:1!important;grid-row:1!important}
 .housing-results .results-header .results-views{grid-column:2!important;grid-row:1/3!important}
 .housing-results .results-header #count{grid-column:1!important;grid-row:2!important}
 .housing-results .results-header .sort-control{
  grid-column:1 / -1!important;grid-row:3!important;display:flex!important;
  visibility:visible!important;opacity:1!important;height:auto!important;
  width:100%!important;min-height:46px!important;justify-content:flex-start!important;
  align-items:center!important;gap:12px!important;font-size:14px!important;
  color:#18334c!important;white-space:normal!important;margin:6px 0!important
 }
 .housing-results .results-header .sort-control select{
  display:block!important;visibility:visible!important;opacity:1!important;
  width:auto!important;min-width:170px!important;max-width:100%!important;
  min-height:44px!important;font-size:15px!important;background:#fffdf9!important
 }
 .housing-results .results-header .refresh{grid-column:2!important;grid-row:4!important;justify-self:end!important}
}


html[data-view=account] .account-panel{max-width:760px!important;margin:26px auto!important;padding:clamp(20px,5vw,42px)!important;border-radius:18px!important}
html[data-view=account] .account-panel h1{font-family:Georgia,serif!important;font-weight:500!important;letter-spacing:-.025em!important}
html[data-view=account] .account-panel .account-links{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important;gap:10px!important}
html[data-view=account] .account-panel .account-links a{padding:13px!important;border:1px solid #d9e1d9!important;border-radius:10px!important;text-decoration:none!important}
html[data-view=account] .account-panel .account-section{margin:20px 0!important;padding:18px!important;background:#f8f7f2!important;border:1px solid #e5e4da!important;border-radius:12px!important}
html[data-view=account] .account-panel .account-section h3{margin:0 0 14px!important;color:#18384b!important}
@media(max-width:800px){html[data-view=account] .account-panel{margin:14px!important}}


/* Native one-tap controls; advanced preferences stay behind a single disclosure. */
.mobile-native-type{display:none}
@media(max-width:800px){
 .search-panel .filters .mobile-native-type{display:block!important;width:100%!important;min-height:46px!important;padding:8px 10px!important;border:1px solid #cdd4d8!important;border-radius:7px!important;background:#fffdf9!important;color:#193b45!important;font-size:16px!important}
 .search-panel .filters .type-picker{display:none!important}
 .search-panel .filters>.search-type,.search-panel .filters>.search-rent{min-height:92px!important}
 .search-panel .search-secondary .more-filters>.quick-filters{display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin:14px 0!important}
 .search-panel .search-secondary .more-filters:not([open])>.quick-filters{display:none!important}
 .search-panel .search-secondary .more-filters>.quick-filters .advanced-field,.search-panel .search-secondary .more-filters>.quick-filters .search-outdoor{flex:1 1 180px!important;min-width:0!important}
 .search-panel .search-secondary .more-filters>.quick-filters select,.search-panel .search-secondary .more-filters>.quick-filters input[type=number]{font-size:16px!important;min-height:44px!important;max-width:100%!important}
}


/* Mobile results: always keep sorting under the count, including map mode. */
@media(max-width:800px){
 body .housing-results .results-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto auto auto!important}
 body .housing-results .results-header #count{grid-column:1!important;grid-row:2!important}
 body .housing-results .results-header label.sort-control,
 body .housing-results[data-map=true] .results-header label.sort-control{display:flex!important;position:relative!important;grid-column:1 / -1!important;grid-row:3!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;width:100%!important;height:auto!important;min-height:48px!important;margin:2px 0 8px!important;padding:0!important;align-items:center!important;justify-content:flex-start!important;font-size:14px!important;color:#18334c!important;overflow:visible!important}
 body .housing-results .results-header label.sort-control select{display:block!important;visibility:visible!important;opacity:1!important;flex:1 1 auto!important;width:auto!important;max-width:280px!important;min-height:46px!important;font-size:16px!important;appearance:auto!important;-webkit-appearance:menulist!important}
}
/* Preserve mandatory OpenStreetMap attribution in a quieter corner. */
#woningMap .leaflet-control-attribution{font:10px/1.4 'Nunito Sans',sans-serif!important;color:#4b5b64!important;background:rgba(255,253,249,.88)!important;padding:2px 5px!important;border-radius:5px 0 0 0!important;box-shadow:none!important;max-width:calc(100% - 12px)!important;white-space:normal!important}
#woningMap .leaflet-control-attribution a{color:#35566a!important;text-decoration:none!important}
@media(max-width:800px){#woningMap .leaflet-control-attribution{font-size:9px!important;padding:2px 4px!important}}

@media (min-width:1500px){.housing-results[data-map=true] .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width:500px){.housing-results[data-map=true] .grid{grid-template-columns:1fr!important}}
