/* DIPANI V7.27 – directory-style result page. No borrowed branding. */
body:has(.dipani-v727-ready) { background:#fff!important; }
html body .dipani-archive-grid.dipani-v727-ready,
html body .dipani-archive-grid.dipani-v727-ready > :is(.full-page-content-container,.full-page-content,.fs-content) {
  background:#fff!important;
  font-family:Inter,Montserrat,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
  color:#17243a!important;
}
html body .dipani-archive-grid .dipani-v727-breadcrumbs {
  display:flex!important; align-items:center!important; flex-flow:row wrap!important;
  gap:8px!important; box-sizing:border-box!important; min-width:0!important;
  margin:0 0 18px!important; padding:0!important;
  font-size:12px!important; line-height:1.5!important; color:#63718a!important;
}
html body .dipani-v727-breadcrumbs a {color:#073ba4!important; font-weight:600!important; text-decoration:none!important;}
html body .dipani-v727-breadcrumbs a:hover {text-decoration:underline!important;}
html body .dipani-v727-breadcrumbs [aria-current="page"] {color:#17243a!important; font-weight:750!important;}
html body .dipani-v727-breadcrumbs .dipani-v727-crumb-separator {color:#94a3b8!important; font-size:14px!important;}
html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar .full-page-sidebar-inner,
html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar .dipani-v79-filter {
  background:#fff!important; border-radius:15px!important;
}
html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar .full-page-sidebar-inner {
  border:1px solid #dce4ee!important; padding:21px 20px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-filter .dipani-v79-title {
  font-size:20px!important; font-weight:800!important; letter-spacing:-.025em!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-filter .dipani-v79-label {
  color:#111b2e!important; font-weight:750!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-filter :is(.dipani-v79-type,.dipani-v79-trigger,.dipani-v79-city,.dipani-v79-keyword) {
  border-color:#d5dee9!important; background:#fff!important; font-size:13px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-filter :is(input[type="checkbox"],input[type="radio"]) {
  accent-color:#fb7905!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-submit {
  background:#073a9f!important; border-color:#073a9f!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v79-submit:hover {
  background:#f97400!important; border-color:#f97400!important;
}
/* Keep the authentic cards, their prices, icons and links unchanged. */
html body .dipani-archive-grid.dipani-v727-ready :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) {
  display:flex!important; flex-wrap:wrap!important; justify-content:flex-start!important;
  align-items:flex-start!important; gap:30px 28px!important;
  width:100%!important; max-width:926px!important; min-width:0!important;
  margin:0!important; padding:0!important;
}
/* Search aligns with the three 290px cards plus 2*28px gaps. */
html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search {
  box-sizing:border-box!important; width:100%!important; max-width:926px!important;
  margin:0 0 17px!important; padding:0!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search .dipani-quick-search-label {
  font-size:13px!important; font-weight:750!important; margin-bottom:8px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search .dipani-quick-search-row {
  border-radius:10px!important; border-color:#d5dee9!important; height:49px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search button[type="submit"] {
  background:#073a9f!important; border-color:#073a9f!important; height:47px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search button[type="submit"]:hover {
  background:#f97400!important; border-color:#f97400!important;
}
html body .dipani-v727-intro-subtitle {
  font-size:13px!important; font-weight:600!important; color:#53627b!important;
  margin:5px 0 12px!important; line-height:1.5!important;
}
html body .dipani-archive-grid.dipani-v727-ready :is(.full-page-content-container,.full-page-content,.fs-content) .dipani-v727-enhanced-heading {
  color:#13233a!important; font-size:clamp(22px,2vw,29px)!important;
  font-weight:800!important; line-height:1.25!important; letter-spacing:-.025em!important;
}
html body .dipani-v727-active-filters {
  box-sizing:border-box!important; display:flex!important; flex-wrap:wrap!important; gap:8px!important;
  width:100%!important; max-width:926px!important; margin:0 0 17px!important;
  padding:12px 12px!important; border-radius:12px!important; border:1px solid #e6ebf3!important;
  background:#fbfcfe!important;
}
html body .dipani-v727-active-filters .dipani-v727-filter-label {font-size:12px!important; font-weight:800!important; color:#28344a!important; align-self:center!important;}
html body .dipani-v727-active-filters .dipani-v727-chip {
  display:inline-flex!important; align-items:center!important; gap:8px!important;
  background:#fff3e8!important; border:1px solid #ffd4ae!important;
  color:#a94b04!important; padding:5px 10px!important; border-radius:7px!important;
  text-decoration:none!important; font-size:12px!important; font-weight:750!important; line-height:1.4!important;
}
html body .dipani-v727-active-filters .dipani-v727-chip:hover {background:#ffe4ca!important;}
html body .dipani-v727-active-filters .dipani-v727-chip-close {font-weight:900!important; font-size:14px!important;}
html body .dipani-v727-active-filters .dipani-v727-reset {font-size:12px!important; font-weight:650!important; align-self:center!important; color:#073a9f!important; text-decoration:underline!important; margin-left:auto!important;}
/* Map teaser is opt-in: the third-party embedded map loads on click. */
html body .dipani-v727-map {
  box-sizing:border-box!important; position:relative!important; width:100%!important; min-height:164px!important;
  margin:0 0 14px!important; padding:0!important; border-radius:13px!important;
  overflow:hidden!important; border:1px solid #dce4ee!important; background:#e5f0f5!important;
}
html body .dipani-v727-map-cover {
  position:relative!important; display:flex!important; flex-direction:column!important; justify-content:flex-end!important;
  min-height:164px!important; width:100%!important; padding:13px!important;
  background: radial-gradient(ellipse at 70% 27%,#bce5e2 0 20%,transparent 20.5%),
    linear-gradient(44deg, transparent 47%,#f8fbff 48%,#f8fbff 51%, transparent 52%),
    linear-gradient(130deg, transparent 38%,#fbfbf7 39%,#fbfbf7 43%, transparent 44%),
    linear-gradient(160deg,#e7efe6,#beded1);
}
html body .dipani-v727-map-label {font-size:11px!important; color:#12324c!important; font-weight:800!important; margin:0 0 7px!important; text-shadow:0 1px 2px #fff!important;}
html body .dipani-v727-map-button {
  display:inline-flex!important; align-self:flex-start!important; gap:6px!important; align-items:center!important;
  border:0!important; border-radius:8px!important; padding:9px 12px!important; background:#073a9f!important;
  color:#fff!important; font-size:12px!important; font-weight:800!important; cursor:pointer!important;
}
html body .dipani-v727-map-button:hover {background:#fb7905!important;}
html body .dipani-v727-map iframe {width:100%!important; height:210px!important; border:0!important; display:block!important;}
html body .dipani-v727-map-note {padding:5px 9px!important; margin:0!important; font-size:10px!important; color:#55647d!important; background:#fff!important;}
/* Flexible single-column fallback: avoid forcing 290px x 3 into smaller screens. */
@media screen and (min-width:1320px) {
  html body .dipani-archive-grid.dipani-v727-ready:has(> .full-page-sidebar):has(> :is(.full-page-content-container,.full-page-content,.fs-content)) {
    box-sizing:border-box!important; display:grid!important;
    grid-template-columns:300px minmax(0,1fr)!important; column-gap:24px!important;
    width:calc(100% - 64px)!important; max-width:1290px!important;
    margin:0 auto!important; padding:0 0 45px!important;
    align-items:start!important; background:#fff!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .dipani-v727-breadcrumbs {
    grid-column:1/-1!important; grid-row:1!important; margin:20px 0 15px!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar {
    grid-column:1!important; grid-row:2!important; box-sizing:border-box!important;
    position:relative!important; inset:auto!important; width:300px!important; max-width:300px!important;
    min-width:0!important; margin:0!important; padding:0!important; float:none!important; transform:none!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > :is(.full-page-content-container,.full-page-content,.fs-content) {
    grid-column:2!important; grid-row:2!important; box-sizing:border-box!important;
    position:relative!important; inset:auto!important; margin:0!important; padding:0!important;
    width:100%!important; min-width:0!important; max-width:none!important;
    float:none!important; flex:auto!important; transform:none!important;
  }
}
@media screen and (min-width:768px) and (max-width:1319px) {
  html body .dipani-archive-grid.dipani-v727-ready > .dipani-v727-breadcrumbs {width:100%!important;flex:1 1 100%!important;margin:12px 0!important;}
  html body .dipani-archive-grid.dipani-v727-ready :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) {justify-content:center!important;}
}
@media screen and (max-width:767px) {
  html body .dipani-archive-grid.dipani-v727-ready > .dipani-v727-breadcrumbs {
    width:100%!important; margin:12px 0!important; padding:0 12px!important;
  }
  html body .dipani-v727-active-filters {padding:10px!important;}
  html body .dipani-archive-grid.dipani-v727-ready :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) {
    max-width:100%!important; justify-content:center!important; gap:28px 16px!important;
  }
  html body .dipani-v727-map {margin:0 0 12px!important;}
  html body .dipani-v727-map-cover {min-height:135px!important;}
  html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search {max-width:100%!important;}
}
/* Native Listeo may expose a row/flex wrapper on tablet and phone.
   Stack its direct children rather than letting map/sidebar squeeze the cards. */
/* Two-column tablet/compact desktop variant: 2 original cards per row. */
@media screen and (min-width:1000px) and (max-width:1319px) {
  html body .dipani-archive-grid.dipani-v727-ready:has(> .full-page-sidebar):has(> :is(.full-page-content-container,.full-page-content,.fs-content)) {
    box-sizing:border-box!important; display:grid!important;
    grid-template-columns:270px minmax(0,1fr)!important; column-gap:24px!important;
    width:calc(100% - 48px)!important; max-width:1200px!important;
    margin:0 auto!important; padding:0 0 32px!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .dipani-v727-breadcrumbs {
    grid-column:1/-1!important; grid-row:1!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar {
    grid-column:1!important; grid-row:2!important; position:relative!important;
    inset:auto!important; width:270px!important; min-width:0!important; max-width:270px!important;
    margin:0!important; padding:0!important; float:none!important; transform:none!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > :is(.full-page-content-container,.full-page-content,.fs-content) {
    grid-column:2!important; grid-row:2!important; position:relative!important;
    inset:auto!important; box-sizing:border-box!important; width:100%!important; min-width:0!important;
    max-width:100%!important; margin:0!important; padding:0!important; float:none!important; transform:none!important;
  }
}
@media screen and (max-width:999px) {
  html body .dipani-archive-grid.dipani-v727-ready {
    display:flex!important; flex-direction:column!important; gap:18px!important;
    width:calc(100% - 24px)!important; max-width:760px!important;
    margin-left:auto!important; margin-right:auto!important;
    padding:0 0 24px!important; align-items:stretch!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .full-page-sidebar,
  html body .dipani-archive-grid.dipani-v727-ready > :is(.full-page-content-container,.full-page-content,.fs-content) {
    position:static!important; float:none!important; flex:0 1 auto!important;
    width:100%!important; min-width:0!important; max-width:100%!important;
    margin:0!important; padding:0!important; transform:none!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready > .dipani-v727-breadcrumbs {
    width:100%!important; flex:0 0 auto!important; margin:0!important; padding:8px 0!important;
  }
  html body .dipani-archive-grid.dipani-v727-ready .dipani-v727-map {max-width:100%!important;}
  html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search {width:100%!important;}
  html body .dipani-archive-grid.dipani-v727-ready .dipani-quick-search .dipani-quick-search-row {max-width:100%!important;}
}


/* DIPANI V7.28 – white page background (including outer theme wrappers). */
html:has(.dipani-archive-grid.dipani-v727-ready),
html body:has(.dipani-archive-grid.dipani-v727-ready),
html body:has(.dipani-archive-grid.dipani-v727-ready) #wrapper,
html body:has(.dipani-archive-grid.dipani-v727-ready) #content,
html body:has(.dipani-archive-grid.dipani-v727-ready) #main,
html body:has(.dipani-archive-grid.dipani-v727-ready) .main-wrapper,
html body:has(.dipani-archive-grid.dipani-v727-ready) .full-page-container,
html body:has(.dipani-archive-grid.dipani-v727-ready) .full-page-content-container,
html body:has(.dipani-archive-grid.dipani-v727-ready) .fs-inner-container,
html body:has(.dipani-archive-grid.dipani-v727-ready) .content-wrapper {
  background-color:#fff!important;
}
/* Native header, user dashboards and actual filter fields are unchanged. */
html body .dipani-archive-grid.dipani-v727-ready .dipani-v727-map {
  height:auto!important; min-height:0!important; background:#edf4f0!important;
  border-radius:12px!important; overflow:hidden!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-map-surface {
  height:205px!important;width:100%!important;display:block!important;
  background:#e5f0ec!important;z-index:0!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-map-surface iframe {
  width:100%!important;height:205px!important;border:0!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v727-map-note {
  padding:6px 10px!important;font-size:11px!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-viewbar {
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  width:100%!important;gap:0!important;margin:0 0 15px!important;padding:0!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-viewbtn {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:76px!important;min-height:36px!important;padding:7px 12px!important;
  border:1px solid #dbe3ef!important;background:#fff!important;color:#172b4d!important;
  font-size:12px!important;font-weight:700!important;line-height:1.3!important;
  box-shadow:none!important;cursor:pointer!important;
}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-viewbtn:first-child {border-radius:8px 0 0 8px!important;}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-viewbtn:last-child {border-radius:0 8px 8px 0!important;}
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-viewbtn.is-active {
  color:#fff!important;background:#073a9f!important;border-color:#073a9f!important;
}
/* Real list mode: preserves original cards, categories, images and actions. */
@media(min-width:768px){
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) {
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    gap:18px!important;max-width:926px!important;justify-content:flex-start!important;
  }
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) > article.dipani-exact-card {
    display:flex!important;flex-direction:row!important;align-items:stretch!important;
    gap:18px!important;width:100%!important;min-width:0!important;max-width:100%!important;
    flex:0 0 auto!important;padding:12px!important;box-sizing:border-box!important;
    background:#fff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;
    box-shadow:0 3px 14px rgba(17,39,73,.06)!important;
  }
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) > article.dipani-exact-card > .dipani-exact-media {
    flex:0 0 238px!important;width:238px!important;min-width:238px!important;max-width:238px!important;
    height:210px!important;min-height:210px!important;max-height:210px!important;
    margin:0!important;
  }
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) > article.dipani-exact-card > .dipani-exact-body {
    display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-width:0!important;
    width:auto!important;max-width:none!important;margin:0!important;padding:2px 2px 0!important;
  }
  html body .dipani-archive-grid.dipani-v728-list .dipani-exact-actions {margin-top:auto!important;max-width:350px!important;}
  html body .dipani-archive-grid.dipani-v728-list .dipani-exact-description {
    -webkit-line-clamp:3!important;min-height:0!important;
  }
}
@media(min-width:768px) and (max-width:1099px){
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) > article.dipani-exact-card > .dipani-exact-media {
    width:185px!important;min-width:185px!important;max-width:185px!important;
    flex-basis:185px!important;height:185px!important;min-height:185px!important;max-height:185px!important;
  }
}
@media(max-width:767px){
  html body .dipani-archive-grid.dipani-v728-list :is(#listeo-listings-container[data-style="grid"], .dipani-v749-results) {
    flex-direction:column!important;align-items:center!important;
  }
}

/* V7.33: allow map zoom controls to occupy upper-left corner normally. */
html body .dipani-archive-grid.dipani-v727-ready .dipani-v728-map-surface,
html body .dipani-archive-grid.dipani-v727-ready .dipani-v729-explorer-map {
  position:relative!important;
}
