*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html, body{
  height:auto;
}

body{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;   /* centra vertical */
  align-items:center;       /* centra horizontal */
  text-align:center;
  background:#000;
  overflow-x:hidden;
    padding: 0 10%;
}

/* Tamaño controlado */
#logo {
  width:700px;   /* o 100% si prefieres */
  height:auto;
  display:block;
  margin:0 auto 30px;
  filter: drop-shadow(0 0 15px rgba(0,0,0,0.4));
  animation: floatLogo 4s ease-in-out infinite;
}

@keyframes floatLogo{
  0%{ transform:translateY(0px); }
  50%{ transform:translateY(-8px); }
  100%{ transform:translateY(0px); }
}

/* ===== SLIDESHOW ===== */
.slideshow{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:-2;
  opacity: 0.3;
  filter: saturate(2);
  backdrop-filter:blur(1px);
}

.slide{
  position:absolute;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center;
  opacity:0;
  transition:opacity 2s ease-in-out;
}

.slide.active{
  opacity:1;
}

.footer{
  margin-top:20px;
  font-size:12px;
  opacity:.6;
}

/* ===== ANIMACIONES FADE PREMIUM ===== */
.fade-up{
  opacity:0;
  transform:translateY(20px);
  animation:fadeUp 1s ease forwards;
}

@keyframes fadeUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}


@media(max-width:768px){
  #logo {
  width:100vw;   /* o 100% si prefieres */
  max-width:70%;
  height:auto;
  display:block;
  margin:0 auto 30px;
  filter: drop-shadow(0 0 15px rgba(0,0,0,0.4));
  animation: floatLogo 4s ease-in-out infinite;
    }
}

@media(max-width:580px){
    body { padding: 0 8%;}
    #logo { margin: 0 auto 50px;}
}