/* assets/css/header.css */

/* HEADER */
.site-header {
  position: fixed;
  top: 0;  /* Header klebt am oberen Bildschirmrand */
  left: 0;
  right: 0;
  height: 55px; /* Header-Höhe auf 55px */
  background-color: #ffffff; /* Weiß mit 100% Deckkraft */
  z-index: 1000; /* Stellt sicher, dass er über den Boxen liegt */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.header-inner {
  max-width: 1496px; /* Maximale Breite des Inhalts */
  height: 100%;    /* Nimmt volle Höhe des Headers ein */
  margin: 0 auto;  /* Zentriert den Inhalt */
  padding: 0 27px 0px 20px; /* Seitenabstand im Header angepasst */
  display: flex;   /* Flexbox für Ausrichtung */
  align-items: center; /* Vertikal zentrieren */
  width: 100%;
  justify-content: space-between; /* Haupt-Elemente verteilen */
  box-sizing: border-box;
}

.header-content {
  display: flex;
  justify-content: space-between; /* Elemente verteilen */
  align-items: center;           /* Vertikal zentrieren */
  width: 100%;
}

/* Header Left: Logo + Creovate */
.header-left {
  display: flex;
  align-items: center;
  padding: 0;
  flex-shrink: 0; /* Verhindert Schrumpfen */
}
.logo {
  display: flex;
  align-items: center;
  text-decoration: none;
}
.logo svg {
  /* transform: translateX(-9px); Entfernt, Feinabstimmung nach Bedarf */
  height: 55px; /* Höhe leicht angepasst */
  width: auto;
  padding: 0;
  margin: 15px 0 0 -5px;
  fill: #000000;
  transition: fill 0.3s;
}
.logo:hover svg path,
.logo:hover svg circle {
  fill: #444444;
}
.logo-text {
  font-size: 1.9em; /* Leicht angepasst */
  font-weight: 400; /* Medium */
  color: #000000;
  transition: color 0.3s;
  margin-top: 0px;
  line-height: 1; /* Verhindert extra Höhe */
}
.logo:hover .logo-text {
  color: #444444;
}

/* Header Middle: Navigation-Chip (Desktop) / Menübutton (Mobile) */
.header-middle {
  flex-grow: 1; /* Nimmt verfügbaren Platz, zentriert Inhalt */
  display: flex;
  justify-content: center; /* Zentriert die Navi oder den Button */
  align-items: center;
}
.nav-chip {
  display: inline-flex;
  align-items: center;
  background: #ffffff;

  padding: 0 15px;    /* Mehr Padding */
  height: 38px;       /* Höhe leicht angepasst */
  border-radius: 30px;
  font-size: 1.0em;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* NEU: Leichter Schatten */
}
.nav-chip a {
  text-decoration: none;
  color: #333;
  margin: 0 12px; /* Abstand zwischen Links */
  font-weight: 500; /* Medium */
  transition: color 0.2s ease;
}
.nav-chip a:hover {
  color: #444444; /* Akzentfarbe bei Hover */
}

.menu-btn {
  display: none;
  background: #d9db65; /* grüner Hintergrund für Button */
  border: none;
  cursor: pointer;
  padding: 0; /* Padding entfernen, da feste Größe */
  width: 70px;  /* Kleinere quadratische Größe */
  height: 38px;
  border-radius: 30px; /* Rund */
  align-items: center;
  justify-content: center;
  /* margin-top: -15px; */ /* Entfernt */
  transition: background-color 0.2s ease;
}
.menu-btn:hover {
    background-color: #c8ca5a; /* Etwas dunkler bei Hover */
}
.menu-btn .hamburger-icon {
  width: 20px; /* Kleinere Icons */
  height: 20px;
  fill: #333; /* Dunklere Farbe */
}

/* Header Right: Social Icons-Chip */
.header-right {
  display: flex;
  align-items: center;
  flex-shrink: 0; /* Verhindert Schrumpfen */
}
.social-icons {
  display: inline-flex;
  align-items: center;
  padding: 0 12px; /* Weniger Padding */
  height: 34px;
  border-radius: 30px;
  gap: 15px; /* Abstand zwischen Icons */
  border: 2px solid #444444; 
}
.social-icons svg {
  width: 24px; /* Kleinere Icons */
  height:24px;
  fill: #000; /* Etwas helleres Grau */
  vertical-align: middle;
  transition: fill 0.2s ease;
}
.social-icons a:hover svg {
  fill: #444444; /* Akzentfarbe bei Hover */
}
.social-icons a {
  line-height: 0; /* Verhindert extra Höhe durch Link */
}

/* Mobile-Navigation-Overlay */
.mobile-nav-overlay {
  display: none; /* Standardmäßig versteckt */
  position: fixed;
  top: 0; /* Startet oben */
  left: 0;
  width: 100%; /* Volle Breite */
  height: 100%; /* Volle Höhe */
  background: #d9db65; /*Grün mit hoher Deckkraft */
  z-index: 1500; 
  padding: 20px;
  padding-top: 70px;
  opacity: 0;
  pointer-events: none; 
  transition: opacity 0.3s ease-in-out;
  box-sizing: border-box;
}
.mobile-nav-overlay.is-active {
  display: block; /* Sichtbar machen */
  opacity: 1;     /* Einblenden */
  pointer-events: auto; /* Klicks erlauben */
}
.mobile-nav-overlay .nav-list {
  list-style: none;
  padding: 0; /* Kein Padding */
  margin: 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center; /* Vertikal zentrieren */
  height: calc(100% - 50px); /* Höhe abzüglich Padding oben/unten */
}
.mobile-nav-overlay .nav-list li {
  margin: 15px 0; /* Vertikaler Abstand */
}
.mobile-nav-overlay .nav-list li a {
  color: rgba(255, 255, 255, 0.95); /* Helle Schrift */
  font-size: 1.8em; /* Größere Schrift */
  font-weight: 300; /* Medium */
  text-decoration: none;
  padding: 10px;
  display: block;
}
.mobile-nav-overlay .nav-list li a:hover {
   color: #ffffff; /* Akzentfarbe */
}

/* Close Button im Overlay */
.mobile-nav-close-btn {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  background-color: rgba(0, 0, 0, 0.3);
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.mobile-nav-close-btn:hover { 
  background-color: rgba(0, 0, 0, 0.5); 
}
.mobile-nav-close-btn svg {
  width: 24px;
  height: 24px;
  fill: #ffffff;
}


/* Responsive */
@media (max-width: 768px) {
  .header-middle .nav-chip {
    display: none; /* Desktop-Nav ausblenden */
  }
  .menu-btn {
    display: flex; /* Mobile Button einblenden */
  }
  .header-inner {
      padding: 0 10px; /* Weniger Padding auf Mobile */
  }
 .social-icons {
   display:flex;
  }
  .logo svg { height: 50px; margin-top: 13px; } /* Logo ggf. kleiner */
  .logo-text { font-size: 1.6em; }
}