/* P.I.C.K. — onOffice plugin design overrides (real-class targeting v2) */

.pick-estates { position: relative; }
.pick-estates .pick-estates__placeholder { display: none !important; }
.pick-estates .oo-estate-map { display: none; }

/* List header — hide the English "Overview of Estates" headline */
.pick-estates .oo-listheadline { display: none; }
.pick-estates .oo-estate-sort {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 24px;
  font-size: 13px;
  color: #5B6066;
}
.pick-estates .oo-estate-sort select {
  border: 0;
  background: transparent;
  color: #002D51;
  font-weight: 600;
  font-family: 'Figtree', sans-serif;
  cursor: pointer;
}

/* Grid */
.pick-estates .oo-listframe {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 56px 32px;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 1100px) { .pick-estates .oo-listframe { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 720px)  { .pick-estates .oo-listframe { grid-template-columns: 1fr; } }

/* Grid item — plugin sets fixed width, override to fill cell */
.pick-estates .oo-listobject {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
}

/* Card */
.pick-estates .oo-listobjectwrap {
  display: flex;
  flex-direction: column;
  background: transparent;
  border: 0;
  padding: 0;
  gap: 18px;
  color: #002D51;
  width: 100%;
}

/* Image */
.pick-estates .oo-listimage {
  display: block;
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #E0E1E3;
  border-radius: 0;
  margin: 0;
  line-height: 0;
  text-decoration: none;
}
.pick-estates .oo-picture { width: 100%; height: 100%; display: block; }
.pick-estates .oo-responsive-image,
.pick-estates .oo-picture img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
  transition: transform 1s cubic-bezier(.22,.61,.36,1);
  border-radius: 0 !important;
}
.pick-estates .oo-listobjectwrap:hover .oo-responsive-image { transform: scale(1.04); }

/* "Zu verkaufen" beige tag overlay */
.pick-estates .oo-listimage.estate-status::before {
  content: 'Zu verkaufen';
  position: absolute;
  top: 14px;
  left: 14px;
  background: #DAD2BC;
  color: #09243B;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 8px 14px;
  z-index: 2;
  font-family: 'Figtree', sans-serif;
}

/* Info block */
.pick-estates .oo-listinfo {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 0;
}
.pick-estates .oo-listtitle {
  font-family: 'Figtree', sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: #002D51;
  margin: 0;
}

/* Data table — restyle to look like our .prop-card__stats */
.pick-estates .oo-listinfotable {
  display: grid;
  grid-template-columns: minmax(130px, auto) 1fr;
  gap: 10px 16px;
  padding: 14px 0 0;
  margin: 0;
  border-top: 1px solid rgba(0,45,81,0.10);
  width: 100%;
}
.pick-estates .oo-listtd {
  font-family: 'Figtree', sans-serif;
  font-size: 14px;
  line-height: 1.4;
  color: #002D51;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
.pick-estates .oo-listtd:nth-child(odd) {
  color: #8B7B66;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 11px;
  align-self: center;
  line-height: 1.3;
}
.pick-estates .oo-listtd:nth-child(even) {
  color: #002D51;
  font-weight: 500;
  text-align: right;
}

/* Highlight the LAST row (price) */
.pick-estates .oo-listinfotable .oo-listtd:nth-last-child(2),
.pick-estates .oo-listinfotable .oo-listtd:last-child {
  padding-top: 10px;
  margin-top: 6px;
  border-top: 1px solid rgba(0,45,81,0.08);
}
.pick-estates .oo-listinfotable .oo-listtd:last-child {
  color: #002D51;
  font-size: 18px;
  font-weight: 400;
}

/* Show Details button — match our .btn navy */
.pick-estates .oo-listobjectwrap a[href*="property-detail"]:last-child,
.pick-estates .oo-listobjectwrap input[type="button"],
.pick-estates .oo-listobjectwrap input[type="submit"],
.pick-estates .oo-listobjectwrap button:not(.oo-listheadline-button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 22px !important;
  background: #002D51 !important;
  color: #FFFFFF !important;
  font-family: 'Figtree', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  cursor: pointer;
  margin-top: 8px;
  transition: background .25s;
}
.pick-estates .oo-listobjectwrap a[href*="property-detail"]:last-child:hover,
.pick-estates .oo-listobjectwrap button:hover { background: #003E6F !important; }

/* Pagination */
.pick-estates .oo-pagination,
.pick-estates ul.page-numbers {
  list-style: none;
  display: flex;
  gap: 8px;
  justify-content: center;
  margin: 64px 0 0;
  padding: 0;
}
.pick-estates .oo-pagination a,
.pick-estates .oo-pagination span,
.pick-estates .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  border: 1px solid rgba(0,45,81,0.12);
  background: transparent;
  color: #002D51;
  font-family: 'Figtree', sans-serif;
  font-size: 14px;
  text-decoration: none;
  border-radius: 0;
  transition: background .2s, color .2s;
}
.pick-estates .oo-pagination a:hover,
.pick-estates .page-numbers:hover,
.pick-estates .page-numbers.current {
  background: #002D51;
  color: #FFFFFF;
}

/* ===== DETAIL VIEW (onOffice's [oo_estate_detail] shortcode) ===== */

/* Layout: 2-column main + sidebar on desktop */
.oo-detailview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 56px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 32px 0 64px;
  font-family: 'Figtree', sans-serif;
  color: #002D51;
}
@media (max-width: 980px) {
  .oo-detailview { grid-template-columns: 1fr; gap: 32px; }
}

/* Headline */
.oo-detailview .oo-detailsheadline {
  grid-column: 1 / -1;
  margin: 0 0 8px;
}
.oo-detailview .oo-detailsheadline h1,
.oo-detailview h1 {
  font-family: 'Figtree', sans-serif;
  font-size: clamp(32px, 4vw, 56px);
  font-weight: 300;
  letter-spacing: -0.022em;
  color: #002D51;
  line-height: 1.08;
  margin: 0;
  max-width: 28ch;
}

/* Main column — override plugin's explicit width */
.oo-detailview .oo-details-main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column;
  gap: 40px;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hero image — override plugin's 0 width */
.oo-detailview .oo-detailspicture {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
  background: #E0E1E3;
  position: relative;
}
.oo-detailview .oo-detailspicture .oo-picture,
.oo-detailview .oo-detailspicture img {
  width: 100% !important;
  height: auto !important;
  display: block;
  border-radius: 0 !important;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
/* Hide the zShare badge that overlays the image */
.oo-detailview .oo-detailspicture [class*="zShare"],
.oo-detailview .oo-detailspicture [id*="zShare"],
.oo-detailview .oo-detailspicture .zshare,
.oo-detailview img[src*="zshare"] { display: none !important; }

/* Gallery slider (slick.js) — DON'T touch layout, slick controls it via JS */
.oo-detailview .oo-detailsgallery {
  margin: 0;
  padding: 0;
  list-style: none;
}
.oo-detailview .oo-detailsgallery img { border-radius: 0; }

/* Slick navigation arrows — rectangular navy */
.oo-detailview .slick-prev,
.oo-detailview .slick-next {
  background: rgba(0, 45, 81, 0.85) !important;
  color: #FFFFFF !important;
  border-radius: 0 !important;
  border: 0 !important;
  width: 44px !important;
  height: 44px !important;
  z-index: 5;
}
.oo-detailview .slick-prev:hover,
.oo-detailview .slick-next:hover {
  background: #002D51 !important;
}
.oo-detailview .slick-prev::before,
.oo-detailview .slick-next::before {
  color: #FFFFFF !important;
  font-size: 18px !important;
  opacity: 1 !important;
}
.oo-detailview .slick-dots li button::before {
  color: #002D51 !important;
  opacity: .3 !important;
}
.oo-detailview .slick-dots li.slick-active button::before {
  opacity: 1 !important;
}

/* Data table (rendered as <dl>) — grid layout */
.oo-detailview .oo-detailstable {
  display: grid;
  grid-template-columns: minmax(140px, max-content) 1fr;
  column-gap: 32px;
  row-gap: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(0,45,81,0.12);
}
.oo-detailview .oo-detailstable dt,
.oo-detailview .oo-detailstable .oo-details-fact__label {
  font-family: 'Figtree', sans-serif;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8B7B66;
  font-weight: 500;
  padding: 18px 0;
  margin: 0;
  border-bottom: 1px solid rgba(0,45,81,0.08);
  align-self: center;
  line-height: 1.3;
}
.oo-detailview .oo-detailstable dd,
.oo-detailview .oo-detailstable .oo-details-fact__value {
  font-family: 'Figtree', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #002D51;
  padding: 18px 0;
  margin: 0;
  border-bottom: 1px solid rgba(0,45,81,0.08);
  text-align: right;
  align-self: center;
  line-height: 1.4;
}

/* Description / free-text section */
.oo-detailview .oo-detailsfreetext {
  font-family: 'Figtree', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #2A3845;
}
.oo-detailview .oo-detailsfreetext h2 {
  font-family: 'Figtree', sans-serif;
  font-size: 28px;
  font-weight: 400;
  color: #002D51;
  margin: 0 0 18px;
  letter-spacing: -0.01em;
}
.oo-detailview .oo-detailsfreetext p { margin: 0 0 16px; }

/* Sidebar — contact card. Override plugin's explicit width */
.oo-detailview .oo-details-sidebar {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  display: block !important;
  align-self: start;
  position: sticky;
  top: 100px;
  padding: 0 !important;
  margin: 0 !important;
}
.oo-detailview .oo-details-sidebar .oo-asp {
  background: #E8E2CF;
  padding: 32px;
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.oo-detailview .oo-details-sidebar h2 {
  font-family: 'Figtree', sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8B7B66;
  margin: 0 0 8px;
}
.oo-detailview .oo-aspinfo-wrapper {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.oo-detailview .oo-aspinfo,
.oo-detailview .oo-contact-info {
  font-family: 'Figtree', sans-serif;
  font-size: 15px;
  line-height: 1.55;
  color: #002D51;
  margin: 0;
  padding: 0;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  display: block !important;
}
.oo-detailview .oo-aspinfo p {
  margin: 0;
}
.oo-detailview .oo-aspinfo a {
  color: #002D51;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.oo-detailview .oo-aspinfo a:hover { color: #003E6F; }

/* Field labels on contact info (Telefon1, Email…) — small taupe */
.oo-detailview .oo-aspinfo .oo-field-label,
.oo-detailview .oo-field-label {
  display: block;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8B7B66;
  font-weight: 500;
  margin-top: 10px;
  margin-bottom: 2px;
}

/* Slider arrows on hero image — make them rectangular & navy */
.oo-detailview .oo-detailspicture button,
.oo-detailview .oo-detailspicture [class*="arrow"],
.oo-detailview .oo-detailspicture [class*="nav"] {
  border-radius: 0 !important;
  background: rgba(0, 45, 81, 0.85) !important;
  color: #FFFFFF !important;
  border: 0 !important;
}

/* =================================================================
   .pick-card__* — output of functions.php JS that restructures
   each .oo-listobjectwrap into prototype prop-card layout.
================================================================== */
.pick-estates .oo-listinfo:has(.pick-card__head) {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0;
}
.pick-estates .pick-card__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
}
.pick-estates .pick-card__title-block {
  flex: 1;
  min-width: 0;
}
.pick-estates .pick-card__title {
  font-family: 'Figtree', sans-serif;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25;
  color: #002D51;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.pick-estates .pick-card__loc {
  font-family: 'Figtree', sans-serif;
  font-size: 14px;
  color: #5B6066;
  margin-top: 6px;
  font-weight: 400;
}
.pick-estates .pick-card__price {
  font-family: 'Figtree', sans-serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: -0.01em;
  color: #002D51;
  white-space: nowrap;
  align-self: flex-start;
}
.pick-estates .pick-card__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 22px;
  padding-top: 14px;
  border-top: 1px solid rgba(0,45,81,0.10);
  font-family: 'Figtree', sans-serif;
  font-size: 13px;
  color: #5B6066;
  letter-spacing: 0.02em;
}
.pick-estates .pick-card__stat {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
.pick-estates .pick-card__stat svg {
  width: 16px;
  height: 16px;
  flex: none;
  color: #8B7B66;
}

/* Hide the bottom "Show Details" button + old data table when restructure ran */
.pick-estates .oo-listobjectwrap[data-pick-done] .oo-listinfotable,
.pick-estates .oo-listobjectwrap[data-pick-done] a[href*="property-detail"]:not(.oo-listimage),
.pick-estates .oo-listobjectwrap[data-pick-done] input[type="button"],
.pick-estates .oo-listobjectwrap[data-pick-done] input[type="submit"],
.pick-estates .oo-listobjectwrap[data-pick-done] button:not(.oo-listheadline-button) {
  display: none !important;
}

/* Hide the old listtitle (replaced by pick-card__title) when restructure ran */
.pick-estates .oo-listobjectwrap[data-pick-done] > .oo-listinfo > .oo-listtitle {
  display: none !important;
}

/* ============================================
   PICK DETAIL VIEW — META + SPECS STRIP
   Injected dynamically by functions.php JS
   ============================================ */
.oo-detailview .pick-detail-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 18px 28px;
  margin-top: 14px;
  font-family: var(--font-display, 'Figtree'), system-ui, sans-serif;
}
.oo-detailview .pick-detail-meta__city {
  font-size: 18px;
  color: var(--gray-600, #5a6873);
  font-weight: 400;
  letter-spacing: 0.02em;
  position: relative;
}
.oo-detailview .pick-detail-meta__city::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 14px;
  background: rgba(14,26,34,0.18);
  margin-left: 24px;
  vertical-align: middle;
}
.oo-detailview .pick-detail-meta__price {
  font-size: clamp(22px, 2.2vw, 30px);
  color: var(--navy-900, #002D51);
  font-weight: 500;
  letter-spacing: -0.01em;
}

/* SPECS STRIP — horizontal cells under gallery */
.oo-detailview .pick-specs-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 0;
  margin: clamp(28px, 4vw, 48px) 0 clamp(20px, 3vw, 36px);
  padding: 0;
  border-top: 1px solid rgba(14,26,34,0.12);
  border-bottom: 1px solid rgba(14,26,34,0.12);
}
.oo-detailview .pick-specs-strip__cell {
  padding: 22px 18px;
  text-align: left;
  border-right: 1px solid rgba(14,26,34,0.08);
  background: transparent;
}
.oo-detailview .pick-specs-strip__cell:last-child {
  border-right: none;
}
.oo-detailview .pick-specs-strip__label {
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gray-600, #5a6873);
  font-weight: 600;
  margin-bottom: 8px;
  font-family: var(--font-display, 'Figtree'), system-ui, sans-serif;
}
.oo-detailview .pick-specs-strip__value {
  font-size: 17px;
  color: var(--navy-900, #002D51);
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.25;
}

/* Hide redundant fields after they've been bubbled up into specs strip / meta */
.oo-detailview .oo-detailstable dt,
.oo-detailview .oo-detailstable dd {
  /* keep table visible but improve spacing */
}

/* Make headline area roomier */
.oo-detailview .oo-detailsheadline {
  margin-bottom: clamp(24px, 3vw, 40px);
}

/* Better section heading style */
.oo-detailview h2 {
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 400;
  color: var(--navy-900, #002D51);
  letter-spacing: -0.01em;
  margin-top: clamp(40px, 5vw, 60px);
  margin-bottom: clamp(16px, 2vw, 24px);
}

/* Polish the contact box (Ihr Ansprechpartner) */
.oo-detailview .oo-aspinfo,
.oo-detailview .oo-contact-info {
  background: var(--beige-200, #DAD2BC);
  padding: clamp(24px, 3vw, 36px);
  border: none;
  border-radius: 0;
}
.oo-detailview .oo-aspinfo h3,
.oo-detailview .oo-contact-info h3,
.oo-detailview .oo-aspinfo > span:first-child,
.oo-detailview .oo-contact-info > span:first-child {
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gray-600, #5a6873);
  font-weight: 600;
  margin-bottom: 18px;
  display: block;
}

/* ============= P.I.C.K. detail redesign — APPENDED ============= */
/* =====================================================================
   P.I.C.K. — onOffice DETAIL VIEW full redesign
   Matches the prototype immobilie.html — top-tier real-estate UX
   ===================================================================== */

/* Hide old onOffice DOM once we have rebuilt */
.oo-detailview[data-pick-rebuilt="1"] > .oo-detailsheadline,
.oo-detailview[data-pick-rebuilt="1"] > .oo-details-main,
.oo-detailview[data-pick-rebuilt="1"] > .oo-aspinfo,
.oo-detailview[data-pick-rebuilt="1"] > .oo-contact-info {
  display: none !important;
}

/* Root wrapper */
.pick-detail {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(40px, 5vw, 80px) clamp(20px, 3vw, 40px) clamp(80px, 8vw, 120px);
  font-family: 'Figtree', system-ui, -apple-system, sans-serif;
  color: #0E1A22;
}

/* BREADCRUMB */
.pick-detail__crumb {
  font-size: 12px;
  letter-spacing: 0.04em;
  color: #5a6873;
  margin-bottom: clamp(20px, 2.4vw, 32px);
}
.pick-detail__crumb a { color: inherit; text-decoration: none; transition: color 0.2s; }
.pick-detail__crumb a:hover { color: #002D51; }
.pick-detail__crumb span { margin: 0 8px; opacity: 0.4; }
.pick-detail__crumb strong { color: #002D51; font-weight: 500; }

/* ===== GALLERY MOSAIC ===== */
.pick-detail__gallery {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 8px;
  margin-bottom: clamp(40px, 5vw, 64px);
  height: clamp(360px, 50vw, 560px);
}
.pick-detail__gallery-main,
.pick-detail__gallery-cell {
  border: 0; padding: 0; margin: 0;
  background: #DAD2BC;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  display: block;
}
.pick-detail__gallery-main img,
.pick-detail__gallery-cell img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.pick-detail__gallery-main:hover img,
.pick-detail__gallery-cell:hover img { transform: scale(1.04); }
.pick-detail__gallery-side {
  display: grid;
  grid-template-rows: 1fr 1fr 1fr;
  gap: 8px;
}
.pick-detail__gallery-cell--more::after {
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,45,81,0.65);
  z-index: 1;
}
.pick-detail__gallery-more-overlay {
  position: absolute; inset: 0;
  z-index: 2;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  color: #fff;
  font-size: 11px; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase;
  gap: 10px;
  pointer-events: none;
}

/* ===== HEADER: title + price ON LEFT, contact form ON RIGHT ===== */
.pick-detail__head {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: clamp(40px, 5vw, 80px);
  margin-bottom: clamp(60px, 7vw, 100px);
  align-items: start;
}
.pick-detail__eyebrow {
  font-size: 11px;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: #5a6873;
  font-weight: 600;
  margin-bottom: 20px;
}
.pick-detail__title {
  font-size: clamp(32px, 4.2vw, 56px);
  line-height: 1.08;
  letter-spacing: -0.025em;
  color: #002D51;
  font-weight: 300;
  margin: 0 0 24px;
}
.pick-detail__price {
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 400;
  color: #002D51;
  letter-spacing: -0.015em;
  margin-bottom: 28px;
}
.pick-detail__lede {
  font-size: 16px;
  line-height: 1.65;
  color: #5a6873;
  max-width: 58ch;
}

/* ===== CONTACT FORM BOX (white card) ===== */
.pick-detail__form {
  background: #fff;
  border: 1px solid rgba(14,26,34,0.10);
  padding: clamp(28px, 3.2vw, 40px) clamp(24px, 2.8vw, 36px);
  position: sticky; top: 110px;
}
.pick-detail__agent {
  display: flex; gap: 14px; align-items: center;
  padding-bottom: 22px;
  margin-bottom: 22px;
  border-bottom: 1px solid rgba(14,26,34,0.08);
}
.pick-detail__agent-avatar {
  width: 52px; height: 52px;
  background: #DAD2BC;
  color: #8B7B66;
  display: flex; align-items: center; justify-content: center;
  flex: none;
}
.pick-detail__agent-name {
  font-weight: 500; color: #002D51; font-size: 15px;
}
.pick-detail__agent-role {
  font-size: 12px; color: #5a6873;
  margin-top: 3px;
}
.pick-detail__contact-form {
  display: flex; flex-direction: column; gap: 12px;
  margin: 0;
}
.pick-detail__contact-form input,
.pick-detail__contact-form textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 14px 16px;
  border: 1px solid rgba(14,26,34,0.14);
  background: #fafafa;
  font-family: inherit; font-size: 14px;
  color: #002D51;
  border-radius: 0;
  outline: none;
  transition: border-color 0.2s, background 0.2s;
}
.pick-detail__contact-form input::placeholder,
.pick-detail__contact-form textarea::placeholder {
  color: #8B95A0;
}
.pick-detail__contact-form input:focus,
.pick-detail__contact-form textarea:focus {
  border-color: #002D51;
  background: #fff;
}
.pick-detail__contact-form textarea {
  resize: vertical; min-height: 110px;
  font-family: inherit;
}
.pick-detail__cta {
  background: #002D51;
  color: #fff;
  border: 0;
  padding: 16px 22px;
  font: inherit;
  font-size: 11px; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase;
  cursor: pointer;
  margin-top: 6px;
  display: flex; align-items: center; justify-content: space-between;
  transition: background 0.2s;
}
.pick-detail__cta:hover { background: #001a31; }
.pick-detail__phone {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(14,26,34,0.08);
  font-size: 13px;
  text-align: center;
}
.pick-detail__phone-lbl {
  display: inline-block;
  font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase;
  color: #5a6873; margin-right: 10px;
}
.pick-detail__phone a {
  color: #002D51; font-weight: 500; text-decoration: none;
}

/* ===== SPECS — 8 cells in 4×2 grid ===== */
.pick-detail__specs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(14,26,34,0.14);
  border-bottom: 1px solid rgba(14,26,34,0.14);
  margin-bottom: clamp(60px, 7vw, 100px);
}
.pick-detail__spec {
  padding: 26px 22px;
  border-right: 1px solid rgba(14,26,34,0.08);
  border-bottom: 1px solid rgba(14,26,34,0.08);
}
.pick-detail__spec:nth-child(4n) { border-right: 0; }
.pick-detail__spec:nth-last-child(-n+4) { border-bottom: 0; }
.pick-detail__spec-lbl {
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a6873;
  font-weight: 600;
  margin-bottom: 12px;
}
.pick-detail__spec-val {
  font-size: 17px;
  color: #002D51;
  font-weight: 500;
  letter-spacing: -0.005em;
}

/* ===== SECTIONS (Description, Lage, etc.) ===== */
.pick-detail__section {
  margin-bottom: clamp(70px, 8vw, 110px);
}
.pick-detail__section-eyebrow {
  font-size: 11px;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: #8B7B66;
  font-weight: 600;
  margin-bottom: 22px;
}
.pick-detail__section-grid {
  display: grid;
  grid-template-columns: 1.1fr 1.6fr;
  gap: clamp(40px, 5vw, 80px);
  align-items: start;
}
.pick-detail__section-title {
  font-size: clamp(26px, 2.8vw, 38px);
  line-height: 1.15;
  letter-spacing: -0.018em;
  color: #002D51;
  font-weight: 300;
  margin: 0;
}
.pick-detail__section-body {
  font-size: 15px;
  line-height: 1.78;
  color: #3a4853;
}
.pick-detail__section-body p { margin: 0 0 1.1em; }
.pick-detail__section-body strong { color: #002D51; font-weight: 500; }

/* ===== FEATURES (Ausstattung) grid ===== */
.pick-detail__features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(14,26,34,0.08);
  gap: 0 clamp(20px, 3vw, 40px);
}
.pick-detail__feature {
  display: flex; align-items: center; gap: 12px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(14,26,34,0.08);
  font-size: 14px;
  color: #002D51;
  font-weight: 400;
}
.pick-detail__feature svg {
  color: #8B7B66;
  flex: none;
}

/* ===== LAGE (Location) ===== */
.pick-detail__lage-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(40px, 5vw, 80px);
  align-items: start;
}
.pick-detail__lage-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: clamp(28px, 3vw, 40px);
  border-top: 1px solid rgba(14,26,34,0.08);
}
.pick-detail__lage-stats > div {
  padding: 18px 0;
  border-bottom: 1px solid rgba(14,26,34,0.08);
}
.pick-detail__lage-stats > div:nth-child(odd) { padding-right: 20px; }
.pick-detail__lage-stats span {
  display: block;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a6873;
  font-weight: 600;
  margin-bottom: 6px;
}
.pick-detail__lage-stats strong {
  font-size: 15px;
  color: #002D51;
  font-weight: 500;
}
.pick-detail__lage-img {
  background: #DAD2BC;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.pick-detail__lage-img img {
  width: 100%; height: 100%; object-fit: cover;
}

/* ===== LIGHTBOX ===== */
.pick-detail__lb {
  position: fixed; inset: 0;
  background: rgba(0,18,35,0.96);
  z-index: 9999;
  display: none;
  align-items: center; justify-content: center;
}
.pick-detail__lb.is-open { display: flex; }
body.pick-lb-open { overflow: hidden; }
.pick-detail__lb-img {
  max-width: 90vw; max-height: 84vh;
  object-fit: contain;
  user-select: none;
}
.pick-detail__lb-close,
.pick-detail__lb-prev,
.pick-detail__lb-next {
  position: absolute;
  background: none;
  border: 1px solid rgba(255,255,255,0.25);
  color: #fff; cursor: pointer;
  width: 52px; height: 52px;
  display: flex; align-items: center; justify-content: center;
  transition: background 0.2s, border-color 0.2s;
  font-family: inherit;
}
.pick-detail__lb-close:hover,
.pick-detail__lb-prev:hover,
.pick-detail__lb-next:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.45);
}
.pick-detail__lb-close { top: 28px; right: 28px; font-size: 24px; line-height: 1; }
.pick-detail__lb-prev { left: 28px; top: 50%; transform: translateY(-50%); font-size: 28px; }
.pick-detail__lb-next { right: 28px; top: 50%; transform: translateY(-50%); font-size: 28px; }
.pick-detail__lb-count {
  position: absolute; bottom: 28px; left: 50%; transform: translateX(-50%);
  color: rgba(255,255,255,0.7);
  font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
}

/* ===== MOBILE ===== */
@media (max-width: 960px) {
  .pick-detail__gallery {
    grid-template-columns: 1fr;
    height: auto;
    aspect-ratio: 4/3;
  }
  .pick-detail__gallery-side { display: none; }
  .pick-detail__head {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  .pick-detail__form { position: static; }
  .pick-detail__specs {
    grid-template-columns: repeat(2, 1fr);
  }
  .pick-detail__spec:nth-child(2n) { border-right: 0; }
  .pick-detail__spec:nth-child(4n) { border-right: 1px solid rgba(14,26,34,0.08); }
  .pick-detail__spec:nth-last-child(-n+4) { border-bottom: 1px solid rgba(14,26,34,0.08); }
  .pick-detail__spec:nth-last-child(-n+2) { border-bottom: 0; }
  .pick-detail__section-grid,
  .pick-detail__lage-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .pick-detail__features-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 560px) {
  .pick-detail__features-grid { grid-template-columns: 1fr; }
}

/* ============= PICK DETAIL — root override ============= */
.oo-detailview[data-pick-rebuilt="1"] {
  display: block !important;
  grid-template-columns: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
}
.oo-detailview[data-pick-rebuilt="1"] > .oo-details-sidebar,
.oo-detailview[data-pick-rebuilt="1"] > .oo-aspinfo,
.oo-detailview[data-pick-rebuilt="1"] > .oo-contact-info,
.oo-detailview[data-pick-rebuilt="1"] > .oo-detailsheadline,
.oo-detailview[data-pick-rebuilt="1"] > .oo-details-main {
  display: none !important;
}
.oo-detailview[data-pick-rebuilt="1"] > .pick-detail {
  display: block !important;
  grid-column: 1 / -1 !important;
}
.elementor-shortcode:has(.oo-detailview[data-pick-rebuilt="1"]) {
  max-width: none !important;
}

/* ============= PICK FILTER BAR — list page ============= */
/* =====================================================================
   P.I.C.K. — onOffice list filter bar styles
   ===================================================================== */
.pick-filter-bar {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 0.8fr 1fr auto;
  gap: 1px;
  background: rgba(14,26,34,0.10);
  border: 1px solid rgba(14,26,34,0.10);
  margin-bottom: 24px;
  align-items: stretch;
}
.pick-filter-bar__field {
  background: #fff;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  position: relative;
}
.pick-filter-bar__label {
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #5a6873;
  font-weight: 600;
}
.pick-filter-bar__field input,
.pick-filter-bar__field select {
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: 15px;
  color: #002D51;
  font-weight: 500;
  padding: 0;
  margin: 0;
  outline: none;
  cursor: pointer;
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23002D51' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  padding-right: 22px;
}
.pick-filter-bar__field input {
  background-image: none;
  padding-right: 0;
  cursor: text;
}
.pick-filter-bar__field input::placeholder {
  color: #8B95A0;
  font-weight: 400;
}
.pick-filter-bar__field select:focus,
.pick-filter-bar__field input:focus {
  outline: none;
}
.pick-filter-bar__cta {
  background: #002D51;
  color: #fff;
  border: 0;
  padding: 0 32px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: background 0.2s;
}
.pick-filter-bar__cta:hover { background: #001a31; }

/* List toolbar */
.list-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  border-top: 1px solid rgba(14,26,34,0.08);
  border-bottom: 1px solid rgba(14,26,34,0.08);
  font-size: 14px;
  color: #5a6873;
  margin-bottom: 40px;
}
.list-toolbar #pf-count {
  font-weight: 600;
  color: #002D51;
}
.pick-sort-select {
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: 14px;
  color: #002D51;
  font-weight: 500;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  padding-right: 18px;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23002D51' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
}
.view-toggle {
  display: flex;
  gap: 18px;
  font-size: 13px;
}
.view-toggle a {
  color: #5a6873;
  text-decoration: none;
  padding: 4px 0;
  border-bottom: 2px solid transparent;
}
.view-toggle a.is-on {
  color: #002D51;
  border-bottom-color: #002D51;
  font-weight: 500;
}

/* Grid view (3-up) */
.pick-estates .oo-listframe.pick-view--grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
}

/* Mobile */
@media (max-width: 1100px) {
  .pick-filter-bar {
    grid-template-columns: 1fr 1fr;
    gap: 1px;
  }
  .pick-filter-bar__cta { grid-column: 1 / -1; padding: 16px; justify-content: center; }
}
@media (max-width: 640px) {
  .pick-filter-bar { grid-template-columns: 1fr; }
  .list-toolbar { flex-direction: column; gap: 12px; align-items: flex-start; }
  .pick-estates .oo-listframe.pick-view--grid { grid-template-columns: 1fr !important; }
}

/* ============= DETAIL — fix sticky form overlap ============= */
.pick-detail__form {
  position: static !important;  /* drop sticky to avoid overlap */
}

/* ============= PICK FILTER BAR — match prototype style v2 ============= */
.pick-filter-bar {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) auto !important;
  gap: 16px !important;
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 0 !important;
  align-items: stretch;
}
.pick-filter-bar__field {
  background: #fff !important;
  border: 1px solid rgba(14,26,34,0.10) !important;
  padding: 16px 22px !important;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.pick-filter-bar__label {
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase;
  color: #8B7B66 !important;
  font-weight: 500 !important;
  margin-bottom: 0 !important;
}
.pick-filter-bar__field select {
  font-size: 15px !important;
  color: #002D51 !important;
  font-weight: 400 !important;
  padding: 0 !important;
  padding-right: 22px !important;
  border: 0 !important;
  background: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23002D51' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  width: 100%;
}
.pick-filter-bar__cta {
  background: #002D51 !important;
  color: #fff !important;
  padding: 0 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase;
  border: 0 !important;
  border-radius: 0;
  cursor: pointer;
  min-height: 78px;
}
.pick-filter-bar__cta:hover { background: #001a31 !important; }

/* List toolbar — match prototype text layout */
.list-toolbar {
  padding: 24px 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(14,26,34,0.10) !important;
  margin-top: 32px !important;
  margin-bottom: 48px !important;
}

/* ============= PICK SIMILAR (Ähnliche Objekte) ============= */
.pick-similar {
  margin-top: clamp(60px, 7vw, 100px);
}
.pick-similar__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 48px;
  gap: 20px;
  flex-wrap: wrap;
}
.pick-similar__head h2 {
  margin: 14px 0 0 !important;
  font-size: clamp(26px, 2.8vw, 38px) !important;
  font-weight: 300 !important;
  color: #002D51 !important;
  letter-spacing: -0.015em;
  line-height: 1.15;
}
.pick-similar__head .pick-link {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase;
  color: #002D51; text-decoration: none; font-weight: 500;
  border-bottom: 1px solid #002D51;
  padding-bottom: 4px;
}
.pick-similar__head .pick-link:hover { color: #001a31; }
.pick-similar__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2.5vw, 36px);
}
.pick-similar-card {
  text-decoration: none; color: inherit;
  display: flex; flex-direction: column;
  background: #fff;
  transition: transform 0.3s ease;
}
.pick-similar-card:hover { transform: translateY(-3px); }
.pick-similar-card__media {
  aspect-ratio: 4/3;
  background: #DAD2BC;
  overflow: hidden;
  position: relative;
}
.pick-similar-card__media img {
  width: 100%; height: 100%; object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.pick-similar-card:hover .pick-similar-card__media img { transform: scale(1.04); }
.pick-similar-card__tag {
  position: absolute; top: 18px; left: 18px;
  background: rgba(255,255,255,0.92);
  color: #002D51;
  font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600;
  padding: 6px 10px; z-index: 2;
}
.pick-similar-card__head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding: 18px 0 4px;
  gap: 16px;
}
.pick-similar-card__title {
  font-size: 16px; color: #002D51; font-weight: 500;
  letter-spacing: -0.005em;
  line-height: 1.25;
}
.pick-similar-card__loc {
  font-size: 13px; color: #5a6873; margin-top: 4px;
}
.pick-similar-card__price {
  font-size: 16px; color: #002D51; font-weight: 500;
  white-space: nowrap;
}
.pick-similar-card__stats {
  display: flex; gap: 16px; padding: 10px 0 4px;
  font-size: 12px; color: #5a6873;
  border-top: 1px solid rgba(14,26,34,0.08);
  margin-top: 6px;
  padding-top: 14px;
}
@media (max-width: 960px) {
  .pick-similar__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .pick-similar__grid { grid-template-columns: 1fr; }
}

/* ============= POLISH v3 — beige bg + premium typography ============= */
.oo-detailview[data-pick-rebuilt="1"] {
  background: #F5EFE3 !important;
  width: 100% !important;
  max-width: none !important;
}
.oo-detailview[data-pick-rebuilt="1"] > .pick-detail { background: #F5EFE3; }
.elementor-shortcode:has(.oo-detailview[data-pick-rebuilt="1"]) { background: #F5EFE3 !important; }
body.single-estate, body[class*="property-detail"] { background: #F5EFE3 !important; }
.pick-detail__title {
  font-size: clamp(36px, 4.6vw, 60px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.03em !important;
  font-weight: 300 !important;
  color: #002D51 !important;
  margin: 0 0 28px !important;
  max-width: 22ch;
}
.pick-detail__price {
  font-size: clamp(28px, 3.2vw, 44px) !important;
  font-weight: 400 !important;
  color: #002D51 !important;
  margin-bottom: 32px !important;
}
.pick-detail__form {
  background: #fff !important;
  box-shadow: 0 1px 0 rgba(14,26,34,0.04), 0 30px 60px -30px rgba(14,26,34,0.18) !important;
  border: 0 !important;
  padding: clamp(32px, 3.4vw, 44px) clamp(28px, 3vw, 40px) !important;
}
.pick-detail__specs {
  background: #fff;
  border: 1px solid rgba(14,26,34,0.10) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  margin-bottom: clamp(70px, 8vw, 110px) !important;
}
.pick-detail__spec { padding: 30px 24px !important; }
.pick-detail__section-eyebrow {
  color: #002D51 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.20em !important;
}
.pick-detail__section-title {
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1.12 !important;
  font-weight: 300 !important;
  color: #002D51 !important;
  max-width: 18ch;
}
.pick-detail__section-body {
  font-size: 16px !important;
  line-height: 1.78 !important;
  color: #2A3741 !important;
}
.pick-detail__features-grid {
  background: #fff;
  border-top: 1px solid rgba(14,26,34,0.10) !important;
  margin-top: 8px;
}
.pick-detail__feature { padding: 22px 24px !important; font-size: 15px !important; }
.pick-detail__feature svg { color: #8B7B66 !important; width: 18px !important; height: 18px !important; }
.pick-detail__lage-img {
  box-shadow: 0 1px 0 rgba(14,26,34,0.04), 0 30px 60px -30px rgba(14,26,34,0.18);
}
.pick-detail__lage-stats {
  background: #fff;
  padding: 8px 24px;
  margin-top: clamp(32px, 4vw, 48px) !important;
}
.pick-detail__lage-stats > div { padding: 22px 0 !important; }
.pick-similar {
  background: #fff;
  padding: clamp(56px, 6vw, 96px) clamp(20px, 3vw, 40px) !important;
  margin-top: clamp(60px, 7vw, 100px) !important;
}
.pick-similar__head h2 {
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 300 !important;
  color: #002D51 !important;
}
.pick-similar-card { background: #fff !important; }
.pick-similar-card__media { background: #DAD2BC; aspect-ratio: 4/3; }
.pick-similar-card__title { font-size: 16px !important; font-weight: 500 !important; color: #002D51 !important; line-height: 1.3; }
.pick-similar-card__price { font-size: 16px !important; font-weight: 500 !important; color: #002D51 !important; }
.pick-similar-card__stats { border-top: 1px solid rgba(14,26,34,0.10) !important; padding: 14px 4px 0 !important; margin-top: 8px !important; color: #5a6873; font-size: 12px; }
.pick-detail__gallery-main, .pick-detail__gallery-cell { background: #E8DFCB !important; }

/* ============= POLISH v4 — fix gaps, gallery height, card hover ============= */
/* Remove huge empty top space — make page-hero tight */
.oo-detailview[data-pick-rebuilt="1"] {
  padding: 0 !important;
  margin: 0 !important;
}
.oo-detailview[data-pick-rebuilt="1"] > .pick-detail {
  padding-top: 32px !important;
  padding-bottom: 80px !important;
}

/* Constrain gallery height — must NEVER overlap form */
.pick-detail__gallery {
  height: clamp(420px, 48vw, 580px) !important;
  margin-bottom: 56px !important;
  overflow: hidden;
}

/* Make sure head section is a true 2-col with proper z-index */
.pick-detail__head {
  position: relative;
  z-index: 5;
  display: grid !important;
  grid-template-columns: 1.4fr 1fr !important;
  gap: clamp(40px, 5vw, 80px) !important;
  align-items: start;
  margin-bottom: 80px !important;
}
.pick-detail__head-left {
  min-width: 0;
}
.pick-detail__form {
  position: relative;
  z-index: 10;
  margin-top: -120px !important;
}

/* Gallery z-index lower so it can't cover form */
.pick-detail__gallery {
  position: relative;
  z-index: 1 !important;
}
.pick-detail__gallery-cell--more {
  z-index: 1 !important;
}
.pick-detail__gallery-cell--more::after,
.pick-detail__gallery-more-overlay {
  z-index: 2 !important;
}

/* Strong title for THIS property — make sure h1 is huge */
.oo-detailview .pick-detail__title,
.pick-detail .pick-detail__title {
  font-size: clamp(38px, 5vw, 64px) !important;
  line-height: 1.02 !important;
  font-weight: 300 !important;
  color: #002D51 !important;
  margin: 0 0 24px !important;
  max-width: 18ch;
  display: block !important;
}

/* Breadcrumb tighter */
.pick-detail__crumb {
  margin-bottom: 24px !important;
  padding-top: 0 !important;
}

/* ============= LISTING CARD POLISH — premium feel ============= */
.pick-estates .oo-listobjectwrap {
  background: #fff !important;
  border-radius: 0 !important;
  padding: 0 !important;
  transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.35s ease !important;
  box-shadow: 0 1px 0 rgba(14,26,34,0.04), 0 14px 30px -18px rgba(14,26,34,0.10);
}
.pick-estates .oo-listobjectwrap:hover {
  transform: translateY(-4px);
  box-shadow: 0 1px 0 rgba(14,26,34,0.04), 0 30px 50px -20px rgba(14,26,34,0.22);
}
.pick-estates .oo-listobjectwrap .pick-card__head {
  padding: 22px 24px 6px !important;
}
.pick-estates .oo-listobjectwrap .pick-card__title {
  font-size: 17px !important;
  font-weight: 500 !important;
  letter-spacing: -0.008em !important;
  line-height: 1.28 !important;
}
.pick-estates .oo-listobjectwrap .pick-card__loc {
  padding: 0 24px !important;
  font-size: 13px !important;
  color: #5a6873 !important;
  margin-top: 4px !important;
}
.pick-estates .oo-listobjectwrap .pick-card__price {
  font-size: 17px !important;
  font-weight: 500 !important;
  color: #002D51 !important;
  white-space: nowrap;
}
.pick-estates .oo-listobjectwrap .pick-card__stats {
  border-top: 1px solid rgba(14,26,34,0.08) !important;
  margin-top: 20px !important;
  padding: 18px 24px !important;
  gap: 18px !important;
}
.pick-estates .oo-listobjectwrap .pick-card__stat {
  font-size: 13px !important;
  color: #5a6873 !important;
  font-weight: 400 !important;
  gap: 6px !important;
}
.pick-estates .oo-listobjectwrap .pick-card__stat svg {
  color: #8B7B66 !important;
  width: 16px !important;
  height: 16px !important;
}
/* Image hover-zoom */
.pick-estates .oo-listobjectwrap .oo-listimage,
.pick-estates .oo-listobjectwrap .oo-picture {
  overflow: hidden;
}
.pick-estates .oo-listobjectwrap .oo-listimage img,
.pick-estates .oo-listobjectwrap .oo-picture img,
.pick-estates .oo-listobjectwrap .oo-responsive-image img {
  transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}
.pick-estates .oo-listobjectwrap:hover .oo-listimage img,
.pick-estates .oo-listobjectwrap:hover .oo-picture img,
.pick-estates .oo-listobjectwrap:hover .oo-responsive-image img {
  transform: scale(1.05) !important;
}

/* ZU VERKAUFEN tag refined */
.pick-estates .estate-status {
  background: rgba(255,255,255,0.95) !important;
  color: #002D51 !important;
  font-size: 10px !important;
  letter-spacing: 0.18em !important;
  font-weight: 600 !important;
  padding: 8px 12px !important;
  border-radius: 0 !important;
}

/* Mobile fix — stack head on small screens, no negative top on form */
@media (max-width: 960px) {
  .pick-detail__head { grid-template-columns: 1fr !important; }
  .pick-detail__form { margin-top: 0 !important; }
  .pick-detail__gallery { height: clamp(280px, 60vw, 420px) !important; }
}


/* ============= PICK SLIDER — always-visible arrows on listing cards ============= */
/* High specificity to beat:
   .pick-estates .oo-listobjectwrap[data-pick-done] button:not(.oo-listheadline-button) { display: none !important; }
   which hides ALL buttons in cards. */
.pick-estates .oo-listobjectwrap[data-pick-done] .pick-slider .pick-slider__btn,
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn--prev,
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn--next {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.96) !important;
  color: #002D51 !important;
  border: 0 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(14,26,34,0.22) !important;
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 8 !important;
  transition: background 0.2s, color 0.2s, transform 0.2s !important;
  padding: 0 !important;
  margin: 0 !important;
}
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn--prev { left: 14px !important; right: auto !important; }
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn--next { right: 14px !important; left: auto !important; }
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn:hover {
  background: #002D51 !important;
  color: #fff !important;
  transform: translateY(-50%) scale(1.08) !important;
}
.pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn svg { width: 22px !important; height: 22px !important; }
.pick-estates .oo-listobjectwrap .pick-slider__dots { opacity: 1 !important; }
.pick-estates .oo-listobjectwrap .pick-slider__dot {
  background: rgba(255,255,255,0.65) !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.4) !important;
}
.pick-estates .oo-listobjectwrap .pick-slider__dot.is-on { background: #fff !important; }
.pick-estates .oo-listobjectwrap .pick-slider__counter {
  background: rgba(14,26,34,0.78) !important;
  color: #fff !important;
  padding: 5px 11px !important;
  border-radius: 12px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  opacity: 1 !important;
}
@media (max-width: 640px) {
  .pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn { width: 36px !important; height: 36px !important; }
  .pick-estates .oo-listobjectwrap .pick-slider .pick-slider__btn svg { width: 18px !important; height: 18px !important; }
}


/* ============= PICK DETAIL — full-width hero v5 (no white, restored CTA) ============= */
/* Make the gallery break out of the content container and span full viewport width.
   Keep head grid + form below the gallery. Kill every white background.
   Restore the "Alle N Fotos ansehen" CTA via a CSS-injected pseudo-button. */

/* Outer detailview: pure beige page, no padding */
.oo-detailview[data-pick-rebuilt="1"] {
  background: #F5EFE3 !important;
  padding: 0 !important;
}

/* Gallery — full viewport width via 100vw trick */
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  margin-top: 0 !important;
  margin-bottom: 64px !important;
  height: clamp(420px, 56vw, 720px) !important;
  display: grid !important;
  grid-template-columns: 2fr 1fr !important;
  gap: 8px !important;
  background: #F5EFE3 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  position: relative !important;
}

.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-main {
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #F5EFE3 !important;
  cursor: zoom-in !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-main img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-side {
  display: grid !important;
  grid-template-rows: 1fr 1fr !important;
  gap: 8px !important;
  width: 100% !important;
  height: 100% !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-cell {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #F5EFE3 !important;
  position: relative !important;
  cursor: zoom-in !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-cell img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* "Alle N Fotos ansehen" overlay CTA — pinned bottom-right of main image */
/* Auto-attached by JS via .pick-detail__gallery-cta — styled here */
.pick-detail__gallery-cta {
  position: absolute !important;
  right: 24px !important;
  bottom: 24px !important;
  z-index: 5 !important;
  background: rgba(14,26,34,0.9) !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  padding: 14px 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: background 0.2s, transform 0.2s !important;
  box-shadow: 0 12px 28px rgba(14,26,34,0.3) !important;
  pointer-events: auto !important;
}
.pick-detail__gallery-cta:hover {
  background: #002D51 !important;
  transform: translateY(-2px) !important;
}
.pick-detail__gallery-cta svg {
  width: 16px !important;
  height: 16px !important;
}

/* Form area — kill white, blend into beige page with a thin navy border */
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form-card,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form .estate-form {
  background: #F5EFE3 !important;
  box-shadow: none !important;
  border: 1px solid rgba(0,45,81,0.18) !important;
  border-radius: 0 !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form input,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form textarea,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form select {
  background: #FFFDF8 !important;
  border: 1px solid rgba(0,45,81,0.18) !important;
  color: #002D51 !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form input::placeholder,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form textarea::placeholder {
  color: #7c8794 !important;
}

/* Sweep any remaining white panels inside the detail view */
.oo-detailview[data-pick-rebuilt="1"] [class*="card"]:not(.pick-card),
.oo-detailview[data-pick-rebuilt="1"] [class*="panel"],
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__facts,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__section,
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__features {
  background: transparent !important;
  background-color: transparent !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__facts {
  border-top: 1px solid rgba(0,45,81,0.14) !important;
  border-bottom: 1px solid rgba(0,45,81,0.14) !important;
}

/* Head grid sits below gallery — adjust form positioning so it lives within grid, not overlapping */
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__head {
  margin-top: 0 !important;
}
.oo-detailview[data-pick-rebuilt="1"] .pick-detail__form {
  margin-top: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

/* Mobile */
@media (max-width: 960px) {
  .oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery {
    grid-template-columns: 1fr !important;
    height: clamp(280px, 70vw, 480px) !important;
    margin-bottom: 32px !important;
  }
  .oo-detailview[data-pick-rebuilt="1"] .pick-detail__gallery-side { display: none !important; }
  .pick-detail__gallery-cta {
    right: 14px !important;
    bottom: 14px !important;
    padding: 10px 14px !important;
    font-size: 10px !important;
  }
}


/* ============= PICK DETAIL v6 — seamless beige (no card edges, broader selectors) ============= */
/* Drop the [data-pick-rebuilt="1"] requirement — apply to all .oo-detailview instances */

.oo-detailview {
  background: #F5EFE3 !important;
}

/* Form: no border, no shadow — completely blend into beige page */
.oo-detailview .pick-detail__form,
.oo-detailview .pick-detail__form-card,
.oo-detailview .pick-detail__contact-form {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Input fields — slightly translucent so they read as form controls but stay warm */
.oo-detailview .pick-detail__form input,
.oo-detailview .pick-detail__form textarea,
.oo-detailview .pick-detail__form select,
.oo-detailview .pick-detail__contact-form input,
.oo-detailview .pick-detail__contact-form textarea,
.oo-detailview .pick-detail__contact-form select {
  background: rgba(255,255,255,0.55) !important;
  border: 1px solid rgba(0,45,81,0.18) !important;
  color: #002D51 !important;
  border-radius: 0 !important;
  padding: 14px 16px !important;
}

.oo-detailview .pick-detail__form input::placeholder,
.oo-detailview .pick-detail__form textarea::placeholder,
.oo-detailview .pick-detail__contact-form input::placeholder,
.oo-detailview .pick-detail__contact-form textarea::placeholder {
  color: #7c8794 !important;
}

/* Agent block — borderless, beige */
.oo-detailview .pick-detail__agent {
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin-bottom: 24px !important;
}

/* Page-hero band — kill any leftover white panels */
.oo-detailview,
.oo-detailview .pick-detail,
.oo-detailview .pick-detail__head {
  background: #F5EFE3 !important;
}

/* Hide page-hero / heading section that creates empty top space */
body.single-property-detail .page-hero,
body.single-property-detail .page-header,
body.single-property-detail .entry-header,
.oo-detailview > .pick-detail > .page-hero,
.oo-detailview > .pick-detail > .page-header { display: none !important; }


/* ============= PICK DETAIL v7 — kill card outline (high specificity over v5) ============= */
html body .oo-detailview[data-pick-rebuilt="1"] .pick-detail__form,
html body .oo-detailview .pick-detail__form,
html body .oo-detailview[data-pick-rebuilt="1"] aside.pick-detail__form,
html body .oo-detailview aside.pick-detail__form {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 0 0 40px !important;
}
html body .oo-detailview .pick-detail__form input,
html body .oo-detailview .pick-detail__form textarea,
html body .oo-detailview .pick-detail__form select {
  background: rgba(255,255,255,0.55) !important;
  border: 1px solid rgba(0,45,81,0.22) !important;
  color: #002D51 !important;
  border-radius: 0 !important;
}
html body .oo-detailview .pick-detail__agent-avatar {
  background: rgba(0,45,81,0.08) !important;
  border-radius: 0 !important;
}
/* Mobile: kill the extra left padding */
@media (max-width: 960px) {
  html body .oo-detailview .pick-detail__form,
  html body .oo-detailview[data-pick-rebuilt="1"] .pick-detail__form {
    padding: 24px 0 0 0 !important;
  }
}


/* ============= PICK DETAIL v8 — kill body white + tighten top + fix pill ============= */

/* 1. Kill the off-white body bg globally so 100vw breakouts don't expose it */
html, body { background: #F5EFE3 !important; }
body.single-property-detail,
body.page-id-740,
body[class*="single-property-detail"] { background: #F5EFE3 !important; }

/* Also nuke any Elementor body/wrap whites */
.elementor,
.elementor-page,
.elementor-section,
.elementor-container,
.elementor-element,
.e-con,
.e-con-full,
.e-flex { background: transparent !important; background-color: transparent !important; }

/* 2. Tighten top gap — remove Elementor's vertical padding on the property-detail container */
.elementor-element.e-con-full.e-flex {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  --padding-top: 0 !important;
  --padding-bottom: 0 !important;
}
.elementor-shortcode { padding: 0 !important; margin: 0 !important; }

/* The .oo-detailsheadline (eyebrow with "Start › Zu verkaufen…") is the breadcrumb section */
.oo-detailview .oo-detailsheadline,
.oo-detailview .pick-detail__breadcrumb {
  padding: 20px 4vw 16px !important;
  margin: 0 !important;
  background: #F5EFE3 !important;
}

/* 3. Gallery — shorter, better proportions */
html body .oo-detailview .pick-detail__gallery {
  height: clamp(380px, 42vw, 560px) !important;
  margin-top: 0 !important;
  margin-bottom: 48px !important;
}

/* 4. The "Alle N Fotos ansehen" pill — anchor it to the MAIN (big left) image */
.pick-detail__gallery-cta {
  /* Override the previous bottom/right (which was relative to the whole grid)
     and pin to the main image instead. */
  position: absolute !important;
  right: auto !important;
  bottom: 28px !important;
  left: 28px !important;
  z-index: 6 !important;
}

/* If the main image (.pick-detail__gallery-main) is position:relative we should
   ideally attach the pill to it. But since we inject the pill as a child of
   .pick-detail__gallery (grid container), use grid-column to keep it in the
   left column area: */
.pick-detail__gallery {
  position: relative !important;
}
.pick-detail__gallery > .pick-detail__gallery-cta {
  /* Sit at bottom-left of the LEFT (main image) column, not bottom-right of grid */
  left: 28px !important;
  right: auto !important;
}

/* Mobile: smaller pill, sit at bottom centre-ish */
@media (max-width: 960px) {
  .pick-detail__gallery-cta {
    left: 14px !important;
    bottom: 14px !important;
    padding: 10px 14px !important;
    font-size: 10px !important;
  }
}

/* Make the side column thumbnails maintain reasonable aspect (don't crop weirdly) */
html body .oo-detailview .pick-detail__gallery-side {
  grid-template-rows: 1fr 1fr !important;
  min-height: 0 !important;
}

/* Single column on tablet+narrower viewports */
@media (max-width: 1100px) {
  html body .oo-detailview .pick-detail__gallery {
    grid-template-columns: 1fr !important;
    height: clamp(280px, 60vw, 480px) !important;
  }
  html body .oo-detailview .pick-detail__gallery-side { display: none !important; }
}


/* ============= PICK DETAIL v9 — hide duplicate +N overlay ============= */
/* The original onOffice cell-CTA renders a "+37 Fotos ansehen" overlay on
   the last side thumbnail; my new bottom-left pill on the main image is the
   canonical CTA, so hide the overlay text but keep the underlying image. */
.pick-detail__gallery-more-overlay,
.pick-detail__gallery-cell--more::after,
.pick-detail__gallery-cell--more .pick-detail__gallery-more-count,
.pick-detail__gallery-cell--more .pick-detail__gallery-more-label {
  display: none !important;
}
/* Reset the dim-overlay effect that .pick-detail__gallery-cell--more applies */
.pick-detail__gallery-cell--more img {
  filter: none !important;
  opacity: 1 !important;
}
.pick-detail__gallery-cell--more::before {
  display: none !important;
  background: transparent !important;
}
/* Make sure the cell is still clickable and looks normal */
.pick-detail__gallery-cell--more {
  background: transparent !important;
}


/* ============= PICK DETAIL v10 — equal side cells (1fr per row, override fixed heights) ============= */
/* Right column has 3 cells (2 regular + 1 --more). Force equal distribution
   so no thumb is squashed to 33px. */
html body .oo-detailview .pick-detail__gallery-side {
  display: grid !important;
  grid-template-rows: 1fr 1fr 1fr !important;
  grid-auto-rows: 1fr !important;
  gap: 8px !important;
  height: 100% !important;
  min-height: 0 !important;
}
html body .oo-detailview .pick-detail__gallery-side > .pick-detail__gallery-cell,
html body .oo-detailview .pick-detail__gallery-side > .pick-detail__gallery-cell--more {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  width: 100% !important;
  overflow: hidden !important;
}
html body .oo-detailview .pick-detail__gallery-side > .pick-detail__gallery-cell img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}


/* ============= PICK DETAIL v11 — full-cover navy overlay on last thumbnail ============= */
/* The "Alle 79 Fotos ansehen" CTA is now injected INSIDE .pick-detail__gallery-cell--more.
   Style it as a full-cover semi-transparent navy overlay with centered white text. */
html body .oo-detailview .pick-detail__gallery-cell--more {
  position: relative !important;
  overflow: hidden !important;
}
html body .oo-detailview .pick-detail__gallery-cell--more > .pick-detail__gallery-cta {
  /* Reset previous "pill" positioning — go full-cover */
  position: absolute !important;
  inset: 0 !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  background: rgba(0, 45, 81, 0.68) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  z-index: 4 !important;
  box-shadow: none !important;
  text-align: center !important;
  line-height: 1.3 !important;
  transition: background 0.25s ease !important;
  backdrop-filter: saturate(115%) !important;
}
html body .oo-detailview .pick-detail__gallery-cell--more > .pick-detail__gallery-cta:hover {
  background: rgba(0, 45, 81, 0.85) !important;
  transform: none !important;
}
html body .oo-detailview .pick-detail__gallery-cell--more > .pick-detail__gallery-cta svg {
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  stroke-width: 1.8 !important;
}

/* Hide the small bottom-left pill instance (when CTA still sits at gallery level on pages where the --more cell wasn't found) — only the cell-level CTA should show. */
html body .oo-detailview .pick-detail__gallery > .pick-detail__gallery-cta {
  /* This style only applies to direct child of gallery (the OLD position).
     Inject targets the cell now, so this fallback stays subtle but visible. */
  position: absolute !important;
  left: 28px !important;
  bottom: 28px !important;
  background: rgba(14,26,34,0.9) !important;
  padding: 12px 18px !important;
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
}

/* Mobile: the overlay sits at the bottom 35% of the main image (since side column hides) */
@media (max-width: 1100px) {
  html body .oo-detailview .pick-detail__gallery > .pick-detail__gallery-cta,
  html body .oo-detailview .pick-detail__gallery-main > .pick-detail__gallery-cta {
    position: absolute !important;
    inset: auto 12px 12px auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    background: rgba(0,45,81,0.85) !important;
    padding: 10px 14px !important;
    font-size: 11px !important;
    flex-direction: row !important;
    gap: 8px !important;
  }
  html body .oo-detailview .pick-detail__gallery > .pick-detail__gallery-cta svg,
  html body .oo-detailview .pick-detail__gallery-main > .pick-detail__gallery-cta svg {
    width: 16px !important;
    height: 16px !important;
  }
}


/* ============= PICK DETAIL v12 — best-in-class hierarchy ============= */
/* Price-first dominant hierarchy (like Zillow/Idealista/ImmoScout24):
   eyebrow → PRICE (huge) → €/m² → title → key-fact pills → lede → description */

html body .oo-detailview .pick-detail__head-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

html body .oo-detailview .pick-detail__eyebrow {
  order: 1 !important;
  margin-bottom: 16px !important;
  font-size: 12px !important;
  letter-spacing: 0.22em !important;
  color: #5a6873 !important;
}

html body .oo-detailview .pick-detail__price {
  order: 2 !important;
  font-size: clamp(48px, 6.5vw, 88px) !important;
  font-weight: 800 !important;
  color: #002D51 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}

html body .oo-detailview .pick-detail__price-pps {
  order: 3 !important;
  font-size: 13px !important;
  color: #5a6873 !important;
  letter-spacing: 0.04em !important;
  margin: 0 0 28px 0 !important;
  font-weight: 500 !important;
}

html body .oo-detailview .pick-detail__title {
  order: 4 !important;
  font-size: clamp(22px, 2.8vw, 34px) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin: 0 0 28px 0 !important;
  color: #002D51 !important;
  letter-spacing: -0.005em !important;
}

html body .oo-detailview .pick-detail__keyfacts {
  order: 5 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  gap: 18px 28px !important;
  padding: 24px 0 !important;
  border-top: 1px solid rgba(0,45,81,0.14) !important;
  border-bottom: 1px solid rgba(0,45,81,0.14) !important;
  margin: 0 0 32px 0 !important;
  list-style: none !important;
}
html body .oo-detailview .pick-detail__keyfact {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: transparent !important;
  border: 0 !important;
}
html body .oo-detailview .pick-detail__keyfact-icon {
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #002D51 !important;
  background: rgba(0,45,81,0.06) !important;
  border-radius: 0 !important;
  flex: 0 0 44px !important;
}
html body .oo-detailview .pick-detail__keyfact-icon svg {
  width: 26px !important;
  height: 26px !important;
  display: block !important;
}
html body .oo-detailview .pick-detail__keyfact-data {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 0 !important;
}
html body .oo-detailview .pick-detail__keyfact-value {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #002D51 !important;
  line-height: 1.1 !important;
  font-family: inherit !important;
}
html body .oo-detailview .pick-detail__keyfact-label {
  font-size: 10px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #7c8794 !important;
  font-weight: 600 !important;
}

html body .oo-detailview .pick-detail__lede {
  order: 6 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  color: #3a4654 !important;
  margin-top: 0 !important;
}

/* Polish the legacy facts <dl> further down on the page */
html body .oo-detailview .oo-detailstable {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  margin: 32px 0 !important;
}
html body .oo-detailview .oo-detailstable dt {
  padding: 14px 0 !important;
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #7c8794 !important;
  font-weight: 600 !important;
  border-bottom: 1px solid rgba(0,45,81,0.1) !important;
  margin: 0 !important;
}
html body .oo-detailview .oo-detailstable dd {
  padding: 14px 0 !important;
  font-size: 15px !important;
  color: #002D51 !important;
  font-weight: 500 !important;
  border-bottom: 1px solid rgba(0,45,81,0.1) !important;
  margin: 0 !important;
  text-align: right !important;
}

/* Mobile */
@media (max-width: 720px) {
  html body .oo-detailview .pick-detail__price { font-size: clamp(38px, 12vw, 56px) !important; }
  html body .oo-detailview .pick-detail__title { font-size: 20px !important; }
  html body .oo-detailview .pick-detail__keyfacts { grid-template-columns: 1fr 1fr !important; gap: 14px !important; }
}


/* ============= PICK DETAIL v13 — calmer price + hide pill dupes ============= */
/* Reduce price size (88px was too aggressive) */
html body .oo-detailview .pick-detail__price {
  font-size: clamp(40px, 4vw, 60px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
}
html body .oo-detailview .pick-detail__price-pps {
  font-size: 12px !important;
  margin-bottom: 24px !important;
}
html body .oo-detailview .pick-detail__title {
  font-size: clamp(20px, 2.4vw, 30px) !important;
  margin-bottom: 24px !important;
}

/* Mark dt/dd pairs that JS flags as duplicates (already in keyfacts pills) */
html body .oo-detailview .oo-detailstable dt[data-pick-dup="1"],
html body .oo-detailview .oo-detailstable dd[data-pick-dup="1"] {
  display: none !important;
}

/* If the table becomes empty / 1-row after dedupe, give it nice top border-only */
html body .oo-detailview .oo-detailstable {
  margin-top: 24px !important;
}


/* ============= PICK DETAIL v14 — hide legacy .pick-detail__specs row ============= */
/* The original theme renders a .pick-detail__specs section with 4 cells
   (Wohnfläche, Grundstück, Schlafzimmer, Badezimmer) — duplicates the new
   .pick-detail__keyfacts pill row injected above. Hide the legacy one. */
html body .oo-detailview .pick-detail__specs {
  display: none !important;
}


/* ============= PICK DETAIL v15 — calm price + spotlight polish ============= */
/* Even more discreet price size */
html body .oo-detailview .pick-detail__price {
  font-size: clamp(30px, 2.6vw, 42px) !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}
html body .oo-detailview .pick-detail__price-pps {
  font-size: 11px !important;
  margin-bottom: 24px !important;
}
html body .oo-detailview .pick-detail__title {
  font-size: clamp(20px, 2.2vw, 28px) !important;
}

/* Spotlight-card: make it look interactive (hover lift) once wired with real data */
.spotlight-card a, a.spotlight-card,
.spotlight-card[data-pick-wired="1"] {
  cursor: pointer;
  display: block;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.spotlight-card[data-pick-wired="1"]:hover {
  transform: translateY(-4px);
  box-shadow: 0 30px 60px -25px rgba(14,26,34,0.32);
}
.spotlight-card[data-pick-wired="1"] img {
  transition: transform 0.6s ease;
}
.spotlight-card[data-pick-wired="1"]:hover img {
  transform: scale(1.02);
}


/* ============= PICK v17 — single logo + final price + similar slider ============= */

/* 1. Logo: only show the blue variant. Hide compact + white so only ONE logo renders */
html body .pick-logo .pick-logo__img--compact,
html body .pick-logo .pick-logo__img--white,
html body .pick-logo img.pick-logo__img--compact,
html body .pick-logo img.pick-logo__img--white {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  position: absolute !important;
  pointer-events: none !important;
}
html body .pick-logo .pick-logo__img--blue {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* Footer/dark backgrounds: switch the blue logo to the white variant via filter */
html body .site-footer .pick-logo .pick-logo__img--blue {
  filter: brightness(0) invert(1) !important;
}

/* 2. Final price — calm, refined */
html body .oo-detailview .pick-detail__price {
  font-size: clamp(26px, 2vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin-bottom: 4px !important;
}
html body .oo-detailview .pick-detail__price-pps {
  font-size: 11px !important;
  margin-bottom: 20px !important;
}

/* 3. Similar-properties section ("Vielleicht auch interessant") — apply slider styles
   so any oo-listobjectwrap inside that section renders the same way. The JS slider already
   targets .oo-listobjectwrap; we just need to make sure the layout supports it. */
.pick-similar .oo-listobjectwrap,
.similar-section .oo-listobjectwrap,
section.pick-detail__similar .oo-listobjectwrap {
  position: relative;
  overflow: hidden;
}


/* ============= PICK v19 — price unbolded + no dots + footer full-width ============= */

/* 1. Price: regular weight (no bold) */
html body .oo-detailview .pick-detail__price {
  font-weight: 500 !important;
}

/* 2. Hide dot indicators on all slider previews */
html body .pick-slider__dots,
html body .oo-listobjectwrap .pick-slider__dots,
html body .pick-similar-card__media .pick-slider__dots {
  display: none !important;
}

/* 3. Site footer: full-viewport width on every page (including homepage) */
html body .site-footer {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  box-sizing: border-box !important;
}
/* Keep the inner content of the footer constrained to its own container--wide */
html body .site-footer > .container,
html body .site-footer > .container--wide {
  margin-left: auto !important;
  margin-right: auto !important;
}


/* ============= PICK v20 — homepage full-width sections + perf slider ============= */
/* Break out every homepage section that's constrained by the Elementor wrapper. */
html body section.spotlight,
html body section.process,
html body section.vorteile,
html body section.team,
html body section.testimonials,
html body section.estimation,
html body section.faq,
html body section.insta-feed,
html body section.leistungen,
html body section.intro,
html body section.usps,
html body section.listings-section {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  box-sizing: border-box !important;
}
/* Keep inner content of these sections constrained to their internal container */
html body section.spotlight > .container,
html body section.process > .container,
html body section.vorteile > .container,
html body section.team > .container,
html body section.testimonials > .container,
html body section.estimation > .container,
html body section.faq > .container,
html body section.insta-feed > .container,
html body section.leistungen > .container,
html body section.intro > .container,
html body section.usps > .container,
html body section.listings-section > .container,
html body section.spotlight > .container--wide,
html body section.process > .container--wide,
html body section.vorteile > .container--wide,
html body section.team > .container--wide,
html body section.testimonials > .container--wide,
html body section.estimation > .container--wide,
html body section.faq > .container--wide,
html body section.insta-feed > .container--wide,
html body section.leistungen > .container--wide,
html body section.intro > .container--wide,
html body section.usps > .container--wide,
html body section.listings-section > .container--wide {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Remove the trailing empty gap at the very bottom of the homepage */
html body .elementor.elementor-740 > .elementor-element.e-con-full:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/* ============= PICK v21 — restore hero logo + kill footer gaps ============= */

/* OVERRIDE v17's blanket logo hiding — restore native theme behavior:
   Homepage: --white at top, --blue when scrolled
   Other pages: --blue at top, --compact when scrolled
   Hide --compact only on homepage (the source of "PICK | PICK" doubling). */
html body.home .site-header .pick-logo__img--blue { display: none !important; }
html body.home .site-header .pick-logo__img--white { display: block !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: 58px !important; position: static !important; pointer-events: auto !important; }
html body.home .site-header.is-scrolled .pick-logo__img--white { display: none !important; }
html body.home .site-header.is-scrolled .pick-logo__img--blue { display: block !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: 36px !important; position: static !important; pointer-events: auto !important; }
html body.home .site-header .pick-logo__img--compact,
html body.home .site-header.is-scrolled .pick-logo__img--compact { display: none !important; }

/* Non-home pages: --blue at top, --compact when scrolled */
html body:not(.home) .site-header .pick-logo__img--blue { display: block !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: 60px !important; position: static !important; pointer-events: auto !important; }
html body:not(.home) .site-header .pick-logo__img--white,
html body:not(.home) .site-header .pick-logo__img--compact { display: none !important; }
html body:not(.home) .site-header.is-scrolled .pick-logo__img--blue { display: none !important; }
html body:not(.home) .site-header.is-scrolled .pick-logo__img--compact { display: block !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: 38px !important; position: static !important; pointer-events: auto !important; }

/* Footer (already there): white logo shown in dark footer */
html body .site-footer .pick-logo__img--blue { display: none !important; }
html body .site-footer .pick-logo__img--white { display: block !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: 72px !important; position: static !important; pointer-events: auto !important; filter: none !important; }

/* ----- FOOTER GAPS ----- */
/* Kill the 140px margin-top gap above footer */
html body .site-footer { margin-top: 0 !important; }

/* Kill the 131px gap below footer */
html body .elementor.elementor-740 > .e-con-full:last-child,
html body .elementor-740 > .e-con-full:last-child,
html body .elementor-shortcode + *:not(.site-footer):empty,
html body .site-footer + * { margin: 0 !important; padding: 0 !important; }
html body, html { padding-bottom: 0 !important; margin-bottom: 0 !important; }
/* Stretch footer to bottom if there's leftover space */
html body { display: flex; flex-direction: column; min-height: 100vh; }
html body .site-footer { margin-top: auto; }


/* ============= PICK v22 — kill leistungen padding-bottom (footer gap source) ============= */
/* Section .leistungen wraps the footer and has padding-bottom: 132px causing
   the beige strip below the navy footer. Eliminate it. */
html body section.leistungen {
  padding-bottom: 0 !important;
}

/* Belt-and-suspenders: also kill any padding/margin on the leistungen children that could create trailing space */
html body section.leistungen > .container--wide,
html body section.leistungen > .container {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}


/* ============= PICK v23 — footer white logo super-specific override ============= */
/* Hard force the white logo visible in the navy footer on EVERY page */
html body footer.site-footer .pick-logo .pick-logo__img--white,
html body footer.site-footer .pick-logo img.pick-logo__img--white,
html body .site-footer .pick-logo .pick-logo__img--white,
html body .site-footer .pick-logo img.pick-logo__img--white {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: auto !important;
  height: 72px !important;
  position: static !important;
  pointer-events: auto !important;
  filter: none !important;
  margin: 0 0 8px 0 !important;
}
html body footer.site-footer .pick-logo .pick-logo__img--blue,
html body .site-footer .pick-logo .pick-logo__img--blue {
  display: none !important;
}
/* Make sure the logo wrapper itself is visible/sized */
html body .site-footer .pick-logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  opacity: 1 !important;
}


/* ============= PICK v24 — compact footer copyright row ============= */
/* Override v17's flex space-between which spreads bottom row items.
   Use centered inline flow so © ... ECOM LUX reads as one tight line. */
html body .site-footer .site-footer__bottom {
  display: block !important;
  text-align: center !important;
  padding-top: 32px !important;
  font-size: 13px !important;
  color: rgba(248, 245, 236, 0.6) !important;
}
html body .site-footer .site-footer__bottom .site-footer__copy {
  display: inline-block;
}
html body .site-footer .site-footer__bottom a {
  color: rgba(248, 245, 236, 0.85);
  text-decoration: none;
  transition: color 0.2s;
}
html body .site-footer .site-footer__bottom a:hover {
  color: #fff;
  text-decoration: underline;
}
html body .site-footer .site-footer__bottom .site-footer__sep {
  margin: 0 6px;
  opacity: 0.5;
}
@media (max-width: 720px) {
  html body .site-footer .site-footer__bottom {
    font-size: 12px !important;
    line-height: 1.6 !important;
  }
}


/* ============= PICK v25 — feedback round 1 (Kunde) ============= */

/* (a) Beige Farbpalette: heller, klarer, grauer — weniger gelb */
:root {
  --paper:       #FAF8F4 !important;
  --paper-2:     #F2EFE8 !important;
  --paper-3:     #E8E4DA !important;
  --beige:       #F2EFE8 !important;
  --beige-2:     #ECE7DB !important;
  --beige-3:     #DCD5C5 !important;
  --taupe-500:   #BFB7A6 !important;
  --taupe-700:   #8E8675 !important;
}
html, body { background: #FAF8F4 !important; }
body.home .site-header { background: rgba(250, 248, 244, 0.96) !important; }
section.usps, section.listings-section, section.process, section.team, section.faq, section.insta-feed {
  background: #FAF8F4 !important;
}
section.leistungen, section.vorteile {
  background: #ECE7DB !important;
}
section.spotlight, section.estimation { background: #DCD5C5 !important; }
section.testimonials { background: #ECE7DB !important; }

/* (b) Logo beim Scrollen kompakt — Icon + "PICK", Untertext "IMMOBILIEN GMBH" weglassen.
   Wir blenden auf der Scroll-State und auf der Homepage-Scrolled die untere Zeile per filter / clip-path aus.
   Alternativ: --compact als bevorzugte Scroll-Variante. */
html body .site-header.is-scrolled .pick-logo__img--blue,
html body .site-header.is-scrolled .pick-logo__img--white {
  display: none !important;
}
html body .site-header.is-scrolled .pick-logo__img--compact {
  display: block !important;
  height: 32px !important;
  width: auto !important;
}
/* Auf Homepage: at-top weiterhin --white groß; scroll = compact */
html body.home .site-header.is-scrolled .pick-logo__img--compact {
  display: block !important;
  height: 32px !important;
}

/* (c) Wertsteigerung "Wort" größer darstellen */
html body section.leistungen .eyebrow,
html body section.leistungen [class*="eyebrow"] {
  font-size: 13px !important;
  letter-spacing: 0.22em !important;
}
/* H3 in Wertsteigerung-Block größer */
html body section.leistungen h3 {
  font-size: clamp(36px, 4vw, 56px) !important;
  font-weight: 300 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.02em !important;
  margin-top: 22px !important;
  max-width: 18ch !important;
}


/* ============= PICK v26 — revert homepage at-top header to original ============= */
/* v25 hat den Hintergrund der Startseiten-Headerleiste auf hellbeige gesetzt.
   Das war kein Feedback-Punkt — Kunde wollte den Header oben unverändert.
   Wir setzen ihn wieder transparent (theme default). */
html body.home .site-header {
  background: transparent !important;
}
/* Beim Scrollen bleibt es bei der Theme-eigenen scrolled-Variante */
html body.home .site-header.is-scrolled {
  background: rgba(250, 248, 244, 0.96) !important;
}
