@font-face {
    font-family: Lora-Variable;
    src: url("../fonts/Lora-VariableFont.ttf");
}

@font-face {
    font-family: Poppins;
    src: url("../fonts/Poppins-Regular.ttf");
}

.img-hover-zoom {
    transition: transform 0.3s ease;
    /* Animación suave */
}

.img-hover-zoom:hover {
    transform: scale(5.0);
    /* Aumenta el tamaño de la imagen al 120% */
}

.icon-3d {
    transition: all 0.4s ease;
    transform: perspective(1000px) translateZ(0);
    display: inline-block;
    padding: 8px;
    border-radius: 50%;
}

.icon-3d:hover {
    transform: perspective(1000px) translateZ(20px);
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
    background: linear-gradient(145deg, #ffffff, #f0f0f0);
}

/* Colores personalizados al hacer hover */
.bi-facebook:hover {
    color: #1877f2 !important;
}

.bi-instagram:hover {
    color: #f46c85 !important;
}

.bi-youtube:hover {
    color: #ff0000 !important;
}

.bi-tiktok:hover {
    color: #f9f6f6 !important;
}

/* Estilos para elementos del menú */
summary {
    list-style: none;
    /* transition es utilizado para realziar una transición suave entre el hover y el mouseout del cursor */
    transition: background 1s;
}

summary:hover {
    background: rgba(48, 48, 48, 0.9);
}



/* Fotogramas utilizados para la animación de transición de los elementos al interior de details  */
@keyframes invisiblyGrowFontSize {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

/* Estilos para etiquetas de detalles. */

.detailsStyles {
    border-radius: 8px;
    /* background-color: #000000; */
    background: rgba(228, 222, 156, 0.575);
    /* background: rgba(162, 89, 89, 0.575); */
    width: 90%;
}

details[open] .card {
    animation-name: invisiblyGrowFontSize, fadeIn;
    animation-duration: 1000ms;
    animation-delay: 0ms, 0ms;
}

.summaryStyles {
    /* Estilos para el titulo del elemento details */
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    border-radius: 8px;
    font-size: 3rem;
    font-family: "Poppins";
    text-shadow: 0px 0px 3px #ffffff;
    background: rgba(0, 0, 0, 0.80);

}

/* Estilo para añadir lineas intermedias a los titulos del summary. */
.summaryStyles:after,
.summaryStyles:before {
    content: '';
    width: 50%;
    height: 5px;
    border-radius: 2px;
    background: rgb(255, 255, 255);
    margin: 0 10px;
    /* box-shadow: 0px 0px 8px 0.1px #ffffff; */
}



details {
    max-width: 100%;
    overflow: hidden;

    /* Animación de apertura para details. */
    inline-size: 50ch;

    @media (prefers-reduced-motion: no-preference) {
        interpolate-size: allow-keywords;
    }

    &::details-content {
        opacity: 0;
        block-size: 0;
        overflow-y: clip;
        transition: content-visibility 1s allow-discrete,
            opacity 1s,
            block-size 1s;
    }

    &[open]::details-content {
        opacity: 1;
        block-size: auto;
    }

}

/* Animación de transición para elementos con la etiqueta div y clase content */
div.content {
    transition: max-height 400ms ease-out, border 0ms 400ms linear;
}

.card-text {
    font-family: "Poppins";
    font-size: 2rem;
    opacity: 1;
    color: #f0f0f0;
    text-shadow: 0px 0px 4px #f21818;
    border-left: 3px solid #ff0000;
    /* border-left: 5px solid rgb(238, 255, 0); */
}



.card-styles {
    border-color: #b53c3ccb;
    background: rgba(0, 0, 0, 0.801);
    /* transition es utilizado para realizar una transición suave entre el hover y el mouseout del cursor */
    transition: box-shadow 400ms ease-out, border 0ms 400ms linear;
}

/* Animación de hover para las tarjetas. */
.card:hover {
    box-shadow: 0px 0px 12px 4px #c53939;
}