/* =========================
   BASE
========================= */

body {
    font-family: "Oswald", sans-serif;
    padding-top: 00px; /* altura real del header */
    margin: 0;
    line-height: 1.6;
}

body p {
    font-family: "Oswald", sans-serif !important;
}

/* =========================
   HEADER FIJO
========================= */

.cabecera {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 200px;
    background-color: #f8ae1b;
    color: white;
    z-index: 1000;
    display: flex;
    align-items: center;
    padding: 50px 20px;
    overflow: visible;
}

/* =========================
   NAVBAR
========================= */

.navbar,
.navbar-collapse {
    overflow: visible;
}

.navbar-nav .nav-link {
    color: #000 !important;
    font-weight: 600;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
    color: #f9a600 !important;
    text-decoration: underline;
}

.navbar-nav .dropdown-menu {
    position: absolute;
    top: 100%;
    z-index: 2000;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.navbar-nav .dropdown-item {
    color: #333;
    padding: 10px 15px;
    transition: background-color 0.3s ease;
}

.navbar-nav .dropdown-item:hover {
    background-color: #ffffff;
    color: #d93d3d;
}

/* =========================
   BUSCADOR DESKTOP
========================= */

.resultados-busqueda {
    margin-top: 120px;
    animation: fadeIn 0.25s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* =========================
   MOBILE SEARCH (navbar)
========================= */

.mobile-search-active .navbar,
.mobile-search-active .navbar-toggler,
.mobile-search-active .navbar-collapse,
.mobile-search-active .navbar-light .navbar-toggler {
    display: none !important;
}

@media (max-width: 767px) {
    #buscador {
        position: fixed !important;
        top: 10px;
        left: 10px;
        right: 10px;
        z-index: 99999;
    }

    #searchInput {
        width: 100% !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    }
}

/* =========================
   /buscar (APP MOBILE)
========================= */

/* Ocultar navbar en /buscar */
body.buscar-page .navbar {
    display: none !important;
}

/* Desactivar buscador fijo del navbar en /buscar */
body.buscar-page #buscador {
    position: static !important;
    z-index: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    box-shadow: none !important;
}

.buscar-page .buscar-header {
    background: #ff6a00;
    position: sticky;
    top: 0;
    z-index: 999999 !important;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.buscar-page .buscar-header button {
    font-size: 1.6rem;
    font-weight: bold;
    color: white;
}

.buscar-page .buscar-header input {
    flex: 1;
    border-radius: 8px;
}




/* Input visible */
.buscar-page #searchPageInput {
    background: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 8px;
    padding-left: 12px;
    font-size: 1.1rem;
    color: #000;
}

/* Placeholder */
.buscar-page #searchPageInput::placeholder {
    color: #555;
    opacity: 1;
}

/* Botón volver */
.buscar-page .btn-link {
    color: #ffffff !important;
    font-weight: bold;
}

/* =========================
   RESTO DEL CSS (SIN CAMBIOS)
========================= */

/* ...todo lo demás que ya tenías... */




/* Hover y focus */

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
    color: #f9a600 !important;
    text-decoration: underline;
}



/* Estilo del dropdown */

.navbar-nav .dropdown-menu {
    position: absolute;
    top: 100%;
    z-index: 2000;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}



.navbar-nav .dropdown-item {
    color: #333;
    padding: 10px 15px;
    transition: background-color 0.3s ease;
}



.navbar-nav .dropdown-item:hover {
    background-color: #ffffff;
    color: #d93d3d;
}






.categoria-oculta {

    display: none;

}



.weather-widget {

    margin-top: 20px;

    text-align: center;

    /* Centrar si se requiere */

}



#dateTime {

    color: aliceblue;

    font-size: 1.2em;

    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;



}



.imagen-post {

    width: 100%;

    /* Ancho completo del contenedor */

    height: auto;

    /* Mantener la relación de aspecto */

    aspect-ratio: 16 / 9;

    /* Relación de aspecto 16:9 */

    object-fit: cover;

    /* Ajusta la imagen para cubrir el área, recortando arriba y abajo si es necesario */

    background-position: center center;

    /* Centra la imagen */

    background-attachment: fixed;

    /* Efecto parallax */

    position: relative;

    margin-bottom: 20px;

}



.imagen-post img {

    width: 100%;

    height: 100%;

    object-fit: cover;



    /* Garantiza que la imagen recorte adecuadamente */

}

.banner-cuadrado {

    width: 250px;

    /* Ancho completo del contenedor */

    height: auto;

    /* Mantener la relación de aspecto */

    aspect-ratio: 1 / 1;

    /* Relación de aspecto 1: 1 */

    object-fit: cover;

    /* Ajusta la imagen para cubrir el área, recortando arriba y abajo si es necesario */

    background-position: center center;

    /* Centra la imagen */

    background-attachment: fixed;

    /* Efecto parallax */

    position: relative;

    margin-bottom: 20px;

}



.banner-cuadrado img {

    width: 100%;

    height: 100%;

    object-fit: cover;



    /* Garantiza que la imagen recorte adecuadamente */

}



.imagen-articulos-inicio {

    max-width: 100%;

    /* Ancho completo del contenedor */

    height: auto;

    /* Mantener la relación de aspecto */

    aspect-ratio: 1/1;

    /* Relación de aspecto 16:9 */

    object-fit: cover;

    /* Ajusta la imagen para cubrir el área, recortando arriba y abajo si es necesario */

    background-position: center center;

    /* Centra la imagen */

    background-attachment: fixed;

    /* Efecto parallax */

    position: relative;

    margin-bottom: 20px;

}



.imagen-articulos-inicio img {

    width: 20%;

    height: 10%;

    object-fit: cover;

    margin-top: 5px;



    /* Garantiza que la imagen recorte adecuadamente */

}



.noticia-central {

    position: relative;

    overflow: hidden;

    /* Asegura que los elementos adicionales no se desborden */

    border-radius: 8px;

    /* Opcional: bordes redondeados */

}



.imagen-noticia-central img {
    width: 100%;
    height: 450px !important;
    object-fit: cover;


/* Ajusta la imagen para que se vea bien en el contenedor */

position: relative;

/* Define un contexto de posición para el título */

z-index: 1;

/* Mantén la imagen debajo del título */
}




.titulo-noticia-central {

    position: absolute;

    /* Asegura que el título se posicione sobre la imagen */

    bottom: 0;

    left: 0;

    width: 100%;

    font-family: oswald;

    text-transform: uppercase;

    text-align: center;

    color: #fff;

    text-decoration: none;

    /* Color del texto */

    background: #fdfdfdd0;

    /* Fondo semitransparente */

    padding: 10px;

    font-size: 2rem;

    /* Ajusta el tamaño del texto */

    z-index: 10;

    /* Asegura que el texto esté encima */

}

#calendario {
    width: 100%;
    height: 600px;
    /* Ajusta el tamaño según sea necesario */
}

/* ====== ESTILO DEL CALENDARIO ====== */

.fc {
    font-family: 'Helvetica', 'Arial', sans-serif;
}

/* Bordes suaves */
.fc .fc-daygrid-day {
    border-radius: 6px;
    transition: background-color 0.2s ease;
}

/* Hover suave */
.fc .fc-daygrid-day:hover {
    background-color: #f5f5f5;
}

/* Eventos más redondeados */
.fc-event {
    border-radius: 6px !important;
    padding: 3px 6px !important;
    font-size: 0.85rem;
}

/* Hover en eventos */
.fc-event:hover {
    filter: brightness(1.15);
    cursor: pointer;
}

/* Título del mes más elegante */
.fc-toolbar-title {
    font-size: 1.6rem;
    font-weight: 600;
}

/* Botones del calendario estilo Bootstrap */
.fc-button {
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 0.9rem !important;
}

/* ====== Personalización de colores FullCalendar ====== */

/* Día actual (hoy) */
.fc-day-today {
    background-color: #e0f7fa !important; /* celeste suave */
    border: 1px solid #b2ebf2 !important;
}

/* Hover sobre días */
.fc-daygrid-day:hover {
    background-color: #f5f5f5 !important;
}

/* Hover sobre eventos */
.fc-event:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 4px rgba(0,0,0,0.2);
}

/* Bordes de eventos */
.fc-event {
    border: none !important;
}


/*modal*/
.modal {
  z-index: 1055;
}

.modal-backdrop {
  z-index: 1050;
}

body.modal-open {
  overflow: hidden;
}

/* Contenedor general */
.modal-body {
    padding: 1.5rem;
    font-family: "Inter", sans-serif;
}

/* Título */
.modal-title-custom {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.3;
}

/* Badge de categoría */
.modal-category-badge span {
    display: inline-block;
    padding: 0.35rem 0.75rem;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.8rem;
}

/* Lista de info */
.modal-info {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.modal-info-item {
    display: flex;
    align-items: center;
    font-size: 1rem;
}

.modal-info-item i {
    font-size: 1.2rem;
    margin-right: 0.5rem;
    color: #555;
}

.modal-info-item span {
    flex: 1;
}

/* Mobile */
@media (max-width: 768px) {
    .modal-title-custom {
        font-size: 1.2rem;
    }

    .modal-info-item {
        font-size: 0.95rem;
    }
}

@media (max-width: 768px) {

    /* Lo que ya tenías */
    .modal-title-custom {
        font-size: 1.2rem;
    }

    /* Ajuste del header en móvil */
    .cabecera {
        height: 140px;        /* ajustá según tu diseño */
        padding: 20px 15px;   /* menos padding para que no sea gigante */
    }

    /* Ajuste del contenido para que no quede tapado */
    body {
        padding-top: 30px;   /* debe ser igual o un poco más que la altura real del header */
    }
}

/* Desktop */
.post-container {
    padding-top: 300px; /* altura real del header */
}

/* Mobile */
@media (max-width: 768px) {
    .post-container {
        padding-top: 180px; /* header más chico en móvil */
    }
}



.modal-header {
    background-color: hsla(49, 92%, 49%, 0.493); /* naranja muy suave */
    border-bottom: none;
}

.modal-title a {
    color: inherit;
    text-decoration: none;
}

.modal-title a:hover {
    text-decoration: underline;
}

.today-event-card {
    padding: 1rem;
    border-radius: 10px;
    margin-bottom: 1rem;
    background: rgba(0,0,0,0.03);
}

.today-event-title {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.3rem;
}

.today-event-meta {
    font-size: 0.9rem;
    color: #555;
}

.today-event-link {
    display: inline-block;
    margin-top: 0.5rem;
    font-weight: 600;
    text-decoration: none;
}



.calzate-auris {



    font-family: Oswald;

    font-size: 5.em;

    text-align: center;

    color: #f2a10a;

    font-weight: bolder;



}



.parrafo-post {



    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

    margin-bottom: 20px;

    text-align: justify;

}



.parrafo-bajada {



    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

    font-style: italic;

    font-weight: bolder;



}



.parrafo-nombre-tema {



    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

    font-style: italic;

    font-weight: bold;

}



.div-articulos-inicio {



    border: #333;

    border-width: 1px;

    background-color: #d93d3d;



}



.listar-articulos-random {



    padding-top: 25px;

    background-color: #7aff56;



}



.links,
.categorias-inicio {



    font-family: oswald;

    font-size: 1.5rem;

    color: #f2a10a;

    text-decoration: none;

    text-transform: uppercase;



}



.categotia-lista1 {



    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

    font-size: 1.6em;

    font-weight: bolder;

    color: #f8ae1b;



}



.bajada-articulos-inicio {



    font-family: oswald;

    font-size: 1.2rem;

    color: #000000;

    text-transform: uppercase;

}



.bajada-articulos-inicio p {
    font-family: "Oswald", sans-serif !important;
    font-style: italic;
    font-weight: bold;
}





.banner-largo {

    max-width: 100%;

    max-height: auto;



}







.left-content {

    display: flex;

    flex-direction: column;

    gap: 20px;

}



.category {

    background-color: #f9f9f9;

    padding: 10px;

    border: 1px solid #ddd;

}



.news-item {

    margin-bottom: 10px;

    padding: 10px;

    background-color: #fff;

    border: 1px solid #ccc;

}



.right-content {

    display: flex;

    flex-direction: column;

    gap: 20px;

}



.banner {

    height: 200px;
    /* Ajusta según el tamaño deseado */

    background-color: #e0e0e0;

    border: 1px solid #ccc;

    display: flex;

    justify-content: center;

    align-items: center;

    font-size: 18px;

}



/* CSS PARA LA NOTICIAS Y BANNERS LATERALES DEBAJO DEL BANNER LARGO1 */



/* Contenedor general de noticias en cuadrícula */

.grid-noticias {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    /* Dos columnas iguales */

    grid-template-rows: auto auto;

    /* Dos filas automáticas */

    gap: 20px;

    /* Espaciado entre elementos */

}



/* Estilo de cada noticia individual */

.noticia-item {

    display: flex;

    flex-direction: column;

    border: 1px solid #ddd;

    border-radius: 5px;

    overflow: hidden;

    background-color: #fff;

    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);

    padding: 10px;

}



/* Imagen dentro de la noticia */

.noticia-item img {

    width: 100%;

    /* Imagen ocupa todo el ancho */

    height: 150px;

    /* Altura fija */

    object-fit: cover;

    /* Ajusta la imagen al contenedor sin distorsión */

    border-bottom: 1px solid #ddd;

}



/* Título de la noticia */

.noticia-item h5 {

    font-size: 1rem;

    margin: 10px 0 5px;

    color: #333;

}



/* Bajada o descripción de la noticia */

.noticia-item p {

    font-size: 0.9rem;

    color: #666;

}



/* Responsividad: Una sola columna en pantallas pequeñas */

@media (max-width: 768px) {

    .grid-noticias {

        grid-template-columns: 1fr;

        /* Una sola columna */

    }

}

/*CONTENEDOR DEL VIDEO EN POST NOTICIA*/

.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 75%; /* 4:3 ratio → 3/4 = 75% */
    height: 0;
    overflow: hidden;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}




.calzate-auris {
    font-family: Oswald;
    text-align: center;
    color: #f2a10a;
    font-weight: 700;
    margin-bottom: 20px;
}

.subtitulo-auris {
    font-size: 1rem;
    letter-spacing: 2px;
    display: block;
    color: #555;
}

.lista-audios {
    list-style: none;
    padding: 0;
    margin: 0;
}

.audio-item {
    background: #f9f9f9;
    border-radius: 10px;
    padding: 12px;
    margin-bottom: 15px;
    box-shadow: 0 3px 8px rgba(0,0,0,0.08);
}

.audio-info {
    margin-bottom: 8px;
}

.audio-label {
    font-size: 0.8rem;
    color: #888;
    display: block;
}

.audio-titulo {
    font-family: Oswald;
    font-size: 1rem;
    color: #222;
}

.audio-item audio {
    width: 100%;
}

/*  GALERIA DE NOTICIAS */


.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    overflow: hidden;
    border-radius: 8px;
}

.video-container iframe,
.video-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



galeria-noticia {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 0.75rem;
}


.galeria-hero-container {
    width: 100%;
    margin-bottom: 1rem;
}

.galeria-hero-container img {
    width: 100%;
    height: auto;
    border-radius: 6px;
    object-fit: cover;
}



.galeria-noticia img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  object-fit: cover;
  cursor: pointer;
}

.galeria-hero-container {
  width: 100%;
  margin-bottom: 1rem;
}


#galeria-hero-img {
  transition: opacity .3s ease;
}

#galeria-hero-img.fade {
  opacity: 0;
}


.galeria-hero img {
  width: 100%;
  border-radius: 6px;
  object-fit: cover;
}

.galeria-thumbs {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  padding-bottom: 0.5rem;
}

.galeria-thumb {
  width: 80px;
  height: 60px;
  object-fit: cover;
  border-radius: 4px;
  cursor: pointer;
  opacity: 0.8;
  transition: opacity .2s, transform .2s;
}

.galeria-thumb:hover {
  opacity: 1;
  transform: scale(1.05);
}

/* En la página /buscar, ocultar TODO el header */
body.buscar-page header.cabecera {
    display: none !important;
}

/* En la página /buscar, eliminar cualquier espacio residual */
body.buscar-page header.cabecera * {
    display: none !important;
}

/* En la página /buscar, eliminar el margin-bottom del header */
body.buscar-page header.cabecera {
    margin: 0 !important;
    padding: 0 !important;
}
