/* Hirschfeld Apartments - Kundinnen-Nachzug 2026-07-07
   Ziel: ruhigere Farben, sauberer Footer, reduzierte Galerien, weniger Einfluganimationen. */
:root {
  --e-global-color-4e19f89: #52604E;
  --e-global-color-f294e0e: #3F4A3C;
  --e-global-color-5ff28b2: #F6F5F1;
  --e-global-color-93c8790: #D9DED4;
  --e-global-color-6610a43: #687064;
  --e-global-color-360a358: #20241F;
}

body {
  background: #FFFFFF;
  color: #30332D;
}

.elementor-widget-button .elementor-button,
.elementor-widget-button a.elementor-button {
  background-color: #52604E;
  border-color: #52604E;
  color: #FFFFFF;
}

.elementor-widget-button .elementor-button:hover,
.elementor-widget-button .elementor-button:focus {
  background-color: #3F4A3C;
  border-color: #3F4A3C;
  color: #FFFFFF;
}

.elementor-location-footer .elementor-element-4eb7a512 {
  background: #F6F5F1;
  padding-top: 56px;
}

.elementor-location-footer .elementor-element-4d3ca4c6 {
  max-width: 1180px;
  margin: 0 auto -42px;
  padding: 34px 36px 0;
  background: #EEF2EC !important;
  border: 1px solid #D9DED4;
  border-radius: 8px;
}

.elementor-location-footer .elementor-element-67e52566 {
  border-color: #52604E !important;
}

.elementor-location-footer .elementor-element-26848b51 .elementor-heading-title,
.elementor-location-footer .elementor-element-375c2cfe .elementor-heading-title,
.elementor-location-footer .elementor-element-d835b75 .elementor-heading-title {
  color: #20241F !important;
}

.elementor-location-footer .elementor-element-2a4cc186 {
  background: #20241F !important;
  padding-top: 92px;
}

.elementor-location-footer .elementor-element-63274528 {
  display: grid;
  grid-template-columns: minmax(240px, 1.35fr) minmax(150px, .8fr) minmax(150px, .8fr) minmax(160px, .7fr);
  gap: 28px;
  align-items: start;
}

.elementor-location-footer .elementor-element-4c2ae41,
.elementor-location-footer .elementor-element-8629f1e,
.elementor-location-footer .elementor-element-39632edc,
.elementor-location-footer .elementor-element-65fd110c {
  width: auto !important;
  padding-left: 0 !important;
}

.elementor-location-footer .elementor-icon-list-icon i,
.elementor-location-footer .elementor-icon-list-icon svg,
.elementor-location-footer .elementor-social-icon {
  color: #AFC0A7 !important;
  fill: #AFC0A7 !important;
}

.elementor-location-footer .elementor-element-db95b52 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  justify-content: center;
}

.elementor-location-footer .elementor-element-db95b52 img {
  width: auto !important;
  max-width: 78px;
  max-height: 78px;
  object-fit: contain;
}

.elementor-17 .elementor-element-d819c55,
.elementor-17 .elementor-element-17b425a,
.elementor-17 .elementor-element-65ba92c {
  display: none !important;
}

.elementor-17 .elementor-element-48d14a3 .elementor-gallery__container,
.elementor-17 .elementor-element-b834131 .elementor-gallery__container,
.elementor-17 .elementor-element-effdcab .elementor-gallery__container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px !important;
  height: auto !important;
}

.elementor-17 .elementor-element-48d14a3 .e-gallery-item,
.elementor-17 .elementor-element-b834131 .e-gallery-item,
.elementor-17 .elementor-element-effdcab .e-gallery-item {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  width: auto !important;
  min-width: 0 !important;
}

.elementor-17 .elementor-element-48d14a3 .e-gallery-item:nth-of-type(n+4),
.elementor-17 .elementor-element-b834131 .e-gallery-item:nth-of-type(n+4),
.elementor-17 .elementor-element-effdcab .e-gallery-item:nth-of-type(n+4) {
  display: none !important;
}

.elementor-17 .elementor-element-e4fc174,
.elementor-17 .elementor-element-38bd323,
.elementor-17 .elementor-element-753767a,
.elementor-19 .elementor-element-6a310b,
.elementor-19 .elementor-element-4c8602f8,
.elementor-19 .elementor-element-6bd47fc8,
.elementor-19 .elementor-element-466eeb42,
.elementor-19 .elementor-element-02f20e1,
.elementor-30 .elementor-element-67e52566,
.elementor-30 .elementor-element-15930bb8,
.elementor-30 .elementor-element-4c2ae41,
.elementor-30 .elementor-element-8629f1e,
.elementor-30 .elementor-element-39632edc {
  visibility: visible !important;
  animation: none !important;
}

@media (max-width: 1024px) {
  .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .elementor-location-footer .elementor-element-4d3ca4c6 {
    margin-bottom: -28px;
    padding: 26px 18px 0;
  }

  .elementor-location-footer .elementor-element-2a4cc186 {
    padding-top: 72px;
  }

  .elementor-location-footer .elementor-element-63274528,
  .elementor-17 .elementor-element-48d14a3 .elementor-gallery__container,
  .elementor-17 .elementor-element-b834131 .elementor-gallery__container,
  .elementor-17 .elementor-element-effdcab .elementor-gallery__container {
    grid-template-columns: 1fr;
  }
}

/* Hirschfeld Apartments - Footer-Feinschliff 2026-07-07 */
.elementor-location-footer .elementor-element.elementor-element-2a4cc186 {
  padding-top: clamp(56px, 6vw, 78px) !important;
}

.elementor-location-footer .elementor-element.elementor-element-63274528 {
  align-items: start !important;
  column-gap: clamp(26px, 4vw, 54px) !important;
  row-gap: 28px !important;
  padding-bottom: 42px !important;
}

.elementor-location-footer .elementor-element.elementor-element-db95b52 {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 8px 20px 28px !important;
  min-height: 0 !important;
}

.elementor-location-footer .elementor-element.elementor-element-db95b52 .elementor-widget-container,
.elementor-location-footer .elementor-element.elementor-element-db95b52 .elementor-image-gallery,
.elementor-location-footer .elementor-element.elementor-element-db95b52 .gallery {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.elementor-location-footer .elementor-element.elementor-element-db95b52 img {
  width: 72px !important;
  height: 72px !important;
  object-fit: contain !important;
}

@media (max-width: 767px) {
  .elementor-location-footer .elementor-element.elementor-element-2a4cc186 {
    padding-top: 54px !important;
  }

  .elementor-location-footer .elementor-element.elementor-element-63274528 {
    padding-bottom: 32px !important;
  }

  .elementor-location-footer .elementor-element.elementor-element-db95b52 {
    padding-bottom: 24px !important;
  }
}

/* Hirschfeld Apartments - finale Farb- und Layoutkorrektur 2026-07-07 */
:root {
  --ha-green: #52604E;
  --ha-green-dark: #313B2F;
  --ha-green-soft: #EAF0E7;
  --ha-ink: #20241F;
  --ha-text: #333832;
  --ha-muted: #687064;
  --ha-line: #DDE4DA;
  --ha-paper: #F7F8F4;
  --e-global-color-primary: var(--ha-green);
  --e-global-color-secondary: var(--ha-ink);
  --e-global-color-accent: var(--ha-green);
  --e-global-color-4e19f89: var(--ha-green);
  --e-global-color-f294e0e: var(--ha-green-dark);
  --e-global-color-5ff28b2: var(--ha-paper);
  --e-global-color-93c8790: var(--ha-green-soft);
  --e-global-color-6610a43: var(--ha-muted);
  --e-global-color-360a358: var(--ha-ink);
}

body:not(.wp-admin) {
  color: var(--ha-text) !important;
  background: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-nav-menu .elementor-item,
body:not(.wp-admin) .elementor-location-header .elementor-nav-menu .elementor-item-active,
body:not(.wp-admin) .elementor-location-header .elementor-nav-menu .elementor-item:hover,
body:not(.wp-admin) .elementor-location-header .elementor-nav-menu .elementor-item:focus,
body:not(.wp-admin) .elementor-location-header .elementor-nav-menu--dropdown,
body:not(.wp-admin) .elementor-location-header .elementor-nav-menu--dropdown a,
body:not(.wp-admin) .elementor-location-footer a,
body:not(.wp-admin) .elementor-icon-list-text,
body:not(.wp-admin) .elementor-heading-title a,
body:not(.wp-admin) .elementskit-info-box-title,
body:not(.wp-admin) .ekit-heading__description,
body:not(.wp-admin) .elementskit-section-subtitle,
body:not(.wp-admin) .ekit-wid-con a:not(.elementor-button) {
  color: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor-button,
body:not(.wp-admin) button:not(.components-button):not(.media-button):not(.customize-controls-close),
body:not(.wp-admin) input[type="submit"],
body:not(.wp-admin) .cky-btn-accept,
body:not(.wp-admin) .cky-btn-revisit,
body:not(.wp-admin) .ekit_creative_button,
body:not(.wp-admin) .elementor-widget-button a.elementor-button {
  background: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor-button:hover,
body:not(.wp-admin) button:not(.components-button):not(.media-button):hover,
body:not(.wp-admin) input[type="submit"]:hover,
body:not(.wp-admin) .cky-btn-accept:hover,
body:not(.wp-admin) .cky-btn-revisit:hover,
body:not(.wp-admin) .elementor-widget-button a.elementor-button:hover {
  background: var(--ha-green-dark) !important;
  border-color: var(--ha-green-dark) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .cky-btn-customize,
body:not(.wp-admin) .cky-btn-reject,
body:not(.wp-admin) .cky-btn-preferences {
  background: #FFFFFF !important;
  color: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
}

body:not(.wp-admin) svg,
body:not(.wp-admin) svg path,
body:not(.wp-admin) .elementor-icon svg,
body:not(.wp-admin) .elementor-icon-list-icon svg,
body:not(.wp-admin) .elementkit-infobox-icon,
body:not(.wp-admin) .elementskit-info-box-icon,
body:not(.wp-admin) .elementskit-info-box-icon i,
body:not(.wp-admin) .elementskit-info-box-icon svg,
body:not(.wp-admin) .rtmicon,
body:not(.wp-admin) .e-font-icon-svg {
  color: var(--ha-green) !important;
  fill: currentColor !important;
  border-color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementskit-info-box-icon,
body:not(.wp-admin) .elementor-icon-list-icon,
body:not(.wp-admin) .elementor-social-icon {
  background-color: var(--ha-green-soft) !important;
  color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor-element-bad6d16,
body:not(.wp-admin) .elementor-element-90224c8,
body:not(.wp-admin) .elementor-element-5f887ad,
body:not(.wp-admin) .elementor-element-cbd17f3,
body:not(.wp-admin) .elementor-element-9e7f322,
body:not(.wp-admin) .elementor-element-2e44f18,
body:not(.wp-admin) .elementskit-infobox,
body:not(.wp-admin) .elementskit-single-testimonial-slider,
body:not(.wp-admin) .elementor-accordion-item,
body:not(.wp-admin) .e-n-accordion-item {
  border-color: var(--ha-line) !important;
  box-shadow: 0 18px 46px rgba(32, 36, 31, .08) !important;
}

body:not(.wp-admin) .elementor-element-7216b7d,
body:not(.wp-admin) .elementor-element-62c7fcb,
body:not(.wp-admin) .elementor-element-5387770,
body:not(.wp-admin) .elementor-element-cbfb397,
body:not(.wp-admin) .elementor-element-4d7d4b8,
body:not(.wp-admin) .elementor-element-40f17db,
body:not(.wp-admin) .elementor-element-83bf760 {
  background-color: var(--ha-green-soft) !important;
  border-color: var(--ha-line) !important;
}

body:not(.wp-admin) .elementor-element-7216b7d .elementor-icon-list-text,
body:not(.wp-admin) .elementor-element-62c7fcb .elementor-icon-list-text,
body:not(.wp-admin) .elementor-element-5387770 .elementor-icon-list-text,
body:not(.wp-admin) .elementor-element-cbfb397 .elementor-icon-list-text {
  color: var(--ha-green-dark) !important;
}

body:not(.wp-admin) .elementor-element-03a4152 .elementskit-info-box-title,
body:not(.wp-admin) .elementor-element-3d109a8 .elementskit-info-box-title,
body:not(.wp-admin) .elementor-element-89676a2 .elementskit-info-box-title {
  font-size: 0 !important;
  line-height: 0 !important;
}

body:not(.wp-admin) .elementor-element-03a4152 .elementskit-info-box-title::after,
body:not(.wp-admin) .elementor-element-3d109a8 .elementskit-info-box-title::after,
body:not(.wp-admin) .elementor-element-89676a2 .elementskit-info-box-title::after {
  display: block;
  color: var(--ha-ink);
  font-size: clamp(20px, 2vw, 26px);
  line-height: 1.18;
  font-weight: 700;
}

body:not(.wp-admin) .elementor-element-03a4152 .elementskit-info-box-title::after {
  content: "Direkt buchen & sparen";
}

body:not(.wp-admin) .elementor-element-3d109a8 .elementskit-info-box-title::after {
  content: "Einfache & direkte Kommunikation";
}

body:not(.wp-admin) .elementor-element-89676a2 .elementskit-info-box-title::after {
  content: "Alle Apartments an derselben Adresse";
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
  display: grid !important;
  grid-template-columns: minmax(260px, .9fr) minmax(320px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(28px, 5vw, 72px) !important;
  max-width: 1180px !important;
  margin: 0 auto -42px !important;
  padding: clamp(28px, 4vw, 44px) !important;
  background: var(--ha-green-soft) !important;
  border: 1px solid var(--ha-line) !important;
  border-radius: 8px !important;
  position: relative !important;
  z-index: 2 !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-67e52566,
body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 {
  width: 100% !important;
  max-width: none !important;
  transform: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-67e52566 img {
  width: 100% !important;
  max-height: 260px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 p {
  color: var(--ha-ink) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  background: var(--ha-ink) !important;
  padding: 92px 0 22px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding-inline: 20px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.35fr) minmax(170px, .7fr) minmax(170px, .7fr) !important;
  gap: clamp(28px, 4vw, 56px) !important;
  align-items: start !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 0 34px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41,
body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc {
  width: 100% !important;
  max-width: none !important;
  transform: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5860fa90 img {
  width: 118px !important;
  max-width: 118px !important;
  height: auto !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 p,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 .elementor-icon-list-text,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 a {
  color: #F4F6F2 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 a:hover {
  color: #C9D5C4 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-social-icon {
  background: rgba(255,255,255,.09) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 4px 20px 24px !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 img {
  width: 68px !important;
  height: 68px !important;
  object-fit: contain !important;
  display: block !important;
}

body:not(.wp-admin) .elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

body:not(.wp-admin) .animated,
body:not(.wp-admin) .animated-slow,
body:not(.wp-admin) [class*="fadeIn"],
body:not(.wp-admin) [class*="slideIn"],
body:not(.wp-admin) [class*="zoomIn"],
body:not(.wp-admin) [data-settings*="animation"] {
  animation: none !important;
  animation-delay: 0s !important;
  animation-duration: 0s !important;
  transform: none !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
    padding-top: 74px !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
    margin: 0 16px -34px !important;
    padding: 24px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
    padding-top: 64px !important;
  }
}

/* Hirschfeld Apartments - braune Restakzente entfernen 2026-07-07 */
body:not(.wp-admin) .ekit-heading--title span,
body:not(.wp-admin) .elementskit-section-title span,
body:not(.wp-admin) .elementor-widget-heading .elementor-heading-title span,
body:not(.wp-admin) .elementor-widget-elementskit-heading span,
body:not(.wp-admin) .elementskit-author-des,
body:not(.wp-admin) .elementskit-watermark-icon,
body:not(.wp-admin) .icon-quote,
body:not(.wp-admin) .elementor-icon-box-title,
body:not(.wp-admin) .elementor-icon-box-title span,
body:not(.wp-admin) .elementor-element-4b617ca .elementor-heading-title,
body:not(.wp-admin) .elementor-element-a03388a .elementor-heading-title,
body:not(.wp-admin) .elementor-element-7c042bb .elementor-heading-title {
  color: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor-element-157a01b .ekit-heading--title,
body:not(.wp-admin) .elementor-element-157a01b .ekit-heading--title span {
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-element-75adbb7d a,
body:not(.wp-admin) .elementor-element-75adbb7d img {
  color: transparent !important;
  border-color: transparent !important;
}

body:not(.wp-admin) .elementor-widget-heading .elementor-heading-title,
body:not(.wp-admin) .elementor-icon-box-wrapper,
body:not(.wp-admin) .elementor-icon-box-wrapper * {
  border-color: var(--ha-line) !important;
}

body:not(.wp-admin) .elementor-icon-box-title,
body:not(.wp-admin) .elementor-icon-box-title span {
  color: var(--ha-ink) !important;
}

body:not(.wp-admin) .elementor-widget-icon-box .elementor-icon,
body:not(.wp-admin) .elementor-view-stacked .elementor-icon {
  background-color: var(--ha-green) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-view-stacked .elementor-icon svg,
body:not(.wp-admin) .elementor-view-stacked .elementor-icon svg path {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}

/* Hirschfeld Apartments - alte braune Linienreste entfernen 2026-07-07 */
body:not(.wp-admin) .elementor-widget-icon-list,
body:not(.wp-admin) .elementor-widget-icon-list *,
body:not(.wp-admin) .elementor-icon-list-items,
body:not(.wp-admin) .elementor-icon-list-item,
body:not(.wp-admin) .elementor-icon-list-icon,
body:not(.wp-admin) .elementor-icon-list-text {
  border-color: var(--ha-line) !important;
}

/* Hirschfeld Apartments - globale Designbereinigung 2026-07-07 v2 */
:root {
  --ha-green: #52604E;
  --ha-green-dark: #263226;
  --ha-green-mid: #6F816A;
  --ha-green-soft: #EAF0E7;
  --ha-sage-light: #C9D8C3;
  --ha-ink: #20241F;
  --ha-text: #30362F;
  --ha-muted: #687064;
  --ha-line: #DCE4D8;
  --ha-paper: #F7F8F4;
  --ha-white: #FFFFFF;
  --e-global-color-primary: var(--ha-green) !important;
  --e-global-color-secondary: var(--ha-ink) !important;
  --e-global-color-accent: var(--ha-green) !important;
  --e-global-color-text: var(--ha-text) !important;
  --e-global-color-4e19f89: var(--ha-green) !important;
  --e-global-color-f294e0e: var(--ha-green-dark) !important;
  --e-global-color-5ff28b2: var(--ha-paper) !important;
  --e-global-color-93c8790: var(--ha-green-soft) !important;
  --e-global-color-6610a43: var(--ha-muted) !important;
  --e-global-color-360a358: var(--ha-ink) !important;
}

body:not(.wp-admin) .elementor,
body:not(.wp-admin) .elementor * {
  border-color: var(--ha-line) !important;
}

body:not(.wp-admin) .elementor h1,
body:not(.wp-admin) .elementor h2,
body:not(.wp-admin) .elementor h3,
body:not(.wp-admin) .elementor h4,
body:not(.wp-admin) .elementor .elementor-heading-title,
body:not(.wp-admin) .elementor .elementskit-section-title,
body:not(.wp-admin) .elementor .elementskit-info-box-title,
body:not(.wp-admin) .elementor .elementor-icon-box-title,
body:not(.wp-admin) .elementor .ekit-heading--title {
  color: var(--ha-ink) !important;
}

body:not(.wp-admin) .elementor p,
body:not(.wp-admin) .elementor li,
body:not(.wp-admin) .elementor .elementor-widget-text-editor,
body:not(.wp-admin) .elementor .elementor-icon-list-text,
body:not(.wp-admin) .elementor .elementskit-author-des,
body:not(.wp-admin) .elementor .elementskit-commentor-content,
body:not(.wp-admin) .elementor .elementor-icon-box-description {
  color: var(--ha-muted) !important;
}

body:not(.wp-admin) .elementor a:not(.elementor-button),
body:not(.wp-admin) .elementor .ekit-heading--title span,
body:not(.wp-admin) .elementor .elementskit-section-title span,
body:not(.wp-admin) .elementor .elementor-heading-title span,
body:not(.wp-admin) .elementor .elementskit-watermark-icon,
body:not(.wp-admin) .elementor .icon-quote,
body:not(.wp-admin) .elementor .elementor-star-rating i,
body:not(.wp-admin) .elementor .elementor-icon,
body:not(.wp-admin) .elementor .elementor-icon svg,
body:not(.wp-admin) .elementor .elementor-icon svg path,
body:not(.wp-admin) .elementor .e-font-icon-svg,
body:not(.wp-admin) .elementor .e-font-icon-svg path,
body:not(.wp-admin) .elementor .rtmicon,
body:not(.wp-admin) .elementor [class*="rtmicon"],
body:not(.wp-admin) .elementor [class*="icon-"] {
  color: var(--ha-green) !important;
  fill: currentColor !important;
}

body:not(.wp-admin) .elementor .elementor-widget-button .elementor-button,
body:not(.wp-admin) .elementor a.elementor-button,
body:not(.wp-admin) .elementor button,
body:not(.wp-admin) .cky-btn-accept,
body:not(.wp-admin) .cky-btn-revisit {
  background: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor .elementor-widget-button .elementor-button:hover,
body:not(.wp-admin) .elementor a.elementor-button:hover,
body:not(.wp-admin) .elementor button:hover,
body:not(.wp-admin) .cky-btn-accept:hover,
body:not(.wp-admin) .cky-btn-revisit:hover {
  background: var(--ha-green-dark) !important;
  border-color: var(--ha-green-dark) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .cky-btn-customize,
body:not(.wp-admin) .cky-btn-reject,
body:not(.wp-admin) .cky-btn-preferences {
  background: #FFFFFF !important;
  border-color: var(--ha-green) !important;
  color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor .elementor-element-74606c8d h1,
body:not(.wp-admin) .elementor .elementor-element-74606c8d h2,
body:not(.wp-admin) .elementor .elementor-element-74606c8d h3,
body:not(.wp-admin) .elementor .elementor-element-74606c8d p,
body:not(.wp-admin) .elementor .elementor-element-74606c8d span,
body:not(.wp-admin) .elementor .elementor-element-73780d0 h1,
body:not(.wp-admin) .elementor .elementor-element-73780d0 h2,
body:not(.wp-admin) .elementor .elementor-element-73780d0 h3,
body:not(.wp-admin) .elementor .elementor-element-73780d0 p,
body:not(.wp-admin) .elementor .elementor-element-73780d0 span,
body:not(.wp-admin) .elementor .elementor-element-15339c99 h1,
body:not(.wp-admin) .elementor .elementor-element-15339c99 h2,
body:not(.wp-admin) .elementor .elementor-element-15339c99 h3,
body:not(.wp-admin) .elementor .elementor-element-15339c99 p,
body:not(.wp-admin) .elementor .elementor-element-15339c99 span {
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor .elementor-element-74606c8d .elementor-button,
body:not(.wp-admin) .elementor .elementor-element-73780d0 .elementor-button,
body:not(.wp-admin) .elementor .elementor-element-15339c99 .elementor-button {
  border-color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor .elementskit-infobox,
body:not(.wp-admin) .elementor .elementor-icon-box-wrapper,
body:not(.wp-admin) .elementor .elementskit-single-testimonial-slider,
body:not(.wp-admin) .elementor .e-con.e-child:has(.elementor-widget-image),
body:not(.wp-admin) .elementor .e-gallery-item {
  border-color: var(--ha-line) !important;
  box-shadow: 0 16px 40px rgba(32, 36, 31, .08) !important;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152,
body:not(.wp-admin) .elementor .elementor-element-3d109a8,
body:not(.wp-admin) .elementor .elementor-element-89676a2 {
  overflow: hidden !important;
  border-radius: 8px !important;
  border: 1px solid var(--ha-line) !important;
  background: #FFFFFF !important;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 .elementskit-infobox,
body:not(.wp-admin) .elementor .elementor-element-3d109a8 .elementskit-infobox,
body:not(.wp-admin) .elementor .elementor-element-89676a2 .elementskit-infobox {
  min-height: 100% !important;
  background: #FFFFFF !important;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 .elementskit-info-box-icon,
body:not(.wp-admin) .elementor .elementor-element-3d109a8 .elementskit-info-box-icon,
body:not(.wp-admin) .elementor .elementor-element-89676a2 .elementskit-info-box-icon,
body:not(.wp-admin) .elementor .elementor-widget-icon-box .elementor-icon,
body:not(.wp-admin) .elementor .elementor-view-stacked .elementor-icon {
  background: var(--ha-green-soft) !important;
  color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 .elementskit-info-box-title,
body:not(.wp-admin) .elementor .elementor-element-3d109a8 .elementskit-info-box-title,
body:not(.wp-admin) .elementor .elementor-element-89676a2 .elementskit-info-box-title {
  font-size: 0 !important;
  line-height: 0 !important;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 .elementskit-info-box-title::after,
body:not(.wp-admin) .elementor .elementor-element-3d109a8 .elementskit-info-box-title::after,
body:not(.wp-admin) .elementor .elementor-element-89676a2 .elementskit-info-box-title::after {
  display: block;
  color: var(--ha-ink) !important;
  font-size: clamp(21px, 1.75vw, 28px);
  line-height: 1.18;
  font-weight: 750;
  letter-spacing: 0;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 .elementskit-info-box-title::after { content: "Direkt buchen & sparen"; }
body:not(.wp-admin) .elementor .elementor-element-3d109a8 .elementskit-info-box-title::after { content: "Einfache & direkte Kommunikation"; }
body:not(.wp-admin) .elementor .elementor-element-89676a2 .elementskit-info-box-title::after { content: "Alle Apartments an derselben Adresse"; }

body:not(.wp-admin) .elementor .elementor-element-4b617ca .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-a03388a .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-7c042bb .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-113503f .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-e4b032b .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-9084b50 .elementor-heading-title,
body:not(.wp-admin) .elementor .elementor-element-8cf0299 .elementor-heading-title {
  color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor .elementor-element-113503f,
body:not(.wp-admin) .elementor .elementor-element-e4b032b,
body:not(.wp-admin) .elementor .elementor-element-9084b50,
body:not(.wp-admin) .elementor .elementor-element-8cf0299 {
  border-color: var(--ha-line) !important;
  background: rgba(255,255,255,.86) !important;
}

body:not(.wp-admin) .elementor .elementor-element-4162ff3,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f,
body:not(.wp-admin) .elementor .elementor-element-9bd1576,
body:not(.wp-admin) .elementor .elementor-element-f065d08,
body:not(.wp-admin) .elementor .elementor-element-65c1d83 {
  background: var(--ha-green-dark) !important;
}

body:not(.wp-admin) .elementor .elementor-element-4162ff3 h1,
body:not(.wp-admin) .elementor .elementor-element-4162ff3 h2,
body:not(.wp-admin) .elementor .elementor-element-4162ff3 h3,
body:not(.wp-admin) .elementor .elementor-element-4162ff3 p,
body:not(.wp-admin) .elementor .elementor-element-4162ff3 span,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f h1,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f h2,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f h3,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f p,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f span,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 h1,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 h2,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 h3,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 p,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 span {
  color: #F5F8F3 !important;
}

body:not(.wp-admin) .elementor .elementor-element-4162ff3 .ekit-heading--title span,
body:not(.wp-admin) .elementor .elementor-element-b4fcf3f .ekit-heading--title span,
body:not(.wp-admin) .elementor .elementor-element-9bd1576 .ekit-heading--title span {
  color: var(--ha-sage-light) !important;
}

body:not(.wp-admin) .elementor img:not(.avatar):not(.emoji):not([src*="logo"]):not([src*="award"]):not([src*="IMG_6688"]),
body:not(.wp-admin) .elementor .e-gallery-image,
body:not(.wp-admin) .elementor [style*="background-image"] {
  object-fit: cover !important;
  background-size: cover !important;
  background-position: center center !important;
}

body:not(.wp-admin) .elementor .elementor-widget-image img:not(.avatar):not(.emoji):not([src*="logo"]):not([src*="award"]):not([src*="IMG_6688"]) {
  width: 100% !important;
  aspect-ratio: 4 / 3;
  max-height: 420px;
  object-fit: cover !important;
  border-radius: 8px;
}

body:not(.wp-admin) .elementor .elementor-element-03a4152 img,
body:not(.wp-admin) .elementor .elementor-element-3d109a8 img,
body:not(.wp-admin) .elementor .elementor-element-89676a2 img {
  aspect-ratio: 16 / 10 !important;
  min-height: 300px !important;
  object-fit: cover !important;
}

body:not(.wp-admin) .elementor .elementor-gallery__container,
body:not(.wp-admin) .elementor .e-gallery-container {
  gap: 12px !important;
}

body:not(.wp-admin) .elementor .e-gallery-item,
body:not(.wp-admin) .elementor .e-gallery-image {
  border-radius: 8px !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-location-footer {
  background: var(--ha-green-dark) !important;
  color: #F4F7F1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 24px !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 26px 32px !important;
  min-height: 0 !important;
  background: var(--ha-green-soft) !important;
  border: 1px solid var(--ha-line) !important;
  border-radius: 8px !important;
  transform: translateY(34px) !important;
  position: relative !important;
  z-index: 3 !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-67e52566 {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 20px !important;
  transform: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 h2,
body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 p,
body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 .elementor-heading-title {
  color: var(--ha-ink) !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  background: var(--ha-green-dark) !important;
  padding: 76px 0 22px !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  max-width: 1180px !important;
  padding-inline: 24px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  display: grid !important;
  grid-template-columns: minmax(280px, 1.25fr) minmax(180px, .7fr) minmax(180px, .7fr) !important;
  gap: clamp(28px, 4vw, 64px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 0 30px !important;
  align-items: start !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 h1,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 h2,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 h3,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 p,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 span,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 a,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 .elementor-icon-list-text {
  color: #F4F7F1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 a:hover {
  color: var(--ha-sage-light) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5860fa90 img,
body:not(.wp-admin) .elementor-location-footer img[src*="logo"] {
  width: 104px !important;
  max-width: 104px !important;
  height: auto !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) opacity(.9) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-social-icon {
  background: rgba(255,255,255,.10) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 8px 24px 18px !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  border-radius: 6px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-42dc68e {
  border-top: 1px solid rgba(255,255,255,.16) !important;
  padding-top: 18px !important;
}

body:not(.wp-admin) .elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

body:not(.wp-admin) .animated,
body:not(.wp-admin) .animated-slow,
body:not(.wp-admin) [class*="fadeIn"],
body:not(.wp-admin) [class*="slideIn"],
body:not(.wp-admin) [class*="zoomIn"],
body:not(.wp-admin) [data-settings*="animation"] {
  animation: none !important;
  animation-delay: 0s !important;
  animation-duration: 0s !important;
  transform: none !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
    margin: 0 20px !important;
    transform: translateY(28px) !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
    padding-top: 62px !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor .elementor-widget-image img:not(.avatar):not(.emoji):not([src*="logo"]):not([src*="award"]):not([src*="IMG_6688"]) {
    aspect-ratio: 4 / 3;
    max-height: 320px;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
    padding: 22px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
    padding-inline: 20px !important;
  }
}

/* Hirschfeld Apartments - Footerhoehe und Accordion-Restfarbe 2026-07-07 */
body:not(.wp-admin) .elementor .e-n-accordion-item-title,
body:not(.wp-admin) .elementor .e-n-accordion-item-title-header,
body:not(.wp-admin) .elementor .e-n-accordion-item-title-text {
  background: var(--ha-green) !important;
  border-color: var(--ha-green) !important;
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor .e-n-accordion-item-title svg,
body:not(.wp-admin) .elementor .e-n-accordion-item-title svg path {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
  height: auto !important;
  min-height: 0 !important;
  align-self: auto !important;
  padding: 24px 30px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  column-gap: 28px !important;
  row-gap: 10px !important;
  align-items: center !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 > .elementor-element {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-26848b51 {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-375c2cfe {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-d835b75 {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: end !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 {
  grid-column: 2 !important;
  grid-row: 2 !important;
  justify-self: end !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-26848b51 .elementor-heading-title {
  font-size: clamp(26px, 3vw, 38px) !important;
  line-height: 1.12 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-375c2cfe .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-d835b75 .elementor-heading-title {
  font-size: clamp(16px, 1.4vw, 20px) !important;
  line-height: 1.45 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  padding-top: 58px !important;
  padding-bottom: 18px !important;
  height: auto !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  padding-bottom: 22px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41 {
  height: auto !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5118e46d p {
  line-height: 1.55 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 {
    grid-template-columns: 1fr !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-26848b51,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-375c2cfe,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-d835b75,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 {
    grid-column: 1 !important;
    justify-self: start !important;
  }
}

/* Hirschfeld Apartments - Footer Innenabstand final 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  padding-top: 0 !important;
  padding-bottom: 18px !important;
  min-height: 0 !important;
  height: auto !important;
  justify-content: flex-start !important;
  gap: 18px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  height: auto !important;
}

/* Hirschfeld Apartments - Footer nach Referenzlayout 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer {
  --footer-black: #050705;
  --footer-ink: #0A0D09;
  --footer-text: rgba(255,255,255,.74);
  --footer-heading: #F7F8F4;
  --footer-line: rgba(255,255,255,.82);
  background: var(--footer-black) !important;
  color: var(--footer-text) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
  min-height: 360px !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background-image: linear-gradient(90deg, rgba(5,7,5,.72) 0%, rgba(5,7,5,.48) 34%, rgba(5,7,5,.10) 62%, rgba(5,7,5,.06) 100%), url('https://hirschfeld-apartments.de/wp-content/uploads/2026/01/697631_poster-e1767766557483-1024x684.jpg') !important;
  background-size: cover !important;
  background-position: center 54% !important;
  display: flex !important;
  align-items: stretch !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 > .e-con-inner {
  max-width: 1180px !important;
  width: 100% !important;
  min-height: 360px !important;
  height: auto !important;
  padding: 0 24px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
  width: min(430px, calc(100vw - 48px)) !important;
  max-width: 430px !important;
  min-height: 255px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 42px 44px !important;
  transform: none !important;
  display: block !important;
  align-self: flex-start !important;
  background: var(--footer-black) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-67e52566 {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-15930bb8 > .elementor-element {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-26848b51 .elementor-heading-title {
  color: var(--footer-heading) !important;
  font-size: 30px !important;
  line-height: 1.24 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-375c2cfe {
  margin-top: 18px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-375c2cfe .elementor-heading-title {
  color: var(--footer-text) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-d835b75 {
  margin-top: 24px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-d835b75 .elementor-heading-title {
  color: var(--footer-heading) !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 {
  margin-top: 24px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button {
  background: #FFFFFF !important;
  border: 1px solid #FFFFFF !important;
  color: var(--footer-black) !important;
  border-radius: 0 !important;
  padding: 16px 26px !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button:hover {
  background: var(--ha-sage-light) !important;
  border-color: var(--ha-sage-light) !important;
  color: var(--footer-black) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  background: var(--footer-black) !important;
  color: var(--footer-text) !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 86px 0 34px !important;
  border: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  max-width: 1180px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 54px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  display: grid !important;
  grid-template-columns: minmax(210px, .95fr) minmax(180px, .75fr) minmax(150px, .55fr) minmax(180px, .7fr) !important;
  column-gap: clamp(42px, 7vw, 96px) !important;
  row-gap: 42px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41,
body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc,
body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  grid-column: 3 !important;
  grid-row: 1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52::before {
  content: 'Bewertungen';
  display: block;
  color: var(--footer-heading);
  font-size: 23px;
  line-height: 1.2;
  font-weight: 300;
  letter-spacing: 0;
  margin-bottom: 16px;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52::after {
  content: '';
  display: block;
  order: -1;
  width: 36px;
  height: 1px;
  background: var(--footer-line);
  margin-top: 42px;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 .elementor-widget-image {
  display: inline-block !important;
  width: auto !important;
  max-width: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 img {
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  border-radius: 2px !important;
  opacity: .92 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5860fa90 {
  height: auto !important;
  margin-bottom: 22px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5860fa90 img,
body:not(.wp-admin) .elementor-location-footer img[src*='logo'] {
  width: 138px !important;
  max-width: 138px !important;
  height: auto !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) opacity(.94) !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5118e46d,
body:not(.wp-admin) .elementor-location-footer .elementor-element-7965310c {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc {
  grid-column: 4 !important;
  grid-row: 1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc .elementor-heading-title {
  color: var(--footer-heading) !important;
  font-size: 23px !important;
  line-height: 1.2 !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  margin: 0 0 22px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e .elementor-heading-title::after,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc .elementor-heading-title::after {
  content: '';
  display: block;
  width: 36px;
  height: 1px;
  background: var(--footer-line);
  margin-top: 18px;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-items {
  display: grid !important;
  gap: 13px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-item,
body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-item a {
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-icon {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer a,
body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-text,
body:not(.wp-admin) .elementor-location-footer p,
body:not(.wp-admin) .elementor-location-footer span {
  color: var(--footer-text) !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  font-weight: 300 !important;
  text-decoration: none !important;
}

body:not(.wp-admin) .elementor-location-footer a:hover,
body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-item a:hover .elementor-icon-list-text {
  color: #FFFFFF !important;
  text-decoration: underline !important;
  text-underline-offset: 5px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 88px 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  border: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-heading-title {
  color: rgba(255,255,255,.62) !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 300 !important;
  text-align: left !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 > .e-con-inner {
    min-height: 320px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 56px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e {
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
    min-height: 0 !important;
    background-position: center center !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 > .e-con-inner {
    min-height: 0 !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
    width: 100% !important;
    max-width: none !important;
    padding: 34px 24px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
    padding: 58px 0 30px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
    padding: 0 24px !important;
    gap: 42px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr !important;
    gap: 38px !important;
  }

  body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
    margin-top: 48px !important;
  }
}

/* Hirschfeld Apartments - Footer Referenzlayout Feinschliff 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528,
body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
  --width: 100% !important;
  width: 100% !important;
  inline-size: 100% !important;
  max-width: 1180px !important;
  align-self: stretch !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  grid-template-columns: minmax(180px, .9fr) minmax(180px, .78fr) minmax(150px, .58fr) minmax(180px, .74fr) !important;
  justify-content: space-between !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52::before {
  order: 0 !important;
  flex: 0 0 100% !important;
  margin: 0 0 18px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52::after {
  order: 1 !important;
  flex: 0 0 36px !important;
  margin: -4px 0 22px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 .elementor-widget-image {
  order: 2 !important;
  flex: 0 0 auto !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 img {
  width: 54px !important;
  height: 54px !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
  margin: 82px 0 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  text-align: left !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-widget,
body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-widget-container,
body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-heading-title {
  width: 100% !important;
  max-width: none !important;
  text-align: left !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
    max-width: 160px !important;
  }
}


/* Hirschfeld Apartments - Footer nur Referenzlayout final 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer {
  background: #050605 !important;
  color: #D6D8D3 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
  position: relative !important;
  min-height: clamp(320px, 34vw, 390px) !important;
  padding: clamp(34px, 5vw, 64px) 0 0 !important;
  background-color: #050605 !important;
  background-image:
    linear-gradient(90deg, rgba(5, 6, 5, .88) 0%, rgba(5, 6, 5, .68) 38%, rgba(5, 6, 5, .10) 72%),
    url('https://hirschfeld-apartments.de/wp-content/uploads/2026/01/697631_poster-e1767766557483-1024x684.jpg') !important;
  background-size: cover !important;
  background-position: center 58% !important;
  border: 0 !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512::before,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512::after {
  display: none !important;
  content: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
  width: min(430px, calc(100% - 48px)) !important;
  max-width: 430px !important;
  margin: 0 auto 0 max(24px, calc((100vw - 1180px) / 2)) !important;
  padding: clamp(34px, 4vw, 46px) clamp(30px, 4vw, 44px) !important;
  background: #050605 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-heading-title {
  color: #F5F5F1 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 p,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-icon-list-text {
  color: #C7CBC3 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button {
  background: #F7F7F2 !important;
  color: #1B1E1A !important;
  border: 1px solid #F7F7F2 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button:hover,
body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button:focus {
  background: #DDE4DA !important;
  color: #1B1E1A !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
  position: relative !important;
  background: #050605 !important;
  padding: clamp(78px, 8vw, 104px) 0 34px !important;
  margin: 0 !important;
  border: 0 !important;
  min-height: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
  --width: 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
  display: grid !important;
  grid-template-columns: minmax(240px, 1.2fr) minmax(210px, .8fr) minmax(220px, .8fr) !important;
  column-gap: clamp(72px, 11vw, 150px) !important;
  row-gap: 42px !important;
  align-items: start !important;
  padding: 0 !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41,
body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc {
  --width: auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  align-self: start !important;
  justify-self: stretch !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41 { grid-column: 1 !important; }
body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e { grid-column: 2 !important; }
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc { grid-column: 3 !important; }

body:not(.wp-admin) .elementor-location-footer .elementor-element-5118e46d,
body:not(.wp-admin) .elementor-location-footer .elementor-element-7965310c,
body:not(.wp-admin) .elementor-location-footer .elementor-element-db95b52 {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-5860fa90 img {
  width: clamp(150px, 16vw, 205px) !important;
  max-width: 100% !important;
  height: auto !important;
  filter: brightness(0) invert(1) !important;
  opacity: .96 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e .elementor-heading-title,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc .elementor-heading-title {
  position: relative !important;
  display: inline-block !important;
  margin: 0 0 42px !important;
  padding: 0 0 18px !important;
  color: #F2F2ED !important;
  font-size: clamp(22px, 2vw, 27px) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e .elementor-heading-title::after,
body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc .elementor-heading-title::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 44px !important;
  height: 1px !important;
  background: #F2F2ED !important;
  opacity: .9 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-items {
  display: flex !important;
  flex-direction: column !important;
  gap: 15px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-item {
  margin: 0 !important;
  padding: 0 !important;
  align-items: flex-start !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-icon {
  display: none !important;
}

body:not(.wp-admin) .elementor-location-footer a,
body:not(.wp-admin) .elementor-location-footer .elementor-icon-list-text {
  color: #C7CBC3 !important;
  fill: #C7CBC3 !important;
  font-size: clamp(17px, 1.4vw, 20px) !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-decoration: none !important;
  transition: color .2s ease !important;
}

body:not(.wp-admin) .elementor-location-footer a:hover,
body:not(.wp-admin) .elementor-location-footer a:focus {
  color: #FFFFFF !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
  --width: 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: flex-end !important;
  margin: clamp(90px, 10vw, 128px) 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  background: transparent !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-widget,
body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-widget-container,
body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c .elementor-heading-title {
  width: 100% !important;
  max-width: none !important;
  text-align: left !important;
  color: #AEB3AC !important;
  font-size: clamp(15px, 1.3vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr 1fr !important;
    column-gap: 54px !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41 {
    grid-column: 1 / -1 !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e { grid-column: 1 !important; }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc { grid-column: 2 !important; }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
    min-height: auto !important;
    padding: 42px 0 !important;
    background-position: center center !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 {
    width: calc(100% - 32px) !important;
    margin: 0 auto !important;
    padding: 30px 24px !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 {
    padding: 58px 0 28px !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-2a4cc186 > .e-con-inner {
    width: calc(100% - 36px) !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-63274528 {
    grid-template-columns: 1fr !important;
    row-gap: 44px !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4c2ae41,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc {
    grid-column: 1 !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-8629f1e .elementor-heading-title,
  body:not(.wp-admin) .elementor-location-footer .elementor-element-39632edc .elementor-heading-title {
    margin-bottom: 24px !important;
  }
  body:not(.wp-admin) .elementor-location-footer .elementor-element-65fd110c {
    margin-top: 58px !important;
  }
}


/* Hirschfeld Apartments - Footer CTA Kontrastfix 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-icon-list-text,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-icon-list-icon i,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-icon-list-icon svg {
  color: #D6D8D3 !important;
  fill: #D6D8D3 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button,
body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button * {
  color: #171A16 !important;
  fill: #171A16 !important;
}

body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button:hover,
body:not(.wp-admin) .elementor-location-footer .elementor-element-23c6d873 .elementor-button:hover * {
  color: #171A16 !important;
  fill: #171A16 !important;
}


/* Hirschfeld Apartments - Footer Telefon Kontrastfix 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-element-d835b75,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-element-d835b75 *,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-element-d835b75 a,
body:not(.wp-admin) .elementor-location-footer .elementor-element-4d3ca4c6 .elementor-element-d835b75 .elementor-heading-title {
  color: #D6D8D3 !important;
  fill: #D6D8D3 !important;
}


/* Hirschfeld Apartments - Fix Startseite Anfrage und Bewertungen 2026-07-07 */
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d{background:#f4f7f1!important;padding:88px 0!important;color:#20241f!important;overflow:hidden!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d>.e-con-inner{width:min(1180px,calc(100% - 48px))!important;max-width:1180px!important;margin:0 auto!important;gap:48px!important}
body:not(.wp-admin) .elementor-14 .elementor-element-46ba0af{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr)!important;gap:64px!important;align-items:end!important;width:100%!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .ekit-heading--title,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d h2{color:#20241f!important;text-shadow:none!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .ekit-heading--title span{color:#52604e!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d p,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementskit-author-des,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementskit-commentor-content,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementskit-commentor-content p{color:#5d6759!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementskit-author-name{color:#20241f!important}
body:not(.wp-admin) .elementor-14 .elementor-element-6243f62 .elementskit-single-testimonial-slider{background:#fff!important;border:1px solid #dde5d9!important;border-radius:8px!important;box-shadow:0 18px 42px rgba(32,36,31,.08)!important;min-height:295px!important;padding:34px 28px!important}
body:not(.wp-admin) .elementor-14 .elementor-element-a2b8bb7 .elementor-button{background:#52604e!important;color:#fff!important;border-color:#52604e!important;border-radius:6px!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f{background:#203024!important;padding:88px 0!important;color:#f6f8f3!important;overflow:hidden!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f>.e-con-inner{width:min(1180px,calc(100% - 48px))!important;max-width:1180px!important;margin:0 auto!important;gap:50px!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b6833e4{max-width:760px!important;margin:0 auto!important;text-align:center!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .ekit-heading--title,body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f h2{color:#fff!important;text-shadow:none!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f p{color:#dce5d8!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important;width:100%!important}
body:not(.wp-admin) .elementor-14 .elementor-element-3317138,body:not(.wp-admin) .elementor-14 .elementor-element-abd422e,body:not(.wp-admin) .elementor-14 .elementor-element-46b1d8d,body:not(.wp-admin) .elementor-14 .elementor-element-78358b9{background:#fff!important;border:1px solid #dde5d9!important;border-radius:8px!important;box-shadow:0 20px 44px rgba(8,14,10,.14)!important;height:auto!important;min-height:360px!important;padding:52px 24px 34px!important;width:auto!important;max-width:none!important;min-width:0!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .elementor-icon-box-title,body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .elementor-icon-box-title a{color:#20241f!important;opacity:1!important;text-shadow:none!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .elementor-icon-box-description{color:#5d6759!important;opacity:1!important;text-shadow:none!important}
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .elementor-icon{background:#e8f0e5!important;color:#52604e!important;fill:#52604e!important}
body:not(.wp-admin) .elementor-14 .elementor-element-841dffd .elementor-heading-title,body:not(.wp-admin) .elementor-14 .elementor-element-c897390 .elementor-heading-title,body:not(.wp-admin) .elementor-14 .elementor-element-1606ede .elementor-heading-title,body:not(.wp-admin) .elementor-14 .elementor-element-cc10362 .elementor-heading-title{color:#fff!important}
@media(max-width:1024px){body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b{grid-template-columns:repeat(2,minmax(0,1fr))!important}body:not(.wp-admin) .elementor-14 .elementor-element-46ba0af{grid-template-columns:1fr!important;text-align:center!important}}
@media(max-width:767px){body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d,body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f{padding:58px 0!important}body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d>.e-con-inner,body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f>.e-con-inner{width:calc(100% - 36px)!important}body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b{grid-template-columns:1fr!important}body:not(.wp-admin) .elementor-14 .elementor-element-3317138,body:not(.wp-admin) .elementor-14 .elementor-element-abd422e,body:not(.wp-admin) .elementor-14 .elementor-element-46b1d8d,body:not(.wp-admin) .elementor-14 .elementor-element-78358b9{min-height:0!important}}


/* Hirschfeld Apartments - Bewertungsbereich dunkler Kontrastfix 2026-07-07 */
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d{background:#203024!important;color:#f6f8f3!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .ekit-heading--title,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d h2{color:#fff!important;text-shadow:none!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .ekit-heading--title span{color:#dce5d8!important}
body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementor-icon-list-text,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementor-icon-list-icon i,body:not(.wp-admin) .elementor-14 .elementor-element-de82f5d .elementor-icon-list-icon svg{color:#e6ece2!important;fill:#e6ece2!important}
body:not(.wp-admin) .elementor-14 .elementor-element-c2c7e6c,body:not(.wp-admin) .elementor-14 .elementor-element-c2c7e6c p{color:#dce5d8!important;opacity:1!important}
body:not(.wp-admin) .elementor-14 .elementor-element-a2b8bb7 .elementor-button{background:#52604e!important;color:#fff!important;border-color:#52604e!important}


/* Hirschfeld Apartments - Anfragekarten Titelspan Kontrastfix 2026-07-07 */
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f .elementor-icon-box-title span{color:#20241f!important;opacity:1!important;text-shadow:none!important}


/* Hirschfeld Apartments - Unterseiten-Hero Kontrastfix 2026-07-07
   Ziel: Apartments/Kontakt lesbar machen, ohne Elementor-Struktur oder Inhalte zu veraendern. */
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 {
  position: relative !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed::before,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709::before,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(19, 29, 21, .82) 0%, rgba(19, 29, 21, .64) 48%, rgba(19, 29, 21, .38) 100%) !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed > .e-con-inner,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 > .e-con-inner,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 > .e-con-inner {
  position: relative !important;
  z-index: 1 !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementor-heading-title,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementor-heading-title *,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .ekit-heading--title,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .ekit-heading--title *,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed a,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementor-heading-title,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementor-heading-title *,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .ekit-heading--title,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .ekit-heading--title *,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 a,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .elementor-heading-title,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .elementor-heading-title *,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .ekit-heading--title,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .ekit-heading--title *,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 a {
  color: #f7f8f4 !important;
  opacity: 1 !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .42) !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed p,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 p,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 p {
  color: #e6ece2 !important;
  max-width: 980px !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .bdt-title-tag,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .bdt-title-tag,
body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .bdt-title-tag {
  color: #ffffff !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed,
  body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709,
  body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 {
    min-height: 360px !important;
  }

  body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed::before,
  body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709::before,
  body:not(.wp-admin) .elementor-21 .elementor-element-15339c99::before {
    background: linear-gradient(90deg, rgba(19, 29, 21, .88) 0%, rgba(19, 29, 21, .72) 70%, rgba(19, 29, 21, .56) 100%) !important;
  }

  body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementor-heading-title,
  body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementor-heading-title,
  body:not(.wp-admin) .elementor-21 .elementor-element-15339c99 .elementor-heading-title {
    line-height: 1.12 !important;
  }
}


/* Hirschfeld Apartments - Unterseiten-Hero Kontrastfix Erweiterung Rechtliches/FAQ 2026-07-07 */
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 {
  position: relative !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6::before,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd::before,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(19, 29, 21, .82) 0%, rgba(19, 29, 21, .64) 48%, rgba(19, 29, 21, .38) 100%) !important;
}

body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 > .e-con-inner,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd > .e-con-inner,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 > .e-con-inner {
  position: relative !important;
  z-index: 1 !important;
}

body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .elementor-heading-title,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .elementor-heading-title *,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 a,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .elementor-heading-title,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .elementor-heading-title *,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd a,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .elementor-heading-title,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .elementor-heading-title *,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .elementor-widget-text-editor,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .elementor-widget-text-editor *,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 a {
  color: #f7f8f4 !important;
  opacity: 1 !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .42) !important;
}

body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 p,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd p,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 p {
  color: #e6ece2 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6,
  body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd,
  body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 {
    min-height: 360px !important;
  }
}


/* Hirschfeld Apartments - Unterseiten-Hero Widget-Texte Rechtliches/FAQ 2026-07-07 */
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 h1,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 h2,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 h3,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .ekit-heading--title,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .ekit-heading--title *,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .bdt-title-tag,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 .bdt-title-tag *,
body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6 span,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd h1,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd h2,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd h3,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .ekit-heading--title,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .ekit-heading--title *,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .bdt-title-tag,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd .bdt-title-tag *,
body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd span,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 h1,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 h2,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 h3,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .ekit-heading--title,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .ekit-heading--title *,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .bdt-title-tag,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 .bdt-title-tag *,
body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 span {
  color: #f7f8f4 !important;
  opacity: 1 !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .42) !important;
}


/* Hirschfeld Apartments - Layout- und Ausrichtungs-Polish 2026-07-07
   Ziel: ruhigere Abstaende, gleichmaessige Karten, sticky Header, ohne Elementor-Struktur zu veraendern. */
:root {
  --ha-container: min(1180px, calc(100vw - 64px));
  --ha-gap: 24px;
  --ha-soft-shadow: 0 18px 50px rgba(24, 39, 27, .10);
}

/* Header: bleibt beim Scrollen erreichbar und bekommt dezent mehr Tiefe. */
body:not(.wp-admin) .elementor-location-header {
  position: sticky !important;
  top: var(--wp-admin--admin-bar--height, 0px) !important;
  z-index: 9998 !important;
  background: rgba(255, 255, 255, .96) !important;
  backdrop-filter: saturate(140%) blur(12px);
  -webkit-backdrop-filter: saturate(140%) blur(12px);
  box-shadow: 0 1px 0 rgba(24, 39, 27, .08) !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 {
  transition: box-shadow .25s ease, background-color .25s ease, min-height .25s ease !important;
}

@supports (animation-timeline: scroll()) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 {
    animation: ha-header-scroll-polish linear both;
    animation-timeline: scroll(root);
    animation-range: 0 180px;
  }

  @keyframes ha-header-scroll-polish {
    from {
      box-shadow: 0 1px 0 rgba(24, 39, 27, .08);
      background-color: rgba(255, 255, 255, .96);
    }
    to {
      box-shadow: 0 14px 35px rgba(24, 39, 27, .14);
      background-color: rgba(255, 255, 255, .92);
    }
  }
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 .elementor-button,
body:not(.wp-admin) .elementor-widget-button .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: .65em !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 .elementor-button {
  min-width: 190px !important;
  padding-inline: 34px !important;
}

body:not(.wp-admin) .elementor-widget-button .elementor-button-content-wrapper {
  width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .65em !important;
}

/* Dezenter Parallax-Eindruck fuer grosse Bild-Heros auf Desktop. */
@media (min-width: 1025px) {
  body:not(.wp-admin) .elementor-14 .elementor-element-74606c8d,
  body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed,
  body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709,
  body:not(.wp-admin) .elementor-21 .elementor-element-15339c99,
  body:not(.wp-admin) .elementor-1491 .elementor-element-44f51d6,
  body:not(.wp-admin) .elementor-1541 .elementor-element-b2972bd,
  body:not(.wp-admin) .elementor-2141 .elementor-element-64012827 {
    background-attachment: fixed !important;
  }
}

/* Startseite: Anfrage-Prozess als gleichmaessige Step-Karten. */
body:not(.wp-admin) .elementor-14 .elementor-element-b4fcf3f {
  padding-block: clamp(96px, 8vw, 132px) !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b6833e4 {
  margin-bottom: clamp(44px, 5vw, 68px) !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b {
  width: var(--ha-container) !important;
  margin-inline: auto !important;
  gap: var(--ha-gap) !important;
  align-items: stretch !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b > .e-con {
  min-height: 390px !important;
  padding: 48px 28px 34px !important;
  border-radius: 8px !important;
  background: #fbfcf8 !important;
  border: 1px solid rgba(82, 96, 78, .16) !important;
  box-shadow: var(--ha-soft-shadow) !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-widget-icon-box {
  width: 100% !important;
  max-width: 230px !important;
  min-height: 260px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-inline: auto !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-icon-box-wrapper {
  width: 100% !important;
  min-height: 260px !important;
  display: grid !important;
  grid-template-rows: 96px auto 1fr !important;
  justify-items: center !important;
  align-items: start !important;
  row-gap: 20px !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-icon-box-icon {
  min-height: 96px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-icon-box-title {
  min-height: 72px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.16 !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-icon-box-description {
  margin: 0 !important;
  text-align: center !important;
  line-height: 1.48 !important;
}

body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-absolute {
  top: 42px !important;
  left: 46px !important;
}

/* Kontaktseite: Kontakt-Info-Karten in einem sauberen, begrenzten Raster. */
body:not(.wp-admin) .elementor-19 .elementor-element-7f16c72f {
  padding-block: clamp(82px, 7vw, 118px) clamp(68px, 6vw, 96px) !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 {
  width: var(--ha-container) !important;
  margin-inline: auto !important;
  gap: var(--ha-gap) !important;
  align-items: stretch !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 > .e-con {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  min-height: 245px !important;
  padding: 38px 24px 34px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(82, 96, 78, .14) !important;
  box-shadow: 0 16px 42px rgba(24, 39, 27, .09) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-widget-icon-box,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-wrapper {
  width: 100% !important;
  min-height: 164px !important;
  display: grid !important;
  grid-template-rows: 72px auto 1fr !important;
  justify-items: center !important;
  align-items: start !important;
  row-gap: 16px !important;
  text-align: center !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-icon {
  min-height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-title,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-description {
  margin: 0 !important;
  text-align: center !important;
}

/* Kontaktformular/Map: klarerer Abstand zwischen Karten und Hauptinhalt. */
body:not(.wp-admin) .elementor-19 .elementor-element-ce2919b > .e-con-inner {
  gap: clamp(28px, 4vw, 48px) !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-e05b469 {
  padding-inline: clamp(28px, 4vw, 52px) !important;
}

/* CTA vor dem Footer: Telefonnummer bekommt Luft zum Text und Button gleiche Innenabstaende. */
body:not(.wp-admin) .elementor-element-4eb7a512 {
  padding-block: clamp(72px, 7vw, 104px) !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-4d3ca4c6 {
  min-height: 360px !important;
  display: flex !important;
  align-items: center !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-15930bb8 {
  gap: 0 !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-375c2cfe {
  margin-bottom: 18px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-d835b75 {
  margin-top: 8px !important;
  margin-bottom: 22px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-23c6d873 .elementor-button {
  min-width: 248px !important;
  min-height: 62px !important;
  padding-inline: 34px !important;
}

/* Footer: Spalten, Unterstreichungen, Trennlinie und Copyright sauberer takten. */
body:not(.wp-admin) .elementor-element-2a4cc186 {
  padding-block: clamp(96px, 8vw, 128px) clamp(44px, 5vw, 68px) !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 > .e-con-inner {
  row-gap: 46px !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-63274528 {
  width: var(--ha-container) !important;
  margin-inline: auto !important;
  padding-bottom: 64px !important;
  border-bottom: 1px solid rgba(247, 248, 244, .72) !important;
  align-items: flex-start !important;
  gap: clamp(72px, 8vw, 140px) !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-8629f1e,
body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-39632edc {
  min-height: 224px !important;
  justify-content: flex-start !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-widget-heading {
  margin-bottom: 34px !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-icon-list-items {
  display: grid !important;
  gap: 18px !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-65fd110c {
  width: var(--ha-container) !important;
  margin-inline: auto !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  justify-content: flex-start !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-2f420f97 {
  text-align: left !important;
}

@media (max-width: 1024px) {
  :root {
    --ha-container: min(92vw, 720px);
  }

  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b,
  body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 {
    flex-wrap: wrap !important;
  }

  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b > .e-con,
  body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 > .e-con {
    flex: 1 1 calc(50% - var(--ha-gap)) !important;
  }
}

@media (max-width: 767px) {
  :root {
    --ha-container: min(92vw, 430px);
    --ha-gap: 18px;
  }

  body:not(.wp-admin) .elementor-location-header {
    top: var(--wp-admin--admin-bar--height, 0px) !important;
  }

  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b > .e-con,
  body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 > .e-con {
    flex-basis: 100% !important;
    min-height: auto !important;
    padding: 34px 24px !important;
  }

  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-widget-icon-box,
  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-icon-box-wrapper,
  body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-widget-icon-box,
  body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-wrapper {
    min-height: auto !important;
  }

  body:not(.wp-admin) .elementor-14 .elementor-element-b53e67b .elementor-absolute {
    top: 28px !important;
    left: 28px !important;
  }

  body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-element-63274528 {
    padding-bottom: 42px !important;
    gap: 34px !important;
  }

  body:not(.wp-admin) .elementor-element-2a4cc186 .elementor-widget-heading {
    margin-bottom: 22px !important;
  }
}


/* Hirschfeld Apartments - CTA-Abstand Telefonnummer robust nachgezogen 2026-07-07 */
body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-15930bb8 {
  min-height: 292px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-d835b75 {
  padding-top: 18px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-23c6d873 {
  padding-top: 18px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-4d3ca4c6 {
  min-height: 388px !important;
}


/* Hirschfeld Apartments - CTA Telefonnummer/Button optischer Abstand final 2026-07-07 */
body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-d835b75 {
  position: relative !important;
  top: 18px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-23c6d873 {
  position: relative !important;
  top: 36px !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 .elementor-element-4d3ca4c6 {
  min-height: 430px !important;
}


/* Hirschfeld Apartments - Detailpolish Header, CTA/Footer und Kontaktkarten 2026-07-07 */
body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 {
  background: rgba(251, 252, 248, .97) !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 {
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 18px !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 .elementor-widget-image,
body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 .elementor-widget-container {
  width: 100% !important;
  text-align: center !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 img {
  width: 82px !important;
  max-width: 82px !important;
  height: auto !important;
  padding: 8px 11px !important;
  border-radius: 6px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,248,244,.92)) !important;
  border: 1px solid rgba(174, 132, 96, .18) !important;
  box-shadow: 0 10px 28px rgba(24, 39, 27, .10) !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 {
  align-items: center !important;
  justify-content: center !important;
  padding-inline: 22px !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 .elementor-button {
  width: 100% !important;
  max-width: 220px !important;
  min-width: 0 !important;
  padding: 15px 26px !important;
  margin-inline: auto !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 .elementor-button-text {
  flex: 0 0 auto !important;
  text-align: center !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 {
  margin-bottom: clamp(56px, 6vw, 86px) !important;
  box-shadow: 0 26px 60px rgba(5, 6, 5, .18) !important;
}

body:not(.wp-admin) .elementor-element-2a4cc186 {
  margin-top: 0 !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 > .e-con {
  padding-inline: 28px !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-widget-icon-box,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-wrapper,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-content {
  padding-inline: 10px !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-title,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-description {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-4b31d20 .elementor-icon-box-description {
  font-size: clamp(17px, 1.35vw, 21px) !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 img {
    width: 70px !important;
    max-width: 70px !important;
    padding: 6px 9px !important;
  }

  body:not(.wp-admin) .elementor-element-4eb7a512 {
    margin-bottom: 42px !important;
  }

  body:not(.wp-admin) .elementor-19 .elementor-element-4b31d20 .elementor-icon-box-description {
    font-size: 17px !important;
  }
}


/* Hirschfeld Apartments - Footer klar vom CTA trennen 2026-07-07 */
body:not(.wp-admin) .elementor-element-2a4cc186 {
  margin-top: clamp(56px, 6vw, 86px) !important;
}

body:not(.wp-admin) .elementor-location-footer {
  background: #f7f8f4 !important;
}


/* Hirschfeld Apartments - Footer-Wrapper Abstand zum CTA final 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer {
  padding-top: clamp(56px, 6vw, 86px) !important;
  background: #f7f8f4 !important;
}


/* Hirschfeld Apartments - CTA/Footer sichtbare Trennflaeche final 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer {
  padding-top: 0 !important;
  background: #f7f8f4 !important;
}

body:not(.wp-admin) .elementor-element-4eb7a512 {
  border-bottom: clamp(56px, 6vw, 86px) solid #f7f8f4 !important;
}


/* Hirschfeld Apartments - CTA/Footer Trennflaeche feste Border-Werte 2026-07-07 */
body:not(.wp-admin) .elementor-element-4eb7a512 {
  border-bottom-width: 76px !important;
  border-bottom-style: solid !important;
  border-bottom-color: #f7f8f4 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-element-4eb7a512 {
    border-bottom-width: 44px !important;
  }
}


/* Hirschfeld Apartments - CTA/Footer Trennflaeche spezifisch gegen alte Border-Regel 2026-07-07 */
body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
  border-top: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-bottom: 76px solid #f7f8f4 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-footer .elementor-element-4eb7a512 {
    border-bottom-width: 44px !important;
  }
}


/* Hirschfeld Apartments - Kontaktkarten Textfluss und Apartment Mobile Scrollfix 2026-07-07 */
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 > .e-con {
  min-height: 255px !important;
  padding: 38px 26px 36px !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-widget-container,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-wrapper,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-content {
  padding-inline: 0 !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-title,
body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-description {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: manual !important;
  max-width: 100% !important;
  text-align: center !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-162d1cd0 .elementor-icon-box-description {
  font-size: clamp(16px, 1.18vw, 21px) !important;
  line-height: 1.36 !important;
}

body:not(.wp-admin) .elementor-19 .elementor-element-4b31d20 .elementor-icon-box-description {
  font-size: clamp(15px, 1.02vw, 19px) !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin).page-id-17 .elementor-location-header {
    position: relative !important;
    top: auto !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .animated,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-invisible,
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="fadeIn"],
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="slideIn"],
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="zoomIn"] {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery__container,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-container {
    overflow: hidden !important;
    contain: layout paint !important;
    transform: translateZ(0) !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 img {
    transform: translateZ(0) !important;
    backface-visibility: hidden !important;
  }

  body:not(.wp-admin) .elementor-19 .elementor-element-4b31d20 .elementor-icon-box-description {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}


/* Hirschfeld Apartments - Info-Seite kompakter strukturiert 2026-07-07 */
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c {
  background: #f7f8f4 !important;
  padding-top: clamp(58px, 6vw, 92px) !important;
  padding-bottom: clamp(58px, 6vw, 92px) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr) !important;
  gap: clamp(28px, 4vw, 54px) !important;
  align-items: start !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
  background: #ffffff !important;
  border: 1px solid rgba(83, 99, 79, 0.16) !important;
  border-radius: 18px !important;
  padding: clamp(26px, 3vw, 38px) !important;
  gap: 14px !important;
  box-shadow: 0 24px 70px rgba(28, 37, 29, 0.08) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-heading,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-heading {
  margin: 0 !important;
  padding: 0 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3d31c974 .elementor-heading-title,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-628d8b82 .elementor-heading-title {
  font-size: clamp(30px, 2.9vw, 44px) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  color: #1c211c !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-57be8a61 .elementor-heading-title,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-46e2a22 .elementor-heading-title,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6fba2a2 .elementor-heading-title {
  font-size: clamp(22px, 1.75vw, 30px) !important;
  line-height: 1.18 !important;
  color: #1c211c !important;
  margin-top: 12px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-button {
  margin-top: 10px !important;
  margin-bottom: 2px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-button {
  min-height: 40px !important;
  padding: 11px 16px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  justify-content: flex-start !important;
  text-align: left !important;
  background: #53634f !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-button-text {
  font-size: 14px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-text-editor {
  margin: 0 !important;
  padding: 0 2px 12px !important;
  color: #5f6b5b !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor:not(:last-child) {
  border-bottom: 1px solid rgba(83, 99, 79, 0.12) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor p,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-text-editor p,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-icon-list-text,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-icon-list-text {
  font-size: clamp(15px, 1.06vw, 17px) !important;
  line-height: 1.52 !important;
  color: #5f6b5b !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 strong,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d strong {
  color: #1f2a20 !important;
  font-weight: 700 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8bad047,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8e07840,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9e7a92,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-e58ea63,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3fafeda {
  margin: 0 !important;
  padding: 2px 0 8px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-icon-list-items {
  gap: 5px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-icon-list-item {
  margin: 0 0 5px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6118839 {
  margin-top: 6px !important;
  padding: 18px 0 0 !important;
  border-top: 1px solid rgba(83, 99, 79, 0.14) !important;
  gap: 14px !important;
  justify-content: flex-start !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 {
  min-height: 250px !important;
  height: 250px !important;
  margin-bottom: 8px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
  width: 100% !important;
  height: 250px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9fa9d6a,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8665b06,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-ff2ba4c,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6534f3b {
  background: #f7f8f4 !important;
  border: 1px solid rgba(83, 99, 79, 0.12) !important;
  border-radius: 14px !important;
  padding: 18px 20px !important;
  margin-top: 2px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-c8cc8b6,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-53d3dc0 {
  margin-top: 22px !important;
  padding-top: 26px !important;
  border-top: 1px solid rgba(83, 99, 79, 0.16) !important;
  min-height: 0 !important;
  height: auto !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-f0e0843 .ekit-heading--title,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-f0e0843 .elementskit-section-title {
  font-size: clamp(28px, 2.3vw, 38px) !important;
  line-height: 1.15 !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c > .e-con-inner {
    grid-template-columns: 1fr !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
    padding: 28px 24px !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c > .e-con-inner {
    gap: 22px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
    border-radius: 16px !important;
    padding: 24px 18px !important;
    gap: 12px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-button {
    min-height: 38px !important;
    padding: 10px 14px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
    min-height: 190px !important;
    height: 190px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9fa9d6a,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8665b06,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-ff2ba4c,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6534f3b {
    padding: 16px !important;
  }
}


/* Hirschfeld Apartments - Info-Seite Matrix-Nachzug 2026-07-07 */
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c > .e-con-inner {
  grid-template-columns: 1fr !important;
  gap: 28px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px 18px !important;
  padding: clamp(28px, 3vw, 38px) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3d31c974,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6118839 {
  grid-column: 1 / -1 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3cd5d84c,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8bad047,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-ba35064,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-caefe36,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-00e8ebf {
  grid-column: 1 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-607ab2f2,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-4f438cc,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-5d305a3,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8e07840,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-a12813c {
  grid-column: 2 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-0aa048c,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6f3ab07,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-c5e9bd3,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3364eec {
  grid-column: 3 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-button {
  margin-top: 6px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor {
  padding-bottom: 8px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
  display: grid !important;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr) !important;
  gap: 14px 34px !important;
  padding: clamp(28px, 3vw, 38px) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 {
  grid-column: 1 !important;
  grid-row: 1 / span 8 !important;
  min-height: 420px !important;
  height: 420px !important;
  position: sticky !important;
  top: 132px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
  height: 420px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-628d8b82,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-52250d5b,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-57be8a61,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8140840,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9e7a92,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9fa9d6a,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-67889b1,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8665b06,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-46e2a22,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-ff2ba4c,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6fba2a2,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6534f3b {
  grid-column: 2 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-c8cc8b6 {
  grid-column: 1 / -1 !important;
  margin-top: 18px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-53d3dc0 {
  width: 100% !important;
  max-width: 100% !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-text-editor,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-icon-list {
  margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
    display: flex !important;
    flex-direction: column !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 {
    position: relative !important;
    top: auto !important;
    min-height: 220px !important;
    height: 220px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
    height: 220px !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3d31c974 .elementor-heading-title,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-628d8b82 .elementor-heading-title {
    font-size: 28px !important;
  }
}


/* Hirschfeld Apartments - Info-Seite finaler Lesefluss-Nachzug 2026-07-07 */
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c {
  padding-top: clamp(52px, 5vw, 76px) !important;
  padding-bottom: clamp(52px, 5vw, 76px) !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-75ac5a2c > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 30px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(26px, 3vw, 34px) !important;
  columns: 2 420px !important;
  column-gap: clamp(28px, 4vw, 52px) !important;
  gap: normal !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 > .elementor-element,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d > .elementor-element,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d > .e-con,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget {
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3d31c974,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-628d8b82,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-c8cc8b6,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6118839 {
  column-span: all !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-button {
  margin: 0 0 8px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-button {
  width: 100% !important;
  min-height: 38px !important;
  padding: 10px 14px !important;
  justify-content: center !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-text-editor {
  padding: 0 0 14px !important;
  margin: 0 0 12px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor p,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d .elementor-widget-text-editor p,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-icon-list-text {
  font-size: clamp(14px, 1vw, 16px) !important;
  line-height: 1.45 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030 .elementor-widget-text-editor p {
  margin-bottom: 0 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8bad047,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8e07840,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9e7a92,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-67889b1 {
  padding-bottom: 8px !important;
  margin-bottom: 0 !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 {
  position: relative !important;
  top: auto !important;
  min-height: 220px !important;
  height: 220px !important;
  margin: 0 0 18px !important;
  column-span: all !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
  height: 220px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-9fa9d6a,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-8665b06,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-ff2ba4c,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-6534f3b {
  padding: 14px 16px !important;
  margin-bottom: 14px !important;
}

body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-c8cc8b6,
body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-53d3dc0 {
  margin-top: 20px !important;
  padding-top: 22px !important;
  height: auto !important;
  min-height: 0 !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-3c304030,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-997ea1d {
    columns: 1 !important;
    padding: 22px 18px !important;
  }

  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4,
  body:not(.wp-admin).page-id-21 .elementor-21 .elementor-element-1fb1bf4 img {
    min-height: 180px !important;
    height: 180px !important;
  }
}

/* Hirschfeld Apartments - Header/Apartment-Hero Feinschliff 2026-07-07 */
body:not(.wp-admin) .elementor-location-header {
  position: relative !important;
  z-index: 20 !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0,
body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 {
  background: #F8F9F5 !important;
  border-bottom: 1px solid rgba(82, 96, 78, .14) !important;
  box-shadow: 0 10px 28px rgba(32, 36, 31, .06) !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 > .e-con-inner {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(34px, 5vw, 76px) !important;
  min-height: 118px !important;
  padding-block: 14px !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22,
body:not(.wp-admin) .elementor-location-header .elementor-element-7b121b6,
body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d,
body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d .elementor-widget-container,
body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c .elementor-widget-container,
body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d a,
body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d img,
body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
  width: clamp(82px, 7vw, 104px) !important;
  max-width: clamp(82px, 7vw, 104px) !important;
  height: auto !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  mix-blend-mode: multiply !important;
  filter: grayscale(.12) sepia(.22) saturate(.75) hue-rotate(42deg) brightness(.76) contrast(1.08) !important;
  opacity: .96 !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-db5b4db {
  width: 100% !important;
  min-width: 0 !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 {
  width: auto !important;
  flex: 0 0 auto !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-element-20462668 .elementor-button {
  min-width: 190px !important;
  justify-content: center !important;
  padding: 17px 28px !important;
  border-radius: 8px !important;
}

body:not(.wp-admin) .elementor-location-header .elementor-nav-menu .elementor-item {
  color: var(--ha-green) !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 {
  isolation: isolate !important;
  overflow: hidden !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed::before,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad::before,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8::before,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a::before,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709::before {
  background: linear-gradient(90deg, rgba(20, 28, 23, .78) 0%, rgba(20, 28, 23, .58) 44%, rgba(20, 28, 23, .32) 100%) !important;
  opacity: 1 !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed h1,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed h2,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed span,
body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed a,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad h1,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad h2,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad span,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad a,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8 h1,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8 h2,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8 span,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8 a,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a h1,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a h2,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a span,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a a,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 h1,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 h2,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 span,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 a,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 p {
  color: #F7FAF5 !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .42) !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-6d9efb1b,
body:not(.wp-admin) .elementor-1801 .elementor-element-41df1b9,
body:not(.wp-admin) .elementor-1862 .elementor-element-3cb80f9,
body:not(.wp-admin) .elementor-1864 .elementor-element-3828dd9,
body:not(.wp-admin) .elementor-19 .elementor-element-1eac083 {
  border-left-color: #F7FAF5 !important;
}

body:not(.wp-admin) .elementor-17 .elementor-element-16b605ed .elementskit-section-title > span,
body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad .elementskit-section-title > span,
body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8 .elementskit-section-title > span,
body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a .elementskit-section-title > span,
body:not(.wp-admin) .elementor-19 .elementor-element-5c1cb709 .elementskit-section-title > span {
  color: #DDE8D8 !important;
}

body:not(.wp-admin) .elementor-1801,
body:not(.wp-admin) .elementor-1862,
body:not(.wp-admin) .elementor-1864 {
  overflow-x: clip !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    min-height: 86px !important;
    padding-block: 10px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: 76px !important;
    max-width: 76px !important;
  }

  body:not(.wp-admin) .elementor-1801 .elementor-element-bf963ad,
  body:not(.wp-admin) .elementor-1862 .elementor-element-23f0ed8,
  body:not(.wp-admin) .elementor-1864 .elementor-element-924d95a {
    min-height: 360px !important;
    padding-top: 96px !important;
    padding-bottom: 72px !important;
    background-attachment: scroll !important;
  }

  body:not(.wp-admin) .elementor-1801 .elementor-widget-image img:not(.avatar):not(.emoji):not([src*='logo']):not([src*='award']),
  body:not(.wp-admin) .elementor-1862 .elementor-widget-image img:not(.avatar):not(.emoji):not([src*='logo']):not([src*='award']),
  body:not(.wp-admin) .elementor-1864 .elementor-widget-image img:not(.avatar):not(.emoji):not([src*='logo']):not([src*='award']) {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }
}


/* Hirschfeld Apartments - Mobile Apartment Scroll-Stabilisierung 2026-07-07 */
@media (max-width: 767px) {
  html,
  body:not(.wp-admin) {
    max-width: 100% !important;
    overflow-x: hidden !important;
    scroll-behavior: auto !important;
    overscroll-behavior-x: none !important;
    -webkit-overflow-scrolling: touch;
  }

  body:not(.wp-admin) .elementor-1801,
  body:not(.wp-admin) .elementor-1862,
  body:not(.wp-admin) .elementor-1864 {
    max-width: 100vw !important;
    overflow-x: clip !important;
  }

  body:not(.wp-admin) .elementor-1801 .e-con,
  body:not(.wp-admin) .elementor-1801 .elementor-section,
  body:not(.wp-admin) .elementor-1801 .elementor-container,
  body:not(.wp-admin) .elementor-1801 .elementor-widget-wrap,
  body:not(.wp-admin) .elementor-1862 .e-con,
  body:not(.wp-admin) .elementor-1862 .elementor-section,
  body:not(.wp-admin) .elementor-1862 .elementor-container,
  body:not(.wp-admin) .elementor-1862 .elementor-widget-wrap,
  body:not(.wp-admin) .elementor-1864 .e-con,
  body:not(.wp-admin) .elementor-1864 .elementor-section,
  body:not(.wp-admin) .elementor-1864 .elementor-container,
  body:not(.wp-admin) .elementor-1864 .elementor-widget-wrap {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body:not(.wp-admin) .elementor-1801 .elementor-motion-effects-container,
  body:not(.wp-admin) .elementor-1801 .elementor-motion-effects-layer,
  body:not(.wp-admin) .elementor-1801 .elementor-sticky--effects,
  body:not(.wp-admin) .elementor-1801 [data-settings*="animation"],
  body:not(.wp-admin) .elementor-1862 .elementor-motion-effects-container,
  body:not(.wp-admin) .elementor-1862 .elementor-motion-effects-layer,
  body:not(.wp-admin) .elementor-1862 .elementor-sticky--effects,
  body:not(.wp-admin) .elementor-1862 [data-settings*="animation"],
  body:not(.wp-admin) .elementor-1864 .elementor-motion-effects-container,
  body:not(.wp-admin) .elementor-1864 .elementor-motion-effects-layer,
  body:not(.wp-admin) .elementor-1864 .elementor-sticky--effects,
  body:not(.wp-admin) .elementor-1864 [data-settings*="animation"] {
    transform: none !important;
    will-change: auto !important;
    animation: none !important;
  }

  body:not(.wp-admin) .elementor-1801 .elementor-widget-gallery,
  body:not(.wp-admin) .elementor-1801 .e-gallery-container,
  body:not(.wp-admin) .elementor-1801 .swiper,
  body:not(.wp-admin) .elementor-1801 .elementor-swiper,
  body:not(.wp-admin) .elementor-1862 .elementor-widget-gallery,
  body:not(.wp-admin) .elementor-1862 .e-gallery-container,
  body:not(.wp-admin) .elementor-1862 .swiper,
  body:not(.wp-admin) .elementor-1862 .elementor-swiper,
  body:not(.wp-admin) .elementor-1864 .elementor-widget-gallery,
  body:not(.wp-admin) .elementor-1864 .e-gallery-container,
  body:not(.wp-admin) .elementor-1864 .swiper,
  body:not(.wp-admin) .elementor-1864 .elementor-swiper {
    max-width: 100% !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
    transform: none !important;
    will-change: auto !important;
  }

  body:not(.wp-admin) .elementor-1801 img,
  body:not(.wp-admin) .elementor-1862 img,
  body:not(.wp-admin) .elementor-1864 img {
    max-width: 100% !important;
  }
}


/* Hirschfeld Apartments - Mobile Header Logo Feinschliff 2026-07-07 */
@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-header {
    background: transparent !important;
    box-shadow: none !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 {
    min-height: 74px !important;
    background: rgba(255, 255, 255, .96) !important;
    border-bottom: 1px solid rgba(82, 96, 78, .12) !important;
    box-shadow: 0 8px 22px rgba(24, 39, 27, .055) !important;
    padding: 0 20px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    display: grid !important;
    grid-template-columns: auto auto !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 74px !important;
    padding: 6px 0 !important;
    gap: 18px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-7b121b6,
  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c,
  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c .elementor-widget-container,
  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c a {
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: 56px !important;
    max-width: 56px !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    mix-blend-mode: normal !important;
    filter: none !important;
    opacity: 1 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-7d605bb {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    justify-self: end !important;
    align-items: center !important;
    justify-content: flex-end !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon-wrapper {
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 42px !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #EEF5EA !important;
    color: #52604E !important;
    box-shadow: none !important;
  }
}


/* Hirschfeld Apartments - Navbar Redesign Voss-inspiriert 2026-07-08 */
@media (min-width: 1025px) {
  body:not(.wp-admin) .elementor-location-header {
    background: rgba(249, 250, 246, .98) !important;
    box-shadow: 0 12px 34px rgba(20, 32, 23, .06) !important;
    border-bottom: 1px solid rgba(82, 96, 78, .12) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 {
    min-height: 98px !important;
    background: rgba(249, 250, 246, .98) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-376313b0 > .e-con-inner {
    width: min(1280px, calc(100% - 96px)) !important;
    max-width: min(1280px, calc(100% - 96px)) !important;
    min-height: 98px !important;
    grid-template-columns: 180px minmax(0, 1fr) 230px !important;
    align-items: center !important;
    gap: clamp(30px, 5vw, 80px) !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22,
  body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 {
    min-width: 0 !important;
    width: auto !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-38a35d22 {
    justify-content: flex-start !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d,
  body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d .elementor-widget-container,
  body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-75adbb7d img {
    width: 76px !important;
    max-width: 76px !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: drop-shadow(0 10px 22px rgba(20, 32, 23, .08)) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-db5b4db {
    justify-content: center !important;
    min-width: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 {
    width: auto !important;
    max-width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 5px !important;
    border: 1px solid rgba(82, 96, 78, .14) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .74) !important;
    box-shadow: 0 16px 40px rgba(20, 32, 23, .055) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 nav.elementor-nav-menu--main,
  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 nav.elementor-nav-menu--main > ul.elementor-nav-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    width: auto !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 a.elementor-item {
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 17px !important;
    border-radius: 999px !important;
    color: #52604E !important;
    background: transparent !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    transition: background-color .22s ease, color .22s ease, transform .22s ease !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 a.elementor-item:hover,
  body:not(.wp-admin) .elementor-location-header .elementor-element-93a87b3 a.elementor-item.elementor-item-active {
    color: #F8F9F5 !important;
    background: #1B2A20 !important;
    transform: translateY(-1px) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-1090a673 {
    justify-content: flex-end !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-20462668 .elementor-button {
    min-height: 48px !important;
    width: auto !important;
    min-width: 190px !important;
    justify-content: center !important;
    padding: 0 28px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(27, 42, 32, .18) !important;
    background: #1B2A20 !important;
    color: #FFFFFF !important;
    box-shadow: 0 18px 34px rgba(27, 42, 32, .15) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-20462668 .elementor-button:hover {
    transform: translateY(-1px) !important;
    background: #263A2B !important;
    box-shadow: 0 20px 40px rgba(27, 42, 32, .20) !important;
  }
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 {
    min-height: 76px !important;
    background: rgba(249, 250, 246, .98) !important;
    border-bottom: 1px solid rgba(82, 96, 78, .12) !important;
    box-shadow: 0 10px 28px rgba(20, 32, 23, .075) !important;
    padding: 0 20px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    min-height: 76px !important;
    padding: 6px 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: 58px !important;
    max-width: 58px !important;
    filter: drop-shadow(0 8px 16px rgba(20, 32, 23, .08)) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 12px !important;
    background: #1B2A20 !important;
    color: #F8F9F5 !important;
    box-shadow: 0 16px 30px rgba(27, 42, 32, .18) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 {
    background: rgba(3, 6, 4, .72) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    align-items: stretch !important;
    justify-content: stretch !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-widget-content {
    width: 100vw !important;
    max-width: none !important;
    height: 100svh !important;
    min-height: 100svh !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: #050806 !important;
    color: #F8F9F5 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-widget-content::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: min(42vw, 230px) !important;
    pointer-events: none !important;
    background: linear-gradient(90deg, rgba(82, 96, 78, .20), rgba(5, 8, 6, 0)) !important;
    opacity: .72 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-message,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-1078,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 > .e-con-inner {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: clamp(88px, 18vh, 150px) clamp(34px, 10vw, 96px) clamp(56px, 10vh, 90px) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be {
    width: 100% !important;
    margin: 0 0 clamp(44px, 8vh, 72px) !important;
    padding: 0 !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    background: transparent !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0 .elementor-widget-container {
    width: auto !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0 img {
    width: clamp(92px, 24vw, 128px) !important;
    max-width: clamp(92px, 24vw, 128px) !important;
    height: auto !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: brightness(0) invert(1) drop-shadow(0 16px 30px rgba(0, 0, 0, .24)) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-16b7a13 {
    width: 100% !important;
    max-width: 560px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main > ul.elementor-nav-menu {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item {
    width: auto !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 10px 0 !important;
    background: transparent !important;
    color: #F8F9F5 !important;
    font-size: clamp(32px, 10vw, 54px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    transition: color .22s ease, transform .22s ease !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item:hover,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item.elementor-item-active {
    color: #DDE9D8 !important;
    background: transparent !important;
    transform: translateX(6px) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main li:last-child a.elementor-item {
    margin-top: 28px !important;
    padding: 16px 28px !important;
    min-width: 230px !important;
    justify-content: center !important;
    border-radius: 0 !important;
    background: #F8F9F5 !important;
    color: #111812 !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    box-shadow: 0 18px 34px rgba(0, 0, 0, .18) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-16b7a13::after {
    content: "T: +49 157 92373757" !important;
    display: block !important;
    margin-top: 22px !important;
    color: rgba(248, 249, 245, .82) !important;
    font-size: 21px !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button {
    position: absolute !important;
    top: max(20px, env(safe-area-inset-top)) !important;
    right: max(18px, env(safe-area-inset-right)) !important;
    width: 56px !important;
    height: 56px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: #3B4838 !important;
    color: #FFFFFF !important;
    box-shadow: 0 16px 34px rgba(0, 0, 0, .30) !important;
    z-index: 10 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button i,
  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button svg {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    font-size: 28px !important;
    width: 28px !important;
    height: 28px !important;
  }
}

@media (max-width: 420px) {
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 > .e-con-inner {
    padding-left: 34px !important;
    padding-right: 34px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item {
    font-size: 36px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main li:last-child a.elementor-item {
    min-width: 214px !important;
    font-size: 19px !important;
  }
}


/* Hirschfeld Apartments - Navbar Icon Feinschliff 2026-07-08 */
@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon i,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon svg,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon svg * {
    color: #F8F9F5 !important;
    fill: #F8F9F5 !important;
    stroke: #F8F9F5 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: 54px !important;
    max-width: 54px !important;
  }
}


/* Hirschfeld Apartments - Apartments Mobile Performance 2026-07-08 */
@media (max-width: 767px) {
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-element,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-widget,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-con,
  body:not(.wp-admin).page-id-17 .elementor-17 [data-settings*="animation"],
  body:not(.wp-admin).page-id-17 .elementor-17 .animated,
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="fadeIn"],
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="fadeInLeft"],
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="fadeInRight"],
  body:not(.wp-admin).page-id-17 .elementor-17 [class*="fadeInUp"] {
    animation: none !important;
    transition-property: background-color, border-color, color, opacity !important;
    transition-duration: .16s !important;
    transform: none !important;
    will-change: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-invisible {
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-motion-effects-container,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-motion-effects-layer,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-sticky,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-sticky--effects {
    transform: none !important;
    will-change: auto !important;
    animation: none !important;
    transition: none !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-widget-gallery,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery__container,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-container,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-item,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-image,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery-item {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    will-change: auto !important;
    backface-visibility: visible !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-container {
    overflow: hidden !important;
    touch-action: pan-y !important;
    contain: layout paint !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-item:nth-of-type(n+4) {
    display: none !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 img {
    max-width: 100% !important;
    height: auto !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}


/* Hirschfeld Apartments - Apartments Mobile Image Layout 2026-07-08 */
@media (max-width: 767px) {
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-widget-gallery {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery__container,
  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
    contain: layout paint !important;
    --hgap: 8px !important;
    --vgap: 8px !important;
    --columns: 2 !important;
    --rows: auto !important;
    --aspect-ratio: auto !important;
    --container-aspect-ratio: auto !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-item,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery-item {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #EEF2EA !important;
    box-shadow: none !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-item:first-child,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery-item:first-child {
    grid-column: 1 / -1 !important;
    aspect-ratio: 16 / 10 !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-item:nth-of-type(n+4),
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery-item:nth-of-type(n+4) {
    display: none !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-gallery-image,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-gallery-item__image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
    background-size: cover !important;
    background-position: center center !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
    opacity: 1 !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-animated-content:hover .e-gallery-image,
  body:not(.wp-admin).page-id-17 .elementor-17 .elementor-animated-content:hover .elementor-gallery-item__image {
    transform: none !important;
  }

  body:not(.wp-admin).page-id-17 .elementor-17 .e-con:has(.elementor-widget-gallery) {
    height: auto !important;
    min-height: 0 !important;
  }
}


/* Cookie Banner Feinschliff 2026-07-08 */
.cky-consent-container .cky-consent-bar,
.cky-modal .cky-preference-center {
  background: #f7faf4 !important;
  border: 1px solid rgba(82, 96, 78, 0.18) !important;
  border-radius: 14px !important;
  box-shadow: 0 24px 70px rgba(20, 32, 23, 0.18) !important;
  color: #20241f !important;
}

.cky-title,
.cky-preference-title {
  color: #1b2a20 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.cky-notice-des,
.cky-notice-des *,
.cky-preference-content-wrapper,
.cky-preference-content-wrapper * {
  color: #52604e !important;
}

.cky-notice-des a,
.cky-preference-content-wrapper a,
.cky-show-desc-btn {
  color: #1b2a20 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.cky-btn {
  border-radius: 999px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.cky-btn-accept,
.cky-btn-preferences {
  background: #1b2a20 !important;
  border-color: #1b2a20 !important;
  color: #ffffff !important;
}

.cky-btn-reject,
.cky-btn-customize {
  background: #ffffff !important;
  border-color: rgba(82, 96, 78, 0.28) !important;
  color: #1b2a20 !important;
}

.cky-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(27, 42, 32, 0.14) !important;
}

.cky-btn-revisit-wrapper {
  background: #1b2a20 !important;
  box-shadow: 0 10px 24px rgba(27, 42, 32, 0.2) !important;
}

.cky-btn-revisit-wrapper .cky-btn-revisit img {
  filter: brightness(0) invert(1) !important;
}

.cky-accordion-header,
.cky-accordion-btn,
.cky-cookie-des-table li div:first-child {
  color: #1b2a20 !important;
}

@media (max-width: 767px) {
  .cky-consent-container {
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
  }

  .cky-consent-container .cky-consent-bar {
    padding: 22px !important;
  }

  .cky-notice-btn-wrapper {
    gap: 10px !important;
  }

  .cky-btn {
    min-height: 44px !important;
  }
}


/* Cookie Banner Button Feinjustierung 2026-07-08 */
.cky-consent-container .cky-btn,
.cky-modal .cky-btn {
  font-size: 14px !important;
  line-height: 1.15 !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
}

.cky-consent-container .cky-btn-accept,
.cky-modal .cky-btn-preferences {
  background-color: #1b2a20 !important;
  border-color: #1b2a20 !important;
  color: #ffffff !important;
}

.cky-consent-container .cky-btn-reject,
.cky-consent-container .cky-btn-customize {
  background-color: #ffffff !important;
  border-color: rgba(82, 96, 78, 0.28) !important;
  color: #1b2a20 !important;
}


/* Navbar Responsive Feinschliff 2026-07-10
   Tablet/Mobile: kompaktere Navigation, ruhigeres Popup-Menue, conversionstarker Kontakt-CTA. */
@media (min-width: 768px) and (max-width: 1180px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04,
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    min-height: 82px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    align-items: center !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: auto !important;
    max-width: 118px !important;
    max-height: 62px !important;
    object-fit: contain !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border-radius: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 12px 28px rgba(27, 42, 32, 0.18) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon i,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon svg {
    font-size: 28px !important;
    width: 28px !important;
    height: 28px !important;
  }
}

@media (max-width: 767px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04,
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    min-height: 70px !important;
    padding: 7px 16px !important;
    align-items: center !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: auto !important;
    max-width: 104px !important;
    max-height: 54px !important;
    object-fit: contain !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-radius: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 12px 28px rgba(27, 42, 32, 0.18) !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon i,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon svg {
    font-size: 24px !important;
    width: 24px !important;
    height: 24px !important;
  }

  body:not(.wp-admin) .elementor-popup-modal,
  body:not(.wp-admin) .dialog-lightbox-widget {
    --ha-mobile-menu-pad-x: clamp(28px, 8vw, 42px);
  }

  body:not(.wp-admin) .elementor-popup-modal .dialog-widget-content,
  body:not(.wp-admin) .dialog-lightbox-widget .dialog-widget-content {
    min-height: 100svh !important;
    padding: 28px var(--ha-mobile-menu-pad-x) 34px !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .dialog-close-button,
  body:not(.wp-admin) .dialog-lightbox-widget .dialog-close-button {
    top: 18px !important;
    right: 18px !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 13px !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .dialog-close-button i,
  body:not(.wp-admin) .dialog-lightbox-widget .dialog-close-button i,
  body:not(.wp-admin) .elementor-popup-modal .dialog-close-button svg,
  body:not(.wp-admin) .dialog-lightbox-widget .dialog-close-button svg {
    font-size: 24px !important;
    width: 24px !important;
    height: 24px !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .elementor-widget-image img,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-widget-image img {
    max-width: 142px !important;
    max-height: 142px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .elementor-nav-menu a,
  body:not(.wp-admin) .elementor-popup-modal .menu-item a,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-nav-menu a,
  body:not(.wp-admin) .dialog-lightbox-widget .menu-item a {
    font-size: clamp(34px, 10vw, 44px) !important;
    line-height: 1.08 !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    letter-spacing: 0 !important;
  }

  body:not(.wp-admin) .elementor-popup-modal a[href*="kontakt"],
  body:not(.wp-admin) .dialog-lightbox-widget a[href*="kontakt"],
  body:not(.wp-admin) .elementor-popup-modal .elementor-button,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-button {
    width: min(100%, 252px) !important;
    min-height: 54px !important;
    padding: 14px 24px !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .elementor-widget-text-editor,
  body:not(.wp-admin) .elementor-popup-modal .elementor-widget-text-editor *,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-widget-text-editor,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-widget-text-editor * {
    font-size: 21px !important;
    line-height: 1.3 !important;
  }
}

@media (max-width: 767px) and (max-height: 760px) {
  body:not(.wp-admin) .elementor-popup-modal .elementor-nav-menu a,
  body:not(.wp-admin) .elementor-popup-modal .menu-item a,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-nav-menu a,
  body:not(.wp-admin) .dialog-lightbox-widget .menu-item a {
    font-size: clamp(30px, 8.5vw, 38px) !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  body:not(.wp-admin) .elementor-popup-modal .elementor-widget-image img,
  body:not(.wp-admin) .dialog-lightbox-widget .elementor-widget-image img {
    max-width: 124px !important;
    max-height: 124px !important;
  }
}


/* Navbar Mobile Korrektur 2026-07-10
   Fix fuer iPhone Hoch-/Querformat: Popup volle Breite, keine abgeschnittenen Menuepunkte, kompakter Landscape-Header. */
@media (max-width: 1024px) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04,
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    padding: 6px clamp(16px, 4vw, 28px) !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-7b121b6,
  body:not(.wp-admin) .elementor-location-header .elementor-element-7d605bb {
    min-height: 0 !important;
    height: auto !important;
    max-height: 72px !important;
    flex-wrap: nowrap !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-7b121b6 {
    --width: 48% !important;
    width: 48% !important;
    flex: 0 0 48% !important;
    align-items: flex-start !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-7d605bb {
    --width: 52% !important;
    width: 52% !important;
    flex: 0 0 52% !important;
    align-items: flex-end !important;
    justify-content: center !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c,
  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 {
    margin: 0 !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    width: auto !important;
    max-width: 104px !important;
    max-height: 54px !important;
    object-fit: contain !important;
    display: block !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-radius: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04,
  body:not(.wp-admin) .elementor-location-header .elementor-element-4754f04 > .e-con-inner {
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-df7529c img {
    max-width: 98px !important;
    max-height: 52px !important;
  }

  body:not(.wp-admin) .elementor-location-header .elementor-element-ce4afc4 .elementor-icon {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
  }
}

@media (max-width: 767px), (max-width: 1024px) and (max-height: 520px) {
  body:not(.wp-admin) #elementor-popup-modal-1078 {
    justify-content: center !important;
    align-items: stretch !important;
    background-color: #030806 !important;
    overflow: hidden !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-message {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100svh !important;
    min-height: 100svh !important;
    align-items: stretch !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-widget-content {
    width: 100vw !important;
    max-width: 100vw !important;
    min-height: 100svh !important;
    background-color: #030806 !important;
    box-shadow: none !important;
    overflow-x: hidden !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button {
    top: 18px !important;
    right: 18px !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 13px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-1078,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-1078 .elementor-element-44a6267 {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100svh !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 {
    --padding-top: 76px !important;
    --padding-right: 34px !important;
    --padding-bottom: 36px !important;
    --padding-left: 34px !important;
    --gap: 26px !important;
    --row-gap: 26px !important;
    --column-gap: 0px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-16b7a13 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    align-self: stretch !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0 {
    width: 132px !important;
    max-width: 132px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-image img {
    max-width: 132px !important;
    max-height: 132px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu--main,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu li {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu a,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu a[href*="kontakt"] {
    width: auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #f4f8ef !important;
    font-size: clamp(35px, 10vw, 44px) !important;
    line-height: 1.08 !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu li:last-child > a {
    margin-top: 18px !important;
    width: min(100%, 254px) !important;
    min-height: 54px !important;
    padding: 14px 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #f7f8f3 !important;
    color: #17201f !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor * {
    color: rgba(244, 248, 239, 0.78) !important;
    font-size: 21px !important;
    line-height: 1.3 !important;
    text-align: left !important;
    white-space: normal !important;
  }
}

@media (max-width: 1024px) and (max-height: 520px) {
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 {
    --padding-top: 24px !important;
    --padding-right: 70px !important;
    --padding-bottom: 24px !important;
    --padding-left: 42px !important;
    --gap: 14px !important;
    justify-content: center !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button {
    top: 16px !important;
    right: 18px !important;
    width: 44px !important;
    height: 44px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-image img {
    max-width: 92px !important;
    max-height: 92px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu {
    gap: 7px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu a,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu a[href*="kontakt"] {
    font-size: clamp(27px, 5.4vw, 34px) !important;
    line-height: 1.03 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-nav-menu li:last-child > a {
    margin-top: 8px !important;
    width: 214px !important;
    min-height: 46px !important;
    padding: 10px 18px !important;
    font-size: 19px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor * {
    font-size: 18px !important;
  }
}


/* Navbar Landscape Popup Nachfix 2026-07-10
   Staerkere Selektoren fuer iPhone-Querformat, damit CTA und Telefon sichtbar bleiben. */
@media (max-width: 1024px) and (max-height: 520px) {
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 {
    --padding-top: 18px !important;
    --padding-right: 70px !important;
    --padding-bottom: 18px !important;
    --padding-left: 42px !important;
    --gap: 8px !important;
    --row-gap: 8px !important;
    justify-content: flex-start !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be {
    margin-bottom: 6px !important;
    padding-top: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0 .elementor-widget-container {
    width: 62px !important;
    max-width: 62px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-image img {
    max-width: 62px !important;
    max-height: 62px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main > ul.elementor-nav-menu {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item[href*="kontakt"] {
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #f4f8ef !important;
    font-size: clamp(27px, 4.4vw, 32px) !important;
    line-height: 1.02 !important;
    white-space: nowrap !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main li:last-child a.elementor-item {
    margin-top: 6px !important;
    width: 200px !important;
    min-height: 40px !important;
    padding: 9px 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #f7f8f3 !important;
    color: #17201f !important;
    font-size: 17px !important;
    font-weight: 600 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor * {
    font-size: 16px !important;
    line-height: 1.2 !important;
  }
}


/* Navbar Mobile Portrait Final 2026-07-10
   Voss-inspirierter Fullscreen-Look, aber feste mobile Inhaltsspalte: nichts darf rechts aus dem Viewport laufen. */
@media (max-width: 767px) and (orientation: portrait) {
  body:not(.wp-admin) #elementor-popup-modal-1078,
  body:not(.wp-admin) #elementor-popup-modal-1078 * {
    box-sizing: border-box !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 {
    position: fixed !important;
    inset: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: stretch !important;
    overflow: hidden !important;
    background: #030806 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-widget-content,
  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-message {
    position: fixed !important;
    inset: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    translate: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #030806 !important;
    box-shadow: none !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-1078,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    transform: none !important;
    translate: none !important;
    overflow-x: hidden !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-44a6267 {
    --padding-top: clamp(84px, 14vh, 118px) !important;
    --padding-right: 24px !important;
    --padding-bottom: 42px !important;
    --padding-left: 24px !important;
    --gap: 0px !important;
    --row-gap: 0px !important;
    min-height: 100svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-16b7a13,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor {
    width: min(280px, calc(100vw - 56px)) !important;
    max-width: min(280px, calc(100vw - 56px)) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    align-self: center !important;
    transform: none !important;
    translate: none !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be {
    margin-bottom: 34px !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-7dec8d0 .elementor-widget-container {
    width: 132px !important;
    max-width: 132px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-image img {
    width: auto !important;
    max-width: 132px !important;
    max-height: 132px !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main,
  body:not(.wp-admin) #elementor-popup-modal-1078 ul.elementor-nav-menu,
  body:not(.wp-admin) #elementor-popup-modal-1078 ul.elementor-nav-menu > li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    overflow: visible !important;
    transform: none !important;
    translate: none !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item[href*="kontakt"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    border: 0 !important;
    background: transparent !important;
    color: #f4f8ef !important;
    font-size: clamp(31px, 8.8vw, 38px) !important;
    line-height: 1.1 !important;
    font-weight: 400 !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: visible !important;
    transform: none !important;
    translate: none !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main li:last-child a.elementor-item {
    width: 100% !important;
    max-width: 260px !important;
    min-height: 54px !important;
    margin-top: 18px !important;
    padding: 14px 22px !important;
    justify-content: center !important;
    background: #f7f8f3 !important;
    color: #17201f !important;
    font-size: 21px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor * {
    color: rgba(244, 248, 239, 0.78) !important;
    font-size: 20px !important;
    line-height: 1.28 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 .dialog-close-button {
    position: fixed !important;
    top: max(18px, env(safe-area-inset-top)) !important;
    right: max(18px, env(safe-area-inset-right)) !important;
    left: auto !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    border-radius: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 999999 !important;
  }
}

@media (max-width: 380px) and (orientation: portrait) {
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-bd7f6be,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-element-16b7a13,
  body:not(.wp-admin) #elementor-popup-modal-1078 .elementor-widget-text-editor {
    width: min(258px, calc(100vw - 48px)) !important;
    max-width: min(258px, calc(100vw - 48px)) !important;
  }

  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item,
  body:not(.wp-admin) #elementor-popup-modal-1078 nav.elementor-nav-menu--main a.elementor-item[href*="kontakt"] {
    font-size: clamp(29px, 8.4vw, 35px) !important;
  }
}
