.contenedor-main > img {
    width: 300px;
}

.contenedor-carrusel-parrafo-especificaciones {
    display: flex;
    flex-direction: column;
    width: 96%;
    padding: 8px;
    background: var( --gris-ficha );
    background-color: var( --gris-oscuro-contenedores-principales );
    border-radius: var( --border-radius ) var( --border-radius ) 0 0;
    gap: 16px;
    
    & > .contenedor-carrusel {
        position: relative;
        width: 100%;

        & > .carrusel {
            overflow-x: auto;
            &::-webkit-scrollbar { display: none; }
            
            & img {
                flex: 0 0 100%;
                scroll-snap-align: center;
                height: 50vh;
                width: auto;
                object-fit: contain;
            }
        }
        
        .btn-carrusel {
            position: absolute;
            top: 45%;
            background: rgba( 0, 0, 0, 0.5 );
            color: white;
            padding: 24px 24px;
            &.next { right: 0px; }
        }

    }

    & > .contenedor-parrafo-especificaciones {
        display: flex;
        flex-direction: row;
        overflow: hidden;
        width: 100%;
        background-color: var( --color-parrafo );

        & > .parrafo {
            display: block;
            width: 75%;
            color: black;
            padding: 16px;
            border-style: solid;
            border-color: black;
            border-width: 0 2px 0 0;
            text-align: center;
            align-items: center;
            white-space: pre-line;
            border: 2px solid black;
        }

        & > .especificaciones {
            border-style: solid;
            border-color: black;
            border-width: 2px 2px 2px 0;
            display: flex;
            flex-direction: column;
            text-align: center;
            justify-content: center;
            flex: 1;
            padding: 8px;
        }

        & .titulo-juego {
            /* background: linear-gradient(120deg, #ff3b3b 0%, #ffeb3b 100%);
            background-repeat: no-repeat;
            background-size: 100% 40%;
            background-position: 0 85%; */
            font-weight: bold;
            /* padding: 0 4px; */
        }
    }
}

.modal {
    display: flex;
    position: fixed;
    z-index: 9999;
    top: 0; left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9);
    justify-content: center;
    align-items: center;
    
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.modal.activo {
    opacity: 1;
    pointer-events: auto;
}

.contenido-modal {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain; /* La imagen se ajusta sola sin cortarse ni generar scroll */
    cursor: zoom-out;
    
    transform: scale(0.95);
    transition: transform 0.3s ease;
}

.modal.activo .contenido-modal {
    transform: scale(1);
}