@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Orbitron&display=swap");
.navbar {
  background: #4a2c3e !important;
}
.navbar .navbar-brand, .navbar .nav-link {
  color: #f4d7d9 !important;
}
.navbar .nav-link {
  transition: color 0.3s;
}
.navbar .nav-link:hover {
  color: #d4af37 !important;
}
.navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(244, 215, 217, 0.75)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #d4af37;
  border-radius: 10px;
  transition: transform 0.3s, box-shadow 0.3s;
}
.card:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(212, 175, 55, 0.5);
}
.card .card-header {
  background: #4a2c3e;
  color: #f4d7d9;
  font-family: "Orbitron", sans-serif;
}

.progress-bar {
  background: #d4af37;
  transition: width 0.5s ease-in-out;
}

.clan-title {
  color: #d4af37;
  font-family: "Orbitron", sans-serif;
  font-weight: bold;
  text-shadow: 0 0 5px #d4af37;
}

.btn-mission {
  background: linear-gradient(#e91e63, #ad1457);
  color: #fff;
  border: none;
  transition: background 0.3s;
}
.btn-mission:hover {
  background: linear-gradient(#f06292, #e91e63);
}

#galeria-grid img, #galeria-grid video {
  max-height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 5px;
  border: 2px solid #f4d7d9;
  animation: fadeIn 1s ease-in;
}

#notificaciones {
  position: fixed;
  bottom: 10px;
  right: 10px;
}
#notificaciones .alert {
  max-width: 300px;
  background: #4a2c3e;
  color: #f4d7d9;
  border: 1px solid #d4af37;
}

#qr-video {
  width: 100%;
  height: 300px;
  border: 1px solid #d4af37;
}

#qr-message {
  text-align: center;
  color: #4a2c3e;
  font-weight: bold;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (max-width: 576px) {
  .wedding-title {
    font-size: 2.5rem;
  }
  .wedding-desc {
    font-size: 1rem;
  }
  .card {
    margin-bottom: 1rem;
  }
  .nav-link {
    font-size: 0.9rem;
  }
}
/* Variables Globales */
/* Estilos Generales */
body {
  background: linear-gradient(to bottom, #f1f1f1, #f2f2f2);
  color: #333;
  font-family: "Playfair Display", serif;
}

/* Navbar */
.navbar {
  background: #4a2c3e !important;
}
.navbar .navbar-brand, .navbar .nav-link {
  color: #f1f1f1 !important;
}
.navbar .nav-link {
  transition: color 0.3s;
}
.navbar .nav-link:hover {
  color: #d4af37 !important;
}
.navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(244, 215, 217, 0.75)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Título y Descripción */
.wedding-title {
  font-family: "Playfair Display", serif;
  font-size: 3.5rem;
  color: #d4af37;
  text-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
  animation: fadeIn 1s ease-in;
  margin-bottom: 1rem;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.wedding-desc {
  font-family: "Orbitron", sans-serif;
  font-size: 1.2rem;
  color: #4a2c3e;
  max-width: 800px;
  margin: 0 auto;
}

/* Cards y Contenido */
.card {
  transition: transform 0.3s, box-shadow 0.3s;
  overflow: hidden; /* Asegura que el contenido no sobresalga */
  display: flex;
  flex-direction: column;
}
.card .lightbox {
  position: relative !important;
}
.card .box-img {
  display: flex;
  height: 25vh;
}
.card .box-img img {
  width: 100%;
}
.card .card-header {
  background: #4a2c3e;
  color: #f1f1f1;
  font-family: "Orbitron", sans-serif;
}

.card-img-top {
  max-height: 250px; /* Aumenta la altura para mejor proporción */
  -o-object-fit: cover;
     object-fit: cover; /* Ajusta la imagen sin distorsionarla */
  width: 100%; /* Asegura que ocupe todo el ancho disponible */
  order: 1; /* Coloca la imagen primero en la flexión */
}

.card-body {
  flex-grow: 1; /* Ocupa el espacio restante */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  order: 2; /* Coloca el cuerpo después de la imagen */
}

.progress-bar {
  background: #d4af37;
  transition: width 0.5s ease-in-out;
}

.clan-title {
  color: #d4af37;
  font-family: "Orbitron", sans-serif;
  font-weight: bold;
  text-shadow: 0 0 5px #d4af37;
}

.btn-mission {
  background: linear-gradient(#e91e63, #ad1457);
  color: #fff;
  border: none;
  transition: background 0.3s;
}
.btn-mission:hover {
  background: linear-gradient(#f06292, #e91e63);
}

#galeria-grid img, #votaciones-grid img {
  max-height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 5px;
  border: 2px solid #f1f1f1;
  animation: fadeIn 1s ease-in;
}

#notificaciones {
  position: fixed;
  bottom: 10px;
  right: 10px;
}
#notificaciones .alert {
  max-width: 300px;
  background: #4a2c3e;
  color: #f1f1f1;
  border: 1px solid #d4af37;
}

#qr-video {
  width: 100%;
  height: 300px;
  border: 1px solid #d4af37;
}

#qr-message {
  text-align: center;
  color: #4a2c3e;
  font-weight: bold;
}

/* Responsive para Móviles */
@media (max-width: 576px) {
  .wedding-title {
    font-size: 2.5rem;
  }
  .wedding-desc {
    font-size: 1rem;
  }
  .card {
    margin-bottom: 1rem;
  }
  .nav-link {
    font-size: 0.9rem;
  }
  /* Galería y Votaciones como Carrusel en Móviles */
  #galeria-grid, #votaciones-grid {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    gap: 1rem;
    padding: 1rem 0;
  }
  #galeria-grid .slick-slide, #votaciones-grid .slick-slide {
    flex: 0 0 auto;
    width: 300px !important; /* Aumenta el ancho para mejor proporción */
  }
  /* Ocultar scrollbars pero mantener funcionalidad */
  #galeria-grid::-webkit-scrollbar, #votaciones-grid::-webkit-scrollbar {
    display: none;
  }
  /* Controles del Carrusel en Móviles */
  .slick-prev, .slick-next {
    display: block !important;
    z-index: 10;
    background: rgba(74, 44, 62, 0.7);
    color: #f4d7d9;
    border: none;
  }
  .slick-prev:hover, .slick-next:hover {
    background: rgba(74, 44, 62, 0.9);
  }
  .slick-prev {
    left: 10px;
  }
  .slick-next {
    right: 10px;
  }
}
/* Lightbox Adjustments */
.lb-outerContainer {
  z-index: 10000 !important;
}

.lb-dataContainer {
  background: rgba(0, 0, 0, 0.8);
}

.lightbox:target .card-img-top, .lightbox.active .card-img-top {
  visibility: hidden;
}/*# sourceMappingURL=styles.css.map */