.elementor-kit-22{--e-global-color-primary:#2C4052;--e-global-color-secondary:#4D6C80;--e-global-color-text:#000000;--e-global-color-accent:#4D6C80;--e-global-color-c59e328:#FFFFFF;--e-global-color-50fc1d7:#C7C7C7;--e-global-color-c3f1439:#2C4052;--e-global-color-e6a3779:#ECECEC;--e-global-color-9909963:#797878;--e-global-typography-primary-font-family:"Lato";--e-global-typography-primary-font-size:1em;--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Lato";--e-global-typography-secondary-font-size:1.3em;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Lato";--e-global-typography-text-font-size:1em;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lato";--e-global-typography-accent-font-size:1em;--e-global-typography-accent-font-weight:400;color:var( --e-global-color-text );font-family:"Lato", Sans-serif;font-size:1em;font-weight:400;line-height:1.6em;}.elementor-kit-22 button,.elementor-kit-22 input[type="button"],.elementor-kit-22 input[type="submit"],.elementor-kit-22 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Lato", Sans-serif;font-size:1em;font-weight:400;text-decoration:underline;color:var( --e-global-color-c59e328 );border-radius:0px 0px 0px 0px;}.elementor-kit-22 button:hover,.elementor-kit-22 button:focus,.elementor-kit-22 input[type="button"]:hover,.elementor-kit-22 input[type="button"]:focus,.elementor-kit-22 input[type="submit"]:hover,.elementor-kit-22 input[type="submit"]:focus,.elementor-kit-22 .elementor-button:hover,.elementor-kit-22 .elementor-button:focus{background-color:var( --e-global-color-text );color:var( --e-global-color-c59e328 );border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-22 e-page-transition{background-color:#FFBC7D;}.elementor-kit-22 a{color:var( --e-global-color-accent );font-family:"Lato", Sans-serif;font-size:1em;font-weight:400;text-transform:none;text-decoration:none;}.elementor-kit-22 a:hover{color:var( --e-global-color-primary );}.elementor-kit-22 h1{color:var( --e-global-color-primary );font-family:"Lato", Sans-serif;font-size:2.1em;font-weight:700;text-transform:uppercase;font-style:normal;line-height:1.575px;letter-spacing:1.5px;}.elementor-kit-22 h2{color:var( --e-global-color-secondary );font-family:"Lato", Sans-serif;font-size:1.8em;font-weight:700;text-transform:uppercase;line-height:1.35px;letter-spacing:1.25px;}.elementor-kit-22 h3{color:var( --e-global-color-50fc1d7 );font-family:"Lato", Sans-serif;font-size:1.3em;font-weight:600;text-transform:uppercase;line-height:0.6px;letter-spacing:1.5px;}.elementor-kit-22 h4{color:var( --e-global-color-primary );font-family:"Lato", Sans-serif;font-size:0.9em;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1560px;}.e-con{--container-max-width:1560px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@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-kit-22 h1{font-size:2.5em;}.elementor-kit-22 h2{font-size:2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Sticky fix für beide Header */
.mein-header,
.mein-container {
  position: sticky;
  top: 0;
  z-index: 10;
}

/* Den zweiten Header weiter nach unten setzen */
.mein-header {
  top: 60px; /* Höhe des ersten Headers anpassen */
  z-index: 9;
}
#ast-scroll-top {
  display: none !important;
}
/* ===== Mobile-Nav via Portal (für #mein-container + #mein-header) ===== */

/* Eltern-Header sollen nicht „abschneiden“ */
#mein-container,
#mein-header {
  overflow: visible !important;
}

/* Originales (Elementor-)Mobile-Menü im Header auf kleinen Screens ausblenden,
   damit wir keine Dubletten haben (wir klonen es ins Portal). */
@media (max-width: 1024px) {
  #mein-header .elementor-nav-menu--dropdown,
  #mein-header .elementor-nav-menu {
    display: none !important;
  }
}

/* Portal-Wrapper – wird per JS direkt unter <body> eingefügt */
.mobile-nav-panel {
  position: fixed;
  left: 0;
  right: 0;
  top: var(--nav-offset, 0px);                  /* Start unterhalb beider Sticky-Header */
  height: calc(100dvh - var(--nav-offset, 0px));/* iOS-freundliche Höhe */
  z-index: 9999;
  display: none;                                /* wird per Body-Klasse gezeigt */
}

/* Overlay & Sheet (Off-Canvas von rechts) */
.mobile-nav-panel .mobile-nav-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.25);
  opacity: 0;
  transition: opacity .2s ease;
}

.mobile-nav-panel .mobile-nav-sheet {
  position: absolute;
  top: 0; right: 0; bottom: 0;
  width: 100vw;                   /* volle Breite auf dem Handy */
  max-width: 100vw;
  background: #fff;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transform: translateX(100%);    /* Off-Canvas parken */
  transition: transform .25s ease;
}

/* Offener Zustand */
.body--nav-open .mobile-nav-panel { display: block; }
.body--nav-open .mobile-nav-overlay { opacity: 1; }
.body--nav-open .mobile-nav-sheet { transform: translateX(0); }

/* Hintergrund fixieren, wenn offen (iOS-sicher) */
.body--nav-open,
.body--nav-open html {
  height: 100%;
  overflow: hidden;
}

/* Hamburger-Button sicher über allem halten */
#mein-header .elementor-menu-toggle,
#mein-header .menu-toggle,
#mein-header .hamburger {
  position: relative;
  z-index: 10000;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
}
/* Panel Grundlayout (ausserhalb der Spalten sichtbar) */
.mobile-nav-panel{
  position:fixed; inset:0 0 0 0;        /* volle Fläche */
  background:#fff; z-index:9999; 
  transform:translateX(100%); 
  transition:transform .25s ease;
  overflow:auto; -webkit-overflow-scrolling:touch;
}

/* Wenn Checkbox aktiv → Menü sichtbar */
#nav-toggle:checked ~ .mobile-nav-panel{
  transform:translateX(0);
}

/* Hamburger sichtbar, über alles */
.hamburger{
  position:relative; z-index:10000; cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}

/* Close-Button oben rechts */
.mobile-nav-panel .close{
  position:absolute; right:12px; top:8px; font-size:28px; text-decoration:none;
}

/* Eltern sollen nicht abschneiden */
#mein-container,#mein-header{ overflow:visible !important; }

/* Optional: Start unterhalb beider Header (setze Gesamt-Höhe in px ein) */
/* .mobile-nav-panel{ top:112px; height:calc(100dvh - 112px); } */
/* falls du mein kleines <label class="hamburger"> eingebaut hast: weg damit */
.hamburger { display:none !important; }
/* Eltern schneiden nichts ab */
#mein-container,#mein-header{ overflow:visible !important; }

/* Panel-Grundlayout (ausserhalb von Spalten, iOS-sicher) */
.mobile-nav-panel{
  position:fixed; left:0; right:0; top:0; bottom:0;
  background:#fff; z-index:9999;
  transform:translateX(100%);
  transition:transform .25s ease;
  overflow:auto; -webkit-overflow-scrolling:touch;
  display:block; /* bleibt im DOM, wird herausgeschoben */
}

/* Offen, wenn Checkbox gecheckt */
#nav-toggle:checked ~ .mobile-nav-panel{
  transform:translateX(0);
}

/* Optional: unterhalb beider Sticky-Header starten (Höhe anpassen) */
/*
:root{ --nav-offset:112px; } 
.mobile-nav-panel{ top:var(--nav-offset); height:calc(100dvh - var(--nav-offset)); }
*/

/* Close-Button im Panel */
.mobile-nav-panel .close{
  position:absolute; right:12px; top:8px; font-size:28px; text-decoration:none;
  z-index:1;
}

/* Z-Index des Elementor-Burgers selbst hoch genug halten */
#mein-header .elementor-menu-toggle{ position:relative; z-index:10000; -webkit-tap-highlight-color:transparent; }/* End custom CSS */