    /* --- HEADER --- */
body { margin: 0; padding-top: 70px;} 

.header {
  border-bottom: 0px solid #eee !important;
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff; /* wichtig, sonst scheint Content durch */
  z-index: 1200;    /* über dem Overlay und Rest */
}
.header-inner {
      max-width: 1000px;
      margin: 0 auto;
      padding: 27px 0px 17px 0px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
.home-mobile{
	display:none;
}
.logo img {
	height: 46px;
}
.logo{
	margin-bottom:-11px; 
}    
#mainNav{
	margin-top:9px;
}
    .nav ul {
      display: flex;
      gap: 65px;
      list-style: none;
      margin: 0px 0px -14px 0px;
      padding: 0;
    }
    .nav a { 
		text-decoration: none; 
		color: #333; 
		font-weight: 700; 
}
	.nav a:hover, .nav a:active {
	color: #298FC2 !important; 
}
    .nav.hidden { display: none; }

    /* Hamburger ausgelagert */
    .hamburger {
      position: fixed;
      right: 20px;
      top: 30px;
      cursor: pointer;
      z-index: 1100;
    }
    .hamburger img { height: 24px; }
    .hamburger.hidden { display: none; }

@media only screen and (max-width:1300px) {
.hamburger {
    top: 24px;
}
} /* ## END MOBIL ##  */

    /* --- OVERLAY --- */
    .overlay {
      position: fixed;
      top: 0; left: 0;
      width: 100%; height: 100%;
      background: rgba(0,0,0,0.4);
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease;
      z-index: 900;
    }
    .overlay.active {
      opacity: 1;
      visibility: visible;
    }

    /* --- SIDEMENU --- */
    .sidemenu {
      position: fixed;
      top: 0; right: 0;
      width: 38%;
      max-width: 550px;
      height: 100%;
      background: #fff;
      transform: translateX(100%);
      transition: transform 0.3s ease;
      z-index: 1300;
    }
    .sidemenu.open { transform: translateX(0); }

    .sidemenu-header {
      display: flex;
	  justify-content: flex-end;
      padding: 20px;
    }
    .close-btn {
      background: none; border: none; cursor: pointer;
	  position:relative;
		margin-top: 11px;
		z-index:1400;
    }
    .close-btn img { height: 24px; }

    /* SIDEMENU inner */
    .sidemenu-inner {
      display: flex;
      height: calc(100% - 60px);
    }
.sidemenu-inner a:hover{
	color:#298FC2 !important;
}

    /* Left column */
    .sidemenu-left {
      width: 50%;
      padding: 40px 20px 40px 100px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
    }
    .sidemenu-left ul {
      list-style: none;
      padding: 0;
      margin: 0 0 0px 0;
		border-right: 1px solid #333;
    }
    .sidemenu-left ul li {
      margin: 0 0 2.5rem;
    }
    .sidemenu-left a {
      text-decoration: none;
      color: #333;
      display: block;
      margin: 15px 0;
	  font-weight:600;
      font-size: 1rem;
    }
    .sidemenu-left a.active, .sidemenu-left a_hover {
      color: #298FC2 !important;
    }
    .social {
      padding-top: 40vh;
	border-right: 1px solid #333;
		    display: flex;
    align-items: center;
    }
.social a {
    display: inline-flex;
	margin-right: 17px;
}
.social a img {
    height:30px;
}



    .copy {
      font-size: 12px;
      color: #333;
	padding-left: 80px;
    }

    /* Right column */
    .sidemenu-right {
      width: 50%;
      padding: 40px 20px;
      position: relative;
    }
    .submenu {
      position: relative;
      margin-top: 0; /* du kannst hier noch nachjustieren */
    }
    .submenu ul {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .submenu a {
      text-decoration: none;
      color: #333;
      display: block;
      margin: 15px 0;
	  font-weight:400;
      font-size: 1rem;
    }
.submenu a:hover{
	      color: #298FC2 !important;
}
    .sidemenu-footer {
      position: absolute;
	  display: flex;
      justify-content: space-between;	
      bottom: 20px;
      left: 20px;
      right: 20px;
      padding-top: 15px;
      font-size: 12px;
      text-align: left;
		z-index:99;
    }
    .sidemenu-footer a {
      text-decoration: none;
      color: #666;
    }
.sidemenu-legal {
    display: flex;
    align-items: center;
    gap: 12px; 
}
.submenu-2 {
	padding-top: 4rem !important;
}
.submenu-3 {
	padding-top: 8rem !important;
}
.submenu-4 {
	padding-top: 12rem !important;
}


/* Dropdown Container */
.has-dropdown {
  position: relative;
	margin-bottom:-1rem;
}

/* Dropdown standardmäßig versteckt */
.has-dropdown .dropdown {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-4px);
  transition:
    max-height 0.4s ease,
    opacity 0.3s ease,
    transform 0.3s ease;
  will-change: max-height, opacity, transform;
	margin-left:25px;
	margin-top:0rem;
}

/* Geöffnet */
.has-dropdown.open .dropdown {
  max-height: 600px;  
  opacity: 1;
  transform: translateY(0);
	margin-left: 25px;
	margin-top:-1rem;
}

.dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.menu-headquarter{
	font-size:0.7rem;
}
/* Der SVG-Pfeil */
.dropdown-toggle::after {
  content: "";
  width: 20px; 
  height: 20px;
  display: inline-block;
  background-image: url("/wp-content/uploads/2025/11/caret-down-thin.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s ease;
	margin-left:7px;
	margin-bottom:-6px;
}

/* Pfeil drehen beim Öffnen */
.has-dropdown.open .dropdown-toggle::after {
  transform: rotate(180deg);
}

/* Icon-Lock */
.submenu-4 li .icon-lock {
  display: inline-block;
  width: 16px;
  height: 16px;
	margin-bottom:-2px;
  background-image: url('/wp-content/uploads/2025/07/lock-simple.svg');
  background-repeat: no-repeat;
  background-size: contain;
  transition: background-image 0.2s ease;
  margin-left: 6px;
}
/* Hover-Wechsel */
.submenu-4 li a.locked:hover .icon-lock {
  background-image: url('/wp-content/uploads/2025/07/lock-simple-fill.svg');
}





@media (max-width: 1300px) {
  .header-inner {
	  padding: 18px 80px 13px 30px;
	}
	.sidemenu {
      width: 100%;
		max-width: 600px;}
}


@media only screen and (max-width:1000px) {
	
/* ### HEADER ### */
.sidemenu {
        max-width: 100%;
    }
	.home-mobile{
		display:block;
	}
	.sidemenu-left {
    width: 37%;
    padding: 20px 5px 0px 40px;
	}
.sidemenu-right{
    width: 63%;
    padding: 20px 5px 0px 20px;
	}
	.sidemenu-footer{
		display:none;
	}
  
 .social {
    padding-top: 25vh;
	display: flex;
    align-items: center;
    }
.social a {
    display: inline-flex;
	margin-right: 13px;
}
.social a img {
    height:30px;
}
	
	.header-inner {
    padding:25px 80px 13px 20px;
    }
	#mainNav{
		display:none;
	}
	.submenu ul li{
		margin: 0 0 1.3rem;
	}
	.has-dropdown{
		margin-bottom: -0.8rem !important;
	}
.logo img {
	height: 35px;
}
.logo {
	margin-bottom: -5px;
    margin-top: -5px;
}

	
} /* ## MOBILE ENDE ## */