/* ===================================================
   Nazarenas TV – Flex Layout (Player + Footer)
   =================================================== */

/* 1) RESET & LAYOUT PRINCIPAL */
html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  background-color: #3a0041;
}
body {
  display: flex;
  flex-direction: column;
  overflow: hidden; /* evita scroll */
}

/* 2) REPRODUCTOR: ocupa todo el espacio sobrante */
#player {
  flex: 1 1 auto;
  position: relative;
  width: 100%;
  /* Flowplayer añadirá internamente el <video> */
}

/* Forzamos a Flowplayer a rellenar todo #player */
.flowplayer,
.flowplayer .fp-ui {
  height: 100% !important;
  max-height: 100% !important;
}

/* 3) CONTROLES INTERNOS DEL PLAYER */
/* Logo flotando dentro del player */
#player .logo img {
  position: absolute;
  z-index: 9;
  width: 241px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -240px);
}
/* Slogan dentro del player */
#player .slogan {
  position: absolute;
  z-index: 9;
  width: 100%;
  left: 50%;
  top: 50%;
  color: white;
  text-align: center;
  font-size: 22px;
  line-height: 26px;
  transform: translate(-50%, 120px);
}
/* Skin / fondo */
.fp-player {
  background-image: url(../img/fondo-tv-nazarenas.png);
  background-size: cover;
}
/* Opcional: ecualizador oculto */
.fp-player::before {
  display: none;
}
/* Play / pausa */
.fp-fat .fp-color-play,
.fp-pause {
  fill: white;
  opacity: 1;
  stroke: 5px solid rgb(63, 33, 8);
}
.fp-play-rounded-fill,
.fp-pause fp-pause-sharp-fill {
  border: 5px solid rgba(63, 33, 8, 0.5);
  border-radius: 100%;
  position: relative;
}
.fp-fat .b,
.fp-pause .controlbutton .rect {
  fill: #3f2156;
}
.fp-fat .fp-color {
  background-color: #3f2156;
  fill: rgba(0, 0, 0, 0.2);
}
/* Ocultar logo nativo de Flowplayer */
.fp-fat .fp-logo { display: none; }
.fp-fat.is-mouseout:not(.is-paused) .fp-logo { display: none; }

/* 4) FOOTER: altura automática, siempre abajo */
.footer {
  flex: 0 0 auto;     /* no crece ni encoge */
  width: 100%;
  box-sizing: border-box;
  padding: 0 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #3a0041;
}

/* Logo grande */
.footer-logo img {
  max-width: 120px;
  height: auto;
  display: block;
}

/* “Síguenos en” + iconos */
.social-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.follow-label {
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
}
.social-buttons {
  display: flex;
  gap: 1rem;
}
.social-buttons a {
  color: #fff;
  font-size: 2rem;
  opacity: 0.8;
  transition: opacity 0.2s, transform 0.2s;
}
.social-buttons a:hover {
  color: #f39c12;
  opacity: 1;
  transform: translateY(-2px);
}

/* 5) AJUSTES RESPONSIVOS */
@media (max-width: 768px) {
  .footer {
    flex-direction: column;
    padding: 1rem 0;
    gap: 0.5rem;
  }
  .footer-logo img {
    max-width: 120px;
  }
  .follow-label {
    font-size: 0.9rem;
  }
  .social-buttons {
    gap: 0.75rem;
  }
  .social-buttons a {
    font-size: 1.8rem;
  }
}
@media (max-width: 400px) {
  .footer-logo img {
    max-width: 80px;
  }
  .follow-label {
    font-size: 0.8rem;
  }
  .social-buttons a {
    font-size: 1.6rem;
  }
}
