.elementor-kit-7{--e-global-color-primary:#1B355A;--e-global-color-secondary:#2D5C8B;--e-global-color-text:#12233B;--e-global-color-accent:#EAEFF6;--e-global-color-muted:#667B99;--e-global-color-border:#C3D1DF;--e-global-color-card:#FFFFFF;--e-global-typography-primary-font-family:"DM Serif Display";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;color:#12233B;font-family:"Inter", Sans-serif;font-size:16px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================
   HAUS-HELD: NUR HEADER + FOOTER spezifisch
   (keine globalen Mobile-Overrides — Elementor responsive uebernimmt)
   ============================================ */

/* Hamburger-Icon weiss */
[data-elementor-type="header"] .elementor-menu-toggle{
  color:#FFFFFF!important;
}
/* Dropdown-Menu (mobile) styling */
[data-elementor-type="header"] .elementor-nav-menu--dropdown{
  background:rgba(27,53,90,0.97)!important;
}
[data-elementor-type="header"] .elementor-nav-menu--dropdown li a{
  color:#FFFFFF!important;border-color:rgba(255,255,255,.1)!important;
}

/* === SITE FOOTER === */
[data-elementor-type="footer"]{
  background:#1B355A!important;
  color:#FFFFFF!important;
}
[data-elementor-type="footer"] *{color:inherit}
[data-elementor-type="footer"] .elementor-widget-heading h1,
[data-elementor-type="footer"] .elementor-widget-heading h2,
[data-elementor-type="footer"] .elementor-widget-heading h3,
[data-elementor-type="footer"] .elementor-widget-heading h4,
[data-elementor-type="footer"] .elementor-widget-heading .elementor-heading-title{
  color:#FFFFFF!important;
}
[data-elementor-type="footer"] .elementor-widget-text-editor,
[data-elementor-type="footer"] .elementor-widget-text-editor p{
  color:rgba(255,255,255,.75)!important;
  font-family:Inter,sans-serif!important;font-size:14px!important;line-height:1.6!important;
}
[data-elementor-type="footer"] a{color:#FFFFFF!important;text-decoration:none!important}
[data-elementor-type="footer"] a:hover{color:#93BFEC!important}
/* Footer divider sichtbar */
[data-elementor-type="footer"] .elementor-widget-divider{margin:24px 0 16px!important;opacity:.4}
/* Copyright zentriert */
[data-elementor-type="footer"] .elementor-element:last-child .elementor-widget-text-editor p{text-align:center!important}

/* === FRANK OBERMANN AVATAR (nur dieses Bild rund) === */
.elementor [data-id="4dd66f00"] img{
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:50% 18%!important;
  box-shadow:0 10px 25px -5px rgba(0,0,0,.25)!important;
}
.elementor [data-id="5acb5874"] img,
.elementor [data-id="774371b4"] img{
  border-radius:24px!important;
  object-fit:cover!important;
  box-shadow:0 25px 50px -12px rgba(0,0,0,.25)!important;
}

/* === Phone-Icon Ansprechpartner (sonst weiss-auf-weiss) === */
[data-id="176f5cdc"] a[href*="tel"] svg,
[data-id="176f5cdc"] a[href*="tel"] svg path{
  stroke:#1B355A!important;
}
/* ============================================
   GEZIELTE DESIGN-FIXES (kein globales Mobile-Override)
   ============================================ */

/* === 1) ANSPRECHPARTNER-AVATAR Frank Obermann klein === */
.elementor [data-id="4dd66f00"]{
  width:160px!important;
  max-width:160px!important;
  flex:0 0 160px!important;
}
.elementor [data-id="4dd66f00"] img{
  width:160px!important;height:160px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:50% 18%!important;
  box-shadow:0 10px 25px -5px rgba(0,0,0,.25)!important;
}

/* === 2) 'Mehr erfahren' inline (Pfeil neben Text) === */
#leistungen .elementor-widget-text-editor:has(svg){
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  width:auto!important;
  max-width:max-content!important;
  white-space:nowrap!important;
  color:#1B355A!important;font-weight:600!important;
}
#leistungen .elementor-widget-text-editor:has(svg) svg{
  display:inline-block!important;flex-shrink:0!important;
  vertical-align:middle!important;
  width:14px!important;height:14px!important;stroke:#1B355A!important;
}
#leistungen .elementor-widget-text-editor:has(svg) svg path{stroke:#1B355A!important}

/* === 3) BULLETS auf einer Zeile (Lovable card lists) === */
.elementor-widget-text-editor > span:empty:first-child,
.elementor-widget-text-editor span[class]:empty:first-child{
  display:inline-block!important;
  width:6px!important;height:6px!important;
  background:#2D5C8B!important;
  border-radius:50%!important;
  margin:0 12px 3px 0!important;
  vertical-align:middle!important;
  flex-shrink:0!important;line-height:0!important;
}

/* === 4) PROZESS 4-Schritte: Outline-Circles + Icons === */
#prozess [data-id="44037b77"],
#prozess [data-id="f03601f"],
#prozess [data-id="753a1134"],
#prozess [data-id="79863e53"]{
  width:80px!important;height:80px!important;
  border-radius:50%!important;
  border:2px solid #1B355A!important;
  background:transparent!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  position:relative!important;
  margin:0 auto 32px auto!important;
  overflow:visible!important;
  padding:0!important;
  flex-shrink:0!important;
}
/* Inner svg-holder neutralisieren (kein doppelter Kreis) */
#prozess [data-id="2b030f0d"],
#prozess [data-id="4edd9ed3"],
#prozess [data-id="40eb3290"],
#prozess [data-id="428dca46"]{
  background:transparent!important;
  border-radius:0!important;
  width:auto!important;height:auto!important;
  padding:0!important;box-shadow:none!important;border:none!important;
}
/* SVG-Icon 32x32 in #1B355A */
#prozess .elementor-widget-html{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;padding:0!important;
}
#prozess .elementor-widget-html svg{
  display:block!important;width:32px!important;height:32px!important;stroke-width:1.75!important;
}
#prozess .elementor-widget-html svg,
#prozess .elementor-widget-html svg *{
  stroke:#1B355A!important;color:#1B355A!important;fill:none!important;
}
/* Number Badges 1-4 */
#prozess [data-id="76971c04"],
#prozess [data-id="2a21950f"],
#prozess [data-id="1bbd29ab"],
#prozess [data-id="34dfbcf7"]{
  position:absolute!important;
  top:-6px!important;right:-6px!important;
  width:26px!important;height:26px!important;
  border-radius:50%!important;background:#1B355A!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;padding:0!important;z-index:2!important;
  box-shadow:0 0 0 3px #FFFFFF!important;
}
#prozess [data-id="76971c04"] .elementor-heading-title,
#prozess [data-id="2a21950f"] .elementor-heading-title,
#prozess [data-id="1bbd29ab"] .elementor-heading-title,
#prozess [data-id="34dfbcf7"] .elementor-heading-title{
  color:#FFFFFF!important;font-family:Inter,sans-serif!important;
  font-size:12px!important;font-weight:600!important;line-height:1!important;margin:0!important;
}

/* === 5) STANDORTE-Section: Eyebrows mit Margin-Bottom zu Buttons === */
#standorte [data-id="98c53a9"],
#standorte [data-id="d4c6ca8"],
#standorte [data-id="2984ac9e"]{
  font-family:Inter,sans-serif!important;
  font-size:13px!important;font-weight:700!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;
  color:#2D5C8B!important;margin:0 0 36px 0!important;
}
/* Stadtteile-Buttons (heading widgets, kein h2) */
#standorte .elementor-widget-heading:not(:has(h1)):not(:has(h2)):not(:has(h3)):not(:has(h4)){
  background:#FFFFFF!important;border:1px solid #C3D1DF!important;
  border-radius:9999px!important;padding:10px 20px!important;
  display:inline-flex!important;align-items:center!important;
  box-shadow:none!important;
}
#standorte .elementor-widget-heading svg:empty,
#standorte .elementor-widget-heading svg:not(:has(*)){display:none!important;width:0!important;height:0!important}
#standorte .elementor-widget-heading:not(:has(h2)) .elementor-heading-title{
  font-family:Inter,sans-serif!important;font-size:15px!important;font-weight:500!important;
  color:#12233B!important;line-height:1.2!important;
  background:transparent!important;padding:0!important;border:none!important;
}

/* === 6) Footer Phone-Button: weiss bg, Icon + Text sichtbar === */
[data-elementor-type="footer"] a[href*="tel"].elementor-button,
[data-elementor-type="footer"] .elementor-button[href*="tel"]{
  background:#FFFFFF!important;color:#1B355A!important;
  border:none!important;border-radius:9999px!important;
  padding:12px 22px!important;
  font-family:Inter,sans-serif!important;font-weight:600!important;font-size:14px!important;
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  white-space:nowrap;
}
[data-elementor-type="footer"] a[href*="tel"] svg,
[data-elementor-type="footer"] a[href*="tel"] svg path{
  stroke:#1B355A!important;fill:#1B355A!important;
}
/* Footer 'Termin am gleichen Tag' Hinweistext: Abstand zum Button */
[data-elementor-type="footer"] .elementor-widget-button + .elementor-widget-heading,
[data-elementor-type="footer"] .elementor-widget-button + .elementor-widget-text-editor{
  margin-top:14px!important;
}

/* === 7) 'Warum jetzt anfragen?' Box - Abstand zu Checkboxen === */
#kontakt [data-id="6106fa29"]{margin-bottom:32px!important}
#kontakt [data-id="65366ef0"]{gap:32px!important}

/* === 8) Nav-Menu Dropdown Hover-Style sichtbar === */
[data-elementor-type="header"] .elementor-nav-menu--main li a{
  transition:color .2s ease!important;
}
[data-elementor-type="header"] .elementor-nav-menu--main li:hover > a,
[data-elementor-type="header"] .elementor-nav-menu--main li > a:hover{
  color:#FFFFFF!important;
  background:rgba(255,255,255,.08)!important;
  border-radius:6px;
}
/* Caret-Indicator nach "Leistungen" */
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > a::after{content:"";display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-left:6px;vertical-align:middle;opacity:.7;transition:transform .2s ease}
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children:hover > a::after{transform:rotate(180deg)}
/* Caret-Indicator nach "Leistungen" */
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > a::after{content:"";display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-left:6px;vertical-align:middle;opacity:.7;transition:transform .2s ease}
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children:hover > a::after{transform:rotate(180deg)}
/* ANSPRECHPARTNER-BUTTONS: nowrap, sauber gleichmaessig */
[data-id="176f5cdc"] a.elementor-button[href*="tel"],
[data-id="176f5cdc"] a.elementor-button[href*="mailto"]{
  white-space:nowrap!important;
  font-size:14px!important;
  padding:12px 22px!important;
  height:auto!important;
  min-height:46px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  line-height:1!important;
}
[data-id="176f5cdc"] a.elementor-button[href*="mailto"] .elementor-button-text{
  white-space:nowrap!important;overflow:hidden!important;
}
/* Wraps gleichmaessig: beide auto-fit content, dann auf gleicher Linie */
[data-id="1f4284c"],
[data-id="f872ce4"]{
  width:auto!important;max-width:none!important;flex:0 0 auto!important;
}
[data-id="1f4284c"] .elementor-button,
[data-id="f872ce4"] .elementor-button{
  width:auto!important;
}
/* Caret-Indicator nach "Leistungen" */
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > a::after{content:"";display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-left:6px;vertical-align:middle;opacity:.7;transition:transform .2s ease}
[data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children:hover > a::after{transform:rotate(180deg)!important}
/* Sicherheits-Override fuer Buttons (Phone/Email) die als a-tags rendern */
[data-elementor-type="footer"] a[href^="tel:"],
[data-elementor-type="footer"] a[href^="mailto:"]{
  display:inline!important;line-height:1.4!important;
}
/* FOOTER-ICON-ROW V2: Icons im Footer sind html-widgets (nicht elementor-widget-icon) */
[data-elementor-type="footer"] [data-id="379eafa3"],
[data-elementor-type="footer"] [data-id="4583d551"]{
  align-items:flex-start!important;
  gap:12px!important;
}
/* Icon (html widget mit SVG) im Footer: oben buendig, mit Top-Offset fuer optische Zentrierung mit erster Zeile */
[data-elementor-type="footer"] [data-id="379eafa3"] > [data-widget_type="html.default"],
[data-elementor-type="footer"] [data-id="4583d551"] > [data-widget_type="html.default"]{
  flex-shrink:0!important;
  margin-top:4px!important;
  display:flex!important;
  align-items:center!important;
}
[data-elementor-type="footer"] [data-id="379eafa3"] > [data-widget_type="html.default"] svg,
[data-elementor-type="footer"] [data-id="4583d551"] > [data-widget_type="html.default"] svg{
  display:block!important;width:14px!important;height:14px!important;
}
/* Text-Editor padding raus damit Hoehe = Textzeile */
[data-elementor-type="footer"] [data-id="379eafa3"] > [data-widget_type="text-editor.default"],
[data-elementor-type="footer"] [data-id="4583d551"] > [data-widget_type="text-editor.default"]{
  padding:0!important;flex:1!important;min-width:0!important;
}
/* a tag im Text-Editor: bricht sauber um, Line-Height anpassen */
[data-elementor-type="footer"] [data-id="379eafa3"] a,
[data-elementor-type="footer"] [data-id="4583d551"] a{
  display:inline!important;line-height:1.5!important;
  word-break:break-word!important;
}
/* === HEADER-STACKING-CONTEXT === */
html body [data-elementor-type="header"]{
  position:relative!important;
  z-index:99999!important;
  background:rgba(27,53,90,0.97)!important;
  backdrop-filter:blur(8px);
}
html body [data-elementor-type="header"] > *{
  position:relative!important;
  z-index:99999!important;
}
html body [data-elementor-type="header"] .elementor-nav-menu{z-index:99999!important;position:relative!important}
html body [data-elementor-type="header"] .elementor-nav-menu li{z-index:99999!important}
/* Submenu auch erhoehen */
html body [data-elementor-type="header"] .menu-item-has-children > .sub-menu{z-index:999999!important}

/* === SITE HEADER Typography === */
[data-elementor-type="header"] .elementor-nav-menu li a{
  font-family:Inter,system-ui,sans-serif!important;
  font-size:14px!important;font-weight:500!important;
  color:rgba(255,255,255,.9)!important;
}
[data-elementor-type="header"] .elementor-nav-menu li a:hover,
[data-elementor-type="header"] .elementor-nav-menu li.current-menu-item a{color:#FFFFFF!important}
[data-elementor-type="header"] .elementor-menu-toggle{color:#FFFFFF!important}
/* === NAV-DROPDOWN-HOVER V5 (mit Bridge) === */
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children{
  position:relative!important;
}
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > .sub-menu{
  display:none!important;
  position:absolute!important;top:100%!important;left:0!important;
  background:#FFFFFF!important;
  border:1px solid #C3D1DF!important;
  border-radius:12px!important;
  box-shadow:0 10px 30px -8px rgba(18,35,59,.18)!important;
  padding:8px!important;
  min-width:220px!important;
  margin:0!important;
  z-index:999999!important;
  list-style:none!important;
}
/* Bridge: invisible gap-filler ueber pseudo-element davor */
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > .sub-menu::before{
  content:"";
  position:absolute;
  top:-12px;left:0;right:0;height:12px;
  background:transparent;
}
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children.hh-open > .sub-menu{display:block!important}
html body [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu li{list-style:none!important;margin:0!important}
html body [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu li a{
  color:#12233B!important;
  font-family:Inter,sans-serif!important;
  font-size:14px!important;font-weight:500!important;
  padding:10px 14px!important;
  display:block!important;border-radius:8px!important;
  background:transparent!important;
  white-space:nowrap!important;
}
html body [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu li a:hover{background:#EAEFF6!important;color:#1B355A!important}
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children > a::after{
  content:"";display:inline-block;width:0;height:0;
  border-left:4px solid transparent;border-right:4px solid transparent;
  border-top:5px solid currentColor;margin-left:6px;vertical-align:middle;opacity:.7;
  transition:transform .2s ease;
}
html body [data-elementor-type="header"] .elementor-nav-menu--main .menu-item-has-children.hh-open > a::after{transform:rotate(180deg)}

/* === HELLO-CARET-HIDE === */
html body .site-navigation ul.menu li.menu-item-has-children::after,
html body [data-elementor-type="header"] .menu-item-has-children::after,
html body [data-elementor-type="header"] li.menu-item-has-children::after{content:none!important;display:none!important;border:none!important}
/* FOOTER-PHONE-EMAIL-ALIGN V4: phone is text-editor, email is button */
body.wp-singular [data-elementor-type="footer"] .elementor-element-4583d551 .elementor-widget-text-editor.elementor-widget p,
body.wp-singular [data-elementor-type="footer"] .elementor-element-4583d551 .elementor-widget-text-editor.elementor-widget a,
body.wp-singular [data-elementor-type="footer"] .elementor-element-379eafa3 .elementor-widget-button.elementor-widget,
body.wp-singular [data-elementor-type="footer"] .elementor-element-379eafa3 .elementor-element-12aa2baa,
body.wp-singular [data-elementor-type="footer"] .elementor-element-379eafa3 .elementor-element-12aa2baa a,
body.wp-singular [data-elementor-type="footer"] .elementor-element-379eafa3 .elementor-element-12aa2baa .elementor-button-wrapper,
body.wp-singular [data-elementor-type="footer"] .elementor-element-379eafa3 a.elementor-button.elementor-button-link{
  text-align:left!important;
  justify-content:flex-start!important;
  align-self:flex-start!important;
}
/* Make sure the email button does not stretch and consume center alignment */
body.wp-singular [data-elementor-type="footer"] .elementor-element-12aa2baa{
  text-align:left!important;
}
body.wp-singular [data-elementor-type="footer"] .elementor-element-12aa2baa .elementor-button-wrapper{
  text-align:left!important;
}/* End custom CSS */
