.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > thead > tr > th {
  border-top: none !important;
}

a:focus,
a:hover {
  color: inherit !important;
  text-decoration: none !important;
}

.form-control {
  border: 1px solid #705954;
}
.form-control:focus {
  border: 1px solid #9c7b74;
}

/* http://stackoverflow.com/questions/19562903/remove-padding-from-columns-in-bootstrap-3 */
.nopadding {
  padding: 0 !important;
  margin: 0 !important;
}

/* http://stackoverflow.com/questions/20547819/vertical-align-with-bootstrap-3 */
.vcenter {
  display: inline-block;
  vertical-align: middle;
  float: none;
}

.thumbnail {
  background-color: #111111;
  border: 1px solid #333333;
  transition: all 0.3s ease;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #c35b43;
  -moz-box-shadow: 0 0 60px rgba(195, 91, 67, 0.3);
  -webkit-box-shadow: 0 0 60px rgba(195, 91, 67, 0.3);
  box-shadow: 0 0 60px rgba(195, 91, 67, 0.3);
}

.btn-primary {
  /*background-color: transparent;*/
  background-image: linear-gradient(to bottom, #6e99dc, #4e5c91);
  border: 0px;
  -moz-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
  -moz-border-radius: 0px;
  border-radius: 0px;
}
.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover {
  color: #fff !important;
  filter: brightness(120%);
}

/* modal */
.modal-content {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  background-color: transparent !important;
  border: 0 !important;
}

.table-bordered {
  border: 1px solid #18110f !important;
}

/* .table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #3f5a99 !important;
  color: #fff !important;
} */

.table-hover > tbody > tr:hover td {
  background-color: #3f5a99 !important;
  color: #fff !important;
}

.table-bordered > tbody > tr > td,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > td,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > thead > tr > th {
  border: 1px solid #fff !important;
}

.panel-heading {
    margin-top: 40px;
}

/* ======================================== */
/* FIX FOOTER OVERLAP - CONTENT STAYS ABOVE */
/* ======================================== */

/* Asegura que el wrapper englobe todo */
.wrapper {
    position: relative; /* importante para contextos relativos */
    min-height: 100vh;  /* fuerza que la web ocupe al menos toda la pantalla */
}

/* Evita que el contenido toque el footer */
.content {
    padding-bottom: 450px; /* ajusta según la altura real de tu footer */
    box-sizing: border-box;
}

/* Footer */
.bottom-fon-home-1 {
    position: relative; /* ya no absolute ni fixed */
    width: 100%;
    z-index: 10;        /* se mantiene arriba de fondo pero debajo del contenido */
}

/* Por si los sliders o bloques grandes se salen */
.news-panel,
.block-widget,
.block-players,
.events-block {
    box-sizing: border-box;
}

/* Optional: fuerza que clearfix funcione */
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

/* Botón "volver arriba" correctamente posicionado */
#toTop {
    position: fixed;   /* debe seguir siendo fixed */
    bottom: 40px;     /* distancia desde el footer, ajusta según necesites */
    right: 30px;       /* separación de la derecha */
    z-index: 9999;     /* siempre encima del contenido */
}

/* .toTop-fon: línea que estaba detrás del botón */
.toTop-fon,
.toTop-fon::before,
.toTop-fon::after {
    content: none !important;  /* elimina cualquier pseudo-elemento */
    border: none !important;   /* elimina bordes si los tuviera */
    background: transparent !important; /* elimina colores de fondo */
    height: 40px;               /* mantiene el espacio para el botón */
    position: relative;          /* mantiene el contexto */
    display: block;
}

/* Botón sigue flotando a la derecha */
.toTop {
    position: absolute;
    right: 20px;
    bottom: 0;
}

/* ELIMINAR FRANJA AZUL COMPLETA */
.newsPagination {
    position: absolute;
    bottom: 10px;
    width: 100%;
    background: transparent !important;
}

/* Quitar fondo azul */
.swiper-pagination-fraction {
    display: none !important;
}

/* ===================================== */
/* SWIPER SIN FRANJA AZUL + FLECHAS FIX */
/* ===================================== */

/* Asegurar que el slider sea relativo */
.swiper-news {
    position: relative;
}

/* Flechas flotando sobre la imagen */
.swiper-button-next,
.swiper-button-prev {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%);
    width: 45px;
    height: 45px;
    background: rgba(0, 0, 0, 0.55);
    border-radius: 50%;
    color: #ffffff !important;
    z-index: 9999 !important;
    transition: 0.3s ease;
}

/* Izquierda */
.swiper-button-prev {
    left: 15px !important;
}

/* Derecha */
.swiper-button-next {
    right: 15px !important;
}

/* Tamaño del icono */
.swiper-button-next::after,
.swiper-button-prev::after {
    font-size: 18px;
}

/* Hover */
.swiper-button-next:hover,
.swiper-button-prev:hover {
    background: rgba(0, 0, 0, 0.85);
}

.swiper-news .swiper-slide {
    background-size: contain !important;
    background-position: center center !important;
    background-color: #000; /* relleno si sobra espacio */
}

.swiper-news {
    height: auto !important;
}

.swiper-news .swiper-slide {
    height: 380px !important;
    background-size: cover !important;
}

.swiper-news .swiper-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;

    background: radial-gradient(circle at center,
        rgba(255,255,255,0) 65%,
        rgba(255,255,255,0.05) 78%,
        rgba(255,255,255,0.12) 90%,
        rgba(255,255,255,0.18) 100%);
}

.floating-social {
    position: fixed;
    right: 20px;
    top: 40%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    z-index: 9999;
}

.floating-social img {
    width: 40px;
    transition: 0.3s;
}

.floating-social img:hover {
    transform: scale(1.1);
}

/* Contenedor principal */
.slider .swiper-slide {
  position: relative;
  overflow: visible;
  border-radius: 0;
  z-index: 0;
}

/* -------------------------- */
/* Neblina izquierda (sube) */
/* -------------------------- */
.slider .swiper-slide::before {
  content: '';
  position: absolute;
  top: -100%;
  left: -20px;
  width: 20px;
  height: 200%;
  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.65), rgba(255,255,255,0));
  filter: blur(14px);
  opacity: 0;
  animation: mist-left 12s ease-in-out infinite;
  z-index: 1;
}

/* -------------------------- */
/* Neblina derecha (baja) */
/* -------------------------- */
.slider .swiper-slide::after {
  content: '';
  position: absolute;
  top: -100%;
  right: -20px;
  width: 20px;
  height: 200%;
  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.65), rgba(255,255,255,0));
  filter: blur(14px);
  opacity: 0;
  animation: mist-right 12s ease-in-out infinite;
  z-index: 1;
}

/* -------------------------- */
/* Neblina superior (izquierda → derecha) */
/* -------------------------- */
.slider .swiper-slide .mist-top {
  position: absolute;
  top: -20px;
  left: -100%;
  width: 200%;
  height: 20px;
  background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,0.65), rgba(255,255,255,0));
  filter: blur(14px);
  opacity: 0;
  animation: mist-top 12s ease-in-out infinite;
  z-index: 1;
}

/* -------------------------- */
/* Neblina inferior (derecha → izquierda) */
/* -------------------------- */
.slider .swiper-slide .mist-bottom {
  position: absolute;
  bottom: -20px;
  left: -100%;
  width: 200%;
  height: 20px;
  background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,0.65), rgba(255,255,255,0));
  filter: blur(14px);
  opacity: 0;
  animation: mist-bottom 12s ease-in-out infinite reverse;
  z-index: 1;
}

/* ========================= */
/* Animaciones para loop suave con fade-in/fade-out */
/* ========================= */
@keyframes mist-left {
  0%   { transform: translateY(50%); opacity: 0; }
  25%  { opacity: 0.65; }
  75%  { opacity: 0.65; }
  100% { transform: translateY(-50%); opacity: 0; }
}

@keyframes mist-right {
  0%   { transform: translateY(-50%); opacity: 0; }
  25%  { opacity: 0.65; }
  75%  { opacity: 0.65; }
  100% { transform: translateY(50%); opacity: 0; }
}

@keyframes mist-top {
  0%   { transform: translateX(0); opacity: 0; }
  25%  { opacity: 0.65; }
  75%  { opacity: 0.65; }
  100% { transform: translateX(-50%); opacity: 0; }
}

@keyframes mist-bottom {
  0%   { transform: translateX(-50%); opacity: 0; }
  25%  { opacity: 0.65; }
  75%  { opacity: 0.65; }
  100% { transform: translateX(0); opacity: 0; }
}