 :root {
            --brand-red: #C22626;
            --brand-dark: #1A1A1A;
            --brand-white: #ffffff;
            --text-dark: #222;
            --text-light: #777;
            --container: 1200px;
            --transition: .3s ease;
        }


*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;


}

  /* ============================
           REPRODUCTOR CON ECUALIZADOR
        ============================= */
        .player {
            margin: 40px auto;
            background: var(--brand-dark);
            padding: 20px;
            max-width: 500px;
            border-radius: 12px;
            text-align: center;
            color: white;
            box-shadow: 0 3px 10px rgba(0,0,0,0.3);
        }

        .equalizer {
            display: flex;
            justify-content: center;
            align-items: flex-end;
            height: 40px;
            gap: 4px;
            margin-top: 10px;
        }

        .bar {
            width: 6px;
            background: var(--brand-red);
            animation: bounce 0.9s infinite ease-in-out alternate;
        }

        .bar:nth-child(2) { animation-delay: .2s; }
        .bar:nth-child(3) { animation-delay: .4s; }
        .bar:nth-child(4) { animation-delay: .6s; }
        .bar:nth-child(5) { animation-delay: .8s; }

        @keyframes bounce {
            from { height: 10px; }
            to   { height: 40px; }
        }
        
        
        /* ===== PLAYER FLOTANTE ===== */
#player{
    position:fixed;
    bottom:20px;
    right:20px;
    background:#000;
    color:#fff;
    padding:12px;
    border-radius:10px;
    box-shadow:0 0 15px rgba(0,0,0,0.6);
    display:none;
    z-index:1000;
}

#player h4{
    margin-bottom:6px;
    font-size:14px;
}

#player button{
    background:#e60000;
    border:none;
    color:#fff;
    padding:6px 12px;
    margin-top:6px;
    cursor:pointer;
    border-radius:4px;
    font-size:13px;
}
/*=========================
    SECTION VIRADIO
==========================*/

.viradio-section{

    width:100%;
    min-height:700px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    background:#0b3f97;

    background-image:
    radial-gradient(circle at center,
    rgba(255,255,255,.06) 1px,
    transparent 2px),

    repeating-radial-gradient(circle at 25% 40%,
    rgba(0,123,255,.15),
    rgba(0,123,255,.15) 3px,
    transparent 3px,
    transparent 22px);

    overflow:hidden;

}

/*=========================
    LADO IZQUIERDO
==========================*/

.viradio-left{

    flex:1;
    display:flex;
    justify-content:center;
    align-items:flex-end;

    min-height:700px;

}

.church-image{

    width:90%;
    height:650px;

    background:url("iglesia.jpg") center center;

    background-size:cover;
    background-repeat:no-repeat;

    border-radius:0 0 15px 15px;

    box-shadow:0 20px 40px rgba(0,0,0,.35);

}


/*=========================
    LADO DERECHO
==========================*/

.viradio-right{

    flex:1.2;

    padding:70px;

    color:#fff;

}

.viradio-right h2{

    font-size:62px;

    text-transform:uppercase;

    letter-spacing:3px;

    margin-bottom:10px;

}

.subtitle{

    font-size:18px;

    line-height:30px;

    margin-bottom:50px;

    color:#f3f3f3;

}


/*=========================
    GRID
==========================*/

.program-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:0;

}

.card{

    min-height:230px;

    padding:30px;

    display:flex;

    flex-direction:column;

    justify-content:space-between;

}

.card h3{

    font-size:55px;

    font-weight:300;

    color:#fff;

    text-transform:uppercase;

    line-height:1.1;

}

.card a{

    align-self:flex-end;

    text-decoration:none;

    background:#fff;

    color:#003b8f;

    font-weight:bold;

    padding:15px 35px;

    border-radius:40px;

    transition:.3s;

}

.card a:hover{

    background:#003b8f;

    color:#fff;

}

/* Colores */

.card1{

    background:#f8b233;

}

.card2{

    background:#5da0d4;

}

.card3{

    background:#ff3434;

}

.card4{

    background:#2d8b2f;

}


/*=========================
      RESPONSIVE
==========================*/

@media(max-width:1200px){

.viradio-right h2{

    font-size:48px;

}

.card h3{

    font-size:42px;

}

}


@media(max-width:992px){

.viradio-section{

    flex-direction:column;

}

.viradio-left{

    width:100%;
    min-height:auto;
    padding-top:40px;

}

.church-image{

    width:90%;
    height:500px;

}

.viradio-right{

    width:100%;
    padding:40px;

}

}


@media(max-width:768px){

.program-grid{

    grid-template-columns:1fr;

}

.viradio-right h2{

    font-size:38px;

}

.card{

    min-height:190px;

}

.card h3{

    font-size:34px;

}

.subtitle{

    font-size:16px;

    line-height:28px;

}

}


@media(max-width:480px){

.church-image{

    height:500px;

}

.viradio-right{

    padding:25px;

}

.viradio-right h2{

    font-size:30px;

}

.card h3{

    font-size:28px;

}

.card a{

    padding:12px 25px;

}

}