/*!
 * Liventra – site-specific CSS (migrated out of the database).
 *
 * Originally maintained in the Site Editor under "Additional styles"
 * (wp_global_styles, post 11) and rendered inline via global-styles-inline-css.
 * Moved here so it is versioned and deployable. Transitional: the lv-* rules
 * are removed step by step as their sections become webux/* blocks.
 *
 * Loaded on the frontend (handle: webux-site) and in the editor
 * (add_editor_style). Do not edit "Additional styles" in the Site Editor anymore.
 */

/* ===== Liventra – Design-System-Feinschliff (lv-*) ===== */

/* Montserrat-Fix: Theme lädt nur das latin-ext-Subset ohne unicode-range,
   dadurch fallen Basisbuchstaben auf den Systemfont zurück.
   Diese später definierten Faces mit korrekten Ranges gewinnen. */
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Headings: Semibold statt Bold (Montserrat DS) */
h1, h2, h3, h4, h5, h6 { font-weight: 600; }

/* Buttons: Pill-Form, Medium */
.wp-element-button, .wp-block-button__link {
  border-radius: 999px;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0.16px;
  line-height: 1;
  padding: 18px 30px;
}
.wp-block-button.is-style-outline .wp-element-button,
.wp-block-button.is-style-outline--2 .wp-element-button {
  background: transparent;
  border: 1px solid #d8d2c7;
  color: #1a1a1a;
  padding: 17px 29px;
}
.wp-block-button.is-style-outline .wp-element-button:hover {
  background: rgba(26, 26, 26, 0.04);
  color: #1a1a1a;
}
.lv-btn-sm .wp-element-button { font-size: 14px; letter-spacing: 0.14px; padding: 11px 18px; }
.lv-btn-md .wp-element-button { font-size: 15px; letter-spacing: 0.15px; padding: 14px 24px; }
.lv-btn-md.is-style-outline .wp-element-button { padding: 14px 25px; }

/* ===== Layout-Fixes: Sektionen bündig, kein Theme-Group-Padding im Header ===== */
main.wp-block-group { margin-block-start: 0; }
.entry-content { margin-block-start: 0; }
.entry-content > * { margin-block-start: 0; }

/* ===== Header ===== */
.lv-header { border-bottom: 1px solid var(--wp--preset--color--border); padding-top: 0 !important; padding-bottom: 0 !important; }
.lv-header .lv-header-inner { min-height: 76px; }
.lv-logo { display: inline-flex; align-items: center; line-height: 0; }
.lv-logo svg { width: 141px; height: 30px; display: block; }
.lv-nav { display: flex; gap: 32px; align-items: center; }
.lv-nav a {
  font-size: 15px;
  font-weight: 500;
  color: #403d3a;
  text-decoration: none;
  white-space: nowrap;
}
.lv-nav a:hover { color: #1a1a1a; }

/* ===== Typo-Bausteine ===== */
.lv-eyebrow {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.82px;
  text-transform: uppercase;
  color: var(--wp--preset--color--primary);
  line-height: 1.2;
  margin: 0;
}
.lv-lead { font-size: 18px; line-height: 1.65; color: #6b6661; max-width: 480px; }

/* ===== Hero ===== */
.lv-hero { border-bottom: 1px solid var(--wp--preset--color--border); }
.lv-hero-left { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; justify-content: center; }
.lv-hero-left > * { margin: 0 !important; }
.lv-hero-title {
  font-size: 64px;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -1.28px;
  color: #1a1a1a;
}
.lv-hero-cta { gap: 14px; }
.lv-hero-stats {
  display: flex !important;
  gap: 28px;
  padding-top: 16px;
}
.lv-hero-stats .webux-stat { align-items: flex-start; text-align: left; gap: 4px; position: relative; }
.lv-hero-stats .webux-stat + .webux-stat { padding-left: 29px; }
.lv-hero-stats .webux-stat + .webux-stat::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 40px;
  background: #d8d2c7;
}
.lv-hero-stats .webux-stat__value {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.22px;
  line-height: 1.25;
  color: #1a1a1a;
}
.lv-hero-stats .webux-stat__label { font-size: 14px; color: #8a847d; line-height: 1.5; }

.lv-hero-media { position: relative; width: 480px; max-width: 100%; margin-left: auto; }
.lv-hero-media figure { margin: 0; }
.lv-hero-media img {
  width: 480px;
  height: 600px;
  object-fit: cover;
  border-radius: 24px;
  display: block;
}
/* "Neu im Angebot" is a wx-apify list rendering the newest object into a
   webux/property-card (block CSS loads because the block is present). The list
   wrappers must not create a box, so the float card anchors to .lv-hero-media
   (position:relative) exactly like the former static card. */
.lv-hero-media .wxa-list,
.lv-hero-media .wxa-card,
.lv-hero-media .wxa-output { display: contents; }
.lv-hero-card {
  position: absolute;
  left: 24px;
  bottom: 24px;
  width: 280px;
  background: #fff;
  border-radius: 16px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  box-shadow: 0 16px 48px rgba(26, 26, 26, 0.1), 0 2px 6px rgba(26, 26, 26, 0.06);
}
.lv-hero-card p { margin: 0 !important; }
.lv-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  padding: 0 14px;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.26px;
  align-self: flex-start;
}
.lv-hero-card-eyebrow {
  line-height: 1.2;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: var(--wp--preset--color--primary);
}
.lv-hero-card-title { font-size: 17px; font-weight: 600; color: #1a1a1a; line-height: 1.25; }
.lv-hero-card-price { font-size: 18px; font-weight: 600; color: #1a1a1a; line-height: 1.2; }

/* ===== Section-Heading (global an DS angepasst) ===== */
.webux-section-heading { gap: 16px; }
.webux-section-heading__eyebrow {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.82px;
  color: var(--wp--preset--color--primary);
  line-height: 1.2;
}
.webux-section-heading__title {
  font-size: 36px;
  font-weight: 600;
  letter-spacing: -0.72px;
  line-height: 1.1;
  color: #1a1a1a;
}
.webux-section-heading__lead {
  font-size: 18px;
  line-height: 1.65;
  color: #6b6661;
  max-width: 680px;
}

/* ===== Leistungen ===== */
.lv-services { gap: 28px; }
.lv-services .webux-card {
  background: transparent;
  border: 0;
  border-top: 1px solid #d8d2c7;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
}
.lv-services .webux-card__body { padding: 24px 0 0; gap: 12px; }
.lv-services .webux-card__title { font-size: 22px; font-weight: 600; color: #1a1a1a; line-height: 1.22; }
.lv-services .webux-card__text { font-size: 15px; color: #6b6661; line-height: 1.2; }
.lv-services .webux-card__link {
  margin-top: 0;
  padding-top: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--wp--preset--color--primary);
}
.lv-services .webux-card__link span { font-size: 0.85em; }
.lv-services .webux-card__link:hover { color: var(--wp--preset--color--primary-dark); text-decoration: none; }

/* ===== Statement ===== */
.lv-statement-mark svg { width: 39px; height: 44px; opacity: 0.5; display: block; }
.lv-statement-text {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.72px;
  color: #fff;
  max-width: 700px;
  margin: 0;
}

/* ===== Aktuelle Immobilien ===== */
.lv-sec-head { width: 100%; }
.lv-properties { gap: 28px; }
.lv-properties .webux-card {
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
}
.lv-properties .webux-card__media img { aspect-ratio: auto; height: 270px; }
.lv-properties .webux-card__media .webux-card__badge { top: 16px; left: 16px; }
.lv-properties .webux-card__badge {
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.26px;
  line-height: 28px;
  padding: 0 14px;
}
.lv-properties .webux-card__body { padding: 24px; gap: 6px; }
.lv-properties .webux-card__badge:empty { display: none; }
.lv-properties .webux-card__eyebrow {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.68px;
  color: var(--wp--preset--color--primary);
  line-height: 1.25;
}
.lv-properties .webux-card__title { font-size: 19px; font-weight: 600; color: #1a1a1a; line-height: 1.22; }
.lv-properties .webux-card__meta { font-size: 14px; color: #6b6661; line-height: 1.5; }
.lv-properties .webux-card__text { font-size: 17px; font-weight: 600; color: #1a1a1a; margin-top: 0; line-height: 1.2; }

/* ===== CTA ===== */
.lv-cta { border-top: 1px solid var(--wp--preset--color--border); }
.lv-cta-card {
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
  padding: 48px;
}
.lv-cta-left h2 { font-size: 28px; font-weight: 600; color: #1a1a1a; margin: 0; line-height: 1.2; }
.lv-cta-left p { font-size: 16px; color: #6b6661; margin: 0; }
.lv-badge-soft {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 14px !important;
  border-radius: 999px;
  background: #f4efe3;
  color: #1a1a1a !important;
  font-size: 13px !important;
  font-weight: 500;
  letter-spacing: 0.26px;
  margin-top: 10px !important;
}

/* ===== Kundenstimmen ===== */
.lv-testimonials { gap: 28px; }
.lv-testimonials .webux-testimonial {
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  padding: 36px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
  gap: 0;
}
.lv-testimonials .webux-testimonial::before {
  content: "\201E";
  position: static;
  font-size: 64px;
  font-weight: 700;
  line-height: 0.7;
  color: #ada399;
  height: 45px;
  display: block;
}
.lv-testimonials .webux-testimonial__rating { display: none; }
.lv-testimonials .webux-testimonial__quote {
  padding-top: 0;
  margin-top: 5px;
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 1.65;
  letter-spacing: -0.2px;
  color: #1a1a1a;
}
.lv-testimonials .webux-testimonial__author { margin-top: auto; gap: 12px; }
.lv-testimonials-sec .webux-section-heading { max-width: 680px; }
.lv-testimonials-sec .webux-section-heading__title { max-width: 620px; }
.lv-testimonials .webux-testimonial__author::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  flex: 0 0 auto;
}
.lv-testimonials .webux-testimonial:nth-child(1) .webux-testimonial__author::before { content: "MB"; }
.lv-testimonials .webux-testimonial:nth-child(2) .webux-testimonial__author::before { content: "SK"; }
.lv-testimonials .webux-testimonial:nth-child(3) .webux-testimonial__author::before { content: "TW"; }
.lv-testimonials .webux-testimonial__name { font-size: 15px; font-weight: 500; letter-spacing: 0.15px; color: #1a1a1a; line-height: 1.4; }
.lv-testimonials .webux-testimonial__meta { font-size: 14px; color: #8a847d; line-height: 1.5; }

/* ===== Footer ===== */
.lv-footer { color: #cfc9c2; }
.lv-footer-cols { display: flex; justify-content: space-between; gap: 24px; }
.lv-footer-cols .wp-block-column { flex: 0 0 auto !important; }
.lv-footer-cols .wp-block-column:first-child { flex: 0 0 360px !important; }
.lv-footer-logo { display: inline-block; line-height: 0; margin-bottom: 20px; }
.lv-footer-logo svg { width: 150px; height: 32px; display: block; }
.lv-footer-tagline { font-size: 14px; line-height: 1.65; color: #cfc9c2; max-width: 280px; margin: 0; }
.lv-footer-h {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: #ada399;
  margin: 0 0 12px;
}
.lv-footer-links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.lv-footer-links li { font-size: 15px; color: #cfc9c2; line-height: 1.2; }
.lv-footer-links a { color: #cfc9c2; text-decoration: none; font-size: 15px; }
.lv-footer-links a:hover { color: #fff; }
.lv-footer-legal { border-top: 1px solid rgba(255, 255, 255, 0.12); padding-top: 40px; }
.lv-footer-legal p { font-size: 13px; color: #ada399; margin: 0; }
.lv-footer-legal-links { display: flex; gap: 24px; }
.lv-footer-legal-links a { font-size: 13px; color: #ada399; text-decoration: none; }
.lv-footer-legal-links a:hover { color: #fff; }

/* ===== Responsive Basics ===== */
@media (max-width: 1024px) {
  .lv-hero-title { font-size: 44px; letter-spacing: -0.88px; }
  .lv-hero-media, .lv-hero-media img { width: 100%; }
  .lv-nav { display: none; }
}
@media (max-width: 781px) {
  .lv-footer-cols { flex-wrap: wrap; }
  .lv-footer-cols .wp-block-column,
  .lv-footer-cols .wp-block-column:first-child { flex: 1 1 100% !important; }
  .lv-cta-card { flex-wrap: wrap; }
  /* Stacked hero: the fixed 600px-tall image is far too tall full-width on a
     phone. Scale it to a proportional landscape crop instead. */
  .lv-hero-media img { height: auto; aspect-ratio: 3 / 2; }
}
@media (max-width: 600px) {
  /* Keep the floating "Neu im Angebot" card inset on both sides so it never
     overflows the narrower hero image. */
  .lv-hero-media .webux-property-card--float { left: 16px; right: 16px; bottom: 16px; width: auto; }
}


/* ============================================================= */
/* ===== Verkauf-Seite (02 Verkaufen) ===== */
/* ============================================================= */

/* Page-Hero (dunkles Cover, zentriert) */
.lv-page-hero { border-bottom: 1px solid var(--wp--preset--color--border); }
.lv-page-hero .wp-block-cover__inner-container {
  max-width: 760px; margin-inline: auto;
  display: flex; flex-direction: column; align-items: center; gap: 20px;
}
.lv-page-hero .wp-block-cover__inner-container > * { margin: 0; }
.lv-hero-eyebrow { color: #e8dec8 !important; }
.lv-page-hero-title { font-size: 48px; font-weight: 600; line-height: 1.05; letter-spacing: -0.96px; color: #fff; }
.lv-page-hero-lead { font-size: 18px; line-height: 1.65; color: #f4efe3; max-width: 620px; }
.lv-page-hero-cta { gap: 14px; margin-top: 4px !important; }
.lv-btn-hero-outline .wp-element-button { border-color: #fff !important; color: #fff !important; background: transparent !important; }
.lv-btn-hero-outline .wp-element-button:hover { background: rgba(255,255,255,0.12) !important; }

/* Ablauf / Steps */
.lv-steps.webux-steps { gap: 24px; }
.lv-steps .webux-step { border: 1px solid #ece7de; border-radius: 16px; padding: 28px; gap: 10px; background: #fff; }
.lv-steps .webux-step__number::before { font-size: 28px; font-weight: 600; color: var(--wp--preset--color--primary); line-height: 1; margin-bottom: 2px; }
.lv-steps .webux-step__title { font-size: 18px; font-weight: 600; color: #1a1a1a; line-height: 1.25; }
.lv-steps .webux-step__text { font-size: 14px; color: #6b6661; line-height: 1.5; }

/* Vorteile / Highlights */
.lv-vorteile.webux-highlights { gap: 28px; }
.lv-vorteile .webux-highlight { gap: 18px; padding: 8px 8px 0; }
.lv-vorteile .webux-highlight__icon {
  width: 64px; height: 64px; border-radius: 999px; background: #fff;
  box-shadow: 0 8px 28px rgba(26,26,26,0.06), 0 1px 2px rgba(26,26,26,0.04);
  display: flex; align-items: center; justify-content: center; font-size: 0; color: transparent;
}
.lv-vorteile .webux-highlight__icon::before {
  content: ""; width: 26px; height: 26px;
  background-repeat: no-repeat; background-position: center; background-size: 26px 26px;
}
.lv-vorteile .webux-highlight:nth-child(1) .webux-highlight__icon::before { background-image: url("data:image/svg+xml,%3Csvg%20preserveAspectRatio%3D%22none%22%20width%3D%2226%22%20height%3D%2226%22%20overflow%3D%22visible%22%20style%3D%22display%3A%20block%3B%22%20viewBox%3D%220%200%2026%2026%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cg%20id%3D%22Frame%22%3E%20%3Cpath%20id%3D%22Vector%22%20d%3D%22M23.8333%207.58333L14.625%2016.7917L9.20833%2011.375L2.16667%2018.4167%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3Cpath%20id%3D%22Vector_2%22%20d%3D%22M17.3333%207.58333H23.8333V14.0833%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E"); }
.lv-vorteile .webux-highlight:nth-child(2) .webux-highlight__icon::before { background-image: url("data:image/svg+xml,%3Csvg%20preserveAspectRatio%3D%22none%22%20width%3D%2226%22%20height%3D%2226%22%20overflow%3D%22visible%22%20style%3D%22display%3A%20block%3B%22%20viewBox%3D%220%200%2026%2026%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cg%20id%3D%22Frame%22%3E%20%3Cpath%20id%3D%22Vector%22%20d%3D%22M13%2015.1667C16.5899%2015.1667%2019.5%2012.2565%2019.5%208.66667C19.5%205.07682%2016.5899%202.16667%2013%202.16667C9.41015%202.16667%206.5%205.07682%206.5%208.66667C6.5%2012.2565%209.41015%2015.1667%2013%2015.1667Z%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%2F%3E%20%3Cpath%20id%3D%22Vector_2%22%20d%3D%22M16.7668%2013.9642L18.4167%2023.8333L13%2020.5833L7.58333%2023.8333L9.23325%2013.9642%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E"); }
.lv-vorteile .webux-highlight:nth-child(3) .webux-highlight__icon::before { background-image: url("data:image/svg+xml,%3Csvg%20preserveAspectRatio%3D%22none%22%20width%3D%2226%22%20height%3D%2226%22%20overflow%3D%22visible%22%20style%3D%22display%3A%20block%3B%22%20viewBox%3D%220%200%2026%2026%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cg%20id%3D%22Frame%22%3E%20%3Cpath%20id%3D%22Vector%22%20d%3D%22M17.3333%2022.75V20.5833C17.3333%2019.4341%2016.8768%2018.3319%2016.0641%2017.5192C15.2515%2016.7065%2014.1493%2016.25%2013%2016.25H6.5C5.35073%2016.25%204.24853%2016.7065%203.43587%2017.5192C2.62321%2018.3319%202.16667%2019.4341%202.16667%2020.5833V22.75%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3Cpath%20id%3D%22Vector_2%22%20d%3D%22M9.75%2011.9167C12.1432%2011.9167%2014.0833%209.97657%2014.0833%207.58333C14.0833%205.1901%2012.1432%203.25%209.75%203.25C7.35677%203.25%205.41667%205.1901%205.41667%207.58333C5.41667%209.97657%207.35677%2011.9167%209.75%2011.9167Z%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%2F%3E%20%3Cpath%20id%3D%22Vector_3%22%20d%3D%22M23.8333%2022.75V20.5833C23.8326%2019.6232%2023.5131%2018.6905%2022.9248%2017.9317C22.3366%2017.1728%2021.513%2016.6309%2020.5833%2016.3908%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%2F%3E%20%3Cpath%20id%3D%22Vector_4%22%20d%3D%22M17.3333%203.39083C18.2655%203.62949%2019.0916%204.17159%2019.6816%204.93167C20.2716%205.69175%2020.5918%206.62657%2020.5918%207.58875C20.5918%208.55093%2020.2716%209.48575%2019.6816%2010.2458C19.0916%2011.0059%2018.2655%2011.548%2017.3333%2011.7867%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E"); }
.lv-vorteile .webux-highlight:nth-child(4) .webux-highlight__icon::before { background-image: url("data:image/svg+xml,%3Csvg%20preserveAspectRatio%3D%22none%22%20width%3D%2226%22%20height%3D%2226%22%20overflow%3D%22visible%22%20style%3D%22display%3A%20block%3B%22%20viewBox%3D%220%200%2026%2026%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cg%20id%3D%22Frame%22%3E%20%3Cpath%20id%3D%22Vector%22%20d%3D%22M13%2023.8333C13%2023.8333%2021.6667%2019.5%2021.6667%2013V5.41667L13%202.16667L4.33333%205.41667V13C4.33333%2019.5%2013%2023.8333%2013%2023.8333Z%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3Cpath%20id%3D%22Vector_2%22%20d%3D%22M9.75%2013L11.9167%2015.1667L16.25%2010.8333%22%20stroke%3D%22%238B8178%22%20stroke-width%3D%221.625%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E"); }
.lv-vorteile .webux-highlight__title { font-size: 19px; font-weight: 600; color: #1a1a1a; }
.lv-vorteile .webux-highlight__text { font-size: 14px; color: #6b6661; line-height: 1.5; }

/* Erstgespraech / Formular */
.lv-form-cols { gap: 64px; }
.lv-form-cols .lv-form-left { flex: 1 1 auto !important; }
.lv-form-cols .lv-form-right { flex: 0 0 520px !important; }
.lv-form-title { font-size: 36px; font-weight: 600; letter-spacing: -0.72px; line-height: 1.1; color: #1a1a1a; margin: 12px 0 0 !important; }
.lv-form-lead { margin-top: 24px !important; max-width: 616px; }
.lv-checklist { list-style: none; margin: 28px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.lv-checklist li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: #403d3a; line-height: 1.4; }
.lv-checklist svg { width: 18px; height: 18px; flex: 0 0 auto; }
.lv-form { background: #fff; border: 1px solid #ece7de; border-radius: 24px; padding: 40px; box-shadow: 0 8px 28px rgba(26,26,26,0.06), 0 1px 2px rgba(26,26,26,0.04); display: flex; flex-direction: column; gap: 18px; }
.lv-form-row { display: flex; gap: 18px; }
.lv-form-row .lv-field { flex: 1 1 0; }
.lv-field { display: flex; flex-direction: column; gap: 8px; }
.lv-field label { font-size: 14px; font-weight: 500; color: #1a1a1a; }
.lv-form input, .lv-form textarea { width: 100%; border: 1px solid #cfc9c0; border-radius: 12px; padding: 0 16px; height: 48px; font-size: 15px; color: #1a1a1a; background: #fff; font-family: inherit; }
.lv-form textarea { height: 120px; padding: 14px 16px; resize: vertical; line-height: 1.5; }
.lv-form input::placeholder, .lv-form textarea::placeholder { color: #8a847d; }
.lv-form input:focus, .lv-form textarea:focus { outline: 2px solid var(--wp--preset--color--primary); outline-offset: 1px; border-color: transparent; }
.lv-check { display: flex; align-items: flex-start; gap: 12px; font-size: 14px; font-weight: 400; color: #6b6661; line-height: 1.5; }
.lv-check input { width: 20px; height: 20px; flex: 0 0 auto; margin: 1px 0 0; accent-color: var(--wp--preset--color--primary); }
.lv-check a { color: #8b8178; text-decoration: underline; }
.lv-form-submit { height: 52px; border: 0; border-radius: 999px; background: var(--wp--preset--color--primary); color: #fff; font-size: 16px; font-weight: 500; letter-spacing: 0.16px; cursor: pointer; font-family: inherit; }
.lv-form-submit:hover { background: var(--wp--preset--color--primary-dark); }
.lv-form-note { font-size: 13px; color: #8a847d; margin: 0; }

@media (max-width: 900px) {
  .lv-form-cols { flex-wrap: wrap; }
  .lv-form-cols .lv-form-right { flex: 1 1 100% !important; }
  .lv-page-hero-title { font-size: 34px; letter-spacing: -0.68px; }
}
/* ===== SUBPAGES (Kaufen/Bewertung/Suchabo/Finanzierung/Tippgeber/Ueber-uns/Kontakt) ===== */

/* ---- kaufen ---- */
/* ===== Kaufen ===== */
.lv-kaufen-hero { border-bottom: 1px solid var(--wp--preset--color--border); }
.lv-kaufen-hero .wp-block-cover__inner-container { width: 100%; max-width: 1200px; margin-inline: auto; }
.lv-kaufen-hero .wp-block-cover__inner-container > .wp-block-group { display: flex; flex-direction: column; gap: 28px; align-items: stretch; }
.lv-kaufen-hero-copy { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.lv-kaufen-hero-copy > * { margin: 0 !important; }
.lv-kaufen-hero-eyebrow { font-size: 13px; font-weight: 500; letter-spacing: 1.82px; text-transform: uppercase; color: #e8dec8; line-height: 1.2; }
.lv-kaufen-hero-title { font-size: 36px; font-weight: 600; letter-spacing: -0.72px; line-height: 1.1; color: #fff; }
.lv-kaufen-hero-lead { font-size: 18px; line-height: 1.65; color: #f4efe3; max-width: 640px; }

.lv-kaufen-filterbar { display: flex; gap: 16px; align-items: flex-end; background: #fff; border: 1px solid #ece7de; border-radius: 16px; box-shadow: 0 8px 28px rgba(26,26,26,0.06), 0 1px 2px rgba(26,26,26,0.04); padding: 20px; width: 100%; }
.lv-kaufen-filter-field { flex: 1 1 0; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.lv-kaufen-filter-field label { font-size: 14px; font-weight: 500; color: #1a1a1a; }
.lv-kaufen-filterbar input, .lv-kaufen-filterbar select { width: 100%; height: 48px; border: 1px solid #cfc9c0; border-radius: 12px; padding: 0 16px; font-size: 15px; color: #1a1a1a; background: #fff; font-family: inherit; }
.lv-kaufen-filterbar select { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a847d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; padding-right: 42px; color: #8a847d; }
.lv-kaufen-filterbar input::placeholder { color: #8a847d; }
.lv-kaufen-suchen { height: 52px; border: 0; border-radius: 999px; background: var(--wp--preset--color--primary); color: #fff; font-size: 16px; font-weight: 500; letter-spacing: 0.16px; padding: 0 30px; cursor: pointer; font-family: inherit; white-space: nowrap; flex: 0 0 auto; }
.lv-kaufen-suchen:hover { background: var(--wp--preset--color--primary-dark); }

.lv-kaufen-results-head { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.lv-kaufen-results-count { font-size: 17px; font-weight: 600; color: #1a1a1a; margin: 0; }
.lv-kaufen-sort { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 12px 0 14px; border: 1px solid #cfc9c0; border-radius: 12px; font-size: 14px; font-weight: 500; color: #1a1a1a; }
.lv-kaufen-sort svg { width: 14px; height: 14px; }

.lv-kaufen-objlist { display: flex; flex-direction: column; gap: 16px; }
.lv-kaufen-listing { display: flex; align-items: stretch; background: #fff; border: 1px solid #ece7de; border-radius: 16px; box-shadow: 0 8px 28px rgba(26,26,26,0.06), 0 1px 2px rgba(26,26,26,0.04); overflow: hidden; min-height: 100px; }
.lv-kaufen-listing__img { position: relative; flex: 0 0 210px; width: 210px; }
.lv-kaufen-listing__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lv-kaufen-listing__badge { position: absolute; top: 12px; left: 12px; z-index: 1; display: inline-flex; align-items: center; height: 28px; padding: 0 14px; border-radius: 999px; background: var(--wp--preset--color--primary); color: #fff; font-size: 13px; font-weight: 500; letter-spacing: 0.26px; }
.lv-kaufen-listing__badge:empty { display: none; }
.lv-kaufen-listing__body { flex: 1 1 auto; display: flex; flex-direction: column; gap: 6px; padding: 22px 24px; min-width: 0; justify-content: center; }
.lv-kaufen-listing__eyebrow { font-size: 12px; font-weight: 500; letter-spacing: 1.68px; color: var(--wp--preset--color--primary); text-transform: uppercase; }
.lv-kaufen-listing__title { font-size: 19px; font-weight: 600; color: #1a1a1a; margin: 0; line-height: 1.22; }
.lv-kaufen-listing__meta { font-size: 14px; color: #6b6661; }
.lv-kaufen-listing__price { font-size: 17px; font-weight: 600; color: #1a1a1a; }

@media (max-width: 900px) {
  .lv-kaufen-filterbar { flex-wrap: wrap; }
  .lv-kaufen-filter-field { flex: 1 1 45%; }
  .lv-kaufen-listing__img { flex-basis: 140px; width: 140px; }
}

/* ---- bewertung ---- */
/* ===== Bewertung – Wizard ===== */
.lv-bewertung-wizard {
  display: flex;
  max-width: 1100px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
  overflow: hidden;
}
.lv-bewertung-rail {
  flex: 0 0 320px;
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding: 40px 32px;
  background: #faf8f2;
}
.lv-bewertung-rail-title {
  margin: 0;
  font-size: 17px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
}
.lv-bewertung-step-row {
  display: flex;
  align-items: center;
  gap: 14px;
}
.lv-bewertung-step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #f4efe3;
  color: #8a847d;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
}
.lv-bewertung-step-label {
  font-size: 15px;
  font-weight: 500;
  color: #6b6661;
  line-height: 1.2;
}
.lv-bewertung-step-row.is-active .lv-bewertung-step-num {
  background: #8b8178;
  color: #fff;
}
.lv-bewertung-step-row.is-active .lv-bewertung-step-label {
  color: #1a1a1a;
}
.lv-bewertung-step {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 44px;
}
.lv-bewertung-schritt {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: #8b8178;
  line-height: 1.2;
}
.lv-bewertung-question {
  margin: 0;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -0.26px;
  color: #1a1a1a;
  line-height: 1.2;
}
.lv-bewertung-tiles {
  display: flex;
  gap: 16px;
  width: 100%;
}
.lv-bewertung-tile {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 24px 16px;
  background: #fff;
  border: 1px solid #cfc9c0;
  border-radius: 16px;
}
.lv-bewertung-tile-ico {
  width: 28px;
  height: 28px;
  display: block;
}
.lv-bewertung-tile-label {
  font-size: 15px;
  font-weight: 500;
  color: #6b6661;
  line-height: 1.2;
}
.lv-bewertung-tile.is-selected {
  background: #faf8f2;
  border: 2px solid #8b8178;
  padding: 23px 15px;
}
.lv-bewertung-tile.is-selected .lv-bewertung-tile-ico { stroke: #1a1a1a; }
.lv-bewertung-tile.is-selected .lv-bewertung-tile-label { color: #1a1a1a; }
.lv-bewertung-next {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  background: #8b8178;
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.15px;
  line-height: 1;
  cursor: pointer;
}
.lv-bewertung-next:hover { background: #6f665e; }

/* ===== Bewertung – Vorteile Grid ===== */
.lv-bewertung-vorteile {
  display: flex;
  flex-wrap: wrap;
  gap: 36px 28px;
}
.lv-bewertung-vitem {
  width: calc((100% - 56px) / 3);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.lv-bewertung-vicon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #f4efe3;
}
.lv-bewertung-vicon svg {
  width: 20px;
  height: 20px;
  display: block;
}
.lv-bewertung-vtitle {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
}
.lv-bewertung-vtext {
  margin: 0;
  font-size: 14px;
  color: #6b6661;
  line-height: 1.55;
}

/* ===== Responsive ===== */
@media (max-width: 1024px) {
  .lv-bewertung-wizard { flex-direction: column; }
  .lv-bewertung-rail { flex-basis: auto; width: 100%; }
  .lv-bewertung-vitem { width: calc((100% - 28px) / 2); }
}
@media (max-width: 781px) {
  .lv-bewertung-tiles { flex-wrap: wrap; }
  .lv-bewertung-tile { flex-basis: calc((100% - 16px) / 2); }
  .lv-bewertung-step { padding: 32px; }
  .lv-bewertung-vitem { width: 100%; }
}

/* ---- suchabo ---- */
/* ===== Suchabo ===== */
.lv-suchabo-steps { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 28px; }
.lv-suchabo-step { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.lv-suchabo-step__num { width: 44px; height: 44px; border-radius: 999px; background: var(--wp--preset--color--primary); color: #fff; font-size: 17px; font-weight: 600; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.lv-suchabo-step__title { font-size: 18px; font-weight: 600; color: #1a1a1a; margin: 0; }
.lv-suchabo-step__text { font-size: 14px; color: #6b6661; line-height: 1.5; margin: 0; }
.lv-suchabo-form { max-width: 620px; margin-inline: auto; }
.lv-suchabo-pills { display: flex; flex-wrap: wrap; gap: 10px; }
.lv-suchabo-pill { height: 36px; padding: 0 18px; border-radius: 999px; border: 1px solid #cfc9c0; background: #fff; color: #6b6661; font-size: 14px; font-weight: 500; cursor: pointer; font-family: inherit; }
.lv-suchabo-pill.is-active { background: #f4efe3; border-color: #e8dec8; color: #1a1a1a; }
@media (max-width: 900px) { .lv-suchabo-steps { grid-template-columns: repeat(2,1fr); } }

/* ===== Shared: styled <select> inside any .lv-form (chevron + consistent field) ===== */
.lv-form select { width: 100%; height: 48px; border: 1px solid #cfc9c0; border-radius: 12px; padding: 0 42px 0 16px; font-size: 15px; color: #1a1a1a; background-color: #fff; font-family: inherit; appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a847d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }

/* ---- finanzierung ---- */
/* ===== Finanzierung – Leistungen highlights ===== */
.lv-finanzierung-highlights {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}
.lv-finanzierung-hl { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.lv-finanzierung-hl-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: #f4efe3;
  flex: 0 0 auto;
}
.lv-finanzierung-hl-title { font-size: 18px; font-weight: 600; color: #1a1a1a; line-height: 1.25; margin: 0; }
.lv-finanzierung-hl-text { font-size: 14px; color: #6b6661; line-height: 1.55; margin: 0; }

/* ===== Finanzierung – Hypothekenrechner ===== */
.lv-finanzierung-calc {
  display: flex;
  align-items: stretch;
  max-width: 1060px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
  overflow: hidden;
}
.lv-finanzierung-calc-inputs {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 26px;
  padding: 44px;
}
.lv-finanzierung-calc-h { font-size: 22px; font-weight: 600; color: #1a1a1a; line-height: 1.2; margin: 0; }
.lv-finanzierung-slider { display: flex; flex-direction: column; gap: 12px; }
.lv-finanzierung-slider-top { display: flex; align-items: center; justify-content: space-between; }
.lv-finanzierung-slider-label { font-size: 15px; font-weight: 500; color: #6b6661; line-height: 1.2; }
.lv-finanzierung-slider-val { font-size: 16px; font-weight: 600; color: #8b8178; line-height: 1.2; }
.lv-finanzierung-track {
  position: relative;
  height: 6px;
  border-radius: 999px;
  background: #e8dec8;
}
.lv-finanzierung-fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 6px;
  border-radius: 999px;
  background: #8b8178;
}
.lv-finanzierung-thumb {
  position: absolute;
  top: 50%;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: #fff;
  border: 2px solid #8b8178;
  box-shadow: 0 2px 6px rgba(26, 26, 26, 0.15);
  transform: translate(-50%, -50%);
}

.lv-finanzierung-calc-results {
  flex: 0 0 380px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 44px 40px;
  background: #6f665e;
}
.lv-finanzierung-res-eyebrow {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: #d6c7a8;
  line-height: 1.2;
  margin: 0;
}
.lv-finanzierung-res-big { font-size: 40px; font-weight: 600; color: #fff; line-height: 1.05; margin: 0; }
.lv-finanzierung-res-sub { font-size: 14px; color: #cfc9c2; line-height: 1.3; margin: 0; }
.lv-finanzierung-res-divider { height: 1px; width: 100%; background: rgba(255, 255, 255, 0.12); }
.lv-finanzierung-res-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.lv-finanzierung-res-label { font-size: 14px; color: #cfc9c2; line-height: 1.3; }
.lv-finanzierung-res-strong { font-size: 15px; font-weight: 600; color: #fff; line-height: 1.3; }
.lv-finanzierung-res-bar-wrap { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
.lv-finanzierung-res-row-sm .lv-finanzierung-res-label,
.lv-finanzierung-res-row-sm .lv-finanzierung-res-strong { font-size: 13px; }
.lv-finanzierung-res-bar {
  position: relative;
  height: 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  overflow: hidden;
}
.lv-finanzierung-res-bar-fill { height: 8px; border-radius: 999px; background: #56755b; }
.lv-finanzierung-res-note { font-size: 12px; color: #d6c7a8; line-height: 1.5; margin: 0; }

/* ===== Finanzierung – Gut zu wissen ===== */
.lv-finanzierung-wissen-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.lv-finanzierung-wissen-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 32px;
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 16px;
}
.lv-finanzierung-wissen-title { font-size: 20px; font-weight: 600; color: #1a1a1a; line-height: 1.25; margin: 0; }
.lv-finanzierung-wissen-text { font-size: 15px; color: #6b6661; line-height: 1.6; margin: 0; }

/* ===== Finanzierung – CTA band ===== */
.lv-finanzierung-cta-title { font-size: 28px; font-weight: 600; letter-spacing: -0.56px; color: #fff; line-height: 1.15; margin: 0; }
.lv-finanzierung-cta-text { font-size: 17px; color: #cfc9c2; line-height: 1.55; max-width: 560px; margin: 0; }
.lv-finanzierung-cta-btn .wp-element-button {
  background: #fff;
  color: #1a1a1a;
}
.lv-finanzierung-cta-btn .wp-element-button:hover { background: #f4efe3; color: #1a1a1a; }

/* ===== Finanzierung – Responsive ===== */
@media (max-width: 1024px) {
  .lv-finanzierung-highlights { grid-template-columns: repeat(2, 1fr); }
  .lv-finanzierung-calc { flex-direction: column; }
  .lv-finanzierung-calc-results { flex-basis: auto; }
  .lv-finanzierung-wissen-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .lv-finanzierung-highlights { grid-template-columns: 1fr; }
}

/* ---- tippgeber ---- */
/* ===== Tippgeber – Hero ===== */
.lv-tippgeber-hero .wp-block-cover__inner-container { width: 100%; }
.lv-tippgeber-hero-cols { align-items: center; }
.lv-tippgeber-hero-left { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.lv-tippgeber-hero-left > * { margin: 0 !important; }
.lv-tippgeber-hero-eyebrow { color: #e8dec8 !important; }
.lv-tippgeber-hero-title {
  font-size: 48px;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.96px;
  color: #fff;
}
.lv-tippgeber-hero-lead {
  font-size: 18px;
  line-height: 1.65;
  color: #f4efe3;
  max-width: 480px;
}
.lv-tippgeber-hero-cta { margin-top: 2px !important; }

.lv-tippgeber-reward {
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 24px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 0 8px 28px rgba(26, 26, 26, 0.06), 0 1px 2px rgba(26, 26, 26, 0.04);
}
.lv-tippgeber-reward__icon {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: #f4efe3;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}
.lv-tippgeber-reward__icon svg { width: 30px; height: 30px; display: block; }
.lv-tippgeber-reward__eyebrow { margin: 0; }
.lv-tippgeber-reward__title {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.24px;
  line-height: 1.2;
  color: #1a1a1a;
  margin: 0;
}
.lv-tippgeber-reward__text {
  font-size: 15px;
  line-height: 1.6;
  color: #6b6661;
  margin: 0;
}

/* ===== Tippgeber – Ablauf (Schritte) ===== */
.lv-tippgeber-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}
.lv-tippgeber-step {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.lv-tippgeber-step__num {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 600;
  flex: 0 0 auto;
}
.lv-tippgeber-step__title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.25;
  color: #1a1a1a;
  margin: 0;
}
.lv-tippgeber-step__text {
  font-size: 14px;
  line-height: 1.5;
  color: #6b6661;
  margin: 0;
}

/* ===== Tippgeber – Formular ===== */
.lv-tippgeber-formlabel {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.68px;
  text-transform: uppercase;
  color: var(--wp--preset--color--primary);
  line-height: 1.2;
  margin: 0;
}
.lv-tippgeber-infobox {
  background: #faf8f2;
  border: 1px solid #ece7de;
  border-radius: 12px;
  padding: 16px 18px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.lv-tippgeber-infobox svg { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 1px; display: block; }
.lv-tippgeber-infobox p { font-size: 14px; line-height: 1.5; color: #6b6661; margin: 0; }

/* ===== Tippgeber – Teilnahmebedingungen ===== */
.lv-tippgeber-terms {
  background: #fff;
  border: 1px solid #ece7de;
  border-radius: 16px;
  padding: 36px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 24px;
}
.lv-tippgeber-terms__item {
  display: flex;
  gap: 12px;
  align-items: center;
}
.lv-tippgeber-terms__item svg { width: 20px; height: 20px; flex: 0 0 auto; display: block; }
.lv-tippgeber-terms__item span { font-size: 15px; line-height: 1.4; color: #1a1a1a; }

/* ===== Tippgeber – Responsive ===== */
@media (max-width: 1024px) {
  .lv-tippgeber-hero-title { font-size: 40px; letter-spacing: -0.8px; }
  .lv-tippgeber-steps { grid-template-columns: repeat(2, 1fr); }
  .lv-tippgeber-terms { grid-template-columns: 1fr; }
}
@media (max-width: 781px) {
  .lv-tippgeber-steps { grid-template-columns: 1fr; }
  .lv-tippgeber-reward { padding: 32px; }
}

/* ---- ueber-uns ---- */
/* ===== Über uns · Intro ===== */
.lv-ueber-uns-intro { border-bottom: 1px solid #ece7de; }
.lv-ueber-uns-intro-col > * { margin: 0 !important; }
.lv-ueber-uns-h1 { font-size: 48px; font-weight: 600; line-height: 1.05; letter-spacing: -0.96px; color: #1a1a1a; margin: 0; }
.lv-ueber-uns-intro-text { font-size: 17px; line-height: 1.65; color: #6b6661; margin: 0; }
.lv-ueber-uns-intro-media { margin: 0; }
.lv-ueber-uns-intro-media img { width: 100%; height: 520px; object-fit: cover; border-radius: 24px; display: block; }

/* ===== Kennzahlen (brown band) ===== */
.lv-ueber-uns-stats { display: flex; justify-content: space-between; align-items: flex-start; width: 100%; gap: 24px; }
.lv-ueber-uns-stat { display: flex; flex-direction: column; gap: 8px; }
.lv-ueber-uns-stat b { font-size: 44px; font-weight: 600; letter-spacing: -0.88px; color: #fff; line-height: 1; }
.lv-ueber-uns-stat span { font-size: 15px; color: #cfc9c2; line-height: 1.4; }

/* ===== Werte ===== */
.lv-ueber-uns-values { display: flex; gap: 28px; }
.lv-ueber-uns-value { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.lv-ueber-uns-value-ic { width: 52px; height: 52px; border-radius: 999px; background: #f4efe3; display: flex; align-items: center; justify-content: center; }
.lv-ueber-uns-value-ic svg { width: 24px; height: 24px; display: block; }
.lv-ueber-uns-value h3 { font-size: 19px; font-weight: 600; color: #1a1a1a; margin: 0; line-height: 1.3; }
.lv-ueber-uns-value p { font-size: 15px; color: #6b6661; margin: 0; line-height: 1.5; }

/* ===== Kundenstimme ===== */
.lv-ueber-uns-quote-sec { border-top: 1px solid #ece7de; }
.lv-ueber-uns-quote { display: flex; flex-direction: column; align-items: center; gap: 24px; text-align: center; }
.lv-ueber-uns-stars { display: flex; gap: 6px; }
.lv-ueber-uns-stars svg { width: 18px; height: 18px; display: block; }
.lv-ueber-uns-quote-text { font-size: 28px; font-weight: 600; line-height: 1.15; letter-spacing: -0.56px; color: #1a1a1a; max-width: 860px; margin: 0; }
.lv-ueber-uns-quote-meta { font-size: 15px; font-weight: 500; color: #6b6661; margin: 0; }

/* ===== Team ===== */
.lv-ueber-uns-team-grid { display: flex; gap: 28px; align-items: stretch; }
.lv-ueber-uns-card { flex: 1 1 0; min-width: 0; background: #fff; border: 1px solid #ece7de; border-radius: 24px; box-shadow: 0 8px 28px rgba(26,26,26,0.06), 0 1px 2px rgba(26,26,26,0.04); overflow: hidden; display: flex; flex-direction: column; }
.lv-ueber-uns-card-img { height: 260px; width: 100%; object-fit: cover; display: block; }
.lv-ueber-uns-card-body { padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 5px; }
.lv-ueber-uns-card-role { font-size: 12px; font-weight: 500; letter-spacing: 1.44px; text-transform: uppercase; color: #8b8178; margin: 0; }
.lv-ueber-uns-card-name { font-size: 19px; font-weight: 600; color: #1a1a1a; margin: 0; }
.lv-ueber-uns-card-spec { font-size: 14px; color: #6b6661; margin: 0; }
.lv-ueber-uns-card-div { height: 1px; background: #ece7de; width: 100%; margin: 5px 0 4px; }
.lv-ueber-uns-card-contact { display: flex; align-items: center; gap: 8px; }
.lv-ueber-uns-card-contact svg { width: 15px; height: 15px; flex: 0 0 auto; display: block; }
.lv-ueber-uns-card-contact span { font-size: 13px; color: #6b6661; }

/* ===== Karriere ===== */
.lv-ueber-uns-karriere { border-top: 1px solid #ece7de; }
.lv-ueber-uns-jobs { display: flex; flex-direction: column; gap: 14px; }
.lv-ueber-uns-job { display: flex; align-items: center; justify-content: space-between; gap: 24px; background: #fff; border: 1px solid #ece7de; border-radius: 16px; padding: 24px 28px 24px 32px; }
.lv-ueber-uns-job-t { font-size: 19px; font-weight: 600; color: #1a1a1a; margin: 0 0 6px; }
.lv-ueber-uns-job-m { font-size: 14px; color: #6b6661; margin: 0; }
.lv-ueber-uns-job-badge { display: inline-flex; align-items: center; height: 28px; padding: 0 14px; border-radius: 999px; background: #f4efe3; color: #1a1a1a; font-size: 13px; font-weight: 500; letter-spacing: 0.26px; flex: 0 0 auto; }
.lv-ueber-uns-perks { display: flex; gap: 28px; padding-top: 16px; }
.lv-ueber-uns-perk { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.lv-ueber-uns-perk svg { width: 24px; height: 24px; display: block; }
.lv-ueber-uns-perk h3 { font-size: 16px; font-weight: 600; color: #1a1a1a; margin: 0; }
.lv-ueber-uns-perk p { font-size: 14px; color: #6b6661; margin: 0; line-height: 1.5; }

/* ===== Initiativbewerbung ===== */
.lv-ueber-uns-init { display: flex; gap: 40px; align-items: center; background: #fff; border: 1px solid #ece7de; border-radius: 24px; padding: 44px; }
.lv-ueber-uns-init-left { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.lv-ueber-uns-init-title { font-size: 24px; font-weight: 600; color: #1a1a1a; margin: 0; }
.lv-ueber-uns-init-lead { font-size: 16px; color: #6b6661; line-height: 1.6; margin: 0; max-width: 420px; }
.lv-ueber-uns-check { display: flex; gap: 12px; align-items: flex-start; }
.lv-ueber-uns-check input { width: 20px; height: 20px; flex: 0 0 auto; margin: 0; border: 1px solid #cfc9c0; border-radius: 6px; }
.lv-ueber-uns-check span { font-size: 14px; color: #6b6661; line-height: 1.5; }
.lv-ueber-uns-check a { color: #8b8178; }
.lv-ueber-uns-init-btn { display: inline-flex; align-items: center; justify-content: center; height: 44px; padding: 0 24px; border-radius: 999px; background: #8b8178; color: #fff; font-size: 15px; font-weight: 500; letter-spacing: 0.15px; border: 0; cursor: pointer; margin-top: 0; }
.lv-ueber-uns-init-btn:hover { background: #6f665e; }
.lv-ueber-uns-drop { width: 380px; flex: 0 0 auto; background: #faf8f2; border: 1.5px dashed #d8d2c7; border-radius: 16px; padding: 40px 32px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
.lv-ueber-uns-drop svg { width: 32px; height: 32px; display: block; }
.lv-ueber-uns-drop-t { font-size: 15px; font-weight: 500; color: #1a1a1a; margin: 0; }
.lv-ueber-uns-drop-s { font-size: 13px; color: #8a847d; margin: 0; }

/* ===== Responsive ===== */
@media (max-width: 1024px) {
  .lv-ueber-uns-h1 { font-size: 40px; letter-spacing: -0.8px; }
  .lv-ueber-uns-team-grid { flex-wrap: wrap; }
  .lv-ueber-uns-card { flex: 1 1 calc(50% - 14px); }
}
@media (max-width: 781px) {
  .lv-ueber-uns-stats { flex-wrap: wrap; gap: 32px 24px; }
  .lv-ueber-uns-stat { flex: 1 1 40%; }
  .lv-ueber-uns-values { flex-wrap: wrap; }
  .lv-ueber-uns-value { flex: 1 1 100%; }
  .lv-ueber-uns-quote-text { font-size: 22px; letter-spacing: -0.44px; }
  .lv-ueber-uns-card { flex: 1 1 100%; }
  .lv-ueber-uns-job { flex-wrap: wrap; }
  .lv-ueber-uns-perks { flex-wrap: wrap; }
  .lv-ueber-uns-perk { flex: 1 1 45%; }
  .lv-ueber-uns-init { flex-wrap: wrap; padding: 32px; }
  .lv-ueber-uns-drop { width: 100%; }
}

/* ---- kontakt ---- */
/* ===== Kontakt ===== */
.lv-kontakt-cols { align-items: flex-start; }
.lv-kontakt-formcol { flex: 0 0 600px !important; max-width: 600px; }

.lv-kontakt-title {
  font-size: 36px;
  font-weight: 600;
  letter-spacing: -0.72px;
  line-height: 1.1;
  color: #1a1a1a;
  max-width: 480px;
}

/* Kontaktzeilen */
.lv-kontakt-contacts { display: flex; flex-direction: column; gap: 18px; padding-top: 8px; }
.lv-kontakt-contact { display: flex; align-items: center; gap: 14px; }
.lv-kontakt-ic {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #f4efe3;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lv-kontakt-ic svg { width: 18px; height: 18px; display: block; }
.lv-kontakt-ct { display: flex; flex-direction: column; gap: 2px; }
.lv-kontakt-ct-label { font-size: 12px; font-weight: 500; color: #8a847d; line-height: 1.2; }
.lv-kontakt-ct-value { font-size: 15px; font-weight: 500; color: #1a1a1a; line-height: 1.3; }

/* Karten-Platzhalter */
.lv-kontakt-map {
  position: relative;
  width: 100%;
  height: 220px;
  border-radius: 24px;
  background: #dbd7d1;
  overflow: hidden;
}
.lv-kontakt-map__h { position: absolute; left: 0; top: 41%; width: 100%; height: 6px; background: #e8dec8; }
.lv-kontakt-map__v1 { position: absolute; left: 35%; top: 0; width: 6px; height: 100%; background: #e8dec8; }
.lv-kontakt-map__v2 { position: absolute; left: 68%; top: 0; width: 6px; height: 100%; background: #e8dec8; }
.lv-kontakt-map__pin { position: absolute; left: 50%; top: 40%; transform: translate(-50%, -50%); width: 34px; height: 34px; }

/* Absenden rechtsbündig, nicht vollbreit */
.lv-kontakt-actions { display: flex; justify-content: flex-end; padding-top: 6px; }
.lv-kontakt-actions .lv-form-submit { width: auto; }

@media (max-width: 781px) {
  .lv-kontakt-formcol { flex: 1 1 100% !important; max-width: 100%; }
}

/* ===== QA FIXES (subpages) 2026-07-12 ===== */
/* Kaufen + Tippgeber: constrain the dark cover-hero inner content to alignwide (1200) centered */
.lv-kaufen-hero .wp-block-cover__inner-container,
.lv-tippgeber-hero .wp-block-cover__inner-container { max-width: none !important; width: 100% !important; padding-inline: 0 !important; }
.lv-kaufen-hero .wp-block-cover__inner-container > *,
.lv-tippgeber-hero .wp-block-cover__inner-container > * { max-width: 1200px !important; margin-inline: auto !important; width: 100%; box-sizing: border-box; }
@media (max-width: 1248px) {
  .lv-kaufen-hero .wp-block-cover__inner-container > *,
  .lv-tippgeber-hero .wp-block-cover__inner-container > * { padding-inline: 24px; }
}
/* Centered page-hero: widen inner so long H1 (Finanzierung/Suchabo) stays on one line */
.lv-page-hero .wp-block-cover__inner-container { max-width: 980px; }
/* Suchabo: fit 6 pills on one row, wider card, muted default select values */
.lv-suchabo-form { max-width: 680px; }
.lv-suchabo-pills { gap: 8px; }
.lv-suchabo-pill { padding: 0 13px; }
.lv-suchabo-form select { color: #8a847d; }
/* Bewertung: keep sidebar heading on one line */
.lv-bewertung-rail { flex-basis: 344px; }
.lv-bewertung-rail-title { font-size: 16px; }
/* Über uns: spacing between the two intro paragraphs */
.lv-ueber-uns-intro-text + .lv-ueber-uns-intro-text { margin-top: 20px; }

/* ===== Objekt-Detail-Modal (klickbare APIfy-Objekte) 2026-07-12 ===== */
.lv-objekt-trigger { cursor: pointer; transition: transform .15s ease, box-shadow .15s ease; }
.lv-objekt-trigger:hover { transform: translateY(-2px); box-shadow: 0 16px 40px rgba(26,26,26,0.12), 0 2px 6px rgba(26,26,26,0.06); }
.lv-objekt-trigger:focus-visible { outline: 2px solid var(--wp--preset--color--primary); outline-offset: 3px; }
.lv-objekt-detail-data { display: none !important; }
.lv-objekt-modal[hidden] { display: none; }
.lv-objekt-modal { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 24px; }
.lv-objekt-modal__overlay { position: absolute; inset: 0; background: rgba(26,26,26,0.55); }
.lv-objekt-modal__dialog { position: relative; z-index: 1; width: 100%; max-width: 560px; max-height: 90vh; overflow: auto; background: #fff; border-radius: 24px; box-shadow: 0 24px 64px rgba(26,26,26,0.28); }
.lv-objekt-modal__close { position: absolute; top: 16px; right: 16px; z-index: 2; width: 40px; height: 40px; border: 0; border-radius: 999px; background: rgba(255,255,255,0.92); color: #1a1a1a; font-size: 24px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(26,26,26,0.16); }
.lv-objekt-modal__close:hover { background: #fff; }
.lv-objekt-modal__media { position: relative; }
.lv-objekt-modal__media img { display: block; width: 100%; height: 280px; object-fit: cover; border-radius: 24px 24px 0 0; }
.lv-objekt-modal__badge { position: absolute; top: 16px; left: 16px; display: inline-flex; align-items: center; height: 28px; padding: 0 14px; border-radius: 999px; background: var(--wp--preset--color--primary); color: #fff; font-size: 13px; font-weight: 500; letter-spacing: 0.26px; }
.lv-objekt-modal__head { padding: 28px 32px 0; display: flex; flex-direction: column; gap: 8px; }
.lv-objekt-modal__eyebrow { font-size: 12px; font-weight: 500; letter-spacing: 1.68px; text-transform: uppercase; color: var(--wp--preset--color--primary); }
.lv-objekt-modal__title { margin: 0; font-size: 24px; font-weight: 600; line-height: 1.2; letter-spacing: -0.4px; color: #1a1a1a; }
.lv-objekt-modal__price { font-size: 22px; font-weight: 600; color: #1a1a1a; line-height: 1.2; margin-top: 2px; }
.lv-objekt-modal__specs { margin: 24px 0 0; padding: 24px 32px 0; border-top: 1px solid #ece7de; display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
.lv-objekt-modal__specs > div { display: flex; flex-direction: column; gap: 3px; }
.lv-objekt-modal__specs > div:has(dd:empty) { display: none; }
.lv-objekt-modal__specs dt { margin: 0; font-size: 11px; font-weight: 500; letter-spacing: 1.4px; text-transform: uppercase; color: #8a847d; }
.lv-objekt-modal__specs dd { margin: 0; font-size: 16px; font-weight: 500; color: #1a1a1a; }
.lv-objekt-modal__ref { padding: 20px 32px 28px; font-size: 13px; color: #8a847d; }
@media (max-width: 600px) {
  .lv-objekt-modal__media img { height: 220px; }
  .lv-objekt-modal__head { padding: 24px 20px 0; }
  .lv-objekt-modal__specs { grid-template-columns: 1fr; padding: 20px 20px 0; }
  .lv-objekt-modal__ref { padding: 18px 20px 24px; }
}

/* ===== Objekt-Detail-Seite (/immobilie/) 2026-07-12 ===== */
.lv-objekt-store { display: none !important; }

/* Die Detail-Block-Styles (lv-det-*) sind als webux-property-detail__* in das
   block-eigene Stylesheet inc/field-blocks/property-detail/style.css portiert;
   das Anfrage-Band (lv-det-anfrage-*) als webux-inquiry__* nach
   inc/field-blocks/inquiry/style.css. Hier bleiben nur Regeln für statischen
   Seiteninhalt (lv-det-wrap, lv-det-similar) und das geteilte .lv-form. */

/* Ähnliche Objekte */
.lv-det-similar { background: #faf8f2; border-top: 1px solid var(--wp--preset--color--border); padding: 88px 0; }
.lv-det-similar-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.lv-det-similar-head .webux-section-heading { margin: 0; }
.lv-det-similar-head .wp-block-buttons { flex: 0 0 auto; }
.lv-det-similar .wp-block-wx-apify-list { margin: 40px 0 0; gap: 30px; }
.lv-det-similar .wxa-card { height: 100%; }
.lv-det-similar .wxa-card > .webux-property-card--media { height: 100%; }

/* wrap + card link (nur noch für statischen Seiteninhalt wie die "Ähnliche
   Objekte"-Sektion; die Blöcke bringen ihren eigenen __wrap mit) */
.lv-det-wrap { max-width: 1200px; margin-inline: auto; }
@media (max-width: 1248px) { .lv-det-wrap { padding-inline: 24px; box-sizing: border-box; } }
.lv-objekt-cardlink { display: block; text-decoration: none; color: inherit; }
.lv-objekt-cardlink:focus-visible { outline: 2px solid var(--wp--preset--color--primary); outline-offset: 3px; border-radius: 24px; }

/* ===== Webux-Blöcke auf dem dunklen Akzent-Band lesbar halten =====
   (bei der Block-Konversion ergänzt; die alten lv-* Sektionen hatten
   weissen Text fest verdrahtet.) */
.has-accent-background-color .webux-stat__value,
.has-accent-background-color .webux-stat__label,
.has-accent-background-color .webux-highlight__title,
.has-accent-background-color .webux-highlight__text,
.has-accent-background-color .webux-quote__text,
.has-accent-background-color .webux-quote__meta {
	color: #fff;
}

/* ===== Native wp:navigation an das lv-Design angepasst (Header/Footer) ===== */
.webux-headernav .wp-block-navigation__container { gap: 32px; align-items: center; }
.webux-headernav .wp-block-navigation-item__content {
	font-size: 15px; font-weight: 500; color: #403d3a; text-decoration: none; white-space: nowrap;
}
.webux-headernav .wp-block-navigation-item__content:hover { color: #1a1a1a; }

.webux-footernav .wp-block-navigation__container { flex-direction: column; align-items: flex-start; gap: 10px; }
.webux-footernav .wp-block-navigation-item__content { font-size: 15px; color: #cfc9c2; text-decoration: none; }
.webux-footernav .wp-block-navigation-item__content:hover { color: #fff; }

.webux-legalnav .wp-block-navigation__container { gap: 24px; }
.webux-legalnav .wp-block-navigation-item__content { font-size: 13px; color: #ada399; text-decoration: none; }
.webux-legalnav .wp-block-navigation-item__content:hover { color: #fff; }

/* Lange deutsche Komposita duerfen keinen horizontalen Overflow erzeugen. */
.wp-block-heading,
.webux-page-hero__title,
.webux-section-heading__title,
.webux-teaser__title,
.webux-card__title,
.webux-fincheck__heading,
.webux-fincheck__list-title,
.webux-fincheck__panel-title {
	overflow-wrap: break-word;
	hyphens: auto;
}

/* ===== Mobile Overlay-Menü (native Navigation, markengerecht) ===== */
/* Das Default-Overlay ist rechtsbündig an den Rand gequetscht, ohne Padding,
   in reinem Schwarz. Hier: linksbündig, grosse Tap-Targets, Trennlinien, Ink-Farbe. */
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open {
	background: #fff;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	width: 100%;
	align-items: stretch;
	justify-content: flex-start;
	padding: 88px 28px 40px;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	width: 100%;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid #ece7de;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block;
	width: 100%;
	padding: 17px 0;
	font-size: 18px;
	font-weight: 500;
	color: #1a1a1a;
	text-align: left;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
	color: #8b8178;
}
/* Keyboard focus only (not the programmatic focus WP sets when the menu opens,
   which would otherwise tint the first item as if it were the current page). */
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
	outline: 2px solid #8b8178;
	outline-offset: -2px;
}
.webux-headernav .wp-block-navigation__responsive-container-close {
	top: 26px;
	right: 24px;
	color: #1a1a1a;
}
.webux-headernav .wp-block-navigation__responsive-container-open { color: #1a1a1a; }

/* ===== Sektions-Padding auf Mobile straffen ===== */
/* Die Sektionen tragen inline die Desktop-Werte (96-112px); auf dem Handy ist
   das zu luftig. Footer und Hero behalten ihre eigenen Abstände. */
@media (max-width: 600px) {
  .wp-block-group.alignfull[style*="padding-top"]:not(.lv-footer) {
    padding-top: clamp(52px, 15vw, 104px) !important;
    padding-bottom: clamp(52px, 15vw, 104px) !important;
  }
}

/* ===== Mobile: Header entschlacken, CTA ins Menü, Legal linksbündig ===== */
@media (max-width: 600px) {
  /* Die CTA-Pille bricht in der schmalen Kopfzeile um -> raus; sie lebt im Menü.
     Den ganzen Buttons-Wrapper ausblenden (nicht nur den Button), sonst bleibt
     dessen 32px-Gap stehen und schiebt den Hamburger nach links (versetzt zum X). */
  .lv-header-right .wp-block-buttons { display: none; }
  /* Give the hamburger a >=44px tap target (the icon alone is only 24px). */
  .webux-headernav .wp-block-navigation__responsive-container-open {
    min-width: 44px; min-height: 44px;
    display: flex; align-items: center; justify-content: center;
  }
  /* Legal-Zeile linksbündig stapeln statt zentriert. */
  .lv-footer-legal { flex-direction: column; align-items: flex-start; gap: 16px; }
  /* Sektionskopf (Titel + Button, z. B. "Aktuelle Immobilien" / "Alle Angebote")
     stapeln, damit der Button nicht auf ~96px gequetscht wird und umbricht. */
  .lv-sec-head { flex-direction: column; align-items: flex-start; gap: 20px; }
  .lv-sec-head .wp-block-buttons { width: auto; }
}
.webux-legalnav .wp-block-navigation__container { justify-content: flex-start; }

/* CTA nur im geöffneten Overlay-Menü sichtbar (auf Desktop existiert die Header-Pille). */
.webux-headernav .lv-nav-cta { display: none; }
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .lv-nav-cta {
	display: block;
	border-bottom: 0;
	margin-top: 28px;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .lv-nav-cta .wp-block-navigation-item__content {
	display: block;
	background: var(--wp--preset--color--primary, #8b8178);
	color: #fff;
	text-align: center;
	padding: 16px 24px;
	border-radius: 999px;
	font-size: 16px;
	font-weight: 500;
}
.webux-headernav .wp-block-navigation__responsive-container.is-menu-open .lv-nav-cta .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--primary-dark, #6f665e);
	color: #fff;
}

/* ===== Finanzierung (Redesign 2026-07) ===== */
/* Wertversprechen: Bild links (300px quadratisch) + Text rechts (teaser-Variante). */
.lv-fin-wert.webux-teaser { max-width: 1040px; margin-inline: auto; gap: 56px; align-items: center; }
@media (min-width: 782px) {
  .lv-fin-wert.webux-teaser { grid-template-columns: 300px 1fr; }
}
.lv-fin-wert .webux-teaser__media img { width: 300px; max-width: 100%; height: 300px; border-radius: 24px; object-fit: cover; }
.lv-fin-wert .webux-teaser__title { font-size: 28px; font-weight: 600; color: #1a1a1a; line-height: 1.2; }
.lv-fin-wert .webux-teaser__text { font-size: 14px; color: #6b6661; line-height: 1.7; }

/* Loesungen: 3 Karten mit Bild + Bullet-Liste (cards-Variante). */
.lv-fin-loesungen .webux-card__media img { height: 190px; object-fit: cover; }
.lv-fin-loesungen .webux-card__title { font-size: 18px; font-weight: 600; color: #1a1a1a; }
.lv-fin-loesungen .webux-card__text ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.lv-fin-loesungen .webux-card__text li { position: relative; padding-left: 18px; font-size: 14px; color: #6b6661; line-height: 1.5; }
.lv-fin-loesungen .webux-card__text li::before { content: ""; position: absolute; left: 0; top: 8px; width: 5px; height: 5px; border-radius: 50%; background: #8b8178; }

/* Lange deutsche Komposita duerfen keinen horizontalen Overflow erzeugen. */
.wp-block-heading,
.webux-page-hero__title,
.webux-section-heading__title,
.webux-teaser__title,
.webux-card__title,
.webux-fincheck__heading,
.webux-fincheck__list-title,
.webux-fincheck__panel-title {
	overflow-wrap: break-word;
	hyphens: auto;
}
