.foto_rf28 {
    width: 320px;
    max-width: 100%;
}

.grilla_rf28 {
    display: flex;
    gap: 10px 0;
    align-items: center;
}

.parte_imagen_rf28 {
    width: 50%;
    display: flex;
    position: relative;

    justify-content: center;
}

.parte_texto_rf28 {
    padding: 0px 12px;
    padding-right: 20px;
    width: 50%;
    display: flex;

    flex-direction: column;
    justify-content: center;
}

.bloque_negro {
    background-color: black;
    padding: 80px 10px;
}

.bloque_blanco {
    background-color: #ffffff;
    padding: 18px 10px;
}

.titulo_rf28 {
    color: rgb(0, 0, 0);
    padding: 0;
    margin: 0;
    margin-bottom: 18px;
    line-height: 1;
    font-size: 25px;

    font-family: 'OpticSans Bold';
}

.texto_rf28 {
    color: rgb(0, 0, 0);
    padding: 0;
    margin: 0;
    margin-bottom: 20px;
    line-height: 1.2;
    font-size: 19px;
    font-weight: 400;
    font-family: 'OpticSans';

}

.pulso_rojo {
    cursor: pointer;
    width: 28.8px;
    height: 28.8px;
    border-radius: 50%;
    background: #9d3333;

    box-shadow: 0 0 0 0 rgba(200, 0, 0, 0.5);
}

.boton_siguiente_rf28 {

    width: 37px;
}

.pulso_rojo.activo {
    animation: pulso_animate 1.2s infinite;
    background: #db0606;
}

.pulso_1 {
    position: absolute;
    top: calc(-5%);
    right: calc(50% - 16px);
}

.pulso_2 {
    position: absolute;
    top: calc(15%);
    right: calc(50% - 16px);
}

.pulso_3 {
    position: absolute;
    top: calc(40%);
    right: calc(50% - 16px);
}

.pulso_4 {
    position: absolute;
    top: calc(91%);
    right: calc(50% - 16px);
}

.pulso_rf_1 {
    position: absolute;
    top: calc(7%);
    right: calc(50% - 16px);
}

.pulso_rf_2 {
    position: absolute;
    top: calc(28% - 10px);
    right: calc(50% - 16px);
}

.pulso_rf_3 {
    position: absolute;
    top: calc(55% - 17px);
    left: calc(50% - 13px);
}

.pulso_rf_4 {
    position: absolute;
    top: calc(82% - 8px);
    right: calc(50% - 15px);
}

.pulso_rf_5 {
    position: absolute;
    top: calc(90%);
    right: calc(50% - 16px);
}





@keyframes pulso_animate {
    100% {
        box-shadow: 0 0 0 43.2px #0000;
    }
}

.boto_circular {


    cursor: pointer;

    border: none;
}

.caja_botones {
    display: flex;
    gap: 10px;
}

.ocultar {
    display: none;
}

.minimo_altura {
    min-height: 116px;
}

@media only screen and (max-width: 800px) {
    .parte_imagen_rf28 {
        width: 100%;
    }

    .parte_texto_rf28 {
        width: 100%;
    }

    .foto_rf28 {
        width: 228px;
    }

    .grilla_rf28 {
        flex-direction: column;
        gap: 20px 0;
    }
}