:root {
  font-family: 'Arial', sans-serif;
  /* Brand palette (global) */
  --brand-orange: #e99400;
  --brand-orange-rgb: 233, 148, 0;
  --brand-orange-dark: #cd8200;
  --brand-orange-dark-rgb: 205, 130, 0;
  --brand-orange-light: #eb9f1a;
  --brand-orange-light-rgb: 235, 159, 26;
  --black:#000000;
  --gray:#555555;
  --brand-brown: #7a3f00;
  --brand-brown-rgb: 122, 63, 0;
  --brand-brown-dark: #5e2f00;

  --brand-cream: #fff7eb;
  --brand-cream-2: #fff4e2;
  --brand-green:#2eab64; 
  --brand-gray: #f8f9fa;
  --brand-shadow: 0 12px 30px rgba(0, 0, 0, 0.10);
  --brand-radius: 12px;

  /* Bootstrap alignment */
  --bs-primary: var(--brand-orange);
  --bs-primary-rgb: var(--brand-orange-rgb);
  --bs-link-color: var(--brand-orange);
  --bs-link-hover-color: var(--brand-orange-dark);
  --bs-focus-ring-color: rgba(var(--brand-orange-rgb), 0.25);
  --bs-primary-text-emphasis: #8a5500;
  --bs-primary-bg-subtle: #fbeacc;
  --bs-primary-border-subtle: #f6d499;  
}

/* Container & Karten-Layout */
.gallery-container {
  display: block;
  max-width: 1200px;  
}

.gallery-card {
  background-color: var(--brand-gray);
  border-radius: 0.75rem;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  padding: 1.25rem;
  text-align: center;
  margin-bottom: 2rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gallery-card:hover {
 /* transform: translateY(-8px) scale(1.03);*/
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}

/* Bild-Styling */
.gallery-img {
  width: 64rem; /* entspricht w-32 (128px) */
  height: auto;
  margin: 0 auto;
  border-radius: 0.5rem;
  cursor: pointer;
  object-fit: cover;
  display: block;
}
.two-img {
    display: flex;
    gap: 15px;            /* Abstand zwischen den Bildern */
    justify-content: space-between; /* Verteilt die Bilder gleichmäßig */
    margin-top: 20px;
}

.gallery-img-part {
    width: 50%; 
    column-gap: 2rem;          /* Fast die Hälfte der Breite */
    height: auto;         /* Proportional skalieren */
    object-fit: contain;    /* Verhindert Verzerrungen */
    border-radius: 8px;   /* Optional: leicht abgerundete Ecken */
    cursor: pointer;
    transition: transform 0.3s ease;
}

.gallery-img-part:hover {
    transform: scale(1.02); /* Kleiner Hover-Effekt */
}

/* Text-Styling */
.member-name {
  font-size: 1.25rem;
  font-weight: 600;
  margin-top: .4rem;
  color: #1f2937;
}

.member-role {
  color: #6b7280;
  margin-bottom: 0.5rem;
}

.member-desc {
  color: #4b5563;
  font-size: 0.95rem;
}

/* Lightbox Overlay */
.lightbox-overlay {
  display: none; /* Standardmäßig aus */
  position: fixed;
  top: 80px;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(8px);
  z-index: 10000;
  justify-content: center; 
}



.lightbox-overlay.active {
  display: flex; /* Wird per JS aktiviert */
  justify-items: center; 
}

.lightbox-content {
  top: 10rem;
  left: 0;
  margin-top: 5rem;
  padding-left: 1rem;
   padding-right: 1rem;
  text-align:center;
  align-items: start;
  justify-items: center;
  max-width:1400px;
  color: white;
}

#lightbox-img {
  display: block;
  max-width: 100%; /* Bezieht sich auf lightbox-content */
  max-height:100%;
  border-radius: 0.5rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
  margin-bottom: 1.5rem;
  /* Das Bild bleibt nun im Fluss und wird durch den Vater zentriert */
  cursor: zoom-in; /* Zeigt die Lupe mit dem Plus-Symbol */ 
  user-select: none;
  -webkit-user-drag: none;
  transition: transform 0.1s ease-out;  
  touch-action: none;
  -webkit-user-select:none;
}

/* Wenn die Maus gedrückt wird */
#lightbox-img:active {
  transition: none; /* Sofortige Reaktion beim Ziehen */
}

/*Wenn du das Bild bereits gezoomt hast, kannst du per JS die Klasse ändern */
.is-zoomed #lightbox-img {
  cursor: zoom-out; /* Zeigt die Lupe mit dem Minus-Symbol */
}
.lightbox-close {
  position: absolute;
  background-color: transparent !important;
  border: none ;
  top: 20px;
  right: 30px;
  font-size: 3rem;
  color: var(--brand-cream);
  cursor: pointer;
  font-weight: bold;
}


/* --- Responsive Anpassungen --- */

/* Tabletes (max-width: 768px) */
@media (max-width: 768px) {
  .gallery-img {
    width: 24rem; /* Bild etwas kleiner */
    height: auto;
  }
  .lightbox-overlay {
    padding: 1rem; /* Padding reduziert */
  }
  .lightbox-close {
    top: 15px;
    right: 20px;
    font-size: 2.5rem;
  }
}

/* Smartphones groß (max-width: 600px) */
@media (max-width: 600px) {
  .gallery-card {
    padding: 1rem;
    margin-bottom: 1.5rem;
  }
  .member-name {
    font-size: 1.1rem;
  }
  #lightbox-img {
    max-width: 95vw; /* Nutzt mehr Breite */
    max-height: 60vh;
  }
}

/* Smartphones klein (max-width: 460px) */
@media (max-width: 460px) {
  .gallery-img {
    width: 10rem; /* Noch kompakter */
  }
  .member-desc {
    font-size: 0.5rem;
  }
  .lightbox-close {
    top: 10px;
    right: 15px;
    font-size: 2rem;
  }
  #lightbox-title {

    font-size: 1.25rem;
  }
}
/* --- Bereich für Laptops & mittlere Bildschirme --- */
@media screen and (min-width: 769px) and (max-width: 1430px) {
  .gallery-img {
    /* Begrenzt die Breite auf einen angenehmen Wert, 
       damit das Bild nicht den ganzen Schirm füllt */
    width: 36rem !important; 
    height: auto;
    object-fit: cover;
  }

  .gallery-card {
    /* Optional: Begrenzt die Breite der gesamten Karte, 
       damit sie im Block-Layout nicht über die ganze Seite gestreckt wird */
    max-width: auto;
    margin-left: auto;
    margin-right: auto;
  }
}
