@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');


body {font-family: 'Poppins', sans-serif!important; overflow-x: hidden;}
h2 a, h3 a, h4 a, h5 a, h1 a, .redes a {text-decoration: none!important;}

/* FS */


.fs-12 {font-size: 12px;}
.fs-13 {font-size: 13px;}
.fs-14 {font-size: 14px;}
.fs-16 {font-size: 16px;}


/* PORTADA */

.navbar-brand img {width: 115px;}

.testimonios-img {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  object-fit: cover;
}

#map {
  height: 400px; /* o ajusta según tus necesidades */
  width: 100%;
}

.form-check-input:checked + .form-check-label + .check-background {
  display: block;
  background-color: var(--bs-secondary)!important;
}
/* CALENDARIO */

.calendar-table th,
.calendar-table td {
    background-color: transparent !important; /* Hace el fondo transparente */
}

/* SWIPER */

.swiper-pagination-bullet {
  background: #fff !important;
  opacity: 1!important;
  width: 15px !important;
  height: 15px !important;
  border-radius: 50% !important;
  transition: all 0.2s ease-in-out;  /* Aquí está la clave para una transición suave */

}

.swiper-pagination-bullet-active {
  background:  #D04E44 !important;
}


/* BOTONES */
.btn-secondary:hover {background: #2A415D!important; border-color: #2A415D!important;}
/* CARDS */

.short-description {min-height: 80px;}
.titulo a {
  color: #fff;
  transition: color 0.5s ease; /* Transición de 0.5 segundos con efecto 'ease' */
}

.titulo a:hover {
  color: #D04E44;
}

.cat h3 {text-shadow: 2px 2px 2px gray;}
.cat .like  {text-shadow: 1px 1px 1px gray;}
/* TABS */
.justify-md-content-center {
  justify-content: center !important;
}

.fixed-tabs {
  position: fixed;
  top: 96px;
  height: 40px;
  z-index: 99;
  width: 100%; /* Asegúrate de establecer un ancho si es necesario */
}

.nav-tabs {
  display: flex!important;
  flex-wrap: nowrap!important;
  overflow-x: auto;
  gap: .5rem; /* Ajusta el espacio entre los elementos */
}

.nav-item {
  white-space: nowrap!important; /* Asegúrate de que los textos de los elementos no se envuelven */
  flex-shrink: 0; /* Evita que los elementos se reduzcan más pequeños que su contenido */
}

.nav-link {
  margin: 0 .5rem; /* Asegura cierto espacio alrededor de los enlaces */
}



.cover-ppal.mb-5 {margin-bottom: 90px!important;}

.nav-tabs .nav-link {color: #fff!important}

.nav-link.active {color: #D04E44!important; background: #fff!important;}

.bg-personalized {background: #fff; color: #D04E44!important;}
.active .bg-personalized {background: #D04E44; color: #fff!important; }

.filter-buttons .btn-light.active,
.filter-buttons .btn-light:active,
.filter-buttons .btn-light:focus,
.filter-buttons .btn-light:checked {
    background-color: #F8AD7A!important; /* Un color más oscuro para indicar selección */
    color: white;
}
.filter-buttons .btn-light input[type="checkbox"] {
    display: none; /* Oculta el checkbox real */
}

.btn-light {background: white!important;}

.search-input-container .search-input {
  border-right: 0;
}

.search-input-container .input-group-append {
  margin-left: -1px;
}

.search-input-container .input-group-text {
  background-color: transparent;
  border-left: 0;
}

.btn-agenda .btn.active {border-color:#2A415D!important; background: #2A415D!important; color: #fff;} 

/* acordion */

.accordion-button:focus {
  outline: none !important;
  box-shadow: none !important;
}


.fixnone .accordion-button::after {
  display: none; /* Oculta la flecha del acordeón */
}
.fixnone .accordion-button {
  background: none;
  box-shadow: none;
}


/* Clase para elementos ocultos */
.invisible {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s 0.3s, opacity 0.3s linear; /* Retrasa la 'visibility' hasta que la opacidad haya terminado */
}

/* Clase para elementos visibles */
.visible {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.3s linear; /* Transición de la opacidad */
}

.accordion-image {
  transition: height 0.3s cubic-bezier(0.175, 0.885, 0.320, 1.275);
  max-width: 100%; /* Asegura que la imagen no sea más ancha que su contenedor */
  object-fit: cover; /* Mantiene las proporciones de la imagen al recortarla */
}

.accordion-image.img-collapsed {
  height: 100px;
  transition: height 0.3s cubic-bezier(0.175, 0.885, 0.320, 1.275);
}


.fixnone .accordion-button {
  display: block !important;
}

.accordion-item {border: 0!important;}


/* NAVBAR */


.navbar-nav .menu-item a {
  color: #D04E44; /* Color inicial */
  transition: color 0.5s ease, transform 0.5s ease;
  /* Asegúrate de proporcionar un estado inicial adecuado si es necesario, por ejemplo: */
  transform: translateY(0);
}

.navbar-nav .menu-item a:hover {
  color: #2A415D; /* Color al hacer hover */
  transform: translateY(-5px); /* Mueve el enlace hacia arriba al hacer hover */
}

.navbar-nav li {margin-right: 20px;}
.navbar-nav a.active {color: #2A415D!important;}



/* SINGLE */

.nav-side li {list-style: none; font-weight: 600;}
.nav-side a {text-decoration: none!important}

.fixed-sidebar {
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -ms-sticky;
    position: -o-sticky;
    position: sticky;
    top: 100px;
    bottom: auto;
  }

.contentwp a {
    text-decoration: underline!important;
}

.bg-degrade {
  background: linear-gradient(to bottom,rgba(0,0,0,0) 10%,rgba(0,0,0,0.7) 80%);
}

.text-shadow h1, .text-shadow h3, .text-shadow p {
  text-shadow: 2px 2px 3px #000;
}

.btn-outline-primary {border: none!important;}
/* swiper */

.swiper-wrapper {z-index: 0!important;}
.swiper-button-preva, .swiper-button-nexta {z-index: 99!important; }
.swiper-button-nexta {right: -30px;}
.swiper.fa-circle {text-shadow: 1px 1px 5px gray;}

.video-responsive {
            overflow: hidden;
            padding-bottom: 56.25%;
            position: relative;
            height: 0;
        }
        .video-responsive iframe,
        .video-responsive object,
        .video-responsive embed {
            left: 0;
            top: 0;
            height: 100%;
            width: 100%;
            position: absolute;
        }

.tabs-agenda .estampa-red {right:  -6%; top: 450px}
.tabs-agenda .estampa-white {left:  -6%; top: 900px}
.tabs-agenda .cinta {left: 0px; top: 100px}
.gastronomia-portada .estampa-white {left:  -6%; bottom: -20%}
.galeria .estampa-white {left:  -6%; bottom: -30%}
.botonera-portada .estampa-red {right:  -6%; bottom: -30%; }
.single-evento .estampa-red {right:  -6%; bottom: 10%; }
.botonera-portada .cinta {left: 0px; top: 100px}
.single-evento .cinta {left: 0px; top: 100px}



/* Alturas de los botones */
.height-big {
  height: 280px; /* Altura para los botones grandes */
}

.height-small {
  height: calc((280px - 3 * 8px) / 2); /* Altura para los botones pequeños */
}

/* Estilos generales para los botones */
.botonera .boton-custom {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  overflow: hidden;
  margin-bottom: 10px; /* Espaciado entre botones pequeños */
  color: #fff; /* Cambia el color del texto según sea necesario */
  text-decoration: none; /* Remueve el subrayado de los enlaces */
}

/* Ajustes para el texto y el icono dentro del botón */
.botonera .height-big i {
  font-size: 78px; /* Tamaño del icono */
  margin-bottom: 30px;
  /* Añade más estilos si necesitas ajustar el icono */
}

.botonera .height-small i {
  font-size: 40px; /* Tamaño del icono */
  margin-bottom: 16px;
  /* Añade más estilos si necesitas ajustar el icono */
}



/* Asegúrate de que los botones en la misma columna no tengan margen entre ellos */
.botonera .col-md-3:last-child .boton-custom,
.botonera .col-md-3 .boton-custom:last-child {
  margin-bottom: 0;
}
