.marion-p4-sidebar { box-sizing:border-box; border:1px solid #d8dde0; border-radius:12px; background:#fff; color:#18212a; padding:18px; }
.marion-property-filter-chips { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px; max-width:100%; }
.marion-property-filter-chips[hidden] { display:none; }
.marion-property-filter-chips a { box-sizing:border-box; display:inline-flex; align-items:center; min-height:44px; max-width:100%; padding:8px 12px; border:1px solid #68747b; border-radius:6px; color:#18212a; background:#fff; overflow-wrap:anywhere; text-decoration:none; }
.marion-property-filter-chips a:focus-visible { outline:3px solid #0a5ecc; outline-offset:3px; }
.marion-p4-sidebar--native { float:left; width:clamp(280px,30%,320px); max-width:100%; margin:0 24px 20px 0; position:sticky; top:16px; z-index:2; }
/* The selected native half-map scrollport, never homepage or external cards. */
[data-marion-p4-scroll-layout] { display:grid; grid-template-columns:clamp(280px,30%,320px) minmax(0,1fr); align-items:start; gap:24px; min-height:100%; }
[data-marion-p4-scroll-layout] > .marion-p4-sidebar--native { float:none; width:100%; margin:0; max-height:calc(var(--marion-p4-scrollport-height,100vh) - 48px); overflow-y:auto; overscroll-behavior-y:contain; }
.marion-p4-native-results { min-width:0; }
.marion-p4-sidebar h2,.marion-p4-sidebar h3 { margin:0; color:inherit; }
.marion-p4-sidebar h2 { font-size:1.15rem; }
.marion-p4-sidebar h3 { font-size:1rem; }
.marion-p4-sidebar__group { border-top:1px solid #e6eaed; margin-top:14px; padding-top:14px; }
.marion-p4-sidebar__group > div { display:grid; gap:9px; margin-top:9px; }
.marion-p4-sidebar label { display:grid; gap:5px; font-weight:600; }
.marion-p4-sidebar input,.marion-p4-sidebar select,.marion-p4-sidebar button { box-sizing:border-box; min-height:42px; max-width:100%; border:1px solid #68747b; border-radius:6px; background:#fff; color:inherit; padding:8px; }
.marion-p4-sidebar button { cursor:pointer; font-weight:700; }
.marion-p4-sidebar button[aria-pressed="true"] { border-color:#0a5ecc; background:#eaf3ff; }
.marion-p4-sidebar__actions { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 0; }
.marion-p4-sidebar__actions button:last-child { background:#0a5ecc; border-color:#0a5ecc; color:#fff; }
.marion-p4-sidebar__summary,.marion-p4-sidebar__native-context { margin:14px 0 0; font-size:.92rem; }
.marion-p4-sidebar__entities { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.marion-p4-sidebar__entities a { border:1px solid #68747b; border-radius:999px; color:inherit; padding:7px 10px; text-decoration:none; }
.marion-p4-sidebar__entities a[aria-current="page"] { background:#eaf3ff; border-color:#0a5ecc; }
section.marion-external-catalogue { display:grid; grid-template-columns:minmax(230px,300px) minmax(0,1fr); gap:24px; max-width:1440px; margin:24px auto; padding:0 18px; }
.marion-external-catalogue > h1,.marion-external-catalogue > p,.marion-external-catalogue > .marion-external-observation-cards,.marion-external-catalogue > [data-marion-external-map],section.marion-external-catalogue > [data-marion-agency-location-filter] { grid-column:2; }
.marion-p4-sidebar--external { grid-column:1; grid-row:1 / span 5; align-self:start; position:sticky; top:16px; }
.marion-external-observation-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.marion-p4-filtered-out { display:none !important; }
.marion-p4-sidebar :focus-visible { outline:3px solid #0a5ecc; outline-offset:3px; }
@media (max-width:1024px) { .marion-p4-sidebar--native { width:clamp(280px,34%,290px); margin-right:16px; } section.marion-external-catalogue { gap:16px; padding:0 12px; } }
@media (min-width:769px) and (max-width:1024px) { [data-marion-p4-scroll-layout] { grid-template-columns:280px minmax(0,1fr); gap:16px; } }
@media (max-width:768px) { [data-marion-p4-scroll-layout] { display:block; } }
@media (max-width:768px) { .marion-p4-sidebar--native { display:none; } .marion-p4-sidebar--mobile { width:auto; float:none; margin:0; position:static; } section.marion-external-catalogue { display:block; margin:16px auto; } .marion-p4-sidebar--external { position:static; margin:0 0 16px; } .marion-external-catalogue > * { margin-bottom:16px; } .marion-p4-mobile-trigger { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin:0 0 10px; border:1px solid #68747b; border-radius:6px; background:#fff; color:#18212a; padding:8px 14px; font-weight:700; } .marion-p4-mobile-drawer { margin:0 0 12px; } .marion-p4-mobile-drawer[hidden] { display:none; } }
@media (max-width:390px) { .marion-p4-sidebar { padding:14px; } .marion-p4-sidebar__actions > * { width:100%; } .marion-external-observation-cards { grid-template-columns:1fr; } }

/* Catalogue-backed agency location filters; never mounted in native Houzez forms. */
.marion-external-catalogue [data-marion-agency-location-filter] { display:flex; flex-wrap:wrap; align-items:end; gap:.65rem; margin:1rem 0; }
.marion-external-catalogue [data-marion-agency-location-filter] label { flex-basis:100%; }
.marion-external-catalogue [data-marion-agency-location-filter] input { min-width:min(18rem, 100%); max-width:100%; }
.marion-external-catalogue [data-marion-agency-location-filter] output { flex-basis:100%; }
@media (max-width:600px) {
  .marion-external-catalogue [data-marion-agency-location-filter] { align-items:stretch; flex-direction:column; }
  .marion-external-catalogue [data-marion-agency-location-filter] input,
  .marion-external-catalogue [data-marion-agency-location-filter] button,
  .marion-external-catalogue [data-marion-agency-location-filter] a { box-sizing:border-box; width:100%; }
}

/* Typed detail inside the native Houzez shell, independent of archive grid. */
.marion-typed-template-surface main[data-marion-external-route="detail"] { box-sizing:border-box; max-width:1180px; margin:24px auto; padding:0 18px; overflow-wrap:anywhere; }
.marion-external-observation-cards > a { min-width:0; overflow-wrap:anywhere; }
.marion-typed-template-surface main[data-marion-external-route="detail"] img { max-width:100%; height:auto; }

.marion-external-observation-cards img { display:block; width:100%; height:200px; object-fit:cover; }

/* Only advanced fields represented in the same owning P4 drawer. Storage and submission stay native. */
@media (max-width:768px) { [data-marion-p4-proxied-native] { display:none !important; } }

/* Search-only: an automatic consent panel must not move its fixed trigger. */
body.page-id-16859 [data-marion-consent] section { position:absolute; bottom:44px; left:0; width:min(540px, calc(100vw - 24px)); max-height:calc(100vh - 136px); box-sizing:border-box; }

/* Native controls are 42px high. Reserve their row before selectpicker wraps them. */
@media (min-width:769px) {
 body.page-id-16859 #desktop-search-form .advanced-search-filters > .row > .col { min-height:42px; }
 body.page-id-16859 #desktop-search-form .flex-search > select.selectpicker { display:block; width:auto; min-height:42px; }
}

/* The selected Elementor nested menu starts collapsed, before its JS handler. */
@media (max-width:768px) { body.page-id-16859 #header-hz-elementor .e-n-menu-toggle[aria-expanded="false"] + .e-n-menu-wrapper { display:none; } }
