/* === Grundlayout === */
body {
  margin: 0;
  font-family: 'Segoe UI', sans-serif;
  background-color: #121212;
  color: #fff;
}

html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  width: 100%;
}

/* === Fixierter Header === */
header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #1f1f1f;
  z-index: 1000;
}

.header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 40px;
  flex-wrap: wrap;
}

.header-left {
  display: flex;
  align-items: center;
  gap: 20px;
}

.logo {
  height: 60px;
}

header h1 {
  color: #9b59b6;
  text-shadow: 0 0 10px #9b59b6;
  margin: 0;
  font-size: 1.8rem;
}

/* === Navigation === */
.main-nav ul {
  list-style: none;
  display: flex;
  gap: 30px;
  margin: 0;
  padding: 0;
}

.main-nav a {
  position: relative;
  color: #00ffff;
  text-decoration: none;
  font-weight: bold;
  font-size: 1rem;
  padding: 5px 0;
  transition: color 0.3s;
}

.main-nav a:hover {
  color: #9b59b6;
  text-shadow: 0 0 8px #9b59b6;
}

.main-nav a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background: #9b59b6;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  box-shadow: 0 0 5px #9b59b6;
}

.main-nav a:hover::after {
  transform: scaleX(1);
}

/* === Hauptinhalt mit LED-Umrandung === */
.main-wrapper {
  position: relative;
  margin: 130px 0 50px;
  padding: 0;
  width: 100%;
  z-index: 1;
}

.main-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 4px;
  background: linear-gradient(135deg, hotpink, deeppink, #ffc0cb, white, #aaa, hotpink);
  background-size: 400% 400%;
  animation: led-border 8s linear infinite;
  z-index: -1;

  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: destination-out;

  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite: exclude;
  pointer-events: none;
}

@keyframes led-border {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

main {
  background-color: transparent;
  padding: 40px 20px;
  position: relative;
  z-index: 2;
  text-align: center;
}


/* LED-Animation */
@keyframes led-border {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Inhalt bleibt durchsichtig */
main {
  padding: 40px 20px;
  background-color: transparent;
  position: relative;
  z-index: 2;
  text-align: center;
}

main h2 {
  color: #9b59b6;
  text-shadow: 0 0 8px #9b59b6;
  margin-bottom: 10px;
}

main p {
  color: #ccc;
}

/* === Slider / Video === */
.slider-placeholder {
  width: 100vw;
  margin: 0;
  padding: 0;
  background-color: #1a1a1a;
}

.slider-placeholder h2 {
  color: #00ffff;
  text-shadow: 0 0 10px #00ffff;
  text-align: center;
  padding-top: 40px;
  margin-bottom: 30px;
}

.slider-placeholder iframe {
  width: 100vw;
  height: 540px;
  border: none;
  display: block;
}

/* === Footer === */
footer {
  text-align: center;
  padding: 20px;
  background-color: #1f1f1f;
  font-size: 0.9em;
}

/* === iFrame Section === */
.iframe-fullwidth {
  width: 100%;
  background-color: #1a1a1a;
  margin: 0;
  padding: 0;
}

.iframe-fullwidth iframe {
  width: 100%;
  height: 540px;
  border: none;
  display: block;
}

/* === Projekte === */
.projekt-marquee-wrapper {
  width: 100vw;
  overflow: hidden;
  background-color: #1a1a1a;
  padding: 20px 0;
}

.projekt-heading {
  text-align: center;
  font-size: 1.5rem;
  color: #00ffff;
  text-shadow: 0 0 10px #00ffff;
  margin-bottom: 15px;
}

.projekt-marquee {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.projekt-track {
  display: flex;
  width: max-content;
  animation: scrollBanner 30s linear infinite;
}

.projekt-track img {
  height: 140px;
  margin: 0 20px;
  flex-shrink: 0;
  border-radius: 10px;
  box-shadow: 0 0 8px #9b59b6;
}

@keyframes scrollBanner {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
