/* Directory System v0.2 */

:root {
  --ds-primary: #1f6feb;
  --ds-secondary: #f59e0b;
  --ds-primary-dark: #1557bd;
  --ds-text: #172033;
  --ds-muted: #667085;
  --ds-border: #e5e7eb;
  --ds-card-bg: #ffffff;
  --ds-soft-bg: #f8fafc;
  --ds-radius: 18px;
}

.ds-grid {
  display: grid;
  gap: 24px;
}

.ds-grid-1 { grid-template-columns: 1fr; }
.ds-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ds-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ds-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ds-card {
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius);
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
  transition: transform .2s ease, box-shadow .2s ease;
}

.ds-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.10);
}

.ds-card-image {
  display: block;
  aspect-ratio: 4 / 3;
  background: var(--ds-soft-bg);
  overflow: hidden;
  text-decoration: none;
}

.ds-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ds-card-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 18px;
  color: var(--ds-muted);
  text-align: center;
  font-weight: 700;
}

.ds-card-body {
  padding: 18px;
}

.ds-card-title {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.3;
}

.ds-card-title a {
  color: var(--ds-text);
  text-decoration: none;
}

.ds-card-title a:hover {
  color: var(--ds-primary);
}

.ds-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.ds-card-meta span {
  font-size: 13px;
  color: var(--ds-primary);
  background: color-mix(in srgb, var(--ds-primary) 10%, transparent);
  padding: 5px 10px;
  border-radius: 999px;
  line-height: 1;
}

.ds-card-excerpt {
  color: var(--ds-muted);
  font-size: 15px;
  line-height: 1.6;
  margin: 0 0 16px;
}

.ds-card-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--ds-primary);
  color: #fff !important;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
}

.ds-card-button:hover {
  filter: brightness(0.9);
}

.ds-empty {
  grid-column: 1 / -1;
  padding: 24px;
  background: var(--ds-soft-bg);
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius);
  text-align: center;
  color: var(--ds-muted);
}

@media (max-width: 980px) {
  .ds-grid-3,
  .ds-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .ds-grid,
  .ds-grid-2,
  .ds-grid-3,
  .ds-grid-4 {
    grid-template-columns: 1fr;
  }

  .ds-card-body {
    padding: 16px;
  }
}


.ds-card-fields {
  display: grid;
  gap: 8px;
  margin: 0 0 16px;
}

.ds-card-field {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border-radius: 10px;
  background: var(--ds-soft-bg);
  font-size: 14px;
}

.ds-card-field-label {
  color: var(--ds-muted);
  font-weight: 700;
}

.ds-card-field-value {
  color: var(--ds-text);
  font-weight: 700;
  text-align: end;
}


/* Single Item Modules */

.ds-single-full,
.ds-single-header,
.ds-single-layout,
.ds-single-box {
  box-sizing: border-box;
}

.ds-single-header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  margin-bottom: 28px;
}

.ds-single-hero-image {
  border-radius: var(--ds-radius);
  overflow: hidden;
  background: var(--ds-soft-bg);
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.08);
}

.ds-single-hero-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
}

.ds-single-tax {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.ds-single-tax span {
  display: inline-flex;
  padding: 7px 12px;
  border-radius: 999px;
  background: var(--ds-soft-bg);
  color: var(--ds-primary);
  font-weight: 700;
  font-size: 13px;
}

.ds-single-title {
  margin: 0 0 12px;
  color: var(--ds-text);
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.12;
}

.ds-single-excerpt {
  color: var(--ds-muted);
  font-size: 18px;
  line-height: 1.7;
  margin: 0;
}

.ds-single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 28px;
  align-items: start;
}

.ds-single-box {
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius);
  padding: 22px;
  margin-bottom: 22px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.ds-single-box-title {
  margin: 0 0 16px;
  color: var(--ds-text);
  font-size: 22px;
  line-height: 1.25;
}

.ds-single-fields {
  display: grid;
  gap: 10px;
}

.ds-single-field {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
  background: var(--ds-soft-bg);
  border-radius: 12px;
}

.ds-single-field-label {
  color: var(--ds-muted);
  font-weight: 800;
}

.ds-single-field-value {
  color: var(--ds-text);
  font-weight: 700;
  overflow-wrap: anywhere;
}

.ds-single-content {
  color: var(--ds-text);
  line-height: 1.8;
  font-size: 16px;
}

.ds-single-content p:last-child {
  margin-bottom: 0;
}

.ds-contact-actions {
  display: grid;
  gap: 10px;
}

.ds-contact-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  padding: 11px 16px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 800;
  background: var(--ds-primary);
  color: #fff !important;
}

.ds-contact-btn:hover {
  filter: brightness(0.92);
}

.ds-contact-whatsapp {
  background: #25D366;
}

.ds-contact-email {
  background: var(--ds-text);
}

.ds-map-frame {
  overflow: hidden;
  border-radius: calc(var(--ds-radius) - 4px);
  background: var(--ds-soft-bg);
}

.ds-map-link {
  display: inline-flex;
  margin-top: 12px;
  color: var(--ds-primary);
  font-weight: 800;
  text-decoration: none;
}

.ds-map-link:hover {
  text-decoration: underline;
}

@media (max-width: 980px) {
  .ds-single-header,
  .ds-single-layout {
    grid-template-columns: 1fr;
  }

  .ds-single-sidebar {
    order: -1;
  }
}

@media (max-width: 640px) {
  .ds-single-box {
    padding: 18px;
  }

  .ds-single-field {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}


/* Auto native single layout */

.ds-auto-single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  margin-top: 28px;
  align-items: start;
}

@media (max-width: 980px) {
  .ds-auto-single-layout {
    grid-template-columns: 1fr;
  }

  .ds-auto-single-side {
    order: -1;
  }
}


.ds-agent-box {
  background: var(--ds-soft-bg);
  border-radius: 14px;
  padding: 14px;
  margin-bottom: 14px;
}

.ds-agent-box strong {
  display: block;
  color: var(--ds-text);
  margin-bottom: 6px;
}

.ds-agent-box p {
  margin: 0;
  color: var(--ds-muted);
  line-height: 1.6;
}

.ds-contact-website { background: var(--ds-secondary); }
.ds-contact-waze { background: #33ccff; }
.ds-contact-reviews { background: #4285F4; }
.ds-contact-tripadvisor { background: #00aa6c; }
.ds-contact-ubereats { background: #06c167; }

.ds-single-field-value a {
  color: var(--ds-primary);
  font-weight: 800;
  text-decoration: none;
}

.ds-single-field-value a:hover {
  text-decoration: underline;
}


/* Filters */

.ds-filters {
  background: var(--ds-card-bg);
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius);
  padding: 18px;
  margin-bottom: 24px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.ds-filters-horizontal {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  align-items: end;
}

.ds-filters-vertical {
  display: grid;
  gap: 14px;
}

.ds-filter-field {
  display: grid;
  gap: 6px;
}

.ds-filter-field label {
  font-weight: 800;
  color: var(--ds-text);
  font-size: 14px;
}

.ds-filter-field input[type="text"],
.ds-filter-field input[type="number"],
.ds-filter-field select {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--ds-border);
  border-radius: 12px;
  padding: 8px 12px;
  background: #fff;
  color: var(--ds-text);
}

.ds-range-inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.ds-filter-checkbox {
  align-self: center;
}

.ds-filter-checkbox label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  background: var(--ds-soft-bg);
  border-radius: 12px;
  padding: 8px 12px;
}

.ds-filter-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.ds-filter-submit,
.ds-filter-reset {
  min-height: 42px;
  padding: 10px 18px;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
  border: 0;
  cursor: pointer;
}

.ds-filter-submit {
  background: var(--ds-primary);
  color: #fff;
}

.ds-filter-reset {
  background: var(--ds-soft-bg);
  color: var(--ds-text);
}

.ds-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 26px;
}

.ds-pagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 999px;
  background: var(--ds-soft-bg);
  color: var(--ds-text);
  text-decoration: none;
  font-weight: 800;
}

.ds-pagination a.is-active {
  background: var(--ds-primary);
  color: #fff;
}

@media (max-width: 1100px) {
  .ds-filters-horizontal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .ds-filters-horizontal {
    grid-template-columns: 1fr;
  }

  .ds-filter-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .ds-filter-submit,
  .ds-filter-reset {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}


/* Results Engine */
.ds-results-engine{display:grid;gap:34px}.ds-results-section{display:grid;gap:18px}.ds-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.ds-results-heading h2{margin:0;color:var(--ds-text);font-size:clamp(24px,3vw,34px);line-height:1.2}.ds-results-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:32px;padding:0 12px;border-radius:999px;background:var(--ds-soft-bg);color:var(--ds-primary);font-weight:800}.ds-results-grid{display:grid;gap:22px}.ds-results-grid-1{grid-template-columns:1fr}.ds-results-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-results-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ds-results-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ds-result-card{position:relative;background:var(--ds-card-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius);overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.06)}.ds-result-card-level-a{border-color:color-mix(in srgb,var(--ds-primary) 35%,var(--ds-border))}.ds-result-card-featured{border-color:color-mix(in srgb,var(--ds-secondary) 45%,var(--ds-border))}.ds-result-image{position:relative;display:block;aspect-ratio:4/3;background:var(--ds-soft-bg);overflow:hidden;text-decoration:none}.ds-results-level-b .ds-result-card{display:grid;grid-template-columns:170px minmax(0,1fr)}.ds-results-level-b .ds-result-image{aspect-ratio:auto;min-height:150px}.ds-result-image img{width:100%;height:100%;object-fit:cover}.ds-result-image>span{display:flex;align-items:center;justify-content:center;height:100%;padding:18px;color:var(--ds-muted);text-align:center;font-weight:800}.ds-result-badge{position:absolute;top:12px;inset-inline-start:12px;display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--ds-primary);color:#fff;font-style:normal;font-size:12px;font-weight:900}.ds-result-card-featured .ds-result-badge{background:var(--ds-secondary)}.ds-result-body{padding:16px}.ds-result-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:9px}.ds-result-meta span{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--ds-soft-bg);color:var(--ds-primary);font-size:12px;font-weight:800}.ds-result-title{margin:0 0 10px;font-size:19px;line-height:1.3}.ds-result-title a{color:var(--ds-text);text-decoration:none}.ds-result-title a:hover{color:var(--ds-primary)}.ds-result-price{margin-bottom:10px;color:var(--ds-text);font-size:20px;font-weight:900}.ds-result-fields{display:flex;flex-wrap:wrap;gap:7px 12px;margin-bottom:14px;color:var(--ds-muted);font-size:13px;line-height:1.45}.ds-result-fields strong{color:var(--ds-text)}.ds-result-actions{display:flex;flex-wrap:wrap;gap:8px}.ds-result-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px;border-radius:999px;text-decoration:none;font-weight:900;font-size:13px;background:var(--ds-soft-bg);color:var(--ds-text)}.ds-result-details{background:var(--ds-primary);color:#fff!important}.ds-result-wa{background:#25D366;color:#fff!important}.ds-result-call{background:var(--ds-text);color:#fff!important}@media(max-width:1100px){.ds-results-grid-4,.ds-results-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.ds-results-grid-2,.ds-results-grid-3,.ds-results-grid-4{grid-template-columns:1fr}.ds-results-level-b .ds-result-card{grid-template-columns:1fr}.ds-results-level-b .ds-result-image{aspect-ratio:4/3}}

/* Modular Single Builder */
.ds-mini-title{margin:0 0 14px;color:var(--ds-text);font-size:clamp(30px,4vw,52px);line-height:1.1}.ds-mini-image{border-radius:var(--ds-radius);overflow:hidden;box-shadow:0 14px 40px rgba(15,23,42,.08);background:var(--ds-soft-bg)}.ds-mini-image img{width:100%;height:auto;display:block}.ds-mini-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:var(--ds-soft-bg);margin-bottom:10px}.ds-mini-field span{color:var(--ds-muted);font-weight:800}.ds-mini-field strong{color:var(--ds-text);font-weight:900}.ds-mini-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.ds-mini-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 15px;border-radius:999px;background:var(--ds-primary);color:#fff!important;text-decoration:none;font-weight:900}.ds-mini-btn-website{background:var(--ds-secondary)}.ds-mini-btn-waze{background:#33ccff}.ds-mini-btn-reviews{background:#4285F4}.ds-mini-btn-tripadvisor{background:#00aa6c}.ds-mini-btn-ubereats{background:#06c167}.ds-mini-btn-booking{background:var(--ds-text)}.ds-mini-taxonomies{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.ds-mini-taxonomies span{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--ds-soft-bg);color:var(--ds-primary);font-weight:800;font-size:13px}.ds-next-prev{display:flex;justify-content:space-between;gap:12px;margin:24px 0}.ds-next-prev a{color:var(--ds-primary);font-weight:900;text-decoration:none}.ds-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ds-related-card{display:block;border:1px solid var(--ds-border);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ds-text);background:#fff}.ds-related-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.ds-related-card strong{display:block;padding:12px;font-size:15px;line-height:1.35}@media(max-width:980px){.ds-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ds-related-grid{grid-template-columns:1fr}.ds-next-prev{flex-direction:column}.ds-mini-field{align-items:flex-start;flex-direction:column;gap:4px}}

/* Field Icons */
.ds-single-field{grid-template-columns:42px 170px minmax(0,1fr)}.ds-single-field-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:#fff;font-size:20px;box-shadow:0 4px 12px rgba(15,23,42,.06)}.ds-field-style-icon_card{grid-template-columns:42px minmax(0,1fr);align-items:start}.ds-field-style-icon_card .ds-single-field-label{grid-column:2;color:var(--ds-muted);font-size:13px}.ds-field-style-icon_card .ds-single-field-value{grid-column:2;font-size:18px}.ds-field-style-pill{display:inline-flex;grid-template-columns:none;width:auto;margin:0 8px 8px 0;border-radius:999px;padding:8px 13px}.ds-field-style-pill .ds-single-field-icon{width:auto;height:auto;background:transparent;box-shadow:none;margin-inline-end:4px}.ds-field-style-pill .ds-single-field-label{margin-inline-end:4px}.ds-mini-field{gap:10px}.ds-mini-field-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:#fff;font-size:18px;box-shadow:0 4px 12px rgba(15,23,42,.06);flex:0 0 auto}.ds-result-fields em{font-style:normal;margin-inline-end:3px}@media(max-width:640px){.ds-single-field{grid-template-columns:42px minmax(0,1fr)}.ds-single-field-value{grid-column:2}.ds-single-field-label{grid-column:2}}

/* Field display controls */
.ds-single-field:not(:has(.ds-single-field-icon)){grid-template-columns:170px minmax(0,1fr)}.ds-single-field:not(:has(.ds-single-field-label)){grid-template-columns:42px minmax(0,1fr)}.ds-single-field:not(:has(.ds-single-field-icon)):not(:has(.ds-single-field-label)){grid-template-columns:1fr}.ds-field-style-pill:not(:has(.ds-single-field-label)){gap:4px}.ds-result-fields span{display:inline-flex;align-items:center;gap:4px}.ds-result-fields em{display:inline-flex;align-items:center;justify-content:center}

/* v1.4 Frontend Engine */
.ds-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:14px 16px;background:var(--ds-card-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius);box-shadow:0 8px 24px rgba(15,23,42,.05)}
.ds-results-toolbar-title strong{font-size:18px;color:var(--ds-text)}
.ds-sort-form label{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ds-muted)}
.ds-sort-form select{min-height:40px;border:1px solid var(--ds-border);border-radius:999px;padding:6px 14px;background:#fff;color:var(--ds-text);font-weight:800}
.ds-filters-booking{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:10px;align-items:end;padding:14px;border-radius:999px}
.ds-filters-booking .ds-filter-field{gap:4px}
.ds-filters-booking .ds-filter-field label{font-size:12px;padding-inline:4px}
.ds-filters-booking input[type="text"],.ds-filters-booking input[type="number"],.ds-filters-booking select{border-radius:999px}
.ds-filters-booking .ds-filter-actions{align-self:end}
.ds-filters-booking .ds-filter-submit{min-width:120px}
.ds-filters-booking .ds-filter-reset{display:none}
@media(max-width:1100px){.ds-filters-booking{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:var(--ds-radius)}.ds-filters-booking .ds-filter-reset{display:inline-flex}}
@media(max-width:640px){.ds-results-toolbar{flex-direction:column;align-items:stretch}.ds-sort-form label{justify-content:space-between}.ds-filters-booking{grid-template-columns:1fr}}

/* v1.5 Index Sections */
.ds-banner-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.ds-banner-count-1{grid-template-columns:1fr}.ds-banner-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-banner-slot{display:block;border-radius:var(--ds-radius);overflow:hidden;background:var(--ds-soft-bg);box-shadow:0 10px 30px rgba(15,23,42,.06)}.ds-banner-slot img{display:block;width:100%;aspect-ratio:16/6;object-fit:cover}.ds-strip{margin:32px 0}.ds-strip-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.ds-strip-heading h2{margin:0;color:var(--ds-text);font-size:clamp(22px,3vw,32px)}.ds-strip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ds-strip-card{display:grid;gap:8px;padding:18px;border:1px solid var(--ds-border);border-radius:var(--ds-radius);background:var(--ds-card-bg);box-shadow:0 10px 30px rgba(15,23,42,.06);text-decoration:none}.ds-strip-card strong{color:var(--ds-text);font-size:18px}.ds-strip-card span{color:var(--ds-muted);line-height:1.6}.ds-video-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ds-video-card{background:var(--ds-card-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius);overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.06)}.ds-video-card iframe{width:100%;aspect-ratio:9/16;min-height:260px;border:0;display:block;background:#000}.ds-video-card strong{display:block;padding:12px;color:var(--ds-text)}.ds-bottom-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:36px 0;padding:28px;border-radius:var(--ds-radius);background:var(--ds-text);color:#fff}.ds-bottom-cta h2{margin:0 0 8px;color:#fff}.ds-bottom-cta p{margin:0;color:rgba(255,255,255,.78)}.ds-bottom-cta-actions{display:flex;gap:10px;flex-wrap:wrap}.ds-bottom-cta a{display:inline-flex;padding:11px 18px;border-radius:999px;font-weight:900;text-decoration:none}.ds-cta-primary{background:var(--ds-primary);color:#fff!important}.ds-cta-secondary{background:#fff;color:var(--ds-text)!important}@media(max-width:980px){.ds-banner-slots,.ds-strip-grid,.ds-video-row{grid-template-columns:1fr 1fr}.ds-bottom-cta{flex-direction:column;align-items:flex-start}}@media(max-width:640px){.ds-banner-slots,.ds-strip-grid,.ds-video-row{grid-template-columns:1fr}.ds-bottom-cta-actions{width:100%}.ds-bottom-cta a{width:100%;justify-content:center}}

/* v1.6 Media Engine */
.ds-gallery-grid{display:grid;gap:12px}.ds-gallery-cols-1{grid-template-columns:1fr}.ds-gallery-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-gallery-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ds-gallery-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ds-gallery-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.ds-gallery-item{display:block;border-radius:14px;overflow:hidden;background:var(--ds-soft-bg);text-decoration:none}.ds-gallery-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}.ds-gallery-item:hover img{transform:scale(1.03)}.ds-item-logo{display:inline-flex;align-items:center;justify-content:center;padding:12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius);background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06)}.ds-item-logo img{max-width:180px;height:auto;display:block}.ds-item-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:14px;background:#000}.ds-floor-plan{display:block;border-radius:14px;overflow:hidden}.ds-floor-plan img{display:block;width:100%;height:auto}@media(max-width:980px){.ds-gallery-cols-4,.ds-gallery-cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ds-gallery-grid{grid-template-columns:1fr!important}}

/* v1.7 Gallery Carousel + Lightbox */
.ds-gallery-grid .ds-gallery-item{border:0;padding:0;cursor:pointer;width:100%;text-align:inherit}
.ds-gallery-carousel{position:relative;overflow:hidden;border-radius:var(--ds-radius);background:var(--ds-soft-bg)}
.ds-gallery-track{position:relative;aspect-ratio:16/9;background:var(--ds-soft-bg)}
.ds-gallery-slide{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:transparent;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s ease}
.ds-gallery-slide.is-active{opacity:1;pointer-events:auto}
.ds-gallery-slide img{width:100%;height:100%;object-fit:cover;display:block}
.ds-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ds-text);font-size:34px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.18)}
.ds-gallery-prev{left:14px}.ds-gallery-next{right:14px}
.ds-gallery-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:7px;z-index:4}
.ds-gallery-dots button{width:9px;height:9px;border:0;border-radius:999px;background:rgba(255,255,255,.65);cursor:pointer;padding:0}
.ds-gallery-dots button.is-active{width:24px;background:#fff}
body.ds-lightbox-open{overflow:hidden}
.ds-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(10,15,25,.92);display:flex;align-items:center;justify-content:center;padding:36px}
.ds-lightbox-img{max-width:min(1100px,92vw);max-height:86vh;object-fit:contain;border-radius:14px;box-shadow:0 18px 60px rgba(0,0,0,.35)}
.ds-lightbox-close,.ds-lightbox-arrow{position:absolute;border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#111827;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.ds-lightbox-close{top:22px;right:22px;width:46px;height:46px;font-size:34px;line-height:1}
.ds-lightbox-arrow{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:42px;line-height:1}
.ds-lightbox-prev{left:24px}.ds-lightbox-next{right:24px}
@media(max-width:640px){.ds-gallery-track{aspect-ratio:4/3}.ds-gallery-nav{width:38px;height:38px;font-size:28px}.ds-lightbox{padding:16px}.ds-lightbox-arrow{width:42px;height:42px;font-size:34px}.ds-lightbox-prev{left:10px}.ds-lightbox-next{right:10px}.ds-lightbox-close{top:10px;right:10px}}

/* v1.8 Archive Engine */
.ds-archive-page{display:grid;gap:24px}
.ds-archive-hero{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    padding:48px 36px;
    background:linear-gradient(135deg,var(--ds-primary),var(--ds-dark,#111827));
    color:#fff;
    box-shadow:0 18px 60px rgba(15,23,42,.18)
}
.ds-archive-hero-inner{max-width:860px}
.ds-archive-breadcrumbs{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:700;
    opacity:.85;
    margin-bottom:14px
}
.ds-archive-title{
    margin:0;
    color:#fff;
    font-size:clamp(34px,5vw,56px);
    line-height:1.05;
    letter-spacing:-0.03em
}
.ds-archive-intro{
    margin-top:16px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.9)
}
.ds-archive-description{
    background:#fff;
    border:1px solid var(--ds-border);
    border-radius:20px;
    padding:24px;
    box-shadow:0 10px 30px rgba(15,23,42,.05)
}
.ds-empty-state{
    padding:60px 24px;
    text-align:center;
    border-radius:24px;
    border:2px dashed var(--ds-border);
    background:#fff
}
.ds-empty-state h3{
    margin:0 0 12px;
    font-size:30px;
    color:var(--ds-text)
}
.ds-empty-state p{
    margin:0 auto;
    max-width:620px;
    color:var(--ds-muted);
    line-height:1.8
}
.ds-archive-type-category{
    background:linear-gradient(135deg,#1f6feb,#111827)
}
.ds-archive-type-location{
    background:linear-gradient(135deg,#059669,#0f172a)
}
.ds-archive-type-feature{
    background:linear-gradient(135deg,#7c3aed,#111827)
}
.ds-archive-type-tag{
    background:linear-gradient(135deg,#ea580c,#111827)
}
@media(max-width:768px){
    .ds-archive-hero{
        padding:34px 22px;
        border-radius:18px
    }
    .ds-archive-title{
        font-size:38px
    }
}

/* v1.9 Taxonomy Meta */
.ds-archive-subtitle{
    margin:12px 0 0;
    font-size:20px;
    font-weight:700;
    color:rgba(255,255,255,.92)
}
.ds-archive-bottom-text{
    background:#fff;
    border:1px solid var(--ds-border);
    border-radius:20px;
    padding:26px;
    box-shadow:0 10px 30px rgba(15,23,42,.05);
    color:var(--ds-text);
    line-height:1.85
}
.ds-archive-bottom-text p:last-child{
    margin-bottom:0
}
.ds-taxonomy-cta{
    margin-top:0
}

/* v2.0.3 Dynamic Features */
.ds-features-list{display:flex;flex-wrap:wrap;gap:10px}
.ds-feature-pill,.ds-result-feature-pills span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border-radius:999px;
  background:var(--ds-soft-bg);
  color:var(--ds-text);
  font-weight:800;
  font-size:14px
}
.ds-feature-pill em,.ds-result-feature-pills em{font-style:normal}
.ds-result-feature-pills{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:10px 0 14px
}
.ds-result-feature-pills span{
  padding:6px 10px;
  font-size:12px
}
.ds-features-filter{
  position:relative;
  align-self:end
}
.ds-features-filter-toggle{
  width:100%;
  min-height:46px;
  border:1px solid var(--ds-border);
  border-radius:999px;
  background:#fff;
  color:var(--ds-text);
  padding:8px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-weight:800;
  cursor:pointer
}
.ds-features-filter-panel{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  min-width:260px;
  max-height:320px;
  overflow:auto;
  display:none;
  padding:12px;
  border:1px solid var(--ds-border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 50px rgba(15,23,42,.18);
  z-index:50
}
.ds-features-filter.is-open .ds-features-filter-panel{display:grid;gap:8px}
.ds-features-filter-panel label{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:800;
  color:var(--ds-text);
  padding:7px 8px;
  border-radius:10px;
  cursor:pointer
}
.ds-features-filter-panel label:hover{background:var(--ds-soft-bg)}
.ds-filters-booking{
  grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;
}
@media(max-width:1100px){
  .ds-features-filter-panel{position:static;margin-top:8px;box-shadow:none}
}

/* v2.0.7 Safe result links */
.ds-result-title a,
.ds-result-card h3 a{
  color:inherit;
  text-decoration:none;
}
.ds-result-title a:hover,
.ds-result-card h3 a:hover{
  color:var(--ds-primary);
}

/* v2.1.4 Single Property Builder Pack */
.ds-single-hero{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:24px;
  align-items:stretch;
  margin:28px 0;
  border-radius:28px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--ds-primary),var(--ds-dark));
  box-shadow:0 22px 70px rgba(15,23,42,.14);
}
.ds-single-hero-content{
  padding:44px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
}
.ds-single-hero h1{
  color:#fff;
  font-size:clamp(34px,5vw,62px);
  line-height:1.05;
  margin:0;
}
.ds-single-hero-badge{
  display:inline-flex;
  align-self:flex-start;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  border-radius:999px;
  padding:7px 13px;
  font-weight:900;
}
.ds-single-hero-location{font-weight:800;color:rgba(255,255,255,.88)}
.ds-single-hero-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ds-single-hero-meta span{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.2);
  border-radius:14px;
  padding:9px 12px;
  font-weight:900;
}
.ds-single-hero-meta .ds-hero-price{
  background:#fff;
  color:var(--ds-primary);
}
.ds-single-hero-image{
  min-height:420px;
  background-size:cover;
  background-position:center;
}
.ds-single-hero .ds-item-features-box{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}
.ds-single-hero .ds-feature-pill{
  background:rgba(255,255,255,.14);
  color:#fff;
}
.ds-single-hero-actions .ds-item-buttons,
.ds-single-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}
.ds-single-price{
  color:var(--ds-primary);
  font-size:30px;
  font-weight:1000;
}
.ds-single-location-line{
  display:flex;
  gap:8px;
  align-items:center;
  font-weight:800;
  color:var(--ds-muted);
}
.ds-single-builder-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:24px;
  align-items:start;
}
.ds-single-builder-main,
.ds-single-builder-side{
  display:grid;
  gap:24px;
}
.ds-single-builder-side{
  position:sticky;
  top:28px;
}
.ds-quick-facts-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ds-quick-facts-grid.ds-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ds-quick-facts-grid.ds-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ds-quick-fact{
  background:var(--ds-soft-bg);
  border-radius:18px;
  padding:16px;
  display:grid;
  gap:6px;
}
.ds-quick-fact-icon{font-size:20px}
.ds-quick-fact-label{
  color:var(--ds-muted);
  font-size:13px;
  font-weight:900;
}
.ds-quick-fact strong{
  font-size:18px;
  color:var(--ds-text);
}
.ds-single-cta-box{
  background:#fff;
  border:1px solid var(--ds-border);
  border-radius:24px;
  padding:22px;
  box-shadow:0 18px 60px rgba(15,23,42,.08);
}
.ds-single-cta-box.is-sticky{position:sticky;top:24px}
.ds-single-cta-box h3{
  margin:0 0 8px;
  font-size:24px;
}
.ds-single-cta-box p{
  color:var(--ds-muted);
  font-weight:700;
}
@media(max-width:980px){
  .ds-single-hero,
  .ds-single-builder-grid{
    grid-template-columns:1fr;
  }
  .ds-single-hero-content{
    padding:28px;
  }
  .ds-single-hero-image{
    min-height:280px;
    order:-1;
  }
  .ds-single-builder-side,
  .ds-single-cta-box.is-sticky{
    position:static;
  }
  .ds-quick-facts-grid,
  .ds-quick-facts-grid.ds-cols-2,
  .ds-quick-facts-grid.ds-cols-4{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:560px){
  .ds-quick-facts-grid,
  .ds-quick-facts-grid.ds-cols-2,
  .ds-quick-facts-grid.ds-cols-4{
    grid-template-columns:1fr;
  }
}

/* v2.1.7 Clean Single Builder Fix */
.ds-single-hero h1{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}

/* v2.1.8 Hero + Map Visibility Fix */
.ds-single-hero{
  background:linear-gradient(135deg,var(--ds-primary),var(--ds-dark))!important;
  border-radius:28px!important;
  overflow:hidden!important;
}
.ds-single-hero-content{
  background:transparent!important;
  color:#fff!important;
}
.ds-single-hero h1,
.ds-single-hero-content h1{
  color:#fff!important;
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 2px 14px rgba(0,0,0,.18);
}
.ds-single-hero-location,
.ds-single-hero-content{
  color:#fff!important;
}
.ds-single-hero .ds-feature-pill{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
.ds-single-hero .ds-feature-pill strong,
.ds-single-hero .ds-feature-pill em{
  color:#fff!important;
}
.ds-map-frame{
  width:100%;
  overflow:hidden;
  border-radius:18px;
  background:#f3f4f6;
}
.ds-map-frame iframe{
  display:block;
  width:100%!important;
  min-height:320px;
  border:0!important;
}
.ds-map-address{
  margin:12px 0 0;
  color:var(--ds-muted);
  font-weight:800;
}

/* v2.1.9 Single Property Color Controls */
.ds-single-hero{
  background:var(--ds-single-hero-bg, #fff)!important;
}
.ds-single-hero-content{
  background:var(--ds-single-hero-bg, #fff)!important;
  color:var(--ds-single-hero-text, #344054)!important;
}
.ds-single-hero h1,
.ds-single-hero-content h1{
  color:var(--ds-single-hero-title, #172033)!important;
  background:transparent!important;
  text-shadow:none!important;
}
.ds-single-hero-location,
.ds-single-hero-content,
.ds-single-hero-content p,
.ds-single-hero-content span:not(.ds-feature-pill):not(.ds-hero-price){
  color:var(--ds-single-hero-text, #344054)!important;
}
.ds-single-hero .ds-feature-pill{
  background:var(--ds-soft-bg)!important;
  color:var(--ds-single-feature-text, #172033)!important;
}
.ds-single-hero .ds-feature-pill strong,
.ds-single-hero .ds-feature-pill em{
  color:var(--ds-single-feature-text, #172033)!important;
}
.ds-single-hero-meta span{
  background:var(--ds-soft-bg)!important;
  color:var(--ds-single-field-value, #172033)!important;
  border-color:var(--ds-border, #e5e7eb)!important;
}
.ds-single-hero-meta .ds-hero-price,
.ds-single-price{
  color:var(--ds-primary)!important;
}
.ds-quick-fact-label,
.ds-single-fields .ds-field-label,
.ds-item-fields .ds-field-label,
.ds-single-details-label{
  color:var(--ds-single-field-label, #667085)!important;
}
.ds-quick-fact strong,
.ds-single-fields .ds-field-value,
.ds-item-fields .ds-field-value,
.ds-single-details-value{
  color:var(--ds-single-field-value, #172033)!important;
}

/* v2.2.0 Modern Search + SVG Icons */
.ds-svg-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;color:currentColor;flex:0 0 auto}
.ds-modern-search,.ds-modern-search *{box-sizing:border-box}
.ds-modern-search{width:100%;max-width:100%;position:relative;background:var(--ds-search-panel-bg,#fff);border:1px solid var(--ds-search-border,#e5eaf3);border-radius:28px;padding:26px;box-shadow:0 18px 55px rgba(15,23,42,.07);overflow:visible}
.ds-modern-search-main{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.45fr 1fr 1fr;gap:18px 20px;align-items:end}
.ds-ms-field{min-width:0;display:grid;gap:8px;margin:0}
.ds-ms-field>span{font-size:14px;font-weight:900;color:var(--ds-text,#07142b)}
.ds-ms-field input,.ds-ms-field select{width:100%;max-width:100%;min-height:48px;border:1px solid var(--ds-search-border,#e5eaf3);background:#fff;border-radius:10px;padding:0 14px;color:var(--ds-text,#07142b);font-size:15px;outline:none;box-shadow:none}
.ds-ms-input-wrap{position:relative}.ds-ms-input-wrap input{padding-right:42px}.ds-ms-input-wrap .ds-svg-icon{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--ds-muted,#667085)}
.ds-ms-range>div{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.ds-ms-range b{color:var(--ds-muted,#667085)}
.ds-modern-search-main .ds-ms-range:nth-of-type(n+7)>div{grid-template-columns:1fr 1fr}.ds-modern-search-main .ds-ms-range:nth-of-type(n+7) b{display:none}
.ds-ms-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-top:8px}
.ds-ms-feature{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 13px;border:1px solid var(--ds-search-border,#e5eaf3);background:#fff;color:var(--ds-icon-color,#07142b);border-radius:10px;font-weight:800;cursor:pointer;transition:.18s ease}
.ds-ms-feature input{position:absolute;opacity:0;pointer-events:none}.ds-ms-feature span{font-size:13px}.ds-ms-feature:hover{background:var(--ds-icon-soft-bg,#f4f7fb)}
.ds-ms-feature.is-active{background:var(--ds-search-feature-active-bg,#eef4ff);color:var(--ds-search-feature-active-text,#123b7a);border-color:var(--ds-search-feature-active-bg,#eef4ff)}
.ds-ms-more,.ds-ms-submit{min-height:48px;border-radius:10px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:900;cursor:pointer;border:1px solid var(--ds-search-border,#e5eaf3)}
.ds-ms-more{background:#fff;color:var(--ds-text,#07142b);margin-left:auto}.ds-ms-submit{background:var(--ds-search-button,#07142b);color:var(--ds-search-button-text,#fff);border-color:var(--ds-search-button,#07142b)}
.ds-ms-panel{position:absolute;right:26px;top:calc(100% + 12px);width:min(420px,calc(100vw - 40px));background:#fff;border:1px solid var(--ds-search-border,#e5eaf3);border-radius:22px;padding:20px;box-shadow:0 24px 80px rgba(15,23,42,.16);z-index:100}
.ds-ms-panel[hidden]{display:none!important}.ds-ms-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.ds-ms-panel-head strong{font-size:18px;color:var(--ds-text,#07142b)}
.ds-ms-panel-head button{width:34px;height:34px;border:0;background:var(--ds-icon-soft-bg,#f4f7fb);border-radius:50%;cursor:pointer;font-size:22px}
.ds-ms-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.ds-ms-check{display:flex;gap:8px;align-items:center;color:var(--ds-text,#07142b);font-weight:700}.ds-ms-check input{width:16px;height:16px;accent-color:var(--ds-primary,#2563eb)}
.ds-ms-panel-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:18px}.ds-ms-panel-actions a{color:var(--ds-muted,#667085);text-decoration:none;font-weight:800}.ds-ms-panel-actions button{min-height:46px;padding:0 22px;border:0;border-radius:10px;background:var(--ds-search-button,#07142b);color:var(--ds-search-button-text,#fff);font-weight:900;cursor:pointer}
html,body{max-width:100%;overflow-x:hidden}.ds-modern-search{max-width:100%}
@media(max-width:1180px){.ds-modern-search-main{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.ds-modern-search{padding:16px;border-radius:20px;overflow:hidden}.ds-modern-search-main{grid-template-columns:1fr;gap:13px}.ds-ms-range>div,.ds-modern-search-main .ds-ms-range:nth-of-type(n+7)>div{grid-template-columns:1fr 1fr}.ds-ms-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ds-ms-feature{min-width:0;padding:9px 6px;flex-direction:column;gap:5px}.ds-ms-feature span{font-size:12px}.ds-ms-more,.ds-ms-submit{grid-column:1/-1;width:100%;margin-left:0}.ds-ms-panel{position:fixed;inset:auto 12px 12px 12px;top:auto;width:auto;max-height:82vh;overflow:auto;border-radius:22px;z-index:999999}.ds-ms-panel-grid{grid-template-columns:1fr}}
@media(max-width:420px){.ds-ms-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2.2.4 Archive Duplicate Filter Cleanup */
.ds-archive-no-filters .ds-directory-filters,
.ds-archive-no-filters .ds-search-filters,
.ds-archive-no-filters .ds-modern-search,
.ds-archive-no-filters form.ds-directory-filter-form,
body .entry-content > .ds-directory-filters:first-child{
  display:none!important;
}

/* Hide legacy archive inner filters when global header search is used */
body.ds-global-search-mode .ds-archive .ds-directory-filters,
body.ds-global-search-mode .ds-archive .ds-search-filters,
body.ds-global-search-mode .ds-archive .ds-modern-search{
  display:none!important;
}

/* v2.2.4 Modern Single Property UI */
.ds-modern-single-page{
  width:min(1180px,calc(100% - 32px));
  margin:44px auto;
}
.ds-modern-property-hero{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.35fr);
  gap:28px;
  align-items:stretch;
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:24px;
  box-shadow:0 18px 55px rgba(15,23,42,.07);
  padding:28px;
  overflow:hidden;
}
.ds-modern-property-info{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.ds-modern-badge{
  align-self:flex-start;
  border:1px solid rgba(190,139,44,.45);
  color:#b8842f;
  background:#fffaf0;
  border-radius:999px;
  padding:7px 14px;
  font-size:13px;
  font-weight:900;
  margin-bottom:18px;
  text-transform:uppercase;
}
.ds-modern-property-info h1{
  margin:0 0 18px;
  color:var(--ds-text,#07142b)!important;
  font-size:clamp(32px,4.5vw,54px);
  line-height:1.05;
  letter-spacing:-.04em;
  font-weight:900;
}
.ds-modern-location-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  color:var(--ds-muted,#667085);
  font-weight:700;
  margin-bottom:20px;
}
.ds-modern-location-row .ds-svg-icon{width:18px;height:18px}
.ds-modern-location-row i{
  display:block;
  width:1px;
  height:18px;
  background:var(--ds-search-border,#e5eaf3);
}
.ds-modern-price{
  display:flex;
  align-items:baseline;
  gap:14px;
  margin-bottom:24px;
}
.ds-modern-price strong{
  color:#b8842f;
  font-size:clamp(30px,4vw,42px);
  line-height:1;
  letter-spacing:-.03em;
}
.ds-modern-price span{
  color:var(--ds-text,#07142b);
  font-weight:700;
}
.ds-modern-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:26px;
}
.ds-modern-stat{
  display:grid;
  gap:6px;
  color:var(--ds-text,#07142b);
}
.ds-modern-stat .ds-svg-icon{
  width:24px;height:24px;color:var(--ds-icon-color,#07142b);
}
.ds-modern-stat strong{
  font-size:20px;
  line-height:1;
}
.ds-modern-stat span{
  color:var(--ds-muted,#667085);
  font-size:13px;
  font-weight:700;
}
.ds-modern-cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.ds-modern-btn,
.ds-modern-cta-row .ds-item-buttons a,
.ds-modern-cta-row a{
  min-height:50px;
  padding:0 18px;
  border-radius:10px;
  border:1px solid var(--ds-search-border,#e5eaf3);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  text-decoration:none;
  font-weight:900;
  background:#fff;
  color:var(--ds-text,#07142b);
}
.ds-modern-btn-primary{
  background:var(--ds-search-button,#07142b)!important;
  color:var(--ds-search-button-text,#fff)!important;
  border-color:var(--ds-search-button,#07142b)!important;
}
.ds-modern-property-media{
  position:relative;
  min-width:0;
  border-radius:18px;
  overflow:hidden;
  background:#f3f4f6;
}
.ds-modern-property-media > img{
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
  display:block;
}
.ds-modern-media-actions{
  position:absolute;
  top:18px;
  right:18px;
  display:flex;
  gap:10px;
  z-index:5;
}
.ds-modern-media-actions button{
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.75);
  background:rgba(255,255,255,.95);
  color:var(--ds-text,#07142b);
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 8px 28px rgba(15,23,42,.14);
}
.ds-modern-property-media .ds-single-box,
.ds-modern-property-media .ds-gallery-box{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
  border-radius:14px;
  padding:8px;
  margin:0;
}
.ds-modern-property-media .ds-single-box-title{display:none!important}
.ds-modern-single-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:26px;
  margin-top:28px;
  align-items:start;
}
.ds-modern-single-main{
  display:grid;
  gap:24px;
}
.ds-modern-single-side{
  position:sticky;
  top:24px;
}
@media(max-width:980px){
  .ds-modern-single-page{width:min(100% - 22px,1180px);margin:24px auto}
  .ds-modern-property-hero{grid-template-columns:1fr;padding:18px;border-radius:20px}
  .ds-modern-property-media{order:-1}
  .ds-modern-property-media > img{min-height:280px}
  .ds-modern-stats{grid-template-columns:repeat(4,1fr)}
  .ds-modern-single-grid{grid-template-columns:1fr}
  .ds-modern-single-side{position:static}
}
@media(max-width:560px){
  .ds-modern-stats{grid-template-columns:repeat(2,1fr)}
  .ds-modern-cta-row{display:grid;grid-template-columns:1fr}
  .ds-modern-btn,.ds-modern-cta-row a{width:100%}
}

/* v2.2.5 Spacing + Layout Controls */
.et_pb_section:has(.ds-modern-search),
.et-db #et-boc .et-l .et_pb_section:has(.ds-modern-search){
  padding-bottom:0!important;
  margin-bottom:0!important;
}
.ds-modern-search{
  margin-bottom:var(--ds-layout-top-spacing,24px)!important;
}
.ds-modern-single-page{
  margin-top:var(--ds-single-top-spacing,24px)!important;
}
.ds-archive,
.ds-directory-archive,
.ds-auto-taxonomy-inner{
  margin-top:var(--ds-archive-top-spacing,20px)!important;
}
.ds-archive-hero,
.ds-taxonomy-hero,
.ds-directory-hero{
  margin-top:0!important;
}
.entry-content > p:empty,
.entry-content > br:first-child{
  display:none!important;
}
@media(max-width:780px){
  .ds-modern-search{margin-bottom:16px!important;}
  .ds-modern-single-page{margin-top:16px!important;}
  .ds-archive,.ds-directory-archive,.ds-auto-taxonomy-inner{margin-top:14px!important;}
}

/* v2.2.6 Spacing + Icon Admin Fix */
body .ds-modern-search{
  max-width:var(--ds-global-header-max-width,1160px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-bottom:var(--ds-layout-top-spacing,12px)!important;
}
body .entry-content .ds-modern-search + *,
body .et_pb_module .ds-modern-search + *{
  margin-top:0!important;
}
body .ds-archive,
body .ds-directory-archive,
body .ds-auto-taxonomy-inner{
  margin-top:var(--ds-archive-top-spacing,12px)!important;
  padding-top:0!important;
}
body .ds-modern-single-page,
body .ds-single-builder-layout{
  margin-top:var(--ds-single-top-spacing,16px)!important;
  padding-top:0!important;
}
body .et_pb_section:has(.ds-modern-search){
  padding-bottom:0!important;
}
body .et_pb_row:has(.ds-modern-search){
  padding-bottom:0!important;
  margin-bottom:0!important;
}
body .et_pb_module:has(.ds-modern-search){
  margin-bottom:var(--ds-layout-top-spacing,12px)!important;
}
.ds-modern-property-info h1{
  color:var(--ds-property-title-color,#07142b)!important;
}
.ds-modern-price strong,
.ds-single-price,
.ds-card-price,
.ds-result-price{
  color:var(--ds-price-color,#b8842f)!important;
}
.ds-modern-stat .ds-svg-icon,
.ds-ms-feature .ds-svg-icon,
.ds-feature-pill .ds-svg-icon{
  color:var(--ds-icon-color,#07142b)!important;
}
@media(max-width:780px){
  body .ds-modern-search{
    width:calc(100% - (var(--ds-global-header-side-padding,16px) * 2))!important;
    margin-bottom:10px!important;
  }
}

/* v2.2.7 Admin Cleanup + Clickable Taxonomies */
.ds-clickable-tax-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ds-clickable-tax-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:8px 13px;
  border-radius:999px;
  background:var(--ds-icon-soft-bg,#f4f7fb);
  color:var(--ds-icon-color,#07142b);
  text-decoration:none!important;
  font-weight:800;
  border:1px solid var(--ds-search-border,#e5eaf3);
  transition:.18s ease;
}
.ds-clickable-tax-pill:hover{
  transform:translateY(-1px);
  background:var(--ds-search-feature-active-bg,#eef4ff);
  color:var(--ds-search-feature-active-text,#123b7a);
}
.ds-clickable-tax-pill .ds-svg-icon{
  width:18px;
  height:18px;
}
.ds-clickable-tax-box{
  margin:0;
}

/* v2.2.8 Modern Archive Engine */
.ds-modern-archive{
  width:min(1180px,calc(100% - 32px));
  margin:28px auto;
}
.ds-modern-archive-hero{
  border-radius:24px;
  padding:54px 44px;
  color:#fff;
  background:linear-gradient(135deg,var(--ds-primary,#1f6feb),var(--ds-dark,#172033));
  box-shadow:0 18px 55px rgba(15,23,42,.08);
  margin-bottom:26px;
}
.ds-modern-archive-hero span{
  display:block;
  font-weight:900;
  opacity:.9;
  margin-bottom:10px;
}
.ds-modern-archive-hero h1{
  margin:0;
  color:#fff!important;
  font-size:clamp(38px,6vw,68px);
  line-height:1;
  letter-spacing:-.04em;
}
.ds-modern-results{
  display:grid;
  gap:22px;
}
.ds-modern-results-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:18px;
  padding:16px 18px;
}
.ds-modern-results-head strong{
  color:var(--ds-text,#07142b);
  font-size:22px;
}
.ds-modern-results-head span{
  color:var(--ds-muted,#667085);
  font-weight:800;
}
.ds-modern-sort label{
  display:flex;
  align-items:center;
  gap:10px;
}
.ds-modern-sort label span{
  color:var(--ds-muted,#667085);
  font-weight:900;
}
.ds-modern-sort select{
  min-height:42px;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:12px;
  background:#fff;
  padding:0 14px;
  font-weight:800;
}
.ds-modern-results-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.ds-modern-card{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:0;
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 14px 44px rgba(15,23,42,.06);
}
.ds-modern-card-media{
  position:relative;
  min-height:250px;
  background:var(--ds-icon-soft-bg,#f4f7fb);
  color:var(--ds-text,#07142b);
  text-decoration:none!important;
  overflow:hidden;
}
.ds-modern-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:.25s ease;
}
.ds-modern-card:hover .ds-modern-card-media img{
  transform:scale(1.03);
}
.ds-modern-card-placeholder{
  height:100%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:20px;
  font-weight:900;
}
.ds-modern-card-badge{
  position:absolute;
  left:14px;
  top:14px;
  background:#fff;
  color:var(--ds-primary,#1f6feb);
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:900;
  box-shadow:0 8px 24px rgba(15,23,42,.12);
}
.ds-modern-card-body{
  padding:22px;
  display:grid;
  gap:12px;
  align-content:center;
}
.ds-modern-card h2{
  margin:0;
  font-size:24px;
  line-height:1.15;
}
.ds-modern-card h2 a{
  color:var(--ds-property-title-color,var(--ds-text,#07142b));
  text-decoration:none!important;
}
.ds-modern-card-location{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--ds-muted,#667085);
  text-decoration:none!important;
  font-weight:700;
}
.ds-modern-card-location .ds-svg-icon{
  width:17px;
  height:17px;
}
.ds-modern-card-price{
  display:flex;
  align-items:baseline;
  gap:12px;
}
.ds-modern-card-price strong{
  color:var(--ds-price-color,#b8842f);
  font-size:28px;
  line-height:1;
}
.ds-modern-card-price span{
  color:var(--ds-text,#07142b);
  font-weight:700;
}
.ds-modern-card-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.ds-modern-card-stat{
  display:grid;
  gap:3px;
}
.ds-modern-card-stat .ds-svg-icon{
  width:20px;
  height:20px;
  color:var(--ds-icon-color,#07142b);
}
.ds-modern-card-stat strong{
  font-size:17px;
  color:var(--ds-text,#07142b);
}
.ds-modern-card-stat span{
  font-size:12px;
  color:var(--ds-muted,#667085);
  font-weight:700;
}
.ds-modern-card-features{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.ds-modern-card-features a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--ds-icon-soft-bg,#f4f7fb);
  color:var(--ds-icon-color,#07142b);
  text-decoration:none!important;
  font-size:13px;
  font-weight:800;
}
.ds-modern-card-features .ds-svg-icon{
  width:16px;
  height:16px;
}
.ds-modern-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ds-modern-card-actions a{
  min-height:42px;
  padding:0 14px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  color:var(--ds-text,#07142b);
  text-decoration:none!important;
  font-weight:900;
}
.ds-modern-card-actions .ds-modern-card-primary{
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff);
  border-color:var(--ds-search-button,#07142b);
}
.ds-modern-pagination{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}
.ds-modern-pagination a{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  border:1px solid var(--ds-search-border,#e5eaf3);
  background:#fff;
  color:var(--ds-text,#07142b);
  text-decoration:none!important;
  font-weight:900;
}
.ds-modern-pagination a.is-active{
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff);
}
.ds-modern-no-results{
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:22px;
  padding:34px;
  text-align:center;
}
.ds-modern-no-results h2{
  margin:0 0 8px;
}
.ds-modern-no-results a{
  display:inline-flex;
  margin-top:12px;
  min-height:42px;
  align-items:center;
  padding:0 16px;
  border-radius:10px;
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff);
  text-decoration:none!important;
  font-weight:900;
}
@media(max-width:1100px){
  .ds-modern-results-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .ds-modern-archive{
    width:min(100% - 22px,1180px);
    margin:18px auto;
  }
  .ds-modern-archive-hero{
    padding:36px 24px;
    border-radius:20px;
  }
  .ds-modern-results-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .ds-modern-sort,
  .ds-modern-sort label,
  .ds-modern-sort select{
    width:100%;
  }
  .ds-modern-card{
    grid-template-columns:1fr;
  }
  .ds-modern-card-media{
    min-height:240px;
  }
  .ds-modern-card-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ds-modern-card-actions{
    display:grid;
    grid-template-columns:1fr;
  }
}

/* v2.3.0 Archive Listing Levels */
.ds-modern-levelled-results{
  gap:28px;
}
.ds-listing-level-section{
  display:grid;
  gap:16px;
}
.ds-level-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-top:4px;
}
.ds-level-heading span{
  color:var(--ds-primary,#1f6feb);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}
.ds-level-heading h2{
  margin:0;
  color:var(--ds-text,#07142b);
  font-size:28px;
  line-height:1.1;
}
.ds-featured-results-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.ds-promoted-results-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ds-regular-results-list{
  display:grid;
  gap:16px;
}
.ds-card-featured{
  grid-template-columns:1fr!important;
}
.ds-card-featured .ds-modern-card-media{
  min-height:260px;
}
.ds-card-featured .ds-modern-card-body{
  padding:22px;
}
.ds-card-featured h2{
  font-size:25px;
}
.ds-card-promoted{
  grid-template-columns:1fr!important;
}
.ds-card-promoted .ds-modern-card-media{
  min-height:180px;
}
.ds-card-promoted .ds-modern-card-body{
  padding:18px;
}
.ds-card-promoted h2{
  font-size:19px;
}
.ds-card-promoted .ds-modern-card-stats{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ds-card-regular{
  grid-template-columns:220px minmax(0,1fr)!important;
}
.ds-card-regular .ds-modern-card-media{
  min-height:170px;
}
.ds-card-regular h2{
  font-size:21px;
}
.ds-card-regular .ds-modern-card-body{
  padding:18px;
}
@media(max-width:1100px){
  .ds-featured-results-grid,
  .ds-promoted-results-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .ds-featured-results-grid,
  .ds-promoted-results-grid{
    grid-template-columns:1fr;
  }
  .ds-card-regular{
    grid-template-columns:1fr!important;
  }
  .ds-card-regular .ds-modern-card-media{
    min-height:220px;
  }
  .ds-level-heading{
    display:block;
  }
  .ds-level-heading h2{
    margin-top:4px;
    font-size:24px;
  }
}

/* v2.3.1 Search Layout Modes */
.ds-search-mode-compact .ds-modern-search-main{
  grid-template-columns:1.4fr 1fr 1fr 1.45fr;
}
.ds-search-mode-minimal .ds-modern-search-main{
  grid-template-columns:1.5fr 1fr 1fr auto;
}
.ds-search-mode-minimal .ds-ms-actions{
  grid-column:auto;
  padding-top:0;
}
.ds-search-mode-minimal .ds-ms-submit{
  white-space:nowrap;
}
.ds-ms-panel-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:18px;
}
.ds-ms-panel-fields .ds-ms-field input,
.ds-ms-panel-fields .ds-ms-field select{
  min-height:44px;
}
.ds-ms-panel-fields .ds-ms-field > span{
  font-size:13px;
}
@media(max-width:1180px){
  .ds-search-mode-compact .ds-modern-search-main,
  .ds-search-mode-minimal .ds-modern-search-main{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ds-search-mode-minimal .ds-ms-actions{
    grid-column:1 / -1;
  }
}
@media(max-width:780px){
  .ds-search-mode-compact .ds-modern-search-main,
  .ds-search-mode-minimal .ds-modern-search-main{
    grid-template-columns:1fr;
  }
  .ds-ms-panel-fields{
    grid-template-columns:1fr;
  }
}

/* v2.3.2 Universal Field Engine */
.ds-field-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:7px 10px;
  border-radius:12px;
  background:var(--ds-icon-soft-bg,#f4f7fb);
  color:var(--ds-text,#07142b);
  font-weight:800;
}
.ds-field-badge .ds-svg-icon{
  width:18px;
  height:18px;
  color:var(--ds-icon-color,#07142b);
}
.ds-field-badge em{
  font-style:normal;
  color:var(--ds-muted,#667085);
  font-size:12px;
}
.ds-field-badge strong{
  color:var(--ds-text,#07142b);
  font-size:14px;
}
.ds-dynamic-fields-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ds-modern-card-stat.ds-field-badge,
.ds-modern-stat.ds-field-badge{
  display:grid;
  gap:4px;
  justify-items:start;
  padding:0;
  background:transparent;
  min-height:auto;
}
.ds-modern-card-stat.ds-field-badge .ds-svg-icon,
.ds-modern-stat.ds-field-badge .ds-svg-icon{
  width:22px;
  height:22px;
}
.ds-modern-card-stat.ds-field-badge em,
.ds-modern-stat.ds-field-badge em{
  order:3;
}
.ds-modern-card-stat.ds-field-badge strong,
.ds-modern-stat.ds-field-badge strong{
  order:2;
  font-size:18px;
}

/* v2.3.3 Single Hero Typography Fix */
.ds-modern-property-info h1{
  font-size:clamp(30px,3.8vw,48px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
.ds-modern-price{
  margin-bottom:18px!important;
}
.ds-modern-price strong{
  font-size:clamp(28px,3vw,38px)!important;
  line-height:1!important;
}
.ds-modern-price span{
  font-size:15px!important;
  font-weight:800!important;
}
.ds-modern-stats{
  gap:16px!important;
  margin-bottom:22px!important;
}
.ds-modern-stat.ds-field-badge strong,
.ds-modern-stat strong{
  font-size:18px!important;
  line-height:1.15!important;
}
.ds-modern-stat.ds-field-badge em,
.ds-modern-stat span{
  font-size:13px!important;
  line-height:1.2!important;
}
.ds-modern-stat.ds-field-badge{
  max-width:130px;
}
@media(max-width:780px){
  .ds-modern-property-info h1{
    font-size:clamp(28px,8vw,40px)!important;
  }
  .ds-modern-price strong{
    font-size:32px!important;
  }
}

/* v2.3.4 Field Visibility Controls */
.ds-dynamic-fields-box .ds-dynamic-fields-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ds-dynamic-fields-box .ds-field-badge{
  justify-content:flex-start;
  border:1px solid var(--ds-search-border,#e5eaf3);
  background:#fff;
}
@media(max-width:780px){
  .ds-dynamic-fields-box .ds-dynamic-fields-grid{
    grid-template-columns:1fr;
  }
}

/* v2.3.5 Unified Fields */
.ds-admin-field-note{
  padding:10px 12px;
  background:#f6f7f7;
  border-left:4px solid #2271b1;
}

/* v2.3.6 Mobile Search Drawer + Responsive Fixes */
.ds-mobile-search-shell{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
}
.ds-mobile-search-toggle,
.ds-mobile-search-overlay,
.ds-mobile-search-head{
  display:none;
}
.ds-mobile-search-shell > .ds-modern-search{
  width:100%;
}
@media(max-width:780px){
  html.ds-search-drawer-open,
  html.ds-search-drawer-open body{
    overflow:hidden!important;
  }

  .ds-mobile-search-shell{
    width:calc(100% - 22px)!important;
    margin:12px auto!important;
  }

  .ds-mobile-search-toggle{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    width:100%;
    min-height:54px;
    padding:0 18px;
    border:1px solid var(--ds-search-border,#e5eaf3);
    border-radius:16px;
    background:var(--ds-search-button,#07142b);
    color:var(--ds-search-button-text,#fff);
    font-weight:900;
    font-size:15px;
    box-shadow:0 14px 34px rgba(15,23,42,.10);
  }
  .ds-mobile-search-icon{
    font-size:22px;
    line-height:1;
  }

  .ds-mobile-search-overlay{
    position:fixed;
    inset:0;
    background:rgba(7,20,43,.46);
    z-index:999998;
  }
  .ds-mobile-search-shell.is-open .ds-mobile-search-overlay{
    display:block!important;
  }

  .ds-mobile-search-drawer{
    position:fixed;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:999999;
    max-height:min(86vh,720px);
    overflow:auto;
    background:#fff;
    border:1px solid var(--ds-search-border,#e5eaf3);
    border-radius:22px;
    box-shadow:0 28px 80px rgba(15,23,42,.24);
    transform:translateY(calc(100% + 28px));
    transition:transform .24s ease;
    padding:0;
  }
  .ds-mobile-search-shell.is-open .ds-mobile-search-drawer{
    transform:translateY(0);
  }

  .ds-mobile-search-head{
    display:flex!important;
    position:sticky;
    top:0;
    z-index:2;
    align-items:center;
    justify-content:space-between;
    padding:16px 18px;
    background:#fff;
    border-bottom:1px solid var(--ds-search-border,#e5eaf3);
  }
  .ds-mobile-search-head strong{
    font-size:18px;
    color:var(--ds-text,#07142b);
  }
  .ds-mobile-search-head button{
    width:38px;
    height:38px;
    border-radius:50%;
    border:1px solid var(--ds-search-border,#e5eaf3);
    background:#fff;
    font-size:26px;
    line-height:1;
  }

  .ds-mobile-search-drawer .ds-modern-search{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:16px!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  .ds-mobile-search-drawer .ds-modern-search-main,
  .ds-mobile-search-drawer .ds-search-mode-compact .ds-modern-search-main,
  .ds-mobile-search-drawer .ds-search-mode-expanded .ds-modern-search-main,
  .ds-mobile-search-drawer .ds-search-mode-minimal .ds-modern-search-main{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:13px!important;
  }

  .ds-mobile-search-drawer .ds-ms-field,
  .ds-mobile-search-drawer .ds-ms-actions,
  .ds-mobile-search-drawer .ds-ms-submit,
  .ds-mobile-search-drawer .ds-ms-more{
    width:100%!important;
    min-width:0!important;
  }

  .ds-mobile-search-drawer .ds-ms-field input,
  .ds-mobile-search-drawer .ds-ms-field select{
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .ds-mobile-search-drawer .ds-ms-range > div{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    align-items:center!important;
  }
  .ds-mobile-search-drawer .ds-ms-range > div b{
    display:none!important;
  }

  .ds-mobile-search-drawer .ds-ms-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding-top:0!important;
  }

  .ds-mobile-search-drawer .ds-ms-feature{
    display:none!important;
  }

  .ds-mobile-search-drawer .ds-ms-more{
    order:1;
  }
  .ds-mobile-search-drawer .ds-ms-submit{
    order:2;
    min-height:52px!important;
  }

  .ds-ms-panel{
    position:static!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    box-shadow:none!important;
    border:1px solid var(--ds-search-border,#e5eaf3)!important;
    border-radius:16px!important;
    margin-top:12px!important;
    padding:14px!important;
    background:#fff!important;
  }
  .ds-ms-panel[hidden]{
    display:none!important;
  }
  .ds-ms-panel-fields,
  .ds-ms-panel-grid{
    grid-template-columns:1fr!important;
  }

  html, body{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .ds-modern-single-page,
  .ds-modern-archive,
  .ds-modern-property-hero,
  .ds-modern-results,
  .ds-modern-card,
  .ds-single-box,
  .ds-dynamic-fields-box{
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .ds-modern-property-hero{
    width:calc(100vw - 22px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:16px!important;
    grid-template-columns:1fr!important;
  }
  .ds-modern-property-media{
    width:100%!important;
    min-width:0!important;
  }
  .ds-modern-property-media > img{
    min-height:240px!important;
  }
  .ds-modern-single-grid{
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  .ds-modern-property-info h1{
    font-size:34px!important;
    line-height:1.05!important;
  }

  .ds-modern-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .ds-dynamic-fields-box .ds-dynamic-fields-grid{
    grid-template-columns:1fr!important;
  }
}

/* v2.3.7 Mobile Drawer Alignment Fix */
@media(max-width:780px){
  .ds-mobile-search-shell{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    margin-left:14px!important;
    margin-right:14px!important;
    box-sizing:border-box!important;
  }

  .ds-mobile-search-toggle{
    width:100%!important;
    box-sizing:border-box!important;
  }

  .ds-mobile-search-drawer{
    left:14px!important;
    right:14px!important;
    width:auto!important;
    max-width:calc(100vw - 28px)!important;
    box-sizing:border-box!important;
  }

  .ds-mobile-search-drawer .ds-modern-search{
    width:100%!important;
    box-sizing:border-box!important;
  }

  .ds-mobile-search-drawer *,
  .ds-modern-single-page *,
  .ds-modern-archive *{
    box-sizing:border-box!important;
  }

  .et_pb_section,
  .et_pb_row,
  .et_pb_column,
  .et_pb_module,
  .entry-content{
    max-width:100vw!important;
    overflow-x:hidden!important;
  }

  .ds-modern-property-hero,
  .ds-single-box,
  .ds-modern-card,
  .ds-modern-results-head{
    width:100%!important;
    max-width:100%!important;
  }
}

/* v2.3.8 Mobile Single Property Hard Fix */
@media(max-width:780px){
  body.single-directory_item,
  body.single-directory_item #page-container,
  body.single-directory_item #et-main-area,
  body.single-directory_item #main-content,
  body.single-directory_item .entry-content,
  body.single-directory_item .et-l,
  body.single-directory_item .et_builder_inner_content,
  body.single-directory_item .et_pb_section,
  body.single-directory_item .et_pb_row,
  body.single-directory_item .et_pb_column,
  body.single-directory_item .et_pb_module,
  body.single-directory_item .et_pb_code,
  body.single-directory_item .et_pb_code_inner{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }

  body.single-directory_item .et_pb_section,
  body.single-directory_item .et_pb_row{
    padding-left:0!important;
    padding-right:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  body.single-directory_item .ds-modern-single-page{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:12px 12px 36px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body.single-directory_item .ds-modern-property-hero{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto 18px!important;
    padding:18px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  body.single-directory_item .ds-modern-property-info{
    order:2;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  body.single-directory_item .ds-modern-property-media{
    order:1;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    border-radius:18px!important;
  }

  body.single-directory_item .ds-modern-property-media img,
  body.single-directory_item .ds-modern-property-media iframe,
  body.single-directory_item .ds-modern-property-media video{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    display:block!important;
  }

  body.single-directory_item .ds-modern-property-media > img{
    aspect-ratio:4/3!important;
    object-fit:cover!important;
  }

  body.single-directory_item .ds-modern-property-info h1{
    font-size:30px!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
    margin-bottom:14px!important;
    overflow-wrap:break-word!important;
  }

  body.single-directory_item .ds-modern-location-line,
  body.single-directory_item .ds-modern-price{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 12px!important;
  }

  body.single-directory_item .ds-modern-price strong{
    font-size:32px!important;
  }

  body.single-directory_item .ds-modern-stats{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
  }

  body.single-directory_item .ds-modern-stat,
  body.single-directory_item .ds-modern-stat.ds-field-badge{
    max-width:none!important;
    width:100%!important;
    min-width:0!important;
  }

  body.single-directory_item .ds-modern-cta-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
  }

  body.single-directory_item .ds-modern-cta-row a,
  body.single-directory_item .ds-modern-cta-row button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.single-directory_item .ds-modern-single-grid,
  body.single-directory_item .ds-single-content-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }

  body.single-directory_item .ds-single-box,
  body.single-directory_item .ds-description-box,
  body.single-directory_item .ds-dynamic-fields-box,
  body.single-directory_item .ds-clickable-tax-box,
  body.single-directory_item .ds-video-box,
  body.single-directory_item .ds-map-box,
  body.single-directory_item .ds-contact-box,
  body.single-directory_item .ds-related-box{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:20px!important;
    border-radius:20px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body.single-directory_item .ds-single-box h2,
  body.single-directory_item .ds-single-box-title{
    font-size:24px!important;
    line-height:1.15!important;
    margin-bottom:14px!important;
  }

  body.single-directory_item .ds-description-box,
  body.single-directory_item .ds-description-box p{
    font-size:16px!important;
    line-height:1.7!important;
    overflow-wrap:break-word!important;
  }

  body.single-directory_item .ds-dynamic-fields-grid,
  body.single-directory_item .ds-clickable-tax-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  body.single-directory_item .ds-field-badge,
  body.single-directory_item .ds-clickable-tax-pill{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body.single-directory_item .ds-field-badge *,
  body.single-directory_item .ds-clickable-tax-pill *,
  body.single-directory_item .ds-contact-box *{
    min-width:0!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  body.single-directory_item .ds-contact-box a,
  body.single-directory_item .ds-contact-box button,
  body.single-directory_item .ds-contact-buttons a,
  body.single-directory_item .ds-contact-buttons button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }

  body.single-directory_item .ds-video-box iframe,
  body.single-directory_item .ds-map-box iframe,
  body.single-directory_item .ds-single-box iframe{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:300px!important;
    border-radius:16px!important;
  }

  body.single-directory_item .ds-video-box iframe{
    height:220px!important;
  }

  body.single-directory_item [class*="ds-"]{
    box-sizing:border-box!important;
  }
}

@media(max-width:420px){
  body.single-directory_item .ds-modern-single-page{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.single-directory_item .ds-modern-property-hero{
    padding:16px!important;
  }
  body.single-directory_item .ds-modern-property-info h1{
    font-size:28px!important;
  }
}

/* v2.4.0 Archive Ranking + Listing Design */
.ds-modern-levelled-results{
  gap:34px!important;
}
.ds-level-heading{
  padding:0 4px;
}
.ds-level-heading h2{
  font-size:clamp(24px,3vw,34px)!important;
  letter-spacing:-.03em;
}
.ds-level-heading span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.ds-level-heading span:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--ds-price-color,#b8842f);
}

/* Level badges */
.ds-modern-level-badge{
  position:absolute;
  right:14px;
  top:14px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  font-size:11px;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 10px 24px rgba(15,23,42,.12);
}
.ds-badge-featured{
  background:var(--ds-price-color,#b8842f);
  color:#fff;
}
.ds-badge-promoted{
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff);
}

/* Recommended / featured */
.ds-featured-results-grid{
  align-items:stretch;
}
.ds-card-featured{
  border:1px solid rgba(184,132,47,.28)!important;
  box-shadow:0 22px 70px rgba(15,23,42,.10)!important;
}
.ds-card-featured .ds-modern-card-media{
  min-height:300px!important;
}
.ds-card-featured .ds-modern-card-body{
  gap:14px!important;
}
.ds-card-featured h2{
  font-size:clamp(24px,2.5vw,32px)!important;
}
.ds-card-featured .ds-modern-card-price strong{
  font-size:32px!important;
}

/* Promoted grid */
.ds-promoted-results-grid{
  gap:20px!important;
}
.ds-card-promoted{
  box-shadow:0 16px 42px rgba(15,23,42,.07)!important;
}
.ds-card-promoted .ds-modern-card-media{
  min-height:190px!important;
}
.ds-card-promoted .ds-modern-card-body{
  gap:11px!important;
}
.ds-card-promoted h2{
  font-size:20px!important;
}
.ds-card-promoted .ds-modern-card-price strong{
  font-size:24px!important;
}

/* Regular listing rows */
.ds-regular-results-list{
  gap:14px!important;
}
.ds-card-regular{
  box-shadow:0 10px 30px rgba(15,23,42,.045)!important;
  border-radius:18px!important;
}
.ds-card-regular .ds-modern-card-media{
  min-height:155px!important;
}
.ds-card-regular .ds-modern-card-body{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) auto;
  grid-template-areas:
    "title price"
    "location stats"
    "features actions";
  align-items:center;
  gap:10px 18px!important;
}
.ds-card-regular h2{
  grid-area:title;
  font-size:20px!important;
}
.ds-card-regular .ds-modern-card-location{
  grid-area:location;
}
.ds-card-regular .ds-modern-card-price{
  grid-area:price;
  justify-content:flex-end;
}
.ds-card-regular .ds-modern-card-price strong{
  font-size:22px!important;
}
.ds-card-regular .ds-modern-card-stats{
  grid-area:stats;
  display:flex!important;
  justify-content:flex-end;
  gap:16px!important;
}
.ds-card-regular .ds-modern-card-stat{
  min-width:54px;
}
.ds-card-regular .ds-modern-card-features{
  grid-area:features;
}
.ds-card-regular .ds-modern-card-actions{
  grid-area:actions;
  justify-content:flex-end;
}
.ds-card-regular .ds-modern-card-actions a:not(.ds-modern-card-primary){
  display:none!important;
}
.ds-card-regular .ds-modern-card-primary{
  min-width:130px;
}

@media(max-width:1100px){
  .ds-promoted-results-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .ds-card-regular .ds-modern-card-body{
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "location"
      "price"
      "stats"
      "features"
      "actions";
  }
  .ds-card-regular .ds-modern-card-price,
  .ds-card-regular .ds-modern-card-stats,
  .ds-card-regular .ds-modern-card-actions{
    justify-content:flex-start;
  }
}
@media(max-width:760px){
  .ds-featured-results-grid,
  .ds-promoted-results-grid{
    grid-template-columns:1fr!important;
  }
  .ds-modern-level-badge{
    top:12px;
    right:12px;
  }
  .ds-card-featured .ds-modern-card-media,
  .ds-card-promoted .ds-modern-card-media,
  .ds-card-regular .ds-modern-card-media{
    min-height:230px!important;
  }
  .ds-card-regular{
    grid-template-columns:1fr!important;
  }
  .ds-card-regular .ds-modern-card-stats{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .ds-card-regular .ds-modern-card-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
}

/* v2.4.1 Archive Level Display Control */

/* Hot Properties: luxury large cards */
.ds-level-recommended .ds-featured-results-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
}
.ds-level-recommended .ds-card-featured{
  border-radius:26px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(184,132,47,.32)!important;
}
.ds-level-recommended .ds-card-featured .ds-modern-card-media{
  min-height:310px!important;
}
.ds-level-recommended .ds-card-featured .ds-modern-card-body{
  padding:24px!important;
}

/* A Promoted: strict 4-column card grid */
.ds-level-promoted .ds-promoted-results-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.ds-level-promoted .ds-card-promoted{
  display:grid!important;
  grid-template-columns:1fr!important;
  border-radius:20px!important;
}
.ds-level-promoted .ds-card-promoted .ds-modern-card-media{
  min-height:170px!important;
}
.ds-level-promoted .ds-card-promoted .ds-modern-card-body{
  padding:16px!important;
}
.ds-level-promoted .ds-card-promoted h2{
  font-size:18px!important;
}
.ds-level-promoted .ds-card-promoted .ds-modern-card-price strong{
  font-size:22px!important;
}
.ds-level-promoted .ds-card-promoted .ds-modern-card-stats{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

/* B Regular: compact rows with small image thumbnail */
.ds-regular-results-list{
  display:grid!important;
  gap:12px!important;
}
.ds-regular-results-list .ds-modern-card,
.ds-regular-results-list .ds-modern-card-media{
  display:none!important;
}
.ds-regular-row-card{
  display:grid;
  grid-template-columns:88px minmax(0,1fr) auto auto auto;
  align-items:center;
  gap:18px;
  background:#fff;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:18px;
  padding:14px 16px;
  box-shadow:0 8px 24px rgba(15,23,42,.04);
}
.ds-regular-row-thumb{
  display:flex;
  width:88px;
  height:88px;
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(135deg,#eef4ff,#e7eef9);
  box-shadow:0 8px 18px rgba(15,23,42,.08);
  text-decoration:none!important;
}
.ds-regular-row-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ds-regular-row-thumb-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  font-weight:800;
  color:var(--ds-property-title-color,#07142b);
}
.ds-regular-row-main{
  min-width:0;
}
.ds-regular-row-main h3{
  margin:0 0 6px;
  font-size:18px;
  line-height:1.25;
}
.ds-regular-row-main h3 a{
  color:var(--ds-property-title-color,#07142b);
  text-decoration:none!important;
}
.ds-regular-row-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  color:var(--ds-muted,#667085);
  font-size:13px;
  font-weight:700;
}
.ds-regular-row-meta a,
.ds-regular-row-meta span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--ds-muted,#667085);
  text-decoration:none!important;
}
.ds-regular-row-meta .ds-svg-icon{
  width:15px;
  height:15px;
}
.ds-regular-row-stats{
  display:flex;
  gap:14px;
  align-items:center;
  color:var(--ds-text,#07142b);
}
.ds-regular-row-stats span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  white-space:nowrap;
}
.ds-regular-row-stats .ds-svg-icon{
  width:17px;
  height:17px;
  color:var(--ds-icon-color,#07142b);
}
.ds-regular-row-stats em{
  font-style:normal;
  color:var(--ds-muted,#667085);
  font-size:12px;
}
.ds-regular-row-price strong{
  color:var(--ds-price-color,#b8842f);
  font-size:18px;
  white-space:nowrap;
}
.ds-regular-row-link{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 14px;
  border-radius:10px;
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff)!important;
  text-decoration:none!important;
  font-weight:900;
}

@media(max-width:1180px){
  .ds-level-promoted .ds-promoted-results-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:900px){
  .ds-level-recommended .ds-featured-results-grid{
    grid-template-columns:1fr!important;
  }
  .ds-regular-row-card{
    grid-template-columns:72px minmax(0,1fr);
    align-items:start;
  }
  .ds-regular-row-thumb{
    width:72px;
    height:72px;
    border-radius:14px;
  }
  .ds-regular-row-main,
  .ds-regular-row-stats,
  .ds-regular-row-price,
  .ds-regular-row-link{
    grid-column:2;
  }
  .ds-regular-row-stats{
    flex-wrap:wrap;
  }
  .ds-regular-row-link{
    width:100%;
  }
}
@media(max-width:760px){
  .ds-level-promoted .ds-promoted-results-grid{
    grid-template-columns:1fr!important;
  }
}

/* v2.4.2 Archive Level Query Fix */
.ds-level-regular .ds-level-heading,
.ds-level-promoted .ds-level-heading,
.ds-level-recommended .ds-level-heading{
  width:100%;
  max-width:100%;
}
.ds-level-regular .ds-level-heading h2,
.ds-level-promoted .ds-level-heading h2,
.ds-level-recommended .ds-level-heading h2{
  text-align:left;
}
.ds-level-heading span{
  min-width:26px;
  justify-content:center;
}

/* v2.4.6 Featured Level Compatibility */
.ds-level-recommended .ds-level-heading span{
  min-width:74px;
}

/* v2.5.1 Level Heading Cleanup + Badge Color Controls */
.ds-level-heading > span{
  display:none!important;
}
.ds-level-heading span:before{
  display:none!important;
}
.ds-level-heading{
  margin-bottom:18px!important;
}
.ds-level-heading h2{
  margin:0!important;
}

/* badge colors from Archive Levels */
.ds-level-recommended .ds-badge-featured,
.ds-level-recommended .ds-modern-level-badge{
  background:var(--ds-level-badge-bg,#c88a2c)!important;
  color:var(--ds-level-badge-text,#fff)!important;
}
.ds-level-promoted .ds-badge-promoted,
.ds-level-promoted .ds-modern-level-badge{
  background:var(--ds-level-badge-bg,#07142b)!important;
  color:var(--ds-level-badge-text,#fff)!important;
}

/* v2.5.2 Archive Card Layout Cleanup */

/* Level title must sit above cards and align naturally */
.ds-listing-level-section{
  width:100%!important;
  display:block!important;
  clear:both!important;
  margin:36px 0 44px!important;
}
.ds-level-heading{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 22px!important;
  padding:0!important;
  text-align:left!important;
}
.ds-level-heading > span,
.ds-level-heading span,
.ds-level-heading span:before{
  display:none!important;
  content:none!important;
}
.ds-level-heading h2{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.1!important;
  letter-spacing:-.035em!important;
}

/* Featured cards grid below title */
.ds-level-recommended .ds-featured-results-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
  width:100%!important;
}

/* Promoted cards grid below title */
.ds-level-promoted .ds-promoted-results-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
  width:100%!important;
}

/* Fix oversized/merged field values in cards */
.ds-modern-card-stats,
.ds-card-featured .ds-modern-card-stats,
.ds-card-promoted .ds-modern-card-stats{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
}

.ds-modern-card-stat,
.ds-modern-card .ds-field-badge,
.ds-modern-card-stat.ds-field-badge{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:4px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  background:transparent!important;
  padding:0!important;
  border:0!important;
}

.ds-modern-card-stat .ds-svg-icon,
.ds-modern-card .ds-field-badge .ds-svg-icon{
  width:20px!important;
  height:20px!important;
  flex:0 0 auto!important;
  color:var(--ds-icon-color,#07142b)!important;
}

.ds-modern-card-stat em,
.ds-modern-card .ds-field-badge em,
.ds-modern-card-stat .ds-field-label,
.ds-modern-card .ds-field-label{
  display:block!important;
  width:100%!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-style:italic!important;
  font-weight:500!important;
  color:var(--ds-muted,#667085)!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

.ds-modern-card-stat strong,
.ds-modern-card .ds-field-badge strong,
.ds-modern-card-stat .ds-field-value,
.ds-modern-card .ds-field-value{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:900!important;
  color:var(--ds-text,#07142b)!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

/* Prevent values like Apartment + Sale from visually merging */
.ds-modern-card-stat + .ds-modern-card-stat,
.ds-modern-card .ds-field-badge + .ds-field-badge{
  margin-left:0!important;
}

/* Promoted cards should be compact */
.ds-level-promoted .ds-modern-card-stats{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.ds-level-promoted .ds-modern-card-stat strong,
.ds-level-promoted .ds-field-badge strong,
.ds-level-promoted .ds-field-value{
  font-size:16px!important;
}

/* Featured cards can show up to 4 fields neatly */
.ds-level-recommended .ds-modern-card-stats{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

/* Field pills/features remain compact */
.ds-modern-card-features{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.ds-modern-card-feature{
  max-width:100%!important;
  white-space:normal!important;
}

/* Better card title sizing */
.ds-card-featured h2,
.ds-level-recommended .ds-modern-card h2{
  font-size:clamp(28px,2.6vw,36px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

.ds-card-promoted h2,
.ds-level-promoted .ds-modern-card h2{
  font-size:20px!important;
  line-height:1.15!important;
  letter-spacing:-.02em!important;
}

/* Mobile/tablet */
@media(max-width:1180px){
  .ds-level-promoted .ds-promoted-results-grid,
  .ds-level-recommended .ds-featured-results-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  .ds-level-promoted .ds-promoted-results-grid,
  .ds-level-recommended .ds-featured-results-grid{
    grid-template-columns:1fr!important;
  }

  .ds-level-heading h2{
    font-size:30px!important;
  }

  .ds-modern-card-stats,
  .ds-card-featured .ds-modern-card-stats,
  .ds-card-promoted .ds-modern-card-stats,
  .ds-level-recommended .ds-modern-card-stats,
  .ds-level-promoted .ds-modern-card-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .ds-card-featured h2,
  .ds-level-recommended .ds-modern-card h2{
    font-size:30px!important;
  }
}

/* v2.5.4 Core stabilization: safer wrapping and dynamic field displays */
.ds-modern-card,
.ds-regular-row-card,
.ds-dynamic-fields-box,
.ds-single-box{
  min-width:0;
}
.ds-modern-card h2,
.ds-modern-card h2 a,
.ds-regular-row-main h3,
.ds-regular-row-main h3 a,
.ds-modern-property-info h1{
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
.ds-modern-card-body,
.ds-regular-row-main,
.ds-modern-property-info{
  min-width:0;
}
.ds-dynamic-fields-box:empty{
  display:none!important;
}
.ds-dynamic-fields-box .ds-field-badge.ds-field-price,
.ds-dynamic-fields-box .ds-field-badge.ds-field-price_range{
  font-weight:900;
}
@media(max-width:640px){
  .ds-modern-card-actions a,
  .ds-modern-cta-row a,
  .ds-modern-cta-row button{
    width:100%;
  }
}


/* v2.5.5: Card stat stability for long field values (Apartment, Residential, etc.) */
.ds-modern-card,
.ds-modern-card *{
  box-sizing:border-box!important;
}

.ds-modern-card h2,
.ds-modern-card h2 a,
.ds-card-featured h2,
.ds-card-promoted h2{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}

.ds-modern-card-stats,
.ds-card-featured .ds-modern-card-stats,
.ds-card-promoted .ds-modern-card-stats{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(86px,1fr))!important;
  gap:12px 14px!important;
  align-items:start!important;
  width:100%!important;
}

.ds-card-promoted .ds-modern-card-stats{
  grid-template-columns:repeat(auto-fit,minmax(92px,1fr))!important;
}

.ds-modern-card-stat strong,
.ds-modern-card .ds-field-badge strong,
.ds-modern-card-stat .ds-field-value,
.ds-modern-card .ds-field-value{
  font-size:16px!important;
  line-height:1.22!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

.ds-card-promoted .ds-modern-card-stat strong,
.ds-card-promoted .ds-field-badge strong,
.ds-card-promoted .ds-field-value{
  font-size:15px!important;
}

.ds-modern-card-stat em,
.ds-modern-card .ds-field-badge em,
.ds-modern-card-stat .ds-field-label,
.ds-modern-card .ds-field-label{
  font-size:12px!important;
  line-height:1.15!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

@media (max-width: 760px){
  .ds-modern-card-stats,
  .ds-card-featured .ds-modern-card-stats,
  .ds-card-promoted .ds-modern-card-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* v2.7.11 Magazine strip: 3-card editorial strip after level A */
.ds-magazine-strip{
  max-width:1128px;
  margin:56px auto 54px;
  padding:32px 28px;
  border-radius:28px;
  background:linear-gradient(135deg, rgba(31,111,235,.08), rgba(7,20,43,.04));
  border:1px solid rgba(229,234,243,.9);
  box-shadow:0 24px 70px rgba(15,23,42,.08);
}
.ds-magazine-heading{
  display:block;
  text-align:center;
  max-width:820px;
  margin:0 auto 24px;
}
.ds-magazine-heading span{
  display:none!important;
}
.ds-magazine-heading span:before{
  display:none!important;
}
.ds-magazine-heading h2{
  margin:0 auto;
  max-width:760px;
  font-size:clamp(22px,2.25vw,32px);
  line-height:1.18;
  color:var(--ds-property-title-color,#07142b);
  font-weight:700;
  letter-spacing:-.025em;
  text-align:center;
}
.ds-magazine-context-line{
  margin:10px auto 0;
  color:var(--ds-muted,#667085);
  font-size:14px;
  font-weight:700;
  text-align:center;
}
.ds-magazine-strip .ds-strip-grid{
  display:grid;
  grid-template-columns:repeat(var(--ds-mag-cols-desktop,3),minmax(0,1fr));
  gap:18px;
}
.ds-magazine-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:22px;
  background:var(--ds-card-bg,#fff);
  box-shadow:0 14px 36px rgba(15,23,42,.08);
  text-decoration:none!important;
  color:inherit!important;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ds-magazine-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 54px rgba(15,23,42,.13);
  border-color:rgba(31,111,235,.25);
}
.ds-magazine-card-image{
  display:block;
  width:100%;
  height:168px;
  overflow:hidden;
  background:linear-gradient(135deg,#eef4ff,#f8fafc);
}
.ds-magazine-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .28s ease;
}
.ds-magazine-card:hover .ds-magazine-card-image img{
  transform:scale(1.04);
}
.ds-magazine-card-content{
  display:flex;
  flex-direction:column;
  min-width:0;
  flex:1;
  padding:18px 18px 16px;
}
.ds-magazine-card-content strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:var(--ds-property-title-color,#07142b);
  font-size:18px;
  line-height:1.25;
  margin-bottom:8px;
  letter-spacing:-.01em;
}
.ds-magazine-card-content em{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:var(--ds-muted,#667085);
  font-style:normal;
  font-size:14px;
  line-height:1.55;
  margin-bottom:16px;
}
.ds-magazine-card-content small{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(31,111,235,.08);
  color:var(--ds-primary,#1f6feb);
  font-size:13px;
  font-weight:900;
  letter-spacing:.01em;
}
.ds-magazine-style-clean_cards .ds-magazine-card-image{display:none;}
.ds-magazine-style-clean_cards .ds-magazine-card-content{padding:22px;}
.ds-magazine-style-compact_strip .ds-magazine-card{display:grid;grid-template-columns:112px minmax(0,1fr);}
.ds-magazine-style-compact_strip .ds-magazine-card-image{height:100%;min-height:112px;}
.ds-magazine-style-compact_strip .ds-magazine-card-content{padding:14px 16px;}
.ds-magazine-style-compact_strip .ds-magazine-card-content strong{font-size:16px;}
.ds-magazine-style-compact_strip .ds-magazine-card-content em{display:none;}
@media(max-width:980px){
  .ds-magazine-strip{padding:24px 18px;margin:42px auto;}
  .ds-magazine-heading{display:block;}
  .ds-magazine-strip .ds-strip-grid{grid-template-columns:repeat(var(--ds-mag-cols-tablet,2),minmax(0,1fr));}
}
@media(max-width:560px){
  .ds-magazine-strip .ds-strip-grid{grid-template-columns:repeat(var(--ds-mag-cols-mobile,1),minmax(0,1fr));}
  .ds-magazine-card-image{height:150px;}
  .ds-magazine-style-compact_strip .ds-magazine-card{grid-template-columns:92px minmax(0,1fr);}
  .ds-magazine-style-compact_strip .ds-magazine-card-image{min-height:92px;height:100%;}
  .ds-magazine-style-compact_strip .ds-magazine-card-content{padding:12px;}
}



/* v2.7.16 Contextual magazine/video carousel strips */
.ds-strip-carousel-wrap{
  position:relative;
}
.ds-strip-carousel.is-carousel .ds-strip-grid{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:2px 2px 10px;
}
.ds-strip-carousel.is-carousel .ds-strip-grid::-webkit-scrollbar{display:none;}
.ds-strip-carousel.is-carousel .ds-strip-card,
.ds-strip-carousel.is-carousel .ds-video-card{
  flex:0 0 calc((100% - (18px * (var(--ds-mag-cols-desktop,3) - 1))) / var(--ds-mag-cols-desktop,3));
  scroll-snap-align:start;
}
.ds-strip-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:5;
  width:42px;
  height:42px;
  border:0;
  border-radius:999px;
  background:var(--ds-search-button,#07142b);
  color:var(--ds-search-button-text,#fff);
  box-shadow:0 12px 30px rgba(15,23,42,.18);
  font-size:30px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.ds-strip-prev{left:-18px;}
.ds-strip-next{right:-18px;}
.ds-strip-arrow:hover{
  transform:translateY(-50%) scale(1.04);
}

/* Video Shorts */
.ds-video-strip{
  max-width:1128px;
  margin:46px auto 48px;
  padding:32px 28px;
  border-radius:28px;
  background:linear-gradient(135deg, rgba(7,20,43,.06), rgba(31,111,235,.06));
  border:1px solid rgba(229,234,243,.9);
  box-shadow:0 24px 70px rgba(15,23,42,.07);
}
.ds-video-heading{
  text-align:center;
  max-width:820px;
  margin:0 auto 24px;
}
.ds-video-heading h2{
  margin:0 auto;
  max-width:760px;
  font-size:clamp(22px,2.15vw,30px);
  line-height:1.18;
  color:var(--ds-property-title-color,#07142b);
  font-weight:700;
  letter-spacing:-.025em;
}
.ds-video-strip .ds-strip-grid{
  display:grid;
  grid-template-columns:repeat(var(--ds-mag-cols-desktop,3),minmax(0,1fr));
  gap:18px;
}
.ds-video-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--ds-search-border,#e5eaf3);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 36px rgba(15,23,42,.08);
}
.ds-video-frame{
  position:relative;
  width:100%;
  aspect-ratio:9/16;
  max-height:520px;
  background:#07142b;
  overflow:hidden;
}
.ds-video-frame iframe,
.ds-video-frame video{
  width:100%;
  height:100%;
  border:0;
  display:block;
  object-fit:cover;
}
.ds-video-link-card{
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff!important;
  text-decoration:none!important;
  background:linear-gradient(135deg,#111827,#1f2937);
  font-weight:900;
}
.ds-video-link-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.65;
}
.ds-video-link-card span{
  position:relative;
  z-index:1;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(0,0,0,.46);
}
.ds-video-link-card.is-tiktok{
  background:linear-gradient(135deg,#111827,#0f172a);
}
.ds-video-card > strong{
  padding:14px 16px 16px;
  color:var(--ds-property-title-color,#07142b);
  font-size:16px;
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

@media(max-width:980px){
  .ds-strip-carousel.is-carousel .ds-strip-card,
  .ds-strip-carousel.is-carousel .ds-video-card{
    flex-basis:calc((100% - (18px * (var(--ds-mag-cols-tablet,2) - 1))) / var(--ds-mag-cols-tablet,2));
  }
  .ds-video-strip{padding:24px 18px;margin:42px auto;}
  .ds-video-strip .ds-strip-grid{grid-template-columns:repeat(var(--ds-mag-cols-tablet,2),minmax(0,1fr));}
  .ds-strip-prev{left:-8px;}
  .ds-strip-next{right:-8px;}
}
@media(max-width:560px){
  .ds-strip-carousel.is-carousel .ds-strip-card,
  .ds-strip-carousel.is-carousel .ds-video-card{
    flex-basis:calc((100% - (14px * (var(--ds-mag-cols-mobile,1) - 1))) / var(--ds-mag-cols-mobile,1));
  }
  .ds-strip-carousel.is-carousel .ds-strip-grid{gap:14px!important;}
  .ds-video-strip .ds-strip-grid{grid-template-columns:repeat(var(--ds-mag-cols-mobile,1),minmax(0,1fr));}
  .ds-strip-arrow{
    width:36px;
    height:36px;
    font-size:24px;
  }
}

/* v2.7.19 Display Sections Visual Polish + Video Popup */
.ds-magazine-strip,
.ds-video-strip{
  width:min(1180px, calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:58px auto!important;
  padding:42px 46px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:linear-gradient(135deg, rgba(31,111,235,.075), rgba(244,247,251,.96))!important;
  border:1px solid rgba(229,234,243,.95)!important;
  box-shadow:0 26px 76px rgba(15,23,42,.075)!important;
}
.ds-strip-heading,
.ds-magazine-heading,
.ds-video-heading{
  display:block!important;
  text-align:center!important;
  max-width:920px!important;
  margin:0 auto 30px!important;
}
.ds-strip-heading h2,
.ds-magazine-heading h2,
.ds-video-heading h2{
  display:block!important;
  margin:0 auto!important;
  max-width:880px!important;
  color:var(--ds-property-title-color,#07142b)!important;
  font-size:clamp(24px,2.3vw,36px)!important;
  line-height:1.16!important;
  letter-spacing:-.028em!important;
  font-weight:800!important;
  text-align:center!important;
  overflow:visible!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.ds-magazine-strip .ds-strip-grid,
.ds-video-strip .ds-strip-grid{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.ds-magazine-card{
  border-radius:24px!important;
  box-shadow:0 16px 44px rgba(15,23,42,.08)!important;
}
.ds-magazine-card-image{
  height:190px!important;
}
.ds-magazine-card-content{
  padding:20px 20px 18px!important;
}
.ds-magazine-card-content strong{
  font-size:19px!important;
  line-height:1.24!important;
}
.ds-magazine-card-content em{
  font-size:15px!important;
  line-height:1.55!important;
}
.ds-magazine-card-content small{
  padding:10px 16px!important;
  background:rgba(31,111,235,.08)!important;
  color:var(--ds-primary,#1f6feb)!important;
  border:1px solid rgba(31,111,235,.16)!important;
}
.ds-strip-count-1:not(.is-carousel) .ds-strip-grid{
  grid-template-columns:minmax(280px, 520px)!important;
  justify-content:center!important;
}
.ds-strip-count-2:not(.is-carousel) .ds-strip-grid{
  grid-template-columns:repeat(2, minmax(280px, 460px))!important;
  justify-content:center!important;
}
.ds-video-strip .ds-strip-grid{
  align-items:stretch!important;
}
.ds-video-card{
  appearance:none!important;
  border:0!important;
  cursor:pointer!important;
  text-align:left!important;
  padding:0!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 16px 44px rgba(15,23,42,.09)!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
  color:inherit!important;
}
.ds-video-card:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 24px 60px rgba(15,23,42,.14)!important;
}
.ds-video-preview-frame{
  position:relative!important;
  display:block!important;
  aspect-ratio:9/16!important;
  min-height:0!important;
  max-height:500px!important;
  background:#07142b!important;
  overflow:hidden!important;
}
.ds-video-preview-frame img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  transition:transform .28s ease!important;
}
.ds-video-card:hover .ds-video-preview-frame img{
  transform:scale(1.035)!important;
}
.ds-video-gradient{
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg, rgba(7,20,43,.06), rgba(7,20,43,.20) 45%, rgba(7,20,43,.72))!important;
  pointer-events:none!important;
}
.ds-video-play{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:70px!important;
  height:70px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding-left:5px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--ds-primary,#1f6feb)!important;
  font-size:31px!important;
  box-shadow:0 14px 36px rgba(0,0,0,.25)!important;
}
.ds-video-preview-fallback{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  background:linear-gradient(135deg,#07142b,#123b7a)!important;
  color:#fff!important;
  padding:18px!important;
  text-align:center!important;
  font-weight:900!important;
}
.ds-video-card > strong{
  display:block!important;
  padding:16px 18px 18px!important;
  font-size:18px!important;
  line-height:1.25!important;
  color:var(--ds-property-title-color,#07142b)!important;
  text-align:left!important;
}
.ds-video-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:999999;
  align-items:center;
  justify-content:center;
  padding:28px;
}
.ds-video-modal.is-open{display:flex;}
.ds-video-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,10,22,.78);
  backdrop-filter:blur(5px);
}
.ds-video-modal-dialog{
  position:relative;
  z-index:1;
  width:min(520px, calc(100vw - 36px));
  max-height:calc(100vh - 36px);
  border-radius:28px;
  overflow:hidden;
  background:#07142b;
  box-shadow:0 30px 90px rgba(0,0,0,.42);
}
.ds-video-modal-close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:5;
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:rgba(0,0,0,.48);
  color:#fff;
  font-size:32px;
  line-height:1;
  cursor:pointer;
}
.ds-video-modal-content{
  width:100%;
  aspect-ratio:9/16;
  max-height:calc(100vh - 120px);
  background:#000;
}
.ds-video-modal-content iframe,
.ds-video-modal-content video{
  width:100%;
  height:100%;
  border:0;
  display:block;
  object-fit:contain;
  background:#000;
}
.ds-video-modal-caption{
  min-height:54px;
  padding:16px 20px;
  color:#fff;
  font-weight:800;
  font-size:18px;
  background:linear-gradient(180deg, #07142b, #040a14);
}
.ds-video-modal-external{
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  color:#fff!important;
  font-weight:900;
  text-decoration:none!important;
}
html.ds-video-modal-open{overflow:hidden!important;}
@media(max-width:980px){
  .ds-magazine-strip,
  .ds-video-strip{
    width:min(100%, calc(100% - 24px))!important;
    padding:34px 24px!important;
    margin:46px auto!important;
    border-radius:26px!important;
  }
  .ds-strip-heading h2,
  .ds-magazine-heading h2,
  .ds-video-heading h2{
    font-size:clamp(23px,4vw,32px)!important;
  }
}
@media(max-width:560px){
  .ds-magazine-strip,
  .ds-video-strip{
    width:calc(100% - 20px)!important;
    padding:28px 14px!important;
    margin:38px auto!important;
    border-radius:24px!important;
  }
  .ds-strip-heading,
  .ds-magazine-heading,
  .ds-video-heading{
    margin-bottom:22px!important;
  }
  .ds-strip-heading h2,
  .ds-magazine-heading h2,
  .ds-video-heading h2{
    max-width:100%!important;
    font-size:clamp(22px,7vw,29px)!important;
    line-height:1.18!important;
    letter-spacing:-.02em!important;
  }
  .ds-strip-count-1:not(.is-carousel) .ds-strip-grid,
  .ds-strip-count-2:not(.is-carousel) .ds-strip-grid{
    grid-template-columns:1fr!important;
  }
  .ds-magazine-card-image{height:190px!important;}
  .ds-magazine-card-content{padding:18px!important;}
  .ds-video-card > strong{font-size:17px!important;padding:14px 16px 16px!important;}
  .ds-video-modal{
    padding:10px;
    align-items:center;
  }
  .ds-video-modal-dialog{
    width:calc(100vw - 20px);
    border-radius:22px;
  }
  .ds-video-modal-content{max-height:calc(100vh - 94px);}
  .ds-video-modal-close{top:10px;right:10px;width:40px;height:40px;font-size:28px;}
}

/* v2.7.20 Full Width Archive Visual Refinement */
:root{
  --ds-wide-width: min(1380px, calc(100vw - 48px));
  --ds-soft-section-bg: linear-gradient(135deg, rgba(31,111,235,.055), rgba(248,250,252,.98));
}

body .et_pb_section:has(.ds-modern-search),
body .et_pb_section:has(.ds-modern-archive),
body .et_pb_section:has(.ds-strip){
  padding-top: 14px!important;
  padding-bottom: 14px!important;
}
body .et_pb_row:has(.ds-modern-search),
body .et_pb_row:has(.ds-modern-archive),
body .et_pb_row:has(.ds-strip){
  width:100%!important;
  max-width:100%!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body .et_pb_module:has(.ds-modern-search),
body .et_pb_module:has(.ds-modern-archive),
body .et_pb_module:has(.ds-strip){
  margin-bottom:0!important;
}

body .ds-modern-search{
  width:var(--ds-wide-width)!important;
  max-width:1380px!important;
  margin:14px auto 18px!important;
  padding:22px 26px!important;
  border-radius:24px!important;
  box-shadow:0 14px 44px rgba(15,23,42,.055)!important;
}
body .ds-modern-archive{
  width:var(--ds-wide-width)!important;
  max-width:1380px!important;
  margin:18px auto 28px!important;
}
.ds-modern-breadcrumbs{
  width:100%;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
  color:var(--ds-muted,#667085);
  font-size:14px;
  font-weight:600;
}
.ds-modern-breadcrumbs a{
  color:var(--ds-muted,#667085)!important;
  text-decoration:none!important;
  transition:color .16s ease;
}
.ds-modern-breadcrumbs a:hover{color:var(--ds-property-title-color,#07142b)!important;}
.ds-modern-breadcrumb-sep{opacity:.55;}
.ds-modern-archive-hero{
  width:100%!important;
  margin:0 0 20px!important;
  padding:34px 42px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,var(--ds-primary,#1f6feb),var(--ds-dark,#172033))!important;
  box-shadow:0 14px 44px rgba(15,23,42,.07)!important;
}
.ds-modern-archive-hero span{display:none!important;}
.ds-modern-archive-hero h1{
  max-width:1100px!important;
  font-size:clamp(34px,4.2vw,58px)!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
  font-weight:500!important;
}
.ds-modern-results{gap:18px!important;}
.ds-modern-levelled-results{gap:18px!important;}
.ds-listing-level-section{margin-top:20px!important;margin-bottom:20px!important;}
.ds-level-heading{margin-bottom:14px!important;}
.ds-level-heading h2{
  font-weight:500!important;
  letter-spacing:-.025em!important;
  color:var(--ds-property-title-color,#07142b)!important;
}

/* Full-width, refined Display Sections */
.ds-magazine-strip,
.ds-video-strip{
  width:var(--ds-wide-width)!important;
  max-width:1380px!important;
  margin:30px auto!important;
  padding:34px 42px!important;
  border-radius:28px!important;
  background:var(--ds-soft-section-bg)!important;
  border:1px solid rgba(229,234,243,.95)!important;
  box-shadow:0 20px 58px rgba(15,23,42,.06)!important;
}
.ds-strip-heading,
.ds-magazine-heading,
.ds-video-heading{
  max-width:980px!important;
  margin:0 auto 24px!important;
}
.ds-strip-heading h2,
.ds-magazine-heading h2,
.ds-video-heading h2{
  max-width:980px!important;
  font-size:clamp(25px,2.3vw,38px)!important;
  line-height:1.14!important;
  font-weight:500!important;
  letter-spacing:-.028em!important;
}
.ds-magazine-strip .ds-strip-grid,
.ds-video-strip .ds-strip-grid{
  gap:20px!important;
}
.ds-magazine-card{
  border-radius:24px!important;
  box-shadow:0 12px 34px rgba(15,23,42,.07)!important;
}
.ds-magazine-card-image{height:210px!important;}
.ds-magazine-card-content strong{font-weight:500!important;}
.ds-magazine-card-content em{font-weight:400!important;color:#667085!important;}
.ds-video-card{
  border-radius:24px!important;
  box-shadow:0 12px 34px rgba(15,23,42,.075)!important;
}
.ds-strip-count-1:not(.is-carousel) .ds-video-strip .ds-strip-grid,
.ds-video-strip.ds-strip-count-1:not(.is-carousel) .ds-strip-grid{
  grid-template-columns:minmax(260px,420px)!important;
  justify-content:center!important;
}
.ds-video-card > strong{font-weight:600!important;}

/* Softer listing/card typography */
.ds-modern-card h2,
.ds-regular-row-main h3{
  font-weight:500!important;
  letter-spacing:-.02em!important;
}
.ds-modern-card-price strong,
.ds-regular-row-price strong{
  font-weight:650!important;
}
.ds-modern-card-price span,
.ds-regular-row-meta span,
.ds-regular-row-meta a{
  font-weight:500!important;
  color:#667085!important;
}
.ds-modern-card-stat,
.ds-modern-stat{
  color:var(--ds-text,#07142b)!important;
}
.ds-modern-card-stat em,
.ds-modern-card-stat span,
.ds-modern-stat em,
.ds-modern-stat span,
.ds-regular-row-stats em{
  color:#7a8797!important;
  font-weight:400!important;
  letter-spacing:.01em!important;
}
.ds-modern-card-stat strong,
.ds-modern-stat strong,
.ds-regular-row-stats strong{
  color:#172033!important;
  font-weight:600!important;
}
.ds-modern-card-features a,
.ds-clickable-tax-pill,
.ds-feature-pill,
.ds-ms-feature{
  font-weight:650!important;
}

/* reduce blank space around auto injected sections */
.ds-level-promoted + .ds-magazine-strip,
.ds-level-recommended + .ds-magazine-strip,
.ds-magazine-strip + .ds-video-strip,
.ds-video-strip + .ds-level-regular,
.ds-magazine-strip + .ds-level-regular{
  margin-top:26px!important;
}

@media(max-width:980px){
  :root{--ds-wide-width:min(100%, calc(100vw - 28px));}
  body .ds-modern-search{width:var(--ds-wide-width)!important;padding:18px!important;border-radius:22px!important;margin:12px auto 14px!important;}
  body .ds-modern-archive{width:var(--ds-wide-width)!important;margin:14px auto 24px!important;}
  .ds-modern-archive-hero{padding:28px 26px!important;border-radius:20px!important;margin-bottom:16px!important;}
  .ds-magazine-strip,.ds-video-strip{width:var(--ds-wide-width)!important;padding:30px 24px!important;margin:26px auto!important;}
}
@media(max-width:560px){
  :root{--ds-wide-width:calc(100vw - 20px);}
  .ds-modern-breadcrumbs{font-size:13px;margin-bottom:10px;}
  .ds-modern-archive-hero{padding:24px 20px!important;border-radius:18px!important;}
  .ds-modern-archive-hero h1{font-size:clamp(30px,9vw,42px)!important;}
  .ds-magazine-strip,.ds-video-strip{width:var(--ds-wide-width)!important;padding:26px 16px!important;margin:22px auto!important;border-radius:22px!important;}
  .ds-strip-heading h2,.ds-magazine-heading h2,.ds-video-heading h2{font-size:clamp(23px,7.2vw,30px)!important;line-height:1.18!important;}
  .ds-magazine-card-image{height:190px!important;}
}

/* v2.7.21 Archive Layout / Video / CTA polish */
:root{
  --ds-wide-width: min(1420px, calc(100vw - 56px));
  --ds-section-gap: 22px;
}
body .ds-modern-search{
  width:var(--ds-wide-width)!important;
  max-width:1420px!important;
  padding:22px 24px!important;
  margin:10px auto 16px!important;
  overflow:visible!important;
}
body .ds-modern-search-main,
body .ds-search-mode-compact .ds-modern-search-main,
body .ds-search-mode-expanded .ds-modern-search-main{
  display:grid!important;
  grid-template-columns:minmax(260px,1.35fr) minmax(190px,1fr) minmax(190px,1fr) minmax(340px,1.25fr)!important;
  gap:16px 18px!important;
  align-items:end!important;
}
body .ds-modern-search-main .ds-ms-field,
body .ds-modern-search-main .ds-ms-range,
body .ds-modern-search-main .ds-ms-input-wrap,
body .ds-modern-search-main select,
body .ds-modern-search-main input{
  min-width:0!important;
  max-width:100%!important;
}
body .ds-ms-actions{
  grid-column:1 / -1!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  min-width:0!important;
}
body .ds-ms-feature{
  min-width:118px!important;
  justify-content:center!important;
}
body .ds-ms-more,
body .ds-ms-submit{
  min-width:160px!important;
  white-space:nowrap!important;
}
body .ds-modern-archive{
  width:var(--ds-wide-width)!important;
  max-width:1420px!important;
  margin:16px auto 24px!important;
}
.ds-modern-breadcrumbs{
  margin:0 0 10px!important;
  font-size:14px!important;
  color:#7a8797!important;
}
.ds-modern-archive-hero{
  padding:28px 38px!important;
  margin:0 0 18px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#236be8 0%,#13223c 78%)!important;
}
.ds-modern-archive-hero h1{
  font-family:inherit!important;
  font-size:clamp(36px,3.8vw,56px)!important;
  line-height:1.04!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}
.ds-modern-results-head{margin-bottom:14px!important;}
.ds-listing-level-section{margin-top:18px!important;margin-bottom:18px!important;}
.ds-magazine-strip,
.ds-video-strip,
.ds-banner-slots,
.ds-bottom-cta{
  width:var(--ds-wide-width)!important;
  max-width:1420px!important;
  margin:24px auto!important;
  box-sizing:border-box!important;
}
.ds-banner-slots{
  gap:18px!important;
}
.ds-banner-slot{
  border-radius:22px!important;
  box-shadow:0 16px 44px rgba(15,23,42,.075)!important;
}
.ds-banner-slot img{
  aspect-ratio:18/5!important;
}
.ds-magazine-strip,
.ds-video-strip{
  padding:34px 38px!important;
  border-radius:28px!important;
}
.ds-strip-heading h2,
.ds-magazine-heading h2,
.ds-video-heading h2{
  font-size:clamp(26px,2.15vw,36px)!important;
  line-height:1.16!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
}
.ds-video-heading h2{
  max-width:840px!important;
}
.ds-video-card{
  max-width:300px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ds-video-preview-frame{
  max-height:430px!important;
}
.ds-video-card > strong{
  display:none!important;
}
.ds-video-strip .ds-strip-grid{
  justify-items:center!important;
}
.ds-video-strip.ds-strip-count-1:not(.is-carousel) .ds-strip-grid{
  grid-template-columns:minmax(240px,300px)!important;
  justify-content:center!important;
}
.ds-video-strip.ds-strip-count-2:not(.is-carousel) .ds-strip-grid{
  grid-template-columns:repeat(2,minmax(240px,300px))!important;
  justify-content:center!important;
}
.ds-video-strip.is-carousel .ds-video-card{
  flex-basis:min(300px, calc((100% - (20px * (var(--ds-mag-cols-desktop,3) - 1))) / var(--ds-mag-cols-desktop,3)))!important;
}
.ds-strip-arrow{
  width:46px!important;
  height:46px!important;
  background:#fff!important;
  color:#07142b!important;
  border:1px solid rgba(229,234,243,.95)!important;
  box-shadow:0 14px 36px rgba(15,23,42,.16)!important;
}
.ds-strip-prev{left:-22px!important;}
.ds-strip-next{right:-22px!important;}
.ds-bottom-cta{
  padding:34px 38px!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#07142b,#142846)!important;
  box-shadow:0 22px 64px rgba(15,23,42,.11)!important;
}
.ds-bottom-cta h2{font-weight:500!important;letter-spacing:-.03em!important;}
.ds-bottom-cta-actions{align-items:center!important;}
.ds-social-links{display:flex;gap:9px;align-items:center;flex-wrap:wrap;}
.ds-social-links a{
  width:38px!important;height:38px!important;padding:0!important;border-radius:999px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;
  font-weight:800!important;text-decoration:none!important;
}
.ds-modern-card-stat em,
.ds-modern-stat em,
.ds-regular-row-stats em{font-weight:400!important;color:#8b96a6!important;}
.ds-modern-card-stat strong,
.ds-modern-stat strong,
.ds-regular-row-stats strong{font-weight:550!important;color:#172033!important;}
.ds-modern-card h2{font-weight:400!important;letter-spacing:-.035em!important;}
.ds-modern-card-price strong{font-weight:550!important;}

@media(max-width:1180px){
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:780px){
  :root{--ds-wide-width:calc(100vw - 24px);}
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{grid-template-columns:1fr!important;}
  body .ds-ms-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;justify-content:stretch!important;}
  body .ds-ms-more,body .ds-ms-submit{width:100%!important;min-width:0!important;}
  body .ds-ms-feature{min-width:0!important;}
  .ds-modern-archive-hero{padding:24px 20px!important;}
  .ds-modern-archive-hero h1{font-size:clamp(30px,8vw,42px)!important;}
  .ds-magazine-strip,.ds-video-strip,.ds-bottom-cta{padding:28px 18px!important;border-radius:24px!important;}
  .ds-video-card{max-width:320px!important;}
  .ds-video-strip.is-carousel .ds-video-card{flex-basis:min(320px,100%)!important;}
  .ds-strip-prev{left:4px!important;}
  .ds-strip-next{right:4px!important;}
  .ds-bottom-cta{flex-direction:column!important;align-items:flex-start!important;}
}
@media(max-width:560px){
  :root{--ds-wide-width:calc(100vw - 20px);}
  body .ds-modern-search{padding:16px!important;}
  body .ds-ms-actions{grid-template-columns:1fr!important;}
  .ds-strip-heading h2,.ds-magazine-heading h2,.ds-video-heading h2{font-size:clamp(22px,6.4vw,30px)!important;line-height:1.2!important;}
  .ds-video-card{max-width:100%!important;}
  .ds-video-preview-frame{max-height:70vh!important;}
}


/* v2.7.22 Full Width Archive Visual Refinement - hard overrides */
body .ds-modern-search,
body .ds-modern-archive,
body .ds-strip,
body .ds-banner-slots,
body .ds-bottom-cta{
  box-sizing:border-box!important;
}

body .ds-modern-search{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:0 auto 22px!important;
  padding:24px 28px!important;
  border-radius:26px!important;
  overflow:visible!important;
}
body .ds-modern-search-main{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:16px 18px!important;
  align-items:end!important;
}
body .ds-modern-search-main .ds-ms-search{
  grid-column:span 3!important;
}
body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range){
  grid-column:span 2!important;
}
body .ds-modern-search-main .ds-ms-range{
  grid-column:span 3!important;
}
body .ds-modern-search-main .ds-ms-actions{
  grid-column:1/-1!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  padding-top:10px!important;
}
body .ds-ms-feature,
body .ds-ms-more,
body .ds-ms-submit{
  min-height:46px!important;
  white-space:nowrap!important;
}
body .ds-ms-submit{
  min-width:190px!important;
}

body .ds-modern-archive{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:18px auto 28px!important;
}
body .ds-modern-breadcrumbs{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:14px auto 14px!important;
  color:#667085!important;
  font-size:14px!important;
  font-weight:500!important;
}
body .ds-modern-archive-hero{
  width:100%!important;
  margin:0 0 18px!important;
  padding:34px 42px!important;
  min-height:0!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,var(--ds-primary,#1f6feb),#0b1830)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.08)!important;
}
body .ds-modern-archive-hero span{
  display:none!important;
}
body .ds-modern-archive-hero h1{
  font-size:clamp(34px,4.4vw,58px)!important;
  line-height:1.08!important;
  font-weight:500!important;
  letter-spacing:-.025em!important;
}

body .ds-modern-results{
  gap:18px!important;
}
body .ds-modern-results-head{
  margin-bottom:2px!important;
}
body .ds-listing-level-section{
  margin-top:18px!important;
  margin-bottom:22px!important;
}
body .ds-level-heading{
  margin-bottom:14px!important;
}
body .ds-level-heading h2{
  font-size:clamp(28px,3vw,42px)!important;
  font-weight:500!important;
  letter-spacing:-.02em!important;
  color:#172033!important;
}

/* Lighter, more classic property card metadata */
body .ds-modern-card-stats em,
body .ds-regular-row-stats em,
body .ds-modern-stat em,
body .ds-field-badge em{
  color:#7d8796!important;
  font-weight:500!important;
  font-size:12px!important;
}
body .ds-modern-card-stats strong,
body .ds-regular-row-stats strong,
body .ds-modern-stat strong,
body .ds-field-badge strong{
  color:#172033!important;
  font-weight:650!important;
}
body .ds-modern-card h2,
body .ds-regular-row-main h3{
  font-weight:500!important;
  letter-spacing:-.015em!important;
}

/* Wide display sections */
body .ds-strip{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:24px auto!important;
  padding:34px 44px!important;
  border-radius:28px!important;
  background:#f4f8ff!important;
  border:1px solid #e8eef8!important;
  box-shadow:0 18px 48px rgba(15,23,42,.055)!important;
  overflow:hidden!important;
}
body .ds-strip-heading{
  display:block!important;
  text-align:center!important;
  margin:0 auto 26px!important;
  max-width:960px!important;
}
body .ds-strip-heading span{
  display:none!important;
}
body .ds-strip-heading h2{
  margin:0 auto!important;
  color:#07142b!important;
  font-size:clamp(28px,3.4vw,44px)!important;
  line-height:1.18!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}
body .ds-strip-carousel-wrap{
  position:relative!important;
}
body .ds-strip-grid{
  display:grid!important;
  grid-template-columns:repeat(var(--ds-mag-cols-desktop,3), minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
body .ds-magazine-card{
  padding:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  border:1px solid #e5eaf3!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(15,23,42,.07)!important;
}
body .ds-magazine-card-image{
  display:block!important;
}
body .ds-magazine-card-image img{
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
}
body .ds-magazine-card-content{
  display:grid!important;
  gap:10px!important;
  padding:22px 24px 24px!important;
}
body .ds-magazine-card-content strong{
  font-size:20px!important;
  line-height:1.22!important;
  font-weight:600!important;
  letter-spacing:-.01em!important;
  color:#07142b!important;
}
body .ds-magazine-card-content em{
  font-style:normal!important;
  color:#667085!important;
  line-height:1.55!important;
  font-size:15px!important;
}
body .ds-magazine-card-content small{
  justify-self:start!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  background:#eef4ff!important;
  color:#1f6feb!important;
  font-weight:800!important;
}

/* Video strip: slightly narrower short cards, no per-card context labels */
body .ds-video-row{
  justify-content:center!important;
  grid-template-columns:repeat(var(--ds-mag-cols-desktop,3), minmax(190px,250px))!important;
}
body .ds-video-card{
  border-radius:22px!important;
  overflow:hidden!important;
  max-width:250px!important;
  margin-inline:auto!important;
  background:#fff!important;
  border:1px solid #e5eaf3!important;
  box-shadow:0 14px 34px rgba(15,23,42,.08)!important;
}
body .ds-video-card strong,
body .ds-video-card-title{
  display:none!important;
}
body .ds-video-card iframe,
body .ds-video-thumb,
body .ds-video-preview{
  width:100%!important;
  aspect-ratio:9/16!important;
  min-height:0!important;
  max-height:420px!important;
  object-fit:cover!important;
}
body .ds-video-strip .ds-strip-arrow{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  border-radius:999px!important;
  border:1px solid #e5eaf3!important;
  background:#fff!important;
  color:#07142b!important;
  box-shadow:0 12px 28px rgba(15,23,42,.12)!important;
}

/* Banner and bottom CTA sections */
body .ds-banner-slots{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:22px auto!important;
  gap:18px!important;
}
body .ds-banner-slot{
  border-radius:22px!important;
  box-shadow:0 14px 34px rgba(15,23,42,.07)!important;
}
body .ds-bottom-cta{
  width:min(1440px, calc(100vw - 56px))!important;
  max-width:1440px!important;
  margin:26px auto!important;
  padding:34px 38px!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#07142b,#123b7a)!important;
}
body .ds-bottom-cta h2{
  font-weight:600!important;
  letter-spacing:-.02em!important;
  font-size:clamp(26px,3vw,42px)!important;
}
body .ds-social-links{
  display:inline-flex!important;
  gap:10px!important;
  align-items:center!important;
}
body .ds-social-links a{
  width:38px!important;
  height:38px!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
}

@media(max-width:1200px){
  body .ds-modern-search-main{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  body .ds-modern-search-main .ds-ms-search,
  body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range),
  body .ds-modern-search-main .ds-ms-range{
    grid-column:span 2!important;
  }
}
@media(max-width:860px){
  body .ds-modern-search,
  body .ds-modern-archive,
  body .ds-strip,
  body .ds-banner-slots,
  body .ds-bottom-cta,
  body .ds-modern-breadcrumbs{
    width:calc(100vw - 28px)!important;
  }
  body .ds-modern-search{
    padding:18px!important;
    border-radius:22px!important;
  }
  body .ds-modern-search-main{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body .ds-modern-search-main .ds-ms-search,
  body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range),
  body .ds-modern-search-main .ds-ms-range,
  body .ds-modern-search-main .ds-ms-actions{
    grid-column:1!important;
  }
  body .ds-ms-actions{
    justify-content:stretch!important;
  }
  body .ds-ms-submit,
  body .ds-ms-more{
    width:100%!important;
    justify-content:center!important;
  }
  body .ds-modern-archive-hero{
    padding:28px 24px!important;
  }
  body .ds-strip{
    padding:28px 18px!important;
    border-radius:24px!important;
    margin:20px auto!important;
  }
  body .ds-strip-heading h2{
    font-size:clamp(24px,7vw,34px)!important;
    line-height:1.22!important;
  }
  body .ds-strip-grid{
    grid-template-columns:repeat(var(--ds-mag-cols-mobile,1), minmax(0,1fr))!important;
    gap:16px!important;
  }
  body .ds-video-row{
    grid-template-columns:repeat(var(--ds-mag-cols-mobile,1), minmax(0,260px))!important;
  }
}

/* v2.7.23 Archive layout real fix: search fit, hero typography, CTA buttons */
body .ds-modern-search{
  width:100%!important;
  max-width:1320px!important;
  margin:0 auto 18px!important;
  padding:22px 24px!important;
  border-radius:24px!important;
  overflow:visible!important;
}
body .ds-modern-search-main,
body .ds-search-mode-compact .ds-modern-search-main,
body .ds-search-mode-expanded .ds-modern-search-main{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:14px 16px!important;
  align-items:end!important;
  width:100%!important;
}
body .ds-modern-search-main .ds-ms-search{
  grid-column:span 3!important;
}
body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range){
  grid-column:span 2!important;
  min-width:0!important;
}
body .ds-modern-search-main .ds-ms-range{
  grid-column:span 3!important;
  min-width:0!important;
}
body .ds-modern-search-main .ds-ms-range>div{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  gap:10px!important;
}
body .ds-modern-search-main .ds-ms-actions{
  grid-column:1/-1!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding-top:8px!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
body .ds-modern-search-main .ds-ms-actions > *{
  flex:0 0 auto!important;
  max-width:100%!important;
}
body .ds-ms-feature{
  min-width:112px!important;
  min-height:44px!important;
  padding:0 14px!important;
  font-weight:700!important;
}
body .ds-ms-more{
  margin-left:auto!important;
  min-width:154px!important;
  min-height:44px!important;
}
body .ds-ms-submit{
  min-width:180px!important;
  max-width:210px!important;
  min-height:44px!important;
  padding-inline:18px!important;
  white-space:nowrap!important;
}
body .ds-ms-field span,
body .ds-ms-range span{
  color:#14213a!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
}
body .ds-modern-search input,
body .ds-modern-search select{
  min-width:0!important;
}

body .ds-modern-archive,
body .ds-modern-results,
body .ds-listing-level-section,
body .ds-strip,
body .ds-banner-slots,
body .ds-bottom-cta{
  width:100%!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body .ds-modern-breadcrumbs{
  max-width:1320px!important;
  margin:14px auto 12px!important;
  font-size:14px!important;
  font-weight:500!important;
  color:#667085!important;
}
body .ds-modern-archive-hero{
  max-width:1320px!important;
  margin:0 auto 18px!important;
  padding:34px 38px!important;
  min-height:0!important;
  border-radius:24px!important;
  box-shadow:0 18px 45px rgba(15,23,42,.10)!important;
}
body .ds-modern-archive-hero h1,
body .ds-modern-archive-hero .ds-archive-title,
body .ds-modern-archive-hero-title{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(34px,4.2vw,58px)!important;
  line-height:1.08!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
  margin:0!important;
}
body .ds-modern-archive-hero .ds-archive-kicker,
body .ds-modern-archive-hero small,
body .ds-modern-archive-hero span:first-child{
  display:none!important;
}

body .ds-modern-card-stats em,
body .ds-regular-row-stats em,
body .ds-modern-card .ds-field-badge em,
body .ds-modern-card-stats .ds-modern-card-stat em{
  color:#7c8796!important;
  font-weight:400!important;
  font-size:12px!important;
  letter-spacing:.01em!important;
}
body .ds-modern-card-stats strong,
body .ds-regular-row-stats strong,
body .ds-modern-card .ds-field-badge strong,
body .ds-modern-card-stats .ds-modern-card-stat strong{
  color:#172033!important;
  font-weight:600!important;
}

body .ds-banner-slots{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px auto!important;
}
body .ds-banner-slot{
  display:block!important;
  min-height:140px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#eef4ff!important;
  box-shadow:0 18px 38px rgba(15,23,42,.08)!important;
}
body .ds-banner-slot img{
  width:100%!important;
  height:100%!important;
  min-height:140px!important;
  object-fit:cover!important;
  display:block!important;
}

body .ds-bottom-cta{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:28px!important;
  margin:30px auto!important;
  padding:30px 34px!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,#07142b,#143b79)!important;
  color:#fff!important;
  box-shadow:0 22px 50px rgba(15,23,42,.16)!important;
}
body .ds-bottom-cta h2{color:#fff!important;margin:0 0 8px!important;font-size:clamp(24px,2.4vw,36px)!important;line-height:1.1!important;font-weight:700!important;letter-spacing:-.03em!important;}
body .ds-bottom-cta p{color:rgba(255,255,255,.78)!important;margin:0!important;font-size:15px!important;line-height:1.6!important;}
body .ds-bottom-cta-actions{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;}
body .ds-bottom-cta-actions a{min-height:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;font-weight:800!important;border-radius:999px!important;padding:0 18px!important;}
body .ds-cta-primary{background:#fff!important;color:#07142b!important;}
body .ds-cta-secondary{background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;}
body .ds-social-links{display:flex!important;align-items:center!important;gap:8px!important;}
body .ds-social-links a{width:38px!important;height:38px!important;padding:0!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;color:#fff!important;font-size:14px!important;border:1px solid rgba(255,255,255,.16)!important;}

@media(min-width:861px) and (max-width:1220px){
  body .ds-modern-search-main .ds-ms-search{grid-column:span 4!important;}
  body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range){grid-column:span 4!important;}
  body .ds-modern-search-main .ds-ms-range{grid-column:span 4!important;}
  body .ds-ms-more{margin-left:0!important;}
}
@media(max-width:860px){
  body .ds-modern-search,
  body .ds-modern-archive,
  body .ds-modern-results,
  body .ds-listing-level-section,
  body .ds-strip,
  body .ds-banner-slots,
  body .ds-bottom-cta,
  body .ds-modern-breadcrumbs{width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important;}
  body .ds-modern-search{padding:16px!important;border-radius:20px!important;}
  body .ds-modern-search-main{grid-template-columns:1fr!important;gap:13px!important;}
  body .ds-modern-search-main .ds-ms-search,
  body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range),
  body .ds-modern-search-main .ds-ms-range,
  body .ds-modern-search-main .ds-ms-actions{grid-column:1/-1!important;}
  body .ds-ms-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body .ds-ms-feature,
  body .ds-ms-more,
  body .ds-ms-submit{width:100%!important;min-width:0!important;max-width:none!important;margin-left:0!important;}
  body .ds-ms-more,
  body .ds-ms-submit{grid-column:1/-1!important;}
  body .ds-modern-archive-hero{padding:26px 22px!important;border-radius:22px!important;}
  body .ds-banner-slots{grid-template-columns:1fr!important;}
  body .ds-bottom-cta{grid-template-columns:1fr!important;text-align:center!important;padding:26px 18px!important;}
  body .ds-bottom-cta-actions{justify-content:center!important;}
}

/* v2.7.24 Compact Archive Cards Refinement */
body .ds-featured-results-grid,
body .ds-promoted-results-grid{
  align-items:stretch!important;
}

body .ds-modern-card{
  border-radius:20px!important;
  box-shadow:0 12px 34px rgba(15,23,42,.055)!important;
}

body .ds-level-recommended .ds-card-featured,
body .ds-level-promoted .ds-card-promoted{
  overflow:hidden!important;
}

body .ds-level-recommended .ds-card-featured .ds-modern-card-media{
  min-height:230px!important;
  max-height:250px!important;
}
body .ds-level-promoted .ds-card-promoted .ds-modern-card-media{
  min-height:150px!important;
  max-height:170px!important;
}

body .ds-level-recommended .ds-card-featured .ds-modern-card-body,
body .ds-level-promoted .ds-card-promoted .ds-modern-card-body{
  padding:18px 20px 20px!important;
  gap:9px!important;
  align-content:start!important;
}

body .ds-level-recommended .ds-card-featured h2,
body .ds-level-promoted .ds-card-promoted h2,
body .ds-modern-card h2{
  font-family:inherit!important;
  font-size:clamp(18px,1.65vw,24px)!important;
  line-height:1.16!important;
  font-weight:500!important;
  letter-spacing:-.025em!important;
  margin:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
body .ds-level-promoted .ds-card-promoted h2{
  font-size:18px!important;
  line-height:1.18!important;
}

body .ds-modern-card-location{
  font-size:13px!important;
  font-weight:500!important;
  color:#728096!important;
  gap:6px!important;
}
body .ds-modern-card-location .ds-svg-icon{
  width:14px!important;
  height:14px!important;
}

body .ds-modern-card-price{
  gap:8px!important;
  margin:1px 0 2px!important;
}
body .ds-modern-card-price strong,
body .ds-card-featured .ds-modern-card-price strong,
body .ds-card-promoted .ds-modern-card-price strong,
body .ds-level-recommended .ds-card-featured .ds-modern-card-price strong,
body .ds-level-promoted .ds-card-promoted .ds-modern-card-price strong{
  font-size:clamp(22px,2vw,28px)!important;
  line-height:1.05!important;
  font-weight:550!important;
  letter-spacing:.01em!important;
}
body .ds-level-promoted .ds-card-promoted .ds-modern-card-price strong{
  font-size:21px!important;
}
body .ds-modern-card-price span{
  font-size:13px!important;
  font-weight:500!important;
  color:#172033!important;
}

body .ds-modern-card-stats,
body .ds-card-featured .ds-modern-card-stats,
body .ds-card-promoted .ds-modern-card-stats,
body .ds-level-recommended .ds-modern-card-stats,
body .ds-level-promoted .ds-modern-card-stats{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px 12px!important;
  margin:2px 0!important;
}
body .ds-level-promoted .ds-card-promoted .ds-modern-card-stats{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px 10px!important;
}

body .ds-modern-card-stat,
body .ds-field-badge,
body .ds-modern-card-stats .ds-modern-card-stat{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
body .ds-modern-card-stat .ds-svg-icon,
body .ds-field-badge .ds-svg-icon,
body .ds-modern-card-stats .ds-modern-card-stat .ds-svg-icon{
  width:15px!important;
  height:15px!important;
  color:#5f6f86!important;
  opacity:.9!important;
}
body .ds-modern-card-stats em,
body .ds-modern-card-stats span,
body .ds-modern-card .ds-field-badge em,
body .ds-modern-card .ds-field-badge span,
body .ds-modern-card-stats .ds-modern-card-stat em,
body .ds-modern-card-stats .ds-modern-card-stat span{
  color:#7d8796!important;
  font-size:11.5px!important;
  line-height:1.18!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.005em!important;
}
body .ds-modern-card-stats strong,
body .ds-modern-card .ds-field-badge strong,
body .ds-modern-card-stats .ds-modern-card-stat strong{
  color:#172033!important;
  font-size:14px!important;
  line-height:1.18!important;
  font-weight:550!important;
  letter-spacing:-.005em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
body .ds-level-promoted .ds-card-promoted .ds-modern-card-stats strong,
body .ds-level-promoted .ds-card-promoted .ds-field-badge strong{
  font-size:13.5px!important;
}

body .ds-modern-card-features{
  gap:6px!important;
  margin-top:2px!important;
}
body .ds-modern-card-features a{
  min-height:28px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:650!important;
  background:#f4f7fb!important;
  color:#14213a!important;
}
body .ds-modern-card-features .ds-svg-icon{
  width:14px!important;
  height:14px!important;
}

body .ds-modern-card-actions{
  gap:8px!important;
  margin-top:2px!important;
}
body .ds-modern-card-actions a{
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  font-size:13px!important;
  font-weight:700!important;
}
body .ds-modern-card-actions .ds-modern-card-primary{
  min-width:118px!important;
}

body .ds-modern-card-badge,
body .ds-modern-level-badge{
  padding:6px 10px!important;
  font-size:11px!important;
  letter-spacing:.025em!important;
}

/* tighter card grids */
body .ds-level-recommended .ds-featured-results-grid{
  gap:18px!important;
}
body .ds-level-promoted .ds-promoted-results-grid{
  gap:16px!important;
}

/* regular B rows remain compact and refined */
body .ds-regular-row-card{
  padding:12px 14px!important;
  gap:14px!important;
  border-radius:16px!important;
}
body .ds-regular-row-thumb{
  width:76px!important;
  height:76px!important;
  border-radius:14px!important;
}
body .ds-regular-row-main h3{
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:-.015em!important;
}
body .ds-regular-row-meta{
  font-size:12px!important;
  font-weight:500!important;
  color:#7d8796!important;
}
body .ds-regular-row-stats{
  gap:10px!important;
}
body .ds-regular-row-stats strong{
  font-size:13px!important;
  font-weight:550!important;
}
body .ds-regular-row-price strong{
  font-size:17px!important;
  font-weight:550!important;
}
body .ds-regular-row-link{
  min-height:34px!important;
  font-size:13px!important;
  font-weight:700!important;
}

/* desktop promoted cards: avoid excessive height */
@media(min-width:981px){
  body .ds-level-promoted .ds-card-promoted{
    min-height:0!important;
  }
  body .ds-level-promoted .ds-card-promoted .ds-modern-card-body{
    min-height:0!important;
  }
}

@media(max-width:760px){
  body .ds-level-recommended .ds-card-featured .ds-modern-card-media,
  body .ds-level-promoted .ds-card-promoted .ds-modern-card-media,
  body .ds-card-regular .ds-modern-card-media{
    min-height:180px!important;
    max-height:210px!important;
  }
  body .ds-level-recommended .ds-card-featured .ds-modern-card-body,
  body .ds-level-promoted .ds-card-promoted .ds-modern-card-body{
    padding:16px!important;
  }
  body .ds-modern-card-stats,
  body .ds-card-featured .ds-modern-card-stats,
  body .ds-card-promoted .ds-modern-card-stats,
  body .ds-level-recommended .ds-modern-card-stats,
  body .ds-level-promoted .ds-modern-card-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .ds-modern-card h2,
  body .ds-level-recommended .ds-card-featured h2,
  body .ds-level-promoted .ds-card-promoted h2{
    font-size:21px!important;
  }
}

/* v2.7.25 — archive width alignment + social SVG icons */
:root{--ds-archive-max:1360px;--ds-archive-gutter:clamp(18px,4vw,44px);} 
body .ds-modern-search,
body .ds-modern-archive,
body .ds-modern-breadcrumbs,
body .ds-magazine-strip,
body .ds-video-strip,
body .ds-bottom-cta,
body .ds-banner-slots{
  width:min(calc(100vw - (var(--ds-archive-gutter) * 2)), var(--ds-archive-max))!important;
  max-width:min(calc(100vw - (var(--ds-archive-gutter) * 2)), var(--ds-archive-max))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body .ds-modern-search{
  padding:22px 24px!important;
  border-radius:24px!important;
  overflow:visible!important;
}
body .ds-modern-search-main,
body .ds-search-mode-compact .ds-modern-search-main,
body .ds-search-mode-expanded .ds-modern-search-main{
  display:grid!important;
  grid-template-columns:minmax(220px,1.35fr) minmax(170px,.9fr) minmax(170px,.9fr) minmax(240px,1.15fr) auto!important;
  gap:16px!important;
  align-items:end!important;
}
body .ds-modern-search-main .ds-ms-search{grid-column:auto!important;min-width:0!important;}
body .ds-modern-search-main .ds-ms-field:not(.ds-ms-search):not(.ds-ms-range){grid-column:auto!important;min-width:0!important;}
body .ds-modern-search-main .ds-ms-range{grid-column:auto!important;min-width:0!important;}
body .ds-modern-search-main .ds-ms-range>div{display:grid!important;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr)!important;gap:8px!important;align-items:center!important;}
body .ds-modern-search-main .ds-ms-actions{grid-column:1/-1!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:12px!important;min-width:0!important;}
body .ds-ms-feature{min-height:42px!important;padding:0 18px!important;border-radius:12px!important;font-size:14px!important;}
body .ds-ms-more, body .ds-ms-submit{min-height:44px!important;border-radius:12px!important;white-space:nowrap!important;}
body .ds-modern-search input, body .ds-modern-search select{height:48px!important;min-height:48px!important;}

body .ds-modern-breadcrumbs{
  margin-top:22px!important;
  margin-bottom:12px!important;
  padding-left:0!important;
  padding-right:0!important;
}
body .ds-modern-archive-hero{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 22px!important;
  padding:34px 42px!important;
  border-radius:24px!important;
}
body .ds-modern-archive-hero h1,
body .ds-modern-archive-hero .ds-archive-title,
body .ds-modern-archive-hero-title{
  font-family:inherit!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
  line-height:1.05!important;
  font-size:clamp(42px,4.3vw,64px)!important;
}
body .ds-modern-results-head{margin-top:0!important;}

body .ds-bottom-cta{grid-template-columns:minmax(0,1fr) auto!important;}
body .ds-social-links a{
  width:40px!important;height:40px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  color:#fff!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;
}
body .ds-social-links a svg{width:18px!important;height:18px!important;display:block!important;}
body .ds-social-links a.ds-social-instagram{color:#fff!important;}
body .ds-social-links a.ds-social-tiktok{color:#fff!important;}
body .ds-social-links a.ds-social-youtube{color:#fff!important;}
body .ds-social-links a:hover{background:rgba(255,255,255,.22)!important;transform:translateY(-1px);}

@media(max-width:1240px){
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .ds-modern-search-main .ds-ms-actions{grid-column:1/-1!important;justify-content:flex-start!important;}
}
@media(max-width:760px){
  :root{--ds-archive-gutter:14px;}
  body .ds-modern-search,
  body .ds-modern-archive,
  body .ds-modern-breadcrumbs,
  body .ds-magazine-strip,
  body .ds-video-strip,
  body .ds-bottom-cta,
  body .ds-banner-slots{width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important;}
  body .ds-modern-search{padding:16px!important;border-radius:20px!important;}
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{grid-template-columns:1fr!important;gap:13px!important;}
  body .ds-modern-search-main .ds-ms-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  body .ds-modern-archive-hero{padding:28px 22px!important;border-radius:22px!important;}
  body .ds-modern-archive-hero h1{font-size:clamp(32px,9vw,44px)!important;}
  body .ds-bottom-cta{grid-template-columns:1fr!important;text-align:center!important;}
  body .ds-bottom-cta-actions{justify-content:center!important;}
}

/* v2.7.26 — archive alignment + heading typography polish */
@media (min-width: 981px){
  :root{
    --ds-wide-max: 1440px;
    --ds-wide-width: min(92vw, var(--ds-wide-max));
  }

  /* align all major archive blocks to the same viewport-based rail */
  body .ds-modern-search,
  body .ds-modern-archive,
  body .ds-modern-breadcrumbs,
  body .ds-magazine-strip,
  body .ds-video-strip,
  body .ds-bottom-cta,
  body .ds-banner-slots{
    width: var(--ds-wide-width)!important;
    max-width: var(--ds-wide-width)!important;
    margin-left: 50%!important;
    margin-right: 0!important;
    transform: translateX(-50%)!important;
    box-sizing: border-box!important;
  }

  /* search: keep wide, balanced, and never clipped */
  body .ds-modern-search{
    overflow: visible!important;
    padding: 22px 26px!important;
    border-radius: 24px!important;
  }
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{
    width: 100%!important;
    display: grid!important;
    grid-template-columns: minmax(260px,1.45fr) minmax(190px,.95fr) minmax(190px,.95fr) minmax(300px,1.25fr)!important;
    gap: 16px!important;
    align-items: end!important;
  }
  body .ds-modern-search-main .ds-ms-search,
  body .ds-modern-search-main .ds-ms-field,
  body .ds-modern-search-main .ds-ms-range{
    min-width: 0!important;
    max-width: 100%!important;
  }
  body .ds-modern-search-main .ds-ms-actions{
    grid-column: 1/-1!important;
    display: flex!important;
    justify-content: flex-end!important;
    align-items: center!important;
    gap: 12px!important;
    flex-wrap: wrap!important;
    min-width: 0!important;
    width: 100%!important;
  }
  body .ds-modern-search-main .ds-ms-actions > *{
    flex: 0 0 auto!important;
  }
  body .ds-modern-search input,
  body .ds-modern-search select{
    width: 100%!important;
    box-sizing: border-box!important;
  }
  body .ds-ms-submit{
    max-width: 260px!important;
  }

  /* breadcrumbs: same left rail as hero/search */
  body .ds-modern-breadcrumbs{
    padding-left: 0!important;
    padding-right: 0!important;
    margin-top: 22px!important;
    margin-bottom: 12px!important;
  }

  body .ds-modern-archive-hero{
    width: 100%!important;
    max-width: 100%!important;
    margin-left: 0!important;
    margin-right: 0!important;
  }
}

/* refined archive hero typography */
body .ds-modern-archive-hero h1,
body .ds-modern-archive-hero .ds-archive-title,
body .ds-modern-archive-hero-title{
  font-family: inherit!important;
  font-weight: 350!important;
  letter-spacing: -0.055em!important;
  line-height: 1.03!important;
  text-shadow: 0 2px 18px rgba(255,255,255,.10), 0 8px 30px rgba(0,0,0,.08)!important;
}
body .ds-modern-archive-hero{
  padding-top: 30px!important;
  padding-bottom: 34px!important;
}

/* magazine/video title polish — elegant but stronger */
body .ds-magazine-strip h2,
body .ds-video-strip h2,
body .ds-section-title,
body .ds-strip-title,
body .ds-video-strip-title,
body .ds-magazine-strip-title{
  font-weight: 520!important;
  letter-spacing: -0.035em!important;
  line-height: 1.15!important;
  color: #07142b!important;
  text-align: center!important;
  max-width: 920px!important;
  margin-left: auto!important;
  margin-right: auto!important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.92),
    0 12px 34px rgba(7,20,43,.10)!important;
}
body .ds-magazine-strip h2,
body .ds-magazine-strip-title{
  font-size: clamp(28px, 3.1vw, 48px)!important;
}
body .ds-video-strip h2,
body .ds-video-strip-title{
  font-size: clamp(28px, 2.8vw, 42px)!important;
}

/* subtle decorative title underline for content strips */
body .ds-magazine-strip h2::after,
body .ds-video-strip h2::after,
body .ds-magazine-strip-title::after,
body .ds-video-strip-title::after{
  content:"";
  display:block;
  width:72px;
  height:3px;
  border-radius:999px;
  margin:14px auto 0;
  background:linear-gradient(90deg, transparent, #1f6feb, transparent);
  opacity:.75;
}

/* keep the strips wide and polished */
body .ds-magazine-strip,
body .ds-video-strip{
  overflow:hidden!important;
  padding-top:36px!important;
  padding-bottom:38px!important;
}
body .ds-video-card,
body .ds-video-short-card{
  max-width: 300px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body .ds-video-strip .ds-carousel-track,
body .ds-video-strip .ds-video-grid{
  align-items:stretch!important;
}

@media (max-width: 1240px) and (min-width: 981px){
  body .ds-modern-search-main,
  body .ds-search-mode-compact .ds-modern-search-main,
  body .ds-search-mode-expanded .ds-modern-search-main{
    grid-template-columns: repeat(2,minmax(0,1fr))!important;
  }
  body .ds-modern-search-main .ds-ms-actions{
    justify-content:flex-end!important;
  }
}

@media (max-width: 760px){
  body .ds-magazine-strip h2,
  body .ds-video-strip h2,
  body .ds-section-title,
  body .ds-strip-title,
  body .ds-video-strip-title,
  body .ds-magazine-strip-title{
    font-size: clamp(24px, 7vw, 32px)!important;
    line-height: 1.18!important;
    max-width: 100%!important;
    letter-spacing:-.025em!important;
  }
  body .ds-magazine-strip,
  body .ds-video-strip{
    padding-top:28px!important;
    padding-bottom:30px!important;
  }
}

/* v2.8.0 Single Property Page Polish */
body.single-directory_item .ds-modern-single-page,
.ds-modern-single-page{
  width:min(100% - 48px, 1360px)!important;
  max-width:1360px!important;
  margin:34px auto 44px!important;
}
body.single-directory_item .ds-modern-property-hero,
.ds-modern-property-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
  gap:30px!important;
  align-items:stretch!important;
  padding:26px!important;
  border-radius:24px!important;
  box-shadow:0 18px 55px rgba(15,23,42,.055)!important;
  background:#fff!important;
}
body.single-directory_item .ds-modern-property-media,
.ds-modern-property-media{
  order:1!important;
  border-radius:20px!important;
  overflow:hidden!important;
  min-height:430px!important;
}
body.single-directory_item .ds-modern-property-info,
.ds-modern-property-info{
  order:2!important;
  padding:8px 6px!important;
}
body.single-directory_item .ds-modern-property-media > img,
.ds-modern-property-media > img{
  width:100%!important;
  height:100%!important;
  min-height:430px!important;
  object-fit:cover!important;
}
.ds-modern-property-info h1{
  font-size:clamp(34px,3.7vw,58px)!important;
  line-height:1.06!important;
  font-weight:760!important;
  letter-spacing:-.045em!important;
}
.ds-modern-location-row{
  font-weight:600!important;
  color:#667085!important;
}
.ds-modern-price strong{
  font-size:clamp(30px,3.2vw,42px)!important;
  font-weight:760!important;
}
.ds-modern-price span{
  font-weight:650!important;
}
.ds-modern-stat.ds-field-badge,
.ds-modern-stat{
  gap:5px!important;
}
.ds-modern-stat.ds-field-badge em,
.ds-modern-stat span{
  color:#7b8797!important;
  font-size:12.5px!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
}
.ds-modern-stat.ds-field-badge strong,
.ds-modern-stat strong{
  color:#111c2f!important;
  font-size:17px!important;
  font-weight:650!important;
  line-height:1.15!important;
}
.ds-modern-stat .ds-svg-icon,
.ds-modern-stat.ds-field-badge .ds-svg-icon{
  width:19px!important;
  height:19px!important;
  opacity:.82!important;
}
.ds-modern-btn-waze{
  background:#eef9ff!important;
  border-color:#bceaff!important;
  color:#075985!important;
}
.ds-modern-media-actions button{
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}
.ds-modern-media-actions button:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(15,23,42,.18)!important;
}
.ds-modern-media-actions .ds-favorite-btn.is-active{
  background:#fff1f2!important;
  color:#e11d48!important;
  border-color:#fecdd3!important;
}
.ds-modern-media-actions .ds-favorite-btn.is-active svg{
  fill:currentColor!important;
}
.ds-action-toast{
  position:fixed;
  left:50%;
  bottom:30px;
  transform:translate(-50%,16px);
  z-index:999999;
  background:#07142b;
  color:#fff;
  border-radius:999px;
  padding:12px 18px;
  font-weight:800;
  opacity:0;
  pointer-events:none;
  box-shadow:0 16px 40px rgba(7,20,43,.25);
  transition:opacity .22s ease, transform .22s ease;
}
.ds-action-toast.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}
.ds-modern-gallery-wide{
  margin:24px 0 28px!important;
}
.ds-modern-gallery-wide .ds-single-box,
.ds-modern-gallery-wide .ds-gallery-box{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ds-modern-gallery-wide .ds-gallery-carousel{
  border-radius:22px!important;
  background:#f4f7fb!important;
  box-shadow:0 18px 50px rgba(15,23,42,.055)!important;
}
.ds-modern-gallery-wide .ds-gallery-track{
  aspect-ratio:21/8!important;
  min-height:280px!important;
}
.ds-modern-gallery-wide .ds-gallery-slide img{
  object-fit:cover!important;
}
.ds-single-box-title,
.ds-related-box .ds-single-box-title,
.ds-description-box .ds-single-box-title,
.ds-dynamic-fields-box .ds-single-box-title,
.ds-clickable-tax-box .ds-single-box-title,
.ds-video-box .ds-single-box-title,
.ds-map-box .ds-single-box-title{
  position:relative!important;
  display:block!important;
  margin:0 0 20px!important;
  padding-bottom:12px!important;
  color:#07142b!important;
  font-size:clamp(26px,2.4vw,36px)!important;
  font-weight:650!important;
  letter-spacing:-.025em!important;
}
.ds-single-box-title:after,
.ds-related-box .ds-single-box-title:after,
.ds-description-box .ds-single-box-title:after,
.ds-dynamic-fields-box .ds-single-box-title:after,
.ds-clickable-tax-box .ds-single-box-title:after,
.ds-video-box .ds-single-box-title:after,
.ds-map-box .ds-single-box-title:after{
  content:"";
  display:block;
  width:56px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#1f6feb,#9dc4ff);
  margin-top:10px;
}
.ds-related-box{
  padding:28px!important;
  border-radius:22px!important;
}
.ds-related-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.ds-related-card{
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
}
.ds-related-card img{
  aspect-ratio:16/10!important;
  object-fit:cover!important;
}
.ds-related-card strong{
  font-weight:650!important;
  color:#07142b!important;
}
@media(max-width:980px){
  body.single-directory_item .ds-modern-single-page,
  .ds-modern-single-page{
    width:min(100% - 22px, 1360px)!important;
    margin:18px auto 34px!important;
  }
  body.single-directory_item .ds-modern-property-hero,
  .ds-modern-property-hero{
    grid-template-columns:1fr!important;
    padding:18px!important;
  }
  body.single-directory_item .ds-modern-property-media,
  .ds-modern-property-media{
    order:1!important;
    min-height:0!important;
  }
  body.single-directory_item .ds-modern-property-info,
  .ds-modern-property-info{
    order:2!important;
  }
  body.single-directory_item .ds-modern-property-media > img,
  .ds-modern-property-media > img{
    min-height:0!important;
    aspect-ratio:16/10!important;
  }
  .ds-modern-gallery-wide .ds-gallery-track{
    aspect-ratio:16/10!important;
    min-height:0!important;
  }
  .ds-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  .ds-modern-property-info h1{
    font-size:32px!important;
  }
  .ds-modern-gallery-wide .ds-gallery-track{
    aspect-ratio:4/3!important;
  }
  .ds-related-grid{
    grid-template-columns:1fr!important;
  }
}

/* v2.8.1 Single Property Layout Fix */
body.single-directory_item .et_pb_row,
body.single-directory_item .et-db #et-boc .et-l .et_pb_row{
  width:min(100% - 44px, 1440px)!important;
  max-width:1440px!important;
}
body.single-directory_item .ds-modern-single-page,
.ds-modern-single-page{
  width:min(100% - 44px, 1440px)!important;
  max-width:1440px!important;
  margin:28px auto 42px!important;
}
body.single-directory_item .ds-modern-property-hero,
.ds-modern-property-hero{
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)!important;
  gap:30px!important;
  padding:24px!important;
}
body.single-directory_item .ds-modern-property-media,
.ds-modern-property-media{
  order:1!important;
  min-height:420px!important;
}
body.single-directory_item .ds-modern-property-info,
.ds-modern-property-info{
  order:2!important;
}
body.single-directory_item .ds-modern-gallery-wide{
  width:100%!important;
  max-width:100%!important;
  margin:22px auto 28px!important;
}
body.single-directory_item .ds-modern-gallery-wide .ds-gallery-carousel,
body.single-directory_item .ds-modern-gallery-wide .ds-gallery-box,
body.single-directory_item .ds-modern-gallery-wide .ds-single-box{
  width:100%!important;
  max-width:100%!important;
}
body.single-directory_item .ds-modern-gallery-wide .ds-gallery-track{
  aspect-ratio:24/7!important;
  min-height:260px!important;
}
body.single-directory_item .ds-single-wide-section{
  width:100%!important;
  max-width:100%!important;
  margin:28px auto!important;
  padding:28px!important;
  background:#fff!important;
  border:1px solid var(--ds-search-border,#e5eaf3)!important;
  border-radius:24px!important;
  box-shadow:0 16px 44px rgba(15,23,42,.055)!important;
  box-sizing:border-box!important;
}
body.single-directory_item .ds-modern-single-section-title{
  position:relative!important;
  margin:0 0 22px!important;
  padding-bottom:12px!important;
  font-size:clamp(26px,2.4vw,36px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  font-weight:650!important;
  color:#07142b!important;
}
body.single-directory_item .ds-modern-single-section-title:after{
  content:"";
  display:block;
  width:58px;
  height:3px;
  border-radius:999px;
  margin-top:10px;
  background:linear-gradient(90deg,#1f6feb,#9dc4ff);
}
body.single-directory_item .ds-single-rec-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
body.single-directory_item .ds-single-rec-card{
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  background:#fff!important;
  border:1px solid var(--ds-search-border,#e5eaf3)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  text-decoration:none!important;
  color:#07142b!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
}
body.single-directory_item .ds-single-rec-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.09)!important;
}
body.single-directory_item .ds-single-rec-img{
  display:block!important;
  overflow:hidden!important;
  background:#f3f7fc!important;
}
body.single-directory_item .ds-single-rec-img img{
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
  transition:transform .22s ease!important;
}
body.single-directory_item .ds-single-rec-card:hover .ds-single-rec-img img{
  transform:scale(1.03)!important;
}
body.single-directory_item .ds-single-rec-body{
  display:grid!important;
  gap:7px!important;
  padding:16px 18px 18px!important;
}
body.single-directory_item .ds-single-rec-body strong{
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:650!important;
  color:#07142b!important;
}
body.single-directory_item .ds-single-rec-body em{
  font-style:normal!important;
  font-size:13px!important;
  color:#667085!important;
  font-weight:500!important;
}
body.single-directory_item .ds-single-rec-body b{
  font-size:18px!important;
  color:#b8842f!important;
  font-weight:720!important;
}
body.single-directory_item .ds-strip,
body.single-directory_item .ds-magazine-strip,
body.single-directory_item .ds-video-strip,
body.single-directory_item .ds-banner-slots{
  display:none!important;
}
body.single-directory_item .ds-bottom-cta{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  margin:30px auto 0!important;
}
@media(max-width:980px){
  body.single-directory_item .et_pb_row,
  body.single-directory_item .et-db #et-boc .et-l .et_pb_row,
  body.single-directory_item .ds-modern-single-page,
  .ds-modern-single-page{
    width:min(100% - 22px, 1440px)!important;
  }
  body.single-directory_item .ds-modern-property-hero,
  .ds-modern-property-hero{
    grid-template-columns:1fr!important;
    padding:18px!important;
  }
  body.single-directory_item .ds-modern-property-media,
  .ds-modern-property-media{
    min-height:0!important;
  }
  body.single-directory_item .ds-modern-gallery-wide .ds-gallery-track{
    aspect-ratio:16/9!important;
    min-height:0!important;
  }
  body.single-directory_item .ds-single-rec-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  body.single-directory_item .ds-single-wide-section{
    padding:20px!important;
    border-radius:20px!important;
  }
  body.single-directory_item .ds-single-rec-grid{
    grid-template-columns:1fr!important;
  }
}

/* v2.8.2 - Single property bottom CTA viewport alignment fix */
body.single-directory_item .ds-bottom-cta{
  width:min(calc(100vw - 96px), 1440px)!important;
  max-width:1440px!important;
  margin-top:34px!important;
  margin-bottom:0!important;
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
}
body.single-directory_item .ds-bottom-cta .ds-bottom-cta-actions{
  margin-left:auto!important;
}
@media(max-width:980px){
  body.single-directory_item .ds-bottom-cta{
    width:calc(100vw - 32px)!important;
    margin-left:50%!important;
    transform:translateX(-50%)!important;
    padding:26px 18px!important;
  }
  body.single-directory_item .ds-bottom-cta .ds-bottom-cta-actions{
    margin-left:0!important;
  }
}


/* v2.8.3 - Single CTA duplicate + mobile spacing fix */
body.single-directory_item .ds-bottom-cta{
  display:none!important;
}
body.single-directory_item .ds-modern-single-page > .ds-bottom-cta{
  display:flex!important;
  width:min(calc(100vw - 96px), 1440px)!important;
  max-width:1440px!important;
  margin:34px auto 0!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
}
body.single-directory_item .ds-modern-single-page > .ds-bottom-cta .ds-bottom-cta-actions{
  margin-left:auto!important;
}
@media(max-width:980px){
  body.single-directory_item .ds-modern-single-page{
    margin-top:12px!important;
  }
  body.single-directory_item .ds-modern-property-hero,
  body.single-directory_item .ds-modern-single-hero,
  body.single-directory_item .ds-single-modern-hero{
    margin-top:10px!important;
  }
  body.single-directory_item .ds-modern-search-main,
  body.single-directory_item .ds-modern-search-wrap,
  body.single-directory_item .ds-modern-search-panel{
    margin-bottom:14px!important;
  }
  body.single-directory_item .ds-modern-single-page > .ds-bottom-cta{
    display:flex!important;
    width:calc(100vw - 32px)!important;
    margin-left:50%!important;
    transform:translateX(-50%)!important;
    padding:26px 18px!important;
  }
  body.single-directory_item .ds-modern-single-page > .ds-bottom-cta .ds-bottom-cta-actions{
    margin-left:0!important;
  }
}


/* v2.8.5 Mobile Header / Divi Menu Safety
   Keep Directory mobile search overlays from blocking the site hamburger/menu when closed. */
.ds-mobile-search-overlay[hidden],
.ds-mobile-search-shell:not(.is-open) .ds-mobile-search-overlay{
  display:none!important;
  pointer-events:none!important;
  visibility:hidden!important;
}
.ds-mobile-search-shell:not(.is-open) .ds-mobile-search-drawer{
  pointer-events:none!important;
  visibility:hidden!important;
}
.ds-mobile-search-shell.is-open .ds-mobile-search-drawer{
  pointer-events:auto!important;
  visibility:visible!important;
}
@media(max-width:980px){
  /* Divi / theme mobile header should remain clickable above normal Directory content */
  #main-header,
  #main-header .container,
  #et-top-navigation,
  .mobile_menu_bar,
  .et_mobile_menu,
  .et_mobile_nav_menu,
  .et_pb_menu,
  .et_pb_menu_inner_container,
  .et_pb_menu__wrap,
  .et_pb_menu__menu,
  .et_pb_menu__cart-button,
  .et_pb_menu__search-button,
  .et_pb_fullwidth_menu,
  .et_pb_fullwidth_menu .mobile_nav,
  .et_pb_menu .mobile_nav{
    position:relative!important;
    z-index:100010!important;
  }
  .et_mobile_menu{
    z-index:100020!important;
  }
  /* Directory page sections stay below the header unless a drawer/modal is explicitly open */
  .ds-archive-shell,
  .ds-modern-archive,
  .ds-modern-results,
  .ds-single-modern,
  .ds-mobile-search-shell:not(.is-open){
    position:relative;
    z-index:1!important;
  }
}
