.elementor-45 .elementor-element.elementor-element-de47847{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:95;}.elementor-45 .elementor-element.elementor-element-de47847:not(.elementor-motion-effects-element-type-background), .elementor-45 .elementor-element.elementor-element-de47847 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFFDE;}.elementor-45 .elementor-element.elementor-element-de47847.e-con{--order:99999 /* order end hack */;--flex-grow:1;--flex-shrink:1;}.elementor-45 .elementor-element.elementor-element-7219ac5c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-7219ac5c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-76c948c7.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-76c948c7 img{max-width:20%;}.elementor-45 .elementor-element.elementor-element-acf5924{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--flex-wrap:nowrap;}.elementor-45 .elementor-element.elementor-element-acf5924.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-6be18f2 .elementor-button{background-color:var( --e-global-color-primary );}.elementor-45 .elementor-element.elementor-element-6be18f2.elementor-element{--align-self:flex-end;--order:-99999 /* order start hack */;--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-6be18f2 .elementor-button-content-wrapper{flex-direction:row;}.elementor-45 .elementor-element.elementor-element-c542842{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:flex-end;}.elementor-45 .elementor-element.elementor-element-c542842.e-con{--align-self:flex-start;--order:99999 /* order end hack */;--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-d649dad{width:auto;max-width:auto;}.elementor-45 .elementor-element.elementor-element-d649dad.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-45 .elementor-element.elementor-element-d649dad .elementor-menu-toggle{margin-left:auto;}.elementor-45 .elementor-element.elementor-element-d649dad .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;}.elementor-45 .elementor-element.elementor-element-d649dad .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-45 .elementor-element.elementor-element-d649dad .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:-100px !important;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-45 .elementor-element.elementor-element-de47847{--min-height:0px;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-45 .elementor-element.elementor-element-7219ac5c{--min-height:0px;}.elementor-45 .elementor-element.elementor-element-76c948c7{width:var( --container-widget-width, 119.375px );max-width:119.375px;--container-widget-width:119.375px;--container-widget-flex-grow:0;}.elementor-45 .elementor-element.elementor-element-76c948c7.elementor-element{--align-self:flex-start;}.elementor-45 .elementor-element.elementor-element-76c948c7 img{width:100%;max-width:100%;height:59px;}.elementor-45 .elementor-element.elementor-element-c542842.e-con{--align-self:center;}.elementor-45 .elementor-element.elementor-element-d649dad.elementor-element{--align-self:flex-end;--flex-grow:0;--flex-shrink:1;}}@media(min-width:768px){.elementor-45 .elementor-element.elementor-element-de47847{--width:100%;}.elementor-45 .elementor-element.elementor-element-7219ac5c{--width:500px;}.elementor-45 .elementor-element.elementor-element-acf5924{--width:100%;}.elementor-45 .elementor-element.elementor-element-c542842{--width:12%;}}@media(max-width:1024px) and (min-width:768px){.elementor-45 .elementor-element.elementor-element-de47847{--width:100%;}.elementor-45 .elementor-element.elementor-element-7219ac5c{--width:18.776%;}.elementor-45 .elementor-element.elementor-element-acf5924{--width:186.938px;}.elementor-45 .elementor-element.elementor-element-c542842{--width:70px;}}@media(max-width:767px){.elementor-45 .elementor-element.elementor-element-de47847{--width:100%;--min-height:0px;--gap:8px 8px;--row-gap:8px;--column-gap:8px;}.elementor-45 .elementor-element.elementor-element-de47847.e-con{--align-self:center;}.elementor-45 .elementor-element.elementor-element-7219ac5c{--width:48%;--min-height:45px;}.elementor-45 .elementor-element.elementor-element-76c948c7{--container-widget-width:967px;--container-widget-flex-grow:0;width:var( --container-widget-width, 967px );max-width:967px;text-align:center;}.elementor-45 .elementor-element.elementor-element-76c948c7 img{width:98%;max-width:100%;height:64px;}.elementor-45 .elementor-element.elementor-element-acf5924{--width:36px;}.elementor-45 .elementor-element.elementor-element-6be18f2{width:auto;max-width:auto;}.elementor-45 .elementor-element.elementor-element-c542842{--width:65px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;}.elementor-45 .elementor-element.elementor-element-c542842.e-con{--align-self:center;}.elementor-45 .elementor-element.elementor-element-d649dad.elementor-element{--align-self:center;--order:99999 /* order end hack */;--flex-grow:0;--flex-shrink:0;}}/* Start custom CSS for nav-menu, class: .elementor-element-d649dad *//* Header bleibt stabil – Dropdown klappt als Overlay auf */
#geno-header { position: relative; overflow: visible; }

/* Dropdown von Elementor aus dem Fluss nehmen und unter dem Toggle zentrieren */
#geno-header .elementor-nav-menu--dropdown {
  position: absolute !important;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: max-content;                 /* nur so breit wie nötig */
  max-width: min(92vw, 1100px);       /* Sicherheitsgrenze */
  z-index: 10000;
  /* Optional: leichte Transparenz wie der Header */
  /* background: rgba(255,255,255,.8); */
}

/* Mobil/Tablet lieber volle Breite ausklappen */
@media (max-width: 1024px) {
  #geno-header .elementor-nav-menu--dropdown {
    left: 0;
    transform: none;
    width: 100vw;
    max-width: 100vw;
  }
}/* End custom CSS */
/* Start custom CSS *//* =========================
   GENO – Header Layout & Fixes
   IDs/Klassen: #geno-header, .logo, .call-btn, .nav-area
   ========================= */

/* Basis-Layout: 3 Spalten – Logo | Call | Menü */
#geno-header{
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
  gap: 12px;                                  /* enger, damit Call nah am Menü liegt */
  padding: clamp(10px,1.4vw,16px) clamp(16px,3vw,28px);
  background: rgba(255,255,255,.82);
  backdrop-filter: saturate(140%) blur(6px);
  border-bottom: 1px solid rgba(15,23,42,.06);
  position: relative;
  z-index: 1000;
}

/* Logo links, nicht gestaucht */
#geno-header .logo,
#geno-header .elementor-widget-site-logo{
  justify-self:start;
}
#geno-header .elementor-widget-site-logo img{
  height: clamp(36px, 3.8vw, 52px);
  width: auto;
  display:block;
}

/* Call-Button mittig (Desktop) – Form: pill, NICHT rund */
#geno-header .call-btn{ justify-self:center; }
#geno-header .call-btn .elementor-button{
  display:inline-flex; align-items:center; gap:.55rem;
  height: 42px;
  padding: 0 14px;
  border-radius: 10px !important;              /* nicht rund */
  background:#E30613; color:#fff;
  box-shadow: none; text-decoration:none;
  border: 0;
}
#geno-header .call-btn .elementor-button:hover{ filter:brightness(.95); }

/* Menü rechts */
#geno-header .nav-area{ justify-self:end; }
#geno-header .nav-area .elementor-menu-toggle{
  margin:0;                                    /* kein Zusatzabstand */
}
#geno-header .nav-area .elementor-menu-toggle,
#geno-header .nav-area .elementor-menu-toggle.button{
  border-radius:12px;
  padding: 10px 14px;
}

/* ======= Dropdown aus dem WordPress-Menü-Widget ausrichten ======= */

/* Dropdown immer unter dem Trigger, an rechter Kante ausrichten */
#geno-header .nav-area .elementor-nav-menu--dropdown{
  right: 0 !important;
  left: auto !important;
  margin-top: 10px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 12px 28px rgba(2,6,23,.14);
  overflow: hidden;
  z-index: 1100;
}
/* „Balken/Pointer“ vollständig deaktivieren (Elementor-Pointer) */
#geno-header .nav-area .elementor-item:before,
#geno-header .nav-area .elementor-item:after{
  display:none !important;
  content:none !important;
}

/* ========== Tablet: Call + Burger nach rechts (nebeneinander) ========== */
@media (max-width: 1024px){
  /* 1fr | auto | auto  => Logo | Call | Menü (Burger) */
  #geno-header{ grid-template-columns: 1fr auto auto; gap: 10px; }

  /* Call nach rechts ziehen */
  #geno-header .call-btn{ justify-self:end; }

  /* Logo etwas größer als bisher */
  #geno-header .elementor-widget-site-logo img{
    height: clamp(40px, 5.2vw, 56px);
  }
}

/* ========== Mobile: Logo links, Call-Icon + Burger rechts, minimaler Abstand ========== */
@media (max-width: 767px){
  /* Logo | Call | Menü */
  #geno-header{ grid-template-columns: 1fr auto auto; gap: 8px; }

  /* Logo ausreichend groß, nicht gestaucht */
  #geno-header .elementor-widget-site-logo img{
    height: 44px; width:auto;
  }

  /* Call-Button als Icon-only, klein, NICHT rund */
  #geno-header .call-btn{ justify-self:end; }
  #geno-header .call-btn .elementor-button{
    width: 40px; height: 40px; padding:0;
    border-radius: 10px !important;
    justify-content:center;
  }
  #geno-header .call-btn .elementor-button-text{ display:none !important; }
  #geno-header .call-btn i, 
  #geno-header .call-btn svg{ color:#fff; fill:#fff; }

  /* Burger unmittelbar rechts daneben (ganz außen) */
  #geno-header .nav-area{ justify-self:end; }

  /* Mobile Dropdown optisch identisch */
  #geno-header .nav-area .elementor-nav-menu--dropdown{
    right: 0 !important;
    left: auto !important;
    margin-top: 10px;
  }
}

/* Sicherheitsnetz: volle Deckkraft */
#geno-header, #geno-header *{ opacity:1 !important; }





/* ========================
   PATCH: Menü-Balken, Label "Unser Service", Call-Button
   ======================== */

/* 0) Header lässt Inhalte nicht abschneiden */
#geno-header{
  overflow: visible;                  /* verhindert, dass der Call-Button „gekappt“ wird */
  min-height: 64px;                   /* etwas Luft nach oben/unten */
  align-items: center;
}

/* 1) Dropdown-Container: wenn geschlossen -> GAR NICHT anzeigen (kein 1px-Balken) */
#geno-header .nav-area .elementor-nav-menu__container{
  display: none !important;
  border: 0 !important;               /* sicherheitshalber: keine Border-Reste */
  box-shadow: none !important;
}
/* wenn Toggle aktiv: Container sichtbar */
#geno-header .nav-area .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container{
  display: block !important;
}

/* 2) Desktop/Tablet: Burger-Icon aus, Label an ("Unser Service") */
@media (min-width: 768px){
  /* Icon ausblenden */
  #geno-header .nav-area .elementor-menu-toggle .eicon-menu-bar{
    display: none !important;
  }
  /* Label sichtbar + typografisch passend */
  #geno-header .nav-area .elementor-menu-toggle__text{
    display: inline-block !important;
    font-weight: 600;
    font-size: 16px;
    line-height: 1;
    margin: 0;
  }

  /* Toggle-Button Optik (kein grauer Pill-Hintergrund) */
  #geno-header .nav-area .elementor-menu-toggle{
    display: inline-flex; align-items: center; gap: .5rem;
    background: #fff !important;
    color: #0f172a !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-radius: 12px !important;
    padding: 10px 14px !important;
    box-shadow: none !important;
  }
}

/* 3) Call-Button auf Desktop/Tablet nicht rund & vollständig sichtbar */
@media (min-width: 768px){
  #geno-header .call-btn .elementor-button{
    height: 44px;                      /* etwas höher, damit nix abgeschnitten wird */
    padding: 0 16px;
    border-radius: 10px !important;    /* NICHT rund */
    line-height: 1;                    /* kein optisches „Hüpfen“ */
  }
}/* End custom CSS */