@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

@font-face {
    src: url('../fonts/JokermanStd.otf') format('opentype');
    font-family: 'Jokerman';
}

/* Estilos generales */
html, body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    font-family: 'Montserrat', serif;
    background-color: var(--color-fondo);
    display: flex;
    flex-direction: column;
}

.max-width-1200 {
    max-width: 1200px;
    margin: 0 auto;
}

/* Estilos de la barra de desplazamiento */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--color-fondo);
}

::-webkit-scrollbar-thumb {
    background-color: var(--color-principal);
}

::-webkit-scrollbar-thumb:hover {
    background-color: var(--color-interactivo);
}

/* Reset de márgenes y padding */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Estilos del contenido principal */
main {
    flex: 1; 
}

/* Estilos del título */
.titulo {
    font-family: 'Jokerman', serif;
    color: var(--color-fondo);
}

/* Estilos del header */
header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    background-color: var(--color-principal);
}

.titulo.desktop {
    display: inline;
}

.titulo.mobile, .icono-volver {
    display: none;
}

/* Estilos de la lista de navegación */
.nav-list {
    display: flex;
    gap: 1rem;
}

.nav-list li a {
    text-decoration: none;
    color: var(--color-fondo);
}

.nav-list li a.active {
    background-color: var(--color-fondo); 
    color: var(--color-interactivo);
    padding: 0.2rem;
    border-radius: 10px;
}

.abrir-menu,
.cerrar-menu {
    display: none;
}

/* Estilos del footer */
footer {
    color: var(--color-fondo);
    padding: 15px;
    padding-top: 32px;
    background-color: var(--color-principal);
    position: relative;
    width: 100%;
}

footer a {
    color: var(--color-fondo);
}

footer ul {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    list-style: none;
    padding: 0;
    flex-wrap: wrap;
}

footer .footer-item-menu,
footer .footer-item-contacto {
    width: 48%;
    line-height: 1.5;
}

footer .footer-item-derechos {
    width: 100%;  /* Ocupa todo el ancho disponible */
    text-align: center;
    margin-top: 20px;
}

footer .footer-item-menu {
    order: 1;  /* Esto hace que "Menu" esté después de "Contacto" */
}

footer .footer-item-contacto {
    order: 2;  /* Esto hace que "Contacto" esté antes de "Menu" */
}

footer .footer-item-derechos {
    order: 3;  /* Asegura que "Derechos" esté al final */
}

footer .footer-item-menu h2,
footer .footer-item-contacto h2 {
    margin-bottom: 10px;
}

/* Estilos generales de listas y enlaces */
ul li {
    list-style: none;
}

a {
    text-decoration: none;
}

nav {
    display: inline;
}

/* Estilos de la imagen principal */
.foto-principal img {
    width: 100%;
    height: 75vh;
    border-radius: 0px 0px 5px 5px;
    box-shadow: 0 10px 10px -10px rgba(139, 69, 19, 0.9);
    object-position: bottom;
    object-fit: cover;
}

/* Estilos de la descripción */
.descripcion p {
    font-size: 24px;
    text-align: center;
    margin: 0.5rem 1rem 1.5rem 1rem;
    color: var(--color-principal);
}


/* Estilos para las funciones */
.funciones h2{
    font-size: 24px; /* Tamaño de fuente para el nombre de la función */
    text-transform: uppercase; /* Convierte el texto a mayúsculas */
}

.funciones .nombre-funcion{
    font-size: 24px;
}

.funciones .hora-funcion,
.funciones .lugar-funcion {
    font-size: 16px;
}


/* Estilos de las funciones */
.funciones {
    width: 20rem;
    height: 15rem;
    padding: 5rem;
    border-radius: 30px;
}

.funciones tr td {
    display: block;
}

.funciones {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 1rem;
    background-color: var(--color-fondo);
    border: 3px solid var(--color-principal);
}

.funciones h2 {
    color: var(--color-principal);
    display: flex;
    flex-direction: column;
}

.funciones h3 {
    color: var(--color-principal);
    width: 100%;
}

.funciones h3 p {
    color: var(--color-principal);
}

.proxima-funcion h3 p {
    color: var(--color-fondo);
}

.proxima-funcion {
    background-color: var(--color-principal);
    border: 2px solid var(--color-principal);
}

.proxima-funcion h2 {
    color: #f1e7c8;
}

.proxima-funcion h3 {
    color: #f1e7c8;
}

/* Estilos del contenedor de funciones */
.home-funciones-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.home-funciones-wrapper p{
    color: var(--color-principal);
    font-size: 24px;
    padding-top: 15px;
}

/* Estilos del título de la sección */
.home-title {
    color: var(--color-principal);
    margin: 1rem;
    font-weight: bold;
    font-size: 32px;
    align-self: flex-start;
    margin-bottom: 0;
}

/* Estilos de la sección de novedades */
.novedades-section h1 {
    color: var(--color-principal);
    margin: 1rem;
}

.novedades-section p {
    color: #4c6a2a;
    margin: 1rem;
    text-align: right;
    font-weight: bold;
}

/* Estilos del carrusel de novedades */
.swiper-slide {
    padding: 30px;
}

.redes a {
    color: #4c6a2a;
    font-size: 3rem;
    margin: 0 1rem;
}

.redes {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin: 1rem;
}

/* Estilos de hover en la navegación */
.nav ul li a:hover {
    color: var(--color-principal);
    padding: 0.2rem;
    border-radius: 10px 10px 10px 10px;
    background-color: var(--color-fondo);
}

/* Estilos para cuando no hay eventos */
.no-eventos {
    color: var(--color-principal);
}

/* Estilos de la sección de agenda */
.agenda-section {
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin-right: 5%;
}

.tabla-agenda-section {
    width: 100%;
    border-collapse: collapse;
}

.tabla-agenda-section td, .tabla-agenda-section th {
    text-align: center;
    max-width: 100%;
}

/* Estilos de los íconos */
.material-symbols-outlined { 
    margin-right: 4px; 
}

.lugar-funcion {
    width: 100%;
    display: flex;
    align-items: center;
}

.hora-funcion {
    width: 100%;
    display: flex;
    align-items: center;
}

.home-td-fecha {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 0.5rem;
}

.home-td-title {
    margin-bottom: 0.5rem;
}

.nombre-funcion {
    margin-top: 0.5rem;
    color: #4c6a2a;
    font-weight: 500;
    text-align: center;
}

.funciones .home-td-content {
    width: inherit;
    max-width: 300px;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    gap: 0.5rem;
    color: var(--color-principal);
}


.funciones h3, h2 {
    font-weight: 450;
}

/* Estilos específicos para el carrusel de novedades */
.title-novedades {
    color: var(--color-principal);
    margin: 1rem 0 1rem 1rem;
}

.home-redirrecion p {
    display: flex;
    font-weight: 800;
    font-size: 18px;
    color: #4c6a2a;
    justify-content: end;
    margin-right: 1rem;
}

.home-redirrecion a:visited {
    color: var(--color-interactivo);
}

.container-novedades {
    display: flex;
    align-items: center;
    justify-content: center; 
}

.card-wrapper {
    padding: 20px 10px;
    overflow: hidden;
    margin-bottom: 20px;
}

.card-list .card-item {
    list-style: none;
    margin: 10px;
}

.card-list .card-item .card-link:active {
    cursor: grabbing;
}

.card-list .card-item .card-link {
    user-select: none;
    display: block;
    background: var(--color-principal);
    color: var(--color-fondo);
    text-decoration: none;
    box-shadow: 0 10px 10px rgba(0,0,0, 0.05);
    transition: 0.2 ease;
    border-radius: 10px;
}

.card-list .card-item .card-text {
    margin: 10px 0 0 10px;
    padding-bottom: 10px;
}

.card-list .card-item .card-link:hover {
    border-color: black;
}

.card-list .card-link .card-img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 10px;
}

.swiper-slide-button {
    color: #4c6a2a;
}

.card-wrapper .swiper-pagination-bullet {
    height: 13px;
    width: 13px;
    opacity: 0.5;
    background: #4c6a2a;
}

/* Estilos para la sección de novedades */
.container-novedades {
    display: flex;
    align-items: center;
    justify-content: center; 
    height: 400px;
}

.swiper-wrapper {
    display: flex;
    align-items: center; /* Centra verticalmente */
    height: 325px; /* Altura fija */
    width: 100%; /* Ancho del contenedor */
}

.swiper-slide {
    display: flex;
    justify-content: center; /* Centra horizontalmente */
    align-items: center; /* Centra verticalmente */
    width: 325px; /* Ancho fijo */
    height: 325px; /* Alto fijo */
    min-width: 325px; /* Evita que el ancho sea menor */
    min-height: 325px; /* Evita que el alto sea menor */
    max-width: 325px; /* Evita que el ancho sea mayor */
    max-height: 325px; /* Evita que el alto sea mayor */
    flex-shrink: 0; /* Evita que el slide se contraiga */
    flex-grow: 0; /* Evita que el slide crezca */
    box-sizing: border-box; /* Incluye padding y border en el cálculo del tamaño */
}

.card-link {
    display: flex;
    position: absolute;
    flex-direction: column;
    margin: 0; /* Sin márgenes externos */
    border-radius: 10px;
    width: 100%; /* Ocupa todo el ancho del slide */
    height: 100%; /* Ocupa todo el alto del slide */
    min-width: 100%; /* Permite que el ancho se ajuste al contenedor */
    min-height: 100%; /* Permite que el alto se ajuste al contenedor */
    max-width: 100%; /* Limita el ancho al contenedor */
    max-height: 100%; /* Limita el alto al contenedor */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-decoration: none;
    background-color: var(--color-principal);
    box-sizing: border-box; /* Incluye padding y border en el cálculo del tamaño */
}

.card-img {
    width: 100%; /* Ocupa todo el ancho del card-link */
    height: 50%; /* Altura relativa al card-link */
    object-fit: cover; /* Mantiene la relación de aspecto */
    border-radius: 8px 8px 0 0; /* Bordes redondeados solo en la parte superior */
    position: relative;
    box-sizing: border-box; /* Incluye padding y border en el cálculo */
}

.card-text {
    padding-top: 10px;
    color: var(--color-fondo);
    box-sizing: border-box; /* Incluye padding y border en el cálculo */
    max-height: 50%; /* La mitad del contenedor */
    box-sizing: border-box;
    overflow: hidden; /* Evita que el texto lo deforme */
    text-overflow: ellipsis; /* Agrega puntos suspensivos si es necesario */
    display: flex;
    flex-direction: column;
}

.card-text .date {
    font-size: 14px;
    text-align: left;
    color: var(--color-fondo);
    margin-bottom: 5px;
}

.card-text .card-description {
    margin-top: 5px;
    font-size: 16px;
    color: var(--color-fondo);
    text-align: left;
}

.card-text .date {
    font-size: 14px;
    text-align: left;
    color: var(--color-fondo);
    padding: 0;
    margin-top: 0;
    margin-bottom: 5px;
    white-space: nowrap; /* Evita que el texto haga un salto de línea */
    overflow: hidden; /* Oculta el texto que se desborda */
    text-overflow: ellipsis; /* Agrega los puntos suspensivos (...) */
    max-width: 90%; /* Define un ancho máximo para que el truncamiento funcione */
}

.card-title {
    font-size: 24px;
    margin-left: 15px;
    margin-bottom: 5px;
    color: var(--color-fondo);
    white-space: nowrap; /* Evita que el texto haga un salto de línea */
    overflow: hidden; /* Oculta el texto que se desborda */
    text-overflow: ellipsis; /* Agrega los puntos suspensivos (...) */
    max-width: 90%; /* Define un ancho máximo para que el truncamiento funcione */
}

.card-description {
    overflow: hidden; /* Oculta el contenido que se desborda */
    display: -webkit-box; /* Crea un contenedor flexible */
    -webkit-line-clamp: 3; /* Limita el texto a 2 líneas */
    line-clamp: 3;
    -webkit-box-orient: vertical; /* Orientación vertical del texto */
    text-overflow: ellipsis; /* Agrega puntos suspensivos (...) */
    max-width: 90%; /* Restringe el ancho al 90% del contenedor */
    word-break: break-word; /* Evita desbordes por palabras largas */
}

.card-text .date, .card-text .card-description {
    font-weight: normal; /* Asegura que el texto no esté en negrita */
}

.card-link:hover {
    transform: scale(1.05);
    box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1);
}

.swiper-pagination-bullet {
    background: var(--color-interactivo);
    opacity: 0.7;
}

.swiper-pagination-bullet-active {
    background: var(--color-interactivo);
    opacity: 1;
}

@media screen and (max-width: 768px) {

    .max-width-1200 {
        max-width: none;
        margin: 0;
    }

    /* Oculta la barra de desplazamiento en dispositivos móviles */
    ::-webkit-scrollbar {
        display: none;
    }

    /* Estilos para enlaces activos en la navegación */
    .nav-list li a.active {
        background-color: var(--color-fondo); 
        color: var(--color-principal);
        padding: 0.2rem;
        border-radius: 10px;
    }

    /* Estilos del header en móviles */
    header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0.5rem;
        padding-left: 1rem;
        padding-right: 1rem;
        background-color: var(--color-principal);
        position: fixed;
        width: 100%;
        top: 0;
        z-index: 1040;
    }

    /* Oculta el título de escritorio en móviles */
    .titulo.desktop {
        display: none;
    }

    /* Estilos para el ícono de volver */
    .icono-volver {
        display: inline; 
        font-weight: bold;
        text-decoration: none;
        color: #f1e7c8;
    }

    /* Estilos para el título móvil */
    .titulo.mobile {
        display: inline; 
        font-family: 'Montserrat', serif;
        font-weight: normal;
    }

    /* Estilos específicos para la página de inicio en móviles */
    body.home-page .icono-volver {
        display: none; /* Oculta el botón "Volver" solo en el home */
    }

    body.home-page .titulo.mobile {
        display: inline; /* Muestra el título móvil solo en el home */
        font-family: 'Jokerman', serif; /* Aplica una fuente específica */
        font-weight: normal; /* Ajusta el peso de la fuente */
    }

    /* Estilos para los botones de abrir y cerrar menú */
    .abrir-menu,
    .cerrar-menu {
        display: block;
        border: 0;
        background-color: transparent;
        color: #f1e7c8;
        font-size: 2rem;
        cursor: pointer;
    }

    .cerrar-menu {
        margin-right: 1rem;
    }

    /* Estilos para la navegación móvil */
    .nav {
        opacity: 0;
        width: 70%;
        visibility: hidden;
        display: flex;
        position: fixed;
        flex-direction: column;
        align-items: end;
        gap: 2rem;
        top: 0;
        right: 0;
        bottom: 0;
        background-color: var(--color-principal);
        padding: 2rem 0 0 2rem;
        box-shadow: 0 0 0 100vmax var(--color-principalA);
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }

    .nav ul li a {
        padding-right: 1rem;
        font-size: 2rem;
        font-weight: bold;
        transition: color 0.3s ease;
    }

    /* Estilos para la navegación visible */
    .nav.visible {
        opacity: 1;
        visibility: visible;
        margin: 0;
    }

    /* Estilos para la lista de navegación en móviles */
    .nav-list {
        padding-left: 20%;
        flex-direction: column;
        align-items: end; 
        background-color: var(--color-principal);
        width: 50%;
        height: 100%;
    }

    /* Efecto hover en enlaces de navegación visible */
    .nav.visible ul li a:hover {
        color: var(--color-principal);
        padding: 0 0.5rem;
        border-radius: 10px 0 0 10px;
        transform: scale(1.1);
        background-color: #f1e7c8;
    }

    /* Estilos generales del body en móviles */
    body {
        background-color: #f1e7c8;
    }

    /* Estilos del footer en móviles */
    footer {
        color: #f1e7c8;
        padding: 16px 16px 10px 16px;
        background-color: var(--color-principal);
        border-radius: 24px 24px 0 0;
        box-shadow: 0px -4px 16px 0px #39110040;
        width: 100%;
        font-size: 12px;
        font-weight: 500;
    }

    footer a {
        color: #f1e7c8;
    }

    footer ul {
        display: block;
    }

    footer .footer-item {
        margin-bottom: 20px;
        width: 100%;
    }

    footer .footer-item h2 {
        font-size: 14px;
        font-weight: 600;
    }

    footer .footer-item-derechos {
        text-align: left;
    }

    /* Reset de estilos para listas y enlaces */
    ul li {
        list-style: none;
    }

    a {
        text-decoration: none;
    }

    nav {
        display: inline;
    }

    /* Estilos para la imagen principal en móviles */
    .foto-principal {
        display: flex;
    }

    .foto-principal img {
        width: 100%;
        height: 50vh;
        border-radius: 0px 0px 10% 10%;
        box-shadow: 0 10px 10px -10px rgba(139, 69, 19, 0.9);
    }

    .home-title {
        font-size: 24px;
    
    }

    /* Estilos para la descripción en móviles */
    .descripcion p {
        font-size: 14px;
        text-align: center;
        margin: 0.5rem 1rem 1.5rem 1rem;
        color: var(--color-principal);
    }

    /* Estilos para la tabla de agenda en móviles */
    .tabla-agenda-section {
        border-collapse: collapse;
    }

    .tabla-agenda-section td, .tabla-agenda-section th {
        text-align: center;
        padding: 0.5rem;
    }

    /* Estilos para las funciones en móviles */

    /* Estilos para las funciones */

    .funciones .nombre-funcion{
        color: var(--color-interactivo);
        font-weight: 600;
        font-size: 22px;
        margin-bottom: 0.5rem;
    }

    .funciones .hora-funcion,
    .funciones .lugar-funcion {
        font-size: 14px; /* Tamaño de fuente para la hora y el lugar */
    }

    .funciones h2 {
        color: var(--color-principal);
        display: flex;
        flex-direction: column;
        margin-right: 1rem;
        font-weight: 600;
        font-size: 18px;
        text-transform: uppercase; /* Convierte el texto a mayúsculas */
    }



    .proxima-funcion .nombre-funcion {
        color: #f1e7c8;
        font-weight: 500;
        font-size: 22px;
    }

    .proxima-funcion h2 {
        color: #f1e7c8;
        margin-right: 1rem;
    }

    .proxima-funcion h3 {
        color: #f1e7c8;
        text-align: left;
        width: 100%;
        font-weight: 500;
    }

    .funciones h3 p {
        color: var(--color-interactivo);
    }

    .proxima-funcion h3 p {
        color: var(--color-fondo);
    }

    .nombre-funcion {
        width: 100%;
    }

    /* Estilos para el contenedor de funciones en móviles */
    .home-funciones-wrapper {
        flex-direction: column;
        width: 100%; 
        color: var(--color-principal);
    }

    .home-funciones-wrapper p{
        text-align: center;
        font-size: 14px;
    }

    .no-eventos {
        margin-left: 15px;
        margin-right: 15px;
        color: var(--color-principal);
    }

    .proxima-funcion, .funciones {
        width: 100%;
        height: 10rem;
        padding: 2rem;
        border-radius: 60px 0 0 60px;       
    }

    .proxima-funcion tr, .funciones tr {
        display: flex;
        flex-direction: row;
        width: 100%;
    }

    .funciones {
        display: flex;
        align-items: center;
        justify-content: space-evenly;
        margin: 1rem;
        padding-right: 15%;
        flex-direction: row;
        border: 3px solid var(--color-interactivo);
    }

    .home-funciones-wrapper .proxima-funcion:last-child {
        border: 3px solid var(--color-principal);
    }

    .funciones h3 {
        width: 100%;
        text-align: start;
    }

    .home-title {
        margin-bottom: 0;
    }

    /* Estilos para la sección de agenda en móviles */
    .agenda-section {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        margin-right: -5%;
    }

    .agenda-section h1 {
        color: var(--color-principal);
        margin: 1rem;
        align-self: flex-start;
    }

    /* Estilos para la sección de novedades en móviles */
    .novedades-section h1 {
        color: var(--color-principal);
        margin: 1rem;
    }

    


    .icon-contenedor { 
        display: flex; 
        align-items: center;
    }

    .novedades-section p {
        color: #4c6a2a;
        margin: 1rem;
        text-align: right;
        font-weight: bold;
    }

    /* Estilos para las redes sociales en móviles */
    .redes a {
        color: #4c6a2a;
        font-size: 3rem;
        margin: 0 1rem;
    }

    .redes {
        display: flex;
        justify-content: center;
        gap: 1rem;
        margin: 1rem;
    }

    /* Estilos para la tabla de novedades en móviles */
    .tabla-novedades img {
        height: 20rem;
        width: 25rem;
        padding: 0;
    }

    .tabla-novedades td {
        background-color: #8c4a2f;
        color: #d2b48c;
        text-align: left;
        margin: 0;
    }

    .tabla-novedades {
        border-radius: 10px;
        margin-left: 10%;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
        border-spacing: 0;
        border: 0px;
    }

    /* Estilos para el carrusel de novedades en móviles */
    .container-novedades {
        height: 300px; 
    }

    .swiper-wrapper {
        height: 240px; 
        width: 100%; /* Ancho del contenedor */
    }

    .swiper-slide {
        width: 240px; /* Ancho fijo */
        height: 240px; /* Alto fijo */
        min-width: 240px; /* Evita que el ancho sea menor */
        min-height: 240px; /* Evita que el alto sea menor */
        max-width: 240px; /* Evita que el ancho sea mayor */
        max-height: 240px; /* Evita que el alto sea mayor */
    }

    .card-link {
        width: 100%; /* Ocupa todo el ancho del slide */
        height: 100%; /* Ocupa todo el alto del slide */
        min-width: 0; /* Permite que el ancho se ajuste al contenedor */
        min-height: 0; /* Permite que el alto se ajuste al contenedor */
        max-width: 100%; /* Limita el ancho al contenedor */
        max-height: 100%; /* Limita el alto al contenedor */
    }

    .card-img {
        width: 100%; /* Ocupa todo el ancho del card-link */
        height: 50%; /* Altura relativa al card-link */
        object-fit: cover; /* Mantiene la relación de aspecto */
    }

    .card-text {
        padding-top: 12px;
        max-height: 50%; /* La mitad del contenedor */
        overflow: hidden; /* Evita que el texto lo deforme */
        text-overflow: ellipsis; /* Agrega puntos suspensivos si es necesario */
        display: flex;
        flex-direction: column;
    }

    .card-title {
        font-size: 18px;
        margin-left: 15px;
        margin-bottom: 5px;
        color: var(--color-fondo);
        white-space: nowrap; /* Evita que el texto haga un salto de línea */
        overflow: hidden; /* Oculta el texto que se desborda */
        text-overflow: ellipsis; /* Agrega los puntos suspensivos (...) */
        max-width: 90%; /* Define un ancho máximo para que el truncamiento funcione */
    }

    .card-text .date {
        font-size: 12px;
        text-align: left;
        color: var(--color-fondo);
        padding: 0;
        margin-top: 0;
        margin-bottom: 5px;
        white-space: nowrap; /* Evita que el texto haga un salto de línea */
        overflow: hidden; /* Oculta el texto que se desborda */
        text-overflow: ellipsis; /* Agrega los puntos suspensivos (...) */
        max-width: 90%; /* Define un ancho máximo para que el truncamiento funcione */
    }

    .card-description {
        overflow: hidden; /* Oculta el contenido que se desborda */
        display: -webkit-box; /* Crea un contenedor flexible */
        -webkit-line-clamp: 2; /* Limita el texto a 2 líneas */
        line-clamp: 2;
        -webkit-box-orient: vertical; /* Orientación vertical del texto */
        text-overflow: ellipsis; /* Agrega puntos suspensivos (...) */
        max-width: 90%; /* Restringe el ancho al 90% del contenedor */
        word-break: break-word; /* Evita desbordes por palabras largas */
    }

    .card-text .card-description {
        margin-top: 0;
        font-size: 14px;
        color: var(--color-fondo);
        text-align: left;
    }

    .home-redirrecion p{
        font-size: 14px;
    }
}