:root{
  --gold:#d4af37;
  --black:#0a0a0a;
  --gray:#bfbfbf;
}

/* =====================
   RESET / BASE
===================== */
*{box-sizing:border-box}
html,body{
  margin:0;
  padding:0;
  font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background:var(--black);
  color:#f5f5f5;
}
a{color:var(--gold);text-decoration:none}
a:hover{opacity:.9}

/* =====================
   HEADER / NAV
===================== */
.header{
  position:sticky;
  top:0;
  z-index:50;
  background:#111;
  border-bottom:2px solid var(--gold);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 24px;
}
.logo{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:700;
  color:var(--gold);
}
.logo img{
  width:50px;
  height:36px;
  border-radius:8px;
  border:2px solid var(--gold);
}
nav ul{
  list-style:none;
  display:flex;
  gap:16px;
  margin:0;
  padding:0;
}
nav a{
  color:#f5f5f5;
  font-weight:600;
  transition:all .25s;
}
nav a:hover{
  color:var(--gold);
  text-shadow:0 0 8px var(--gold);
}

/* =====================
   HERO
===================== */
.hero{
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:url('../images/hero.jpg') center/cover no-repeat;
  border-bottom:2px solid var(--gold);
  padding:60px 20px;
}
.hero h1{
  font-size:clamp(28px,6vw,64px);
  color:var(--gold);
  margin:0 0 12px;
}
.hero p{
  max-width:900px;
  margin:0 auto 20px;
  color:#eaeaea;
}

/* =====================
   BOTONES
===================== */
.btn{
  display:inline-block;
  padding:12px 20px;
  border:2px solid var(--gold);
  border-radius:10px;
  background:linear-gradient(
    180deg,
    rgba(212,175,55,.2),
    rgba(212,175,55,.05)
  );
  color:#fff;
  font-weight:700;
  letter-spacing:.3px;
  transition:.3s;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(212,175,55,.25)}
.container{max-width:1100px;margin:0 auto;padding:32px 20px}
.section-title{color:var(--gold);font-size:clamp(22px,3vw,36px);margin:0 0 16px;text-align:center}
.grid{display:grid;gap:18px}
.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#111;border:1.5px solid var(--gold);border-radius:14px;padding:18px;transition:.3s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(212,175,55,.15)}
.card h3{margin:6px 0 10px}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.gallery img,.gallery iframe{width:100%;height:200px;object-fit:cover;border-radius:12px;border:2px solid var(--gold)}
footer{margin-top:40px;border-top:2px solid var(--gold);background:#111;color:#b9b9b9;text-align:center;padding:20px}
.small{font-size:.95rem;color:#ddd}
.list{display:grid;gap:10px}
.list a{display:flex;justify-content:space-between;align-items:center;background:#121212;border:1px solid #2b2b2b;padding:12px;border-radius:10px}
.list a:hover{border-color:var(--gold)}
.form{display:grid;gap:12px;max-width:520px;margin:0 auto}
input,textarea{background:#121212;border:1px solid var(--gold);color:#f5f5f5;border-radius:10px;padding:12px}
button{all:unset}
.btn-solid{cursor:pointer;display:inline-block;background:var(--gold);color:#000;border-radius:10px;padding:12px 18px;font-weight:800}
.badge{display:inline-block;border:1px solid var(--gold);border-radius:999px;padding:6px 10px;color:#fff}


/* =====================
   GALERÍAS / VIDEO
===================== */
.gallery{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:16px;
}
.gallery img,
.gallery iframe{
  width:100%;
  height:200px;
  object-fit:cover;
  border-radius:12px;
  border:2px solid var(--gold);
}

.video-gallery{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:20px;
  justify-content:center;
  margin-top:20px;
}
.video-card{
  border:2px solid var(--gold);
  border-radius:12px;
  padding:10px;
  text-align:center;
  background:#111;
}
.video-card video{
  width:100%;
  border-radius:8px;
  display:block;
  margin-bottom:10px;
}
.video-card iframe{
  width:100%;
  height:200px;
  border-radius:8px;
  border:none;
}

/* =====================
   AUDIO CONTROL
===================== */
.music-control{
  position:fixed;
  bottom:20px;
  right:20px;
  z-index:999;
}
.music-control button{
  background:gold;
  border:none;
  padding:10px 15px;
  border-radius:8px;
  cursor:pointer;
  font-weight:bold;
  color:#000;
}
.music-control button:hover{
  background:#ffcc00;
}

/* =====================
   CLAUSURA
===================== */
.clausura-section{
  text-align:center;
  margin:50px 0;
}
.galeria-clausura{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:15px;
}
.foto-clausura{
  width:500px;
  border-radius:10px;
  box-shadow:0 2px 6px rgba(0,0,0,.2);
  transition:transform .3s;
}
.foto-clausura:hover{
  transform:scale(1.05);
}

/* =====================
   SVG FLOTANTE
===================== */
.element{
  position:fixed;
  pointer-events:none;
}
.element-5{
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) scale(2.2);
  opacity:0.06;
  z-index:1;
  animation:floatSoft 20s ease-in-out infinite;
}
.element-5 img{
  width:600px;
  height:auto;
}
@keyframes floatSoft{
  0%{transform:translate(-50%,-50%) scale(2.2)}
  50%{transform:translate(-48%,-52%) scale(2.2)}
  100%{transform:translate(-50%,-50%) scale(2.2)}
}




/* =====================
   INTRO MARVEL 🎬🔥
===================== */
#intro{
  position:fixed;
  inset:0;
  background:black;
  z-index:9999;
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:hidden;
}
#intro-img{
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover;
  animation:flash .25s infinite;
}
.intro-text{
  position:relative;
  color:var(--gold);
  font-size:clamp(36px,6vw,72px);
  font-weight:900;
  letter-spacing:6px;
  z-index:2;
  animation:zoomText 2s ease-out forwards;
}
@keyframes flash{
  0%{opacity:.3}
  50%{opacity:1}
  100%{opacity:.3}
}
@keyframes zoomText{
  from{transform:scale(3);opacity:0}
  to{transform:scale(1);opacity:1}
}

/* =====================
   FOOTER
===================== */
footer{
  margin-top:40px;
  border-top:2px solid var(--gold);
  background:#111;
  color:#b9b9b9;
  text-align:center;
  padding:20px;
}
.small{font-size:.95rem;color:#ddd}
.badge{
  display:inline-block;
  border:1px solid var(--gold);
  border-radius:999px;
  padding:6px 10px;
  color:#fff;
}





.element {
  position: fixed;          /* 🔥 CLAVE */
  pointer-events: none;     /* no bloquea clicks */
}

.element-6 {
  top:50px;
  left:50px;
  width:500px;
  height:1000px;
  transform:scale(1);
  opacity:1;
  color:#000;
  background:transparent;
  font-size:16px;
  z-index:141;
}



.element-7 {
  position: fixed;        /* Se fija a la pantalla */
  right: 0;               /* 👉 extremo derecho */
  bottom: 80px;           /* separación del fondo */
  z-index: 5;             /* encima del contenido */
  pointer-events: none;   /* no bloquea clicks */
}

.element-7 img {
  max-width: 400px;
  height: auto;
}


.element-8 {
  position: fixed;        /* Se fija a la pantalla */
  right: 0;               /* 👉 extremo derecho */
  bottom: 80px;           /* separación del fondo */
  z-index: 2;             /* encima del contenido */
  pointer-events: none;   /* no bloquea clicks */
}

.element-8 img {
  
  height: auto;
}
