.elementor-4384 .elementor-element.elementor-element-a8cced1{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4384 .elementor-element.elementor-element-035bc48{padding:0px 0px 0px 0px;}.elementor-4384 .elementor-element.elementor-element-981b8b3{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4384 .elementor-element.elementor-element-53e357b{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-4384 .elementor-element.elementor-element-dec22f9{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-4384 .elementor-element.elementor-element-38b29da{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-4384 .elementor-element.elementor-element-bd0f701{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-4384 .elementor-element.elementor-element-5608599{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-4384 .elementor-element.elementor-element-2c2d1c9{--n-accordion-title-font-size:18px;--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:10px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-border-radius:10px 10px 10px 10px;--n-accordion-title-normal-color:#FFFFFF;--n-accordion-title-hover-color:#FFFFFF;--n-accordion-title-active-color:#FFFFFF;--n-accordion-icon-size:15px;}.elementor-4384 .elementor-element.elementor-element-2c2d1c9 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{background-color:#2493D2;}:where( .elementor-4384 .elementor-element.elementor-element-2c2d1c9 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Lora", Sans-serif;}@media(max-width:767px){.elementor-4384 .elementor-element.elementor-element-a8cced1{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4384 .elementor-element.elementor-element-981b8b3{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-4384 .elementor-element.elementor-element-a8cced1{--content-width:100%;}.elementor-4384 .elementor-element.elementor-element-981b8b3{--content-width:100%;}}/* Start custom CSS for text-editor, class: .elementor-element-035bc48 *//* =========================================================
   TEXTEDITOR – KOMPLETTFORMATIERUNG
   ========================================================= */

/* ---------- 1. ÜBERSCHRIFTEN ---------- */
.elementor-widget-text-editor h2,
.elementor-widget-text-editor h3 {
  font-family: "Lora", serif;
  color: #000000;
  line-height: 1.3;
  margin-top: 60px;      /* Abstand VOR jeder Überschrift */
  margin-bottom: 15px;
}

.elementor-widget-text-editor h2 { font-size: 40px; }
.elementor-widget-text-editor h3 { font-size: 30px; }

/* Erste Überschrift im Widget: kein Abstand oben */
.elementor-widget-text-editor h2:first-child,
.elementor-widget-text-editor h3:first-child { margin-top: 0; }


/* ---------- 2. LISTEN & ABSÄTZE ---------- */
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol,
.elementor-widget-text-editor p {
  margin-bottom: 15px;   /* 15px nach dem letzten Bullet Point */
}

.elementor-widget-text-editor li { margin-bottom: 0; }

/* Folgt danach eine H2/H3 -> kein 15px, nur die 60px der Überschrift */
.elementor-widget-text-editor ul:has(+ h2),
.elementor-widget-text-editor ul:has(+ h3),
.elementor-widget-text-editor ol:has(+ h2),
.elementor-widget-text-editor ol:has(+ h3),
.elementor-widget-text-editor p:has(+ h2),
.elementor-widget-text-editor p:has(+ h3) {
  margin-bottom: 0;
}


/* =========================================================
   3. TABELLE
   ========================================================= */
.mietspiegel-wrapper {
  --blue: #2a99cf;
  --dark: #0d5f8f;
  --border: #d9eef8;
  font-family: inherit;
  margin-bottom: 15px;   /* gleiche Logik wie bei Listen */
}

/* Folgt nach der Tabelle eine H2/H3 -> kein 15px */
.mietspiegel-wrapper:has(+ h2),
.mietspiegel-wrapper:has(+ h3) { margin-bottom: 0; }

/* --- Desktop-Tabelle --- */
.mietspiegel-table {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  border: 2px solid var(--blue);
  border-radius: 12px;
  overflow: hidden;
}

.mietspiegel-table > div {
  padding: 22px;
  border-bottom: 1px solid var(--border);
}

.mietspiegel-head {
  background: var(--blue);
  color: #fff;
  font-weight: 700;
  font-size: 18px;
}

.mietspiegel-title {
  color: var(--dark);
  font-weight: 600;
}

/* letzte Zeile ohne Rahmen unten */
.mietspiegel-table > div:nth-last-child(-n+2) {
  border-bottom: none;
}

/* --- Umschalten Desktop / Mobil --- */
@media (min-width: 768px) {
  .mietspiegel-mobile { display: none; }
}

@media (max-width: 767px) {
  .mietspiegel-table { display: none; }
}

/* --- Mobile Karten --- */
@media (max-width: 767px) {
  .mietspiegel-row {
    border: 2px solid var(--blue);
    border-radius: 12px;
    padding: 18px;
    margin-bottom: 16px;
    background: #fff;
  }

  .mietspiegel-row div { margin-bottom: 12px; }
  .mietspiegel-row div:last-child { margin-bottom: 0; }

  .mietspiegel-row div::before {
    content: attr(data-label);
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: var(--blue);
    margin-bottom: 4px;
    text-transform: uppercase;
  }

  /* letzte Karte ohne Abstand unten */
  .mietspiegel-mobile .mietspiegel-row:last-child { margin-bottom: 0; }
}


/* =========================================================
   4. MOBILE ÜBERSCHRIFTEN
   ========================================================= */
@media (max-width: 767px) {
  .elementor-widget-text-editor h2,
  .elementor-widget-text-editor h3 {
    margin-top: 40px;
  }
  .elementor-widget-text-editor h2 { font-size: 25px; }
  .elementor-widget-text-editor h3 { font-size: 20px; }
}/* End custom CSS */