/* MeinHausParadies! – Gestaltung des Elementor-Neubaus (flaticon.css + mhp-gestaltung.css; die @font-face-Regeln liefert das Plugin inline) */
[class^="ot-flaticon-"]:before,[class*=" ot-flaticon-"]:before{font-family:Flaticon;font-style:normal;font-weight:normal;line-height:1}
.ot-flaticon-support:before{content:"\f100"}
.ot-flaticon-document:before{content:"\f101"}
.ot-flaticon-video:before{content:"\f102"}
.ot-flaticon-file:before{content:"\f103"}
.ot-flaticon-next:before{content:"\f104"}
.ot-flaticon-menu:before{content:"\f105"}
.ot-flaticon-left-arrow:before{content:"\f106"}
.ot-flaticon-button:before{content:"\f107"}
.ot-flaticon-play-button:before{content:"\f108"}
.ot-flaticon-search:before{content:"\f109"}
.ot-flaticon-search-1:before{content:"\f10a"}
.ot-flaticon-shopping-bag:before{content:"\f10b"}
.ot-flaticon-place:before{content:"\f10c"}
.ot-flaticon-phone-call:before{content:"\f10d"}
.ot-flaticon-3d:before{content:"\f10e"}
.ot-flaticon-pantone:before{content:"\f10f"}
.ot-flaticon-sphere:before{content:"\f110"}
.ot-flaticon-measure:before{content:"\f111"}
.ot-flaticon-title:before{content:"\f112"}
.ot-flaticon-home:before{content:"\f113"}
.ot-flaticon-house:before{content:"\f114"}
.ot-flaticon-mail:before{content:"\f115"}
.ot-flaticon-add:before{content:"\f116"}
.ot-flaticon-quote:before{content:"\f117"}
.ot-flaticon-send:before{content:"\f118"}
.ot-flaticon-blueprint:before{content:"\f119"}
.ot-flaticon-tip:before{content:"\f11a"}
.ot-flaticon-money-back:before{content:"\f11b"}
.ot-flaticon-vector:before{content:"\f11c"}
.ot-flaticon-tools:before{content:"\f11d"}
.ot-flaticon-3d-1:before{content:"\f11e"}
.ot-flaticon-heart:before{content:"\f11f"}
.ot-flaticon-link:before{content:"\f120"}
.ot-flaticon-pin:before{content:"\f121"}
.ot-flaticon-cube:before{content:"\f122"}
.ot-flaticon-blueprint-1:before{content:"\f123"}
.ot-flaticon-brickwall:before{content:"\f124"}
.ot-flaticon-paint:before{content:"\f125"}
.ot-flaticon-diamond:before{content:"\f126"}
.ot-flaticon-box:before{content:"\f127"}
.ot-flaticon-cactus:before{content:"\f128"}
.ot-flaticon-house-1:before{content:"\f129"}
.ot-flaticon-paint-1:before{content:"\f12a"}
.ot-flaticon-type:before{content:"\f12b"}
.ot-flaticon-type-1:before{content:"\f12c"}
.ot-flaticon-3d-2:before{content:"\f12d"}
.ot-flaticon-close:before{content:"\f12e"}
.ot-flaticon-favorite:before{content:"\f12f"}
.ot-flaticon-close-1:before{content:"\f130"}
.ot-flaticon-warning-sign:before{content:"\f131"}
.ot-flaticon-info:before{content:"\f132"}
.ot-flaticon-check-mark-black-outline:before{content:"\f133"}
.ot-flaticon-right-arrow:before{content:"\f134"}
.ot-flaticon-quote-1:before{content:"\f135"}
.ot-flaticon-quote-2:before{content:"\f136"}

/* ==========================================================================
   MeinHausParadies! – Gestaltung des Neubaus (Hello + Elementor Pro)
   Werte aus dem Original (Theme theratio) gemessen: Raleway 16/30 #555, Titillium Web für Überschriften,
   Orange #f07d2c, Creme #fffdf4, Dunkel #1a1a1a.
   ========================================================================== */
:root { --mhp-orange: #f07d2c; --mhp-creme: #fffdf4; --mhp-dunkel: #1a1a1a; --mhp-text: #555555; --mhp-grau: #606060; }

body { font-family: Raleway, sans-serif; font-size: 16px; line-height: 30px; color: var(--mhp-text); background: #fff; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { font-family: "Titillium Web", sans-serif; font-weight: 400; color: var(--mhp-dunkel); margin: 0 0 20px; }
a { color: var(--mhp-dunkel); text-decoration: none; transition: color .3s linear; }
a:hover { color: var(--mhp-orange); }
strong, b { font-weight: 700; }
.elementor-location-header, .elementor-location-footer { width: 100%; }
.site-main, .page-content { overflow: visible; }
body:not(.elementor-editor-active) .page-header, .entry-title { display: none; }

/* Textblöcke */
.mhp-text p { margin: 0 0 20px; }
.mhp-text p:last-child { margin-bottom: 0; }
.mhp-text ul, .mhp-text ol { margin: 0 0 20px 20px; padding: 0; }
.mhp-text li { margin: 0; }
.mhp-text a { text-decoration: none; }
.mhp-text a:hover { text-decoration: underline; }

/* Kleiner Zusatz über den Überschriften ([ … ]) */
.elementor-widget-heading.mhp-zusatz .elementor-heading-title { display: inline-block; }

/* ---------- Karten mit Symbol (Leistungsüberblick) ---------- */
.mhp-karte-spalte > .elementor-widget-wrap { position: relative; transition: all .3s linear; align-content: flex-start; }
.mhp-karte-spalte > .elementor-widget-wrap:before, .mhp-karte-spalte > .elementor-widget-wrap:after { content: ""; position: absolute; background: var(--mhp-dunkel); transition: all .3s linear; }
.mhp-karte-spalte > .elementor-widget-wrap:before { width: 0; height: 1px; bottom: -10px; left: 10px; }
.mhp-karte-spalte > .elementor-widget-wrap:after { width: 1px; height: 0; top: 10px; right: -11px; }
.mhp-karte-spalte > .elementor-widget-wrap:hover { background-color: var(--mhp-dunkel) !important; }
.mhp-karte-spalte > .elementor-widget-wrap:hover:before { width: calc(100% + 5px); }
.mhp-karte-spalte > .elementor-widget-wrap:hover:after { height: calc(100% + 5px); }
.mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-icon-box-title, .mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-image-box-title,
.mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-icon-box-title a, .mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-icon { color: #fff !important; }
.mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-icon-box-description, .mhp-karte-spalte > .elementor-widget-wrap:hover .elementor-image-box-description { color: #a3a3a3 !important; }
.mhp-karte-spalte > .elementor-widget-wrap:hover .mhp-details .elementor-button { color: #fff; opacity: .9; }
.mhp-karte-spalte > .elementor-widget-wrap:hover .mhp-details .elementor-button:before { background: #505050; }
.mhp-iconbox .elementor-icon-box-icon .elementor-icon { font-size: 54px; line-height: 1; color: var(--mhp-dunkel); transition: color .3s linear; }
.mhp-iconbox .elementor-icon-box-icon .elementor-icon i:before { font-size: 54px; }
.mhp-iconbox .elementor-icon-box-title, .mhp-iconbox .elementor-image-box-title { transition: color .3s linear; }
.mhp-iconbox-bild .elementor-image-box-img { margin: 0 auto 28px; width: 60px; }
.mhp-iconbox-bild .elementor-image-box-img img { width: 60px; height: 60px; }

/* „mehr erfahren“ – Textknopf mit grauem Block */
.mhp-details .elementor-button { position: relative; z-index: 0; padding: 0; background: transparent !important; border: 0; border-radius: 0; font-family: "Titillium Web", sans-serif; font-size: 13px; font-weight: 600; line-height: 24px; letter-spacing: .5px; text-transform: uppercase; color: var(--mhp-dunkel); }
.mhp-details .elementor-button:before { content: ""; position: absolute; background: #ddd; bottom: -3px; left: -7px; width: 20px; height: 12px; z-index: -1; transition: all .3s linear; }
.mhp-details .elementor-button:hover { color: var(--mhp-dunkel); }
.mhp-details .elementor-button:hover:before { width: calc(100% + 14px); transition: width .6s cubic-bezier(.68, -.55, .265, 1.55); }

/* ---------- Zähler ---------- */
.mhp-zaehler .elementor-counter-number-wrapper { justify-content: center; }
.mhp-zaehler .elementor-counter-number-prefix, .mhp-zaehler .elementor-counter-number-suffix { flex: 0 0 auto; }
.mhp-zaehler .elementor-counter-number-prefix { padding-right: 3px; }
.mhp-zaehler .elementor-counter-number-suffix { padding-left: 3px; white-space: pre; }
.mhp-zaehler .elementor-counter-title { margin-top: 8px; }

/* ---------- Kontaktzeilen (Kontaktseite) ---------- */
.mhp-kontaktinfo .elementor-icon-box-icon .elementor-icon i:before { font-size: 26px; }
.mhp-kontaktinfo .elementor-icon-box-icon .elementor-icon { font-size: 26px; line-height: 1; }
.mhp-kontaktinfo .elementor-icon-box-description a { color: inherit; }

/* ---------- Leistungs-Menü in der Seitenleiste ---------- */
.mhp-leistungsmenue .elementor-nav-menu--main .elementor-nav-menu > li { margin-bottom: 10px; }
.mhp-leistungsmenue .elementor-nav-menu--main .elementor-nav-menu > li:last-child { margin-bottom: 0; }
.mhp-leistungsmenue .elementor-nav-menu--main .elementor-item { display: block; padding: 10px 20px; background: #f4f4f4; font-family: "Titillium Web", sans-serif; font-size: 16px; font-weight: 600; line-height: 30px; text-transform: uppercase; color: var(--mhp-dunkel); transition: all .3s linear; }
.mhp-leistungsmenue .elementor-nav-menu--main .elementor-item:hover, .mhp-leistungsmenue .elementor-nav-menu--main .elementor-item.elementor-item-active { background: var(--mhp-dunkel); color: #fff; }
.mhp-leistungsmenue .elementor-nav-menu--dropdown { display: none !important; }
.mhp-leistungsmenue .elementor-menu-toggle { display: none !important; }
.mhp-leistungsmenue .elementor-nav-menu--main { display: block !important; }

/* ---------- Bildwechsler ---------- */
.mhp-karussell-einzeln .elementor-swiper-button, .mhp-karussell .elementor-swiper-button { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; background: #fff; color: var(--mhp-dunkel); font-size: 16px; transition: all .3s linear; }
.mhp-karussell-einzeln .elementor-swiper-button-prev { left: 0; }
.mhp-karussell-einzeln .elementor-swiper-button-next { right: 0; }
.mhp-karussell-einzeln .elementor-swiper-button:hover, .mhp-karussell .elementor-swiper-button:hover { background: var(--mhp-dunkel); color: #9f9e9e; }
.mhp-karussell .elementor-swiper-button { background: rgba(255,255,255,.85); }
.mhp-karussell .elementor-swiper-button-prev { left: 15px; }
.mhp-karussell .elementor-swiper-button-next { right: 15px; }
.mhp-karussell .swiper-pagination { margin-top: 30px; }
.mhp-karussell .swiper-pagination-bullet { width: 8px; height: 8px; background: #d9d9d9; opacity: 1; margin: 0 4px !important; }
.mhp-karussell .swiper-pagination-bullet-active { background: var(--mhp-dunkel); }
.mhp-karussell .swiper-slide img { width: 100%; height: auto; }
.mhp-karussell-einzeln .swiper-slide { text-align: center; }
.mhp-karussell-einzeln .swiper-slide img { width: auto; max-width: 100%; height: auto; display: inline-block; }
.mhp-karussell-einzeln .swiper-slide figure { margin: 0; }

/* ---------- Aufmacher der Startseite ---------- */
.mhp-hero { position: relative; overflow: hidden; }
.mhp-hero > .elementor-container { position: relative; z-index: 2; }
.mhp-hero:before, .mhp-hero:after { content: ""; position: absolute; left: 0; right: 0; z-index: 1; pointer-events: none; background: rgba(32, 24, 20, .35); }
.mhp-hero:before { display: none; }
.mhp-hero:after { bottom: 0; height: 85px; }
.mhp-hero .elementor-background-slideshow { z-index: 0; }
.mhp-hero-leiste-w { position: absolute !important; left: 0; top: 0; bottom: 0; width: 99px !important; margin: 0 !important; z-index: 3; }
.mhp-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { position: relative; }
.mhp-hero-leiste-w > .elementor-widget-container, .mhp-hero-leiste { position: absolute; inset: 0; }
.mhp-hero-leiste { background: var(--mhp-orange); }
.mhp-hero-leiste span { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-90deg); white-space: nowrap; font-family: "Titillium Web", sans-serif; font-size: 35px; line-height: 1; font-weight: 400; color: #fff; }
.mhp-hero-band { position: relative; }
.mhp-hero-band > .elementor-container { max-width: none !important; }
.mhp-hero-logo { position: absolute !important; left: 116px; top: 50%; transform: translateY(-50%); margin: 0 !important; width: auto !important; z-index: 2; }
.mhp-hero-logo > .elementor-widget-container { padding: 0; }
.mhp-hero-handwerk { margin: 0 !important; }
.mhp-hero-knoepfe .elementor-column > .elementor-widget-wrap { justify-content: center; }
.mhp-octf .elementor-button { position: relative; border: 1px solid transparent; transition: all .3s linear; }
.mhp-octf .elementor-button:before, .mhp-octf .elementor-button:after { content: ""; position: absolute; background: var(--mhp-dunkel); transition: all .3s linear; }
.mhp-octf .elementor-button:before { width: calc(100% + 2px); height: 1px; bottom: -6px; left: 10px; }
.mhp-octf .elementor-button:after { width: 1px; height: calc(100% + 2px); top: 10px; right: -6px; }
.mhp-octf .elementor-button:hover { border-color: #fff; }
.mhp-octf .elementor-button:hover:before { width: 0; }
.mhp-octf .elementor-button:hover:after { height: 0; }
.mhp-hero-nav-w { position: absolute !important; left: 0; right: 0; bottom: 0; height: 85px; margin: 0 !important; z-index: 4; }
.mhp-hero-nav { position: absolute; inset: 0; }
.mhp-hero-nav button.mhp-hero-zur, .mhp-hero-nav button.mhp-hero-vor { position: absolute; bottom: 0; width: 90px; height: 85px; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #fff !important; font-size: 24px !important; line-height: 1; cursor: pointer; transition: background .3s; padding: 0 !important; }
.mhp-hero-nav button:hover { background: rgba(255,255,255,.4) !important; }
.mhp-hero-nav .mhp-hero-zur { right: 90px; }
.mhp-hero-nav .mhp-hero-vor { right: 0; }
.mhp-hero-punkte { display: none; position: absolute; left: 0; right: 0; bottom: 30px; justify-content: center; gap: 10px; }
.mhp-hero-punkte button { width: 10px; height: 10px; border-radius: 50% !important; border: 0 !important; background: rgba(255,255,255,.5) !important; padding: 0 !important; cursor: pointer; }
.mhp-hero-punkte button.an { background: #fff !important; }
.mhp-hero-punkte button.an { background: #fff; }
@media (max-width: 1024px) {
  .mhp-hero-leiste-w { width: 63px !important; }
  .mhp-hero-leiste span { font-size: 21px; }
  .mhp-hero-logo { left: 81px; }
}
@media (max-width: 767px) {
  .mhp-hero-leiste-w { width: 30px !important; }
  .mhp-hero-leiste span { font-size: 12px; }
  .mhp-hero:after { display: none; }
  .mhp-hero-logo { position: relative !important; left: auto; top: auto; transform: none; width: 100% !important; margin: 0 0 64px !important; text-align: center; }
  .mhp-hero-band > .elementor-container > .elementor-column > .elementor-widget-wrap { align-content: center; }
  .mhp-hero-band { margin-top: 0; }
  .mhp-hero-band > .elementor-container, .mhp-hero-band > .elementor-container > .elementor-column, .mhp-hero-band > .elementor-container > .elementor-column > .elementor-widget-wrap { position: static; }
  .mhp-hero-band .mhp-hero-logo { position: absolute !important; top: -159px; left: 0; right: 0; margin: 0 !important; text-align: center; }
  .mhp-hero-nav button.mhp-hero-zur, .mhp-hero-nav button.mhp-hero-vor { display: none; }
  .mhp-hero-punkte { display: flex; }
  .mhp-hero-knoepfe .elementor-column { margin-bottom: 14px; }
  .mhp-hero-knoepfe .elementor-column:last-child { margin-bottom: 0; }
  .mhp-octf .elementor-button { min-width: 191px; }
}

/* ---------- Kopfbereich (Desktop) ---------- */
.elementor-location-header { position: absolute; top: 0; left: 0; right: 0; z-index: 99; }
.elementor-location-header:before { content: ""; position: absolute; inset: 0; background: rgba(32, 24, 20, .35); z-index: -1; pointer-events: none; }
.elementor-location-header .elementor-sticky--effects:before { display: none; }
.admin-bar .elementor-location-header { top: 32px; }
.mhp-kopf-d { transition: background .3s linear; }
.mhp-kopf-d.elementor-sticky--effects { background: var(--mhp-grau); box-shadow: 4px 4px 30px 0 rgba(42, 67, 113, .15); }
.mhp-kopf-d > .elementor-container { max-width: none; }
.mhp-logo > .elementor-widget-container { line-height: 0; }
.mhp-kopf-d .elementor-nav-menu--main .elementor-nav-menu { display: flex; align-items: center; height: 124px; }
.mhp-kopf-d .elementor-nav-menu--main > ul > li > .elementor-item { position: relative; display: flex; align-items: center; height: 124px; }
.mhp-kopf-d .elementor-nav-menu--main > ul > li > .elementor-item:before { content: ""; position: absolute; left: 50%; bottom: -1px; margin-left: -5px; border-left: 5px solid transparent; border-right: 5px solid transparent; border-bottom: 6px solid #fff; opacity: 0; transition: all .3s linear; }
.mhp-kopf-d .elementor-nav-menu--main > ul > li:hover > .elementor-item:before, .mhp-kopf-d .elementor-nav-menu--main > ul > li > .elementor-item.elementor-item-active:before { opacity: 1; }
.mhp-kopf-d .elementor-nav-menu--main .sub-arrow { font-size: 12px; padding-left: 5px; }
.mhp-kopf-d ul.elementor-nav-menu--dropdown { min-width: 290px; padding: 20px 0; background: #2a2a2a; border: 0; box-shadow: 3px 3px 15px rgba(0,0,0,.1); margin-left: -34px; }
/* Untermenü auch ohne Skript beim Überfahren */
.mhp-kopf-d .elementor-nav-menu--main > ul > li.menu-item-has-children:hover > ul.elementor-nav-menu--dropdown { display: block !important; position: absolute; top: 100%; left: 0; z-index: 3; }
@media (min-width: 768px) and (max-width: 1024px) { .elementor-top-section.elementor-section-boxed > .elementor-container { padding-left: 9px; padding-right: 9px; } }
@media (max-width: 767px) { .elementor-top-section.elementor-section-boxed > .elementor-container { padding-left: 15px; padding-right: 15px; } }
.mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item { position: relative; padding: 5px 34px; font-family: "Titillium Web", sans-serif; font-size: 16px; line-height: 30px; color: #b6b6b6; text-transform: none; background: transparent; transition: all .3s linear; }
.mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item:before { content: ""; position: absolute; left: 34px; top: 50%; width: 0; height: 1px; background: #fff; transition: all .3s linear; }
.mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item:hover, .mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item.elementor-item-active { color: #fff; padding-left: 74px; background: transparent; }
.mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item:hover:before, .mhp-kopf-d ul.elementor-nav-menu--dropdown .elementor-item.elementor-item-active:before { width: 30px; }
.mhp-panel-w > .elementor-widget-container { display: flex; justify-content: flex-end; }
.mhp-panel-btn { width: 90px; height: 124px; border: 0 !important; border-left: 1px solid rgba(255,255,255,.2) !important; border-radius: 0 !important; background: transparent !important; color: #fff !important; font-size: 22px !important; line-height: 1; cursor: pointer; padding: 0 !important; }
.mhp-panel-btn:hover { color: var(--mhp-orange); }
.mhp-panel-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.7); z-index: 9998; opacity: 0; transition: opacity .3s linear; }
.mhp-panel-overlay.an { opacity: 1; }
.mhp-panel { position: fixed; top: 0; bottom: 0; right: 0; width: 400px; max-width: 100%; background: var(--mhp-creme); z-index: 9999; transform: translateX(100%); transition: transform .3s linear; overflow-y: auto; }
.admin-bar .mhp-panel { top: 32px; }
.mhp-panel.offen { transform: none; }
.mhp-panel-close { position: absolute; right: 0; top: 0; width: 90px; height: 90px; border: 0 !important; border-radius: 0 !important; background: #2f2f2f !important; color: #fff !important; font-size: 20px !important; line-height: 90px; cursor: pointer; padding: 0 !important; transition: all .3s linear; }
.mhp-panel-close:hover { background: var(--mhp-orange) !important; }
.mhp-panel-inhalt { padding: 90px 42px 90px 25px; }
.mhp-panel-logo { display: block; margin: 10px auto 40px; width: 272px; max-width: 100%; }
.mhp-panel-logo img { width: 100%; height: auto; display: block; }
.mhp-panel-titel { font-family: "Titillium Web", sans-serif; font-size: 24px; line-height: 48px; font-weight: 400; color: #86776f; margin: 0 0 20px; padding: 0 0 20px; }
.mhp-panel-inhalt p { position: relative; margin: 0 0 5px; padding-left: 32px; font-size: 16px; font-weight: 300; line-height: 35px; color: #86776f; }
.mhp-panel-inhalt p i { position: absolute; left: 0; top: 2px; font-size: 26px; line-height: 1; color: #86776f; }
.mhp-panel-inhalt p a { color: #86776f; }
.mhp-panel-inhalt p a:hover { color: var(--mhp-orange); }
.mhp-panel-social { display: flex; gap: 15px; margin-top: 25px; }
.mhp-panel-social a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--mhp-orange); border: 1px solid rgba(255,255,255,.4); color: #fff; font-size: 20px; }
.mhp-panel-social a:hover { border-color: #444; }

/* ---------- Kopfbereich (Tablet und Handy) ---------- */
.mhp-kopf-m { transition: background .3s linear; }
.mhp-kopf-m.elementor-sticky--effects { background: #f07e2d; box-shadow: 4px 4px 30px 0 rgba(0,0,0,.3); }
.mhp-kopf-m > .elementor-container { max-width: none; }
.mhp-logo-m > .elementor-widget-container { line-height: 0; }
.mhp-kopf-m .elementor-menu-toggle { color: #fff; background: transparent; border: 0; padding: 0; font-size: 22px; width: 22px; height: 41px; }
.mhp-kopf-m .elementor-menu-toggle svg, .mhp-kopf-m .elementor-menu-toggle i { color: #fff; fill: #fff; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown { position: fixed !important; top: 0 !important; right: 0; bottom: 0; left: auto !important; width: 310px !important; max-width: 85vw; margin: 0; padding: 70px 52px 35px 35px; background: #2a2a2a; border: 0; border-radius: 0; box-shadow: none; overflow-y: auto; z-index: 9999; }
.admin-bar .mhp-kopf-m nav.elementor-nav-menu--dropdown { top: 32px !important; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown[aria-hidden="true"] { display: none !important; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown .elementor-nav-menu { margin: 0; padding: 0; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown li { list-style: none; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown .elementor-item { display: block; padding: 9px 30px 9px 0; font-family: Raleway, sans-serif; font-size: 14px; line-height: 26px; font-weight: 400; color: #fff; text-transform: none; background: transparent; border-bottom: 1px solid rgba(255,255,255,.1); text-align: left; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown .elementor-item:hover, .mhp-kopf-m nav.elementor-nav-menu--dropdown .elementor-item.elementor-item-active { color: #fff; background: transparent; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown .elementor-item.elementor-item-active { color: var(--mhp-orange); }
.mhp-kopf-m nav.elementor-nav-menu--dropdown .sub-arrow { position: absolute; right: 0; top: 0; padding: 7px 12px 7px 0; color: #9397a7; font-size: 10px; cursor: pointer; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown li.menu-item-has-children > a { position: relative; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown li.menu-item-has-children > a .sub-arrow i { transition: transform .3s ease-in-out; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown li.menu-item-has-children.mhp-offen > a .sub-arrow i { transform: rotate(90deg); }
.mhp-kopf-m nav.elementor-nav-menu--dropdown ul.sub-menu { display: none; margin: 0 0 0 15px; padding: 0; position: static; width: auto; background: transparent; border: 0; box-shadow: none; }
.mhp-kopf-m nav.elementor-nav-menu--dropdown ul.sub-menu .elementor-item { padding-left: 0; }
.mhp-menue-zu { position: absolute; top: 20px; left: 35px; width: 240px; text-align: left; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #fff !important; font-size: 16px !important; padding: 9px 0 !important; cursor: pointer; }
.mhp-menue-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 9998; opacity: 0; visibility: hidden; transition: all .3s linear; }
.mhp-menue-overlay.an { opacity: 1; visibility: visible; }
body.mhp-menue-offen { overflow: hidden; }

/* ---------- Fußbereich ---------- */
.mhp-liste .elementor-icon-list-icon i { transition: color .3s; }
.mhp-liste .elementor-icon-list-text a, .mhp-liste a { color: inherit; }
.mhp-social .elementor-social-icon { transition: background .3s linear; }
.mhp-knopf .elementor-button { transition: all .3s linear; }

/* ---------- Karte erst auf Klick ---------- */
.mhp-karte { width: 100%; }
.mhp-karte-hinweis { position: absolute; left: 0; bottom: 0; padding: 6px 12px; background: rgba(0,0,0,.6); color: #fff; font-size: 12px; line-height: 1.5; }
.mhp-karte:hover .mhp-karte-hinweis { background: var(--mhp-orange); }
.leaflet-container { font-family: Raleway, sans-serif; }

/* ---------- Formular ---------- */
.mhp-anfrage button[type=submit] { font-family: Raleway, sans-serif !important; font-size: 16px !important; font-weight: 400 !important; background: #f7f7f7 !important; color: #555 !important; border: 1px solid #ccc !important; border-radius: 3px !important; padding: 10px 15px !important; }
.mhp-anfrage button[type=submit]:hover { background: var(--mhp-orange) !important; border-color: var(--mhp-orange) !important; color: #fff !important; }
