
*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:#05050b;
font-family:Arial,sans-serif;
color:#fff;
padding:25px;
overflow-x:hidden;
}

.header{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 30px;
border-radius:30px;
background:rgba(255,255,255,.03);
backdrop-filter:blur(18px);
border:1px solid rgba(255,255,255,.08);
}

.logo-area{
display:flex;
align-items:center;
gap:20px;
}

.logo{
width:70px;
height:70px;
}

.menu{
display:flex;
gap:30px;
}

.menu a{
color:#fff;
text-decoration:none;
font-weight:bold;
}

.live-btn{
padding:16px 28px;
border:none;
border-radius:18px;
background:linear-gradient(90deg,#8b5cf6,#ff7a00);
color:#fff;
font-weight:bold;
}

.hero{

    min-height:calc(100vh - 120px);

    display:grid;

    grid-template-columns:
    1fr 1fr 1fr;

    align-items:center;

    padding:20px 60px 180px;

    margin-top:10px;

    border-radius:30px;

    overflow:hidden;

    position:relative;
}

.overlay{
position:absolute;
inset:0;
background-size:cover;
background-position:center;
opacity:.4;
}

.hero-left,
.hero-center,
.hero-right{
position:relative;
z-index:2;
}

.badge{
display:inline-block;
padding:12px 24px;
border-radius:100px;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
}

.hero-left h1{
font-size:90px;
line-height:.9;
margin:30px 0;
}

.hero-left h1 span{
background:linear-gradient(90deg,#8b5cf6,#ff7a00);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.hero-left p{
font-size:26px;
line-height:1.5;
max-width:600px;
}

.buttons{
display:flex;
gap:20px;
margin-top:40px;
}

.primary,
.secondary{
padding:20px 38px;
border:none;
border-radius:18px;
color:#fff;
font-weight:bold;
}

.primary{
background:linear-gradient(90deg,#8b5cf6,#ff7a00);
}

.secondary{
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
}
.host-ring{

    width:380px;
    height:380px;

    border-radius:50%;

    background:
    linear-gradient(
        45deg,
        #7c3aed,
        #f97316
    );

    padding:8px;

    overflow:hidden;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:auto;

    animation:pulse 2s infinite;

    box-shadow:
    0 0 20px rgba(124,58,237,.5),
    0 0 50px rgba(249,115,22,.3);
}

.host-image{

    width:100%;
    height:100%;

    object-fit:cover;

    border-radius:50%;

    border:6px solid #050816;

    display:block;
}

@keyframes pulse{

    0%{

        transform:scale(1);

        box-shadow:
        0 0 20px rgba(124,58,237,.5),
        0 0 50px rgba(249,115,22,.3);
    }

    50%{

        transform:scale(1.03);

        box-shadow:
        0 0 40px rgba(124,58,237,.9),
        0 0 80px rgba(249,115,22,.6);
    }

    100%{

        transform:scale(1);

        box-shadow:
        0 0 20px rgba(124,58,237,.5),
        0 0 50px rgba(249,115,22,.3);
    }
}
@keyframes pulse{
50%{
transform:scale(1.03);
}
}

.host-info{
margin-top:25px;
}

.host-info h2{
font-size:52px;
margin:10px 0;
}

.radio-card{
padding:35px;
border-radius:34px;
background:rgba(255,255,255,.04);
backdrop-filter:blur(20px);
border:1px solid rgba(255,255,255,.08);
}

.radio-card img{
width:130px;
height:130px;
margin:25px 0;
}

.status{
display:inline-block;
padding:10px 20px;
border-radius:100px;
background:#00aa44;
}

.player-floating{

    position:fixed;

    bottom:15px;

    left:50%;

    transform:translateX(-50%);

    width:700px;

    max-width:92%;

    height:120px;

    background:
    rgba(3,7,18,.92);

    backdrop-filter:blur(15px);

    border-radius:35px;

    padding:15px 25px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:25px;

    z-index:999;

    box-shadow:
    0 0 40px rgba(124,58,237,.3);
}

.play-main{
width:150px;
height:150px;
border-radius:50%;
border:none;
font-size:54px;
color:#fff;
background:linear-gradient(145deg,#8b5cf6,#ff7a00);
box-shadow:
0 0 60px rgba(255,122,0,.4),
0 0 100px rgba(139,92,246,.25);
}

.side-btn{
width:80px;
height:80px;
border:none;
border-radius:50%;
background:#111827;
color:#fff;
font-size:30px;
}

.equalizer{
display:flex;
align-items:flex-end;
gap:8px;
height:60px;
}

.equalizer span{
width:8px;
background:linear-gradient(to top,#8b5cf6,#ff7a00);
border-radius:10px;
animation:bars 1s infinite ease-in-out;
}

.equalizer span:nth-child(2){animation-delay:.2s}
.equalizer span:nth-child(3){animation-delay:.4s}
.equalizer span:nth-child(4){animation-delay:.6s}
.equalizer span:nth-child(5){animation-delay:.8s}

@keyframes bars{
0%,100%{height:12px}
50%{height:60px}
}

@media(max-width:900px){

    .hero{

        grid-template-columns:1fr;

        text-align:center;

        padding:
        20px
        20px
        220px;
    }

    .hero-left h1{

        font-size:72px;

        line-height:.9;
    }

    .host-ring{

        width:280px;
        height:280px;

        margin:30px auto;
    }

    .hero-right{

        margin-top:20px;
    }

    .radio-card{

        width:100%;
    }

    /* PLAYER MOBILE */

    .player-floating{

        width:94%;

        height:85px;

        padding:10px 15px;

        border-radius:25px;

        gap:12px;

        bottom:10px;
    }

    .play-main{

        width:58px;
        height:58px;

        font-size:24px;
    }

    .side-btn{

        width:42px;
        height:42px;

        font-size:18px;
    }

    .equalizer{

        transform:scale(.7);
    }

    #volumeControl{

        width:80px;
    }

    .program-name{

        font-size:60px;
    }

    .locutor-name{

        font-size:24px;
    }
}

.social-top{
display:flex;
justify-content:center;
gap:20px;
padding:14px;
background:#091122;
border-bottom:1px solid rgba(255,255,255,.08);
}

.social-top a{
color:#fff;
text-decoration:none;
padding:10px 18px;
border-radius:12px;
background:rgba(255,255,255,.05);
transition:.3s;
}

.social-top a:hover{
transform:translateY(-3px);
background:linear-gradient(90deg,#8b5cf6,#ff7a00);
}
.locutores-section{

    padding:80px 5%;

    background:#050816;
}

.titulo-section{

    font-size:40px;

    margin-bottom:40px;

    color:white;
}

.locutores-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:25px;
}

.locutor-card{

    background:#111827;

    border-radius:20px;

    overflow:hidden;

    transition:.3s;
}

.locutor-card:hover{

    transform:translateY(-5px);
}

.locutor-card img{

    width:100%;

    height:300px;

    object-fit:cover;
}

.locutor-info{

    padding:20px;

    color:white;
}

.locutor-info h3{

    margin-top:0;
}

.locutor-info span{

    display:inline-block;

    margin-top:10px;

    padding:8px 15px;

    background:#7c3aed;

    border-radius:30px;

    font-size:14px;
}
.volume-box{

    display:flex;

    align-items:center;

    gap:10px;
}

.volume-icon{

    font-size:20px;

    color:white;
}

#volumeControl{

    width:120px;

    cursor:pointer;
}
.social-player{

    display:flex;

    align-items:center;

    gap:25px;

    margin-top:30px;

    flex-wrap:wrap;
}

/* PLAY */

.play-live{

    display:flex;

    align-items:center;

    gap:15px;

    background:
    linear-gradient(
        45deg,
        #7c3aed,
        #f97316
    );

    border:none;

    padding:16px 30px;

    border-radius:60px;

    cursor:pointer;

    color:white;

    font-weight:bold;

    font-size:16px;

    box-shadow:
    0 0 25px rgba(124,58,237,.5);

    transition:.3s;
}

.play-live:hover{

    transform:scale(1.05);
}

.play-live img{

    width:32px;
}

/* REDES */

.social-icons{

    display:flex;

    align-items:center;

    gap:15px;
}

.social-icons a{

    width:60px;
    height:60px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#111827;

    transition:.3s;

    box-shadow:
    0 0 20px rgba(124,58,237,.2);
}

.social-icons a:hover{

    transform:translateY(-5px);

    box-shadow:
    0 0 30px rgba(124,58,237,.6);
}

.social-icons img{

    width:34px;
}
/* MENU MOBILE */

.menu-mobile-btn{

    display:none;

    background:none;

    border:none;

    color:white;

    font-size:35px;

    cursor:pointer;
}

/* RESPONSIVO */

@media(max-width:900px){

    .header{

        padding:20px;

        flex-direction:column;

        gap:20px;
    }

    .menu-mobile-btn{

        display:block;
    }

    .menu{

        display:none;

        width:100%;

        flex-direction:column;

        gap:15px;

        background:#111827;

        padding:20px;

        border-radius:20px;
    }

    .menu.active{

        display:flex;
    }

    .hero{

        grid-template-columns:1fr;

        padding:30px 20px;

        text-align:center;
    }

    .hero-left h1{

        font-size:70px;

        line-height:.9;
    }

    .host-ring{

        width:280px;
        height:280px;

        margin:30px auto;
    }

    .hero-right{

        margin-top:30px;
    }

    .radio-card{

        width:100%;
    }

}
.page-banner{

    padding:80px 30px;

    text-align:center;
}

.page-banner h1{

    font-size:60px;

    margin-bottom:15px;
}

.programacao-page,
.equipe-page,
.contato-page{

    padding:40px;

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(300px,1fr));

    gap:30px;
}

.programa-page-card,
.locutor-page-card,
.contato-card{

    background:#111827;

    border-radius:25px;

    overflow:hidden;

    padding:25px;

    color:white;
}

.programa-page-card img,
.locutor-page-card img{

    width:100%;

    height:250px;

    object-fit:cover;

    border-radius:20px;

    margin-bottom:20px;
}