*{margin:0;padding:0;box-sizing:border-box;}
:root{
    --azul:#004a90;
    --azul-dark:#06142a;
    --azul-light:#e8f0fb;
    --amarelo:#FFC72C;
    --verde:#009c3b;
    --branco:#ffffff;
    --cinza-bg:#f2f5f9;
    --cinza-border:#dde4ef;
    --texto:#0b1f3f;
    --texto-suave:#4a5d7a;
    --verde-whats:#25D366;
}
html{scroll-behavior:smooth;}
body{font-family:'Montserrat',sans-serif;background:var(--cinza-bg);overflow-x:hidden;min-height:100vh;}
@media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
}
:focus-visible{outline:3px solid var(--amarelo);outline-offset:2px;border-radius:4px;}

/* ─── SKIP LINK (acessibilidade) ─────────────────────────────── */
.skip-link{
    position:absolute;left:-9999px;top:0;z-index:1000;
    background:var(--amarelo);color:#06142a;font-weight:900;
    padding:12px 20px;border-radius:0 0 12px 0;text-decoration:none;
}
.skip-link:focus{left:0;}

/* ─── HEADER ─────────────────────────────────────────────────── */
.site-hero{
    position:sticky;top:0;left:0;width:100%;z-index:100;
    background:var(--azul);
    border-bottom:3px solid var(--amarelo);
    padding:14px 24px;
    transition:padding .3s ease;
}
.site-hero.shrink{padding:3px 24px;}
.hero-topbar{
    width:min(1280px,100%);margin:0 auto;
    display:grid;grid-template-columns:auto 1fr auto auto;
    align-items:center;gap:16px;
}
.hero-logo-main{max-width:120px;height:auto;display:block;transition:max-width .3s ease;}
.site-hero.shrink .hero-logo-main{max-width:68px;}

/* botão hambúrguer — só aparece em telas estreitas */
.menu-toggle{
    display:none;flex-direction:column;justify-content:center;gap:5px;
    width:38px;height:38px;border:1px solid rgba(255,255,255,.22);
    border-radius:11px;background:rgba(255,255,255,.08);
    justify-self:end;order:3;
}
.menu-toggle span{display:block;width:18px;height:2px;background:#fff;margin:0 auto;border-radius:2px;transition:.25s ease;}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle.open span:nth-child(2){opacity:0;}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.hero-nav{
    display:flex;justify-self:center;align-items:center;
    gap:22px;flex-wrap:wrap;
    background:rgba(255,255,255,.12);
    padding:9px 22px;border-radius:999px;
}
.hero-nav a{
    color:#fff;text-decoration:none;font-size:13px;font-weight:700;
    letter-spacing:.08em;transition:opacity .2s,transform .2s;
}
.hero-nav a:hover{opacity:.82;transform:translateY(-1px);}
.hero-social{display:flex;align-items:center;gap:8px;justify-self:end;}
.hero-social a{
    display:flex;align-items:center;justify-content:center;
    width:36px;height:36px;border-radius:50%;
    background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);
    transition:.2s ease;text-decoration:none;
}
.site-hero.shrink .hero-social a{width:30px;height:30px;}
.hero-social a:hover{background:rgba(255,255,255,.28);transform:translateY(-2px);}
.hero-social svg{width:17px;height:17px;fill:#fff;}
.site-hero.shrink .hero-social svg{width:14px;height:14px;}
.hero-rds{
    display:flex;align-items:center;gap:10px;color:#fff;
    justify-self:end;min-width:230px;max-width:290px;
}
.hero-rds-cover{
    width:52px;height:52px;border-radius:12px;object-fit:cover;
    border:2px solid rgba(255,255,255,.28);
    box-shadow:0 4px 16px rgba(0,0,0,.22);
    transition:width .3s ease,height .3s ease;
    flex-shrink:0;background:#003a73;
}
.site-hero.shrink .hero-rds-cover{width:32px;height:32px;border-radius:8px;}
.hero-rds-text{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;flex:1;}
.hero-rds-label{font-size:9px;opacity:.7;letter-spacing:.18em;text-transform:uppercase;}
.hero-rds-track{
    font-size:12px;font-weight:800;line-height:1.2;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px;
}
.site-hero.shrink .hero-rds-track{font-size:11px;}
@media(max-width:940px){
    .hero-topbar{grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;}
    .hero-nav{grid-column:2;grid-row:1;}
    .hero-social{grid-column:3;grid-row:1;}
    .hero-rds{grid-column:1/-1;grid-row:2;justify-self:center;width:100%;justify-content:center;min-width:0;}
}
@media(max-width:600px){
    .hero-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;position:relative;}
    .hero-logo-main{order:1;}
    .menu-toggle{display:flex;order:2;}
    .hero-social{order:3;justify-content:flex-end;}
    .hero-rds{order:4;justify-content:center;width:100%;}
    .hero-nav{
        order:5;position:absolute;top:calc(100% + 8px);left:0;right:0;
        display:none;flex-direction:column;align-items:stretch;gap:2px;
        background:var(--ink-nav,var(--azul-dark));border-radius:16px;
        padding:10px;box-shadow:0 18px 40px rgba(0,0,0,.35);
    }
    .hero-nav.open{display:flex;}
    .hero-nav a{padding:12px 14px;border-radius:10px;text-align:center;}
    .hero-nav a:hover{background:rgba(255,255,255,.1);transform:none;}
}

/* ─── PLAYER ─────────────────────────────────────────────────── */
.player{
    width:calc(100% - 30px);max-width:1280px;min-height:420px;
    margin:36px auto 50px;border-radius:32px;overflow:hidden;
    position:relative;display:flex;align-items:center;gap:45px;padding:45px;
    isolation:isolate;
    box-shadow:0 20px 60px rgba(0,74,144,.18),0 0 0 1px rgba(0,74,144,.08);
}
.player::before{
    content:"";position:absolute;inset:0;
    background-image:var(--bg);background-size:cover;background-position:center;
    filter:blur(40px) brightness(.42) saturate(1.55);
    transform:scale(1.2);z-index:-3;transition:background-image 1s ease;
}
.player::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.28) 50%,rgba(0,0,0,.48) 100%);
    backdrop-filter:blur(6px);z-index:-2;
}
.player-cover-wrap{
    width:320px;min-width:320px;height:320px;border-radius:28px;
    overflow:hidden;position:relative;z-index:2;
    box-shadow:0 25px 60px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.10);
    background:#003a73;transition:transform .4s ease,box-shadow .4s ease;
}
.player-cover-wrap:hover{
    transform:scale(1.03);
    box-shadow:0 30px 70px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.14);
}
.player-cover{
    width:100%;height:100%;object-fit:cover;object-position:center;
    display:block;
}
.player-cover.cover-fade{animation:capaFade .5s ease;}
@keyframes capaFade{from{opacity:0;transform:scale(1.04);}to{opacity:1;transform:scale(1);}}
.player-cover-ring{display:none;}
.player.is-playing .player-cover-wrap{animation:capaGlow 2.4s ease-in-out infinite;}
@keyframes capaGlow{
    0%,100%{box-shadow:0 25px 60px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.10),0 0 0 0 rgba(255,199,44,0);}
    50%{box-shadow:0 25px 60px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.10),0 0 32px 6px rgba(255,199,44,.35);}
}
.info{flex:1;position:relative;z-index:2;}
.live{
    display:inline-flex;align-items:center;gap:8px;
    background:rgba(255,60,60,.14);border:1px solid rgba(255,60,60,.3);
    padding:7px 14px;border-radius:100px;color:#ff6868;
    font-size:10px;font-weight:800;letter-spacing:1.5px;margin-bottom:20px;
    backdrop-filter:blur(8px);
}
.dot{width:8px;height:8px;background:#ff3b3b;border-radius:50%;animation:pulse 1.2s infinite;}
@keyframes pulse{0%{transform:scale(1);opacity:1;}50%{transform:scale(1.6);opacity:.6;}100%{transform:scale(1);opacity:1;}}
.artist{font-size:52px;line-height:1.05;font-weight:900;color:#fff;margin-bottom:10px;text-shadow:0 4px 20px rgba(0,0,0,.4);letter-spacing:-.5px;}
.song{font-size:20px;color:rgba(255,255,255,.78);margin-bottom:6px;line-height:1.4;font-weight:400;}
.album{font-size:13px;color:rgba(255,255,255,.5);margin-bottom:29px;font-weight:500;letter-spacing:.02em;}
.album:empty{display:none;}
.info.sem-album .song{margin-bottom:35px;}
.controls{display:flex;align-items:center;gap:22px;}
#play{
    width:88px;height:88px;border-radius:50%;border:none;
    background:linear-gradient(135deg,#FFD54A,#FFC107);color:#00152d;
    font-size:28px;font-weight:900;cursor:pointer;transition:.25s ease;
    box-shadow:0 8px 25px rgba(255,193,7,.45),0 0 0 4px rgba(255,193,7,.12);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
#play svg{width:30px;height:30px;fill:currentColor;}
#play:hover{transform:scale(1.08);box-shadow:0 12px 35px rgba(255,193,7,.55),0 0 0 6px rgba(255,193,7,.18);}
#play:active{transform:scale(.96);}
.volume-wrap{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);padding:10px 16px;border-radius:100px;backdrop-filter:blur(8px);}
.volume-icon{font-size:12px;color:rgba(255,255,255,.8);font-weight:900;}
#volume{width:140px;accent-color:#FFC107;cursor:pointer;height:4px;}

/* ─── SEÇÃO DE AUDIÊNCIA / RANKING (revitalizada) ────────────────── */
.rank-section{width:calc(100% - 30px);max-width:1280px;margin:0 auto 60px;}
.rank-shell{
    position:relative;overflow:hidden;border-radius:32px;
    padding:52px 44px;isolation:isolate;
    background:
        radial-gradient(circle at 12% 12%,rgba(255,199,44,.16),transparent 32%),
        radial-gradient(circle at 88% 20%,rgba(0,156,59,.14),transparent 30%),
        linear-gradient(155deg,#031733 0%,#04305e 46%,#00519c 100%);
    box-shadow:0 26px 70px rgba(0,25,60,.4);
    color:#fff;
}
.rank-glow{
    position:absolute;inset:-40% -10% auto auto;width:60%;aspect-ratio:1;z-index:-1;
    background:radial-gradient(circle,rgba(255,199,44,.22),transparent 65%);
    filter:blur(10px);pointer-events:none;
}
.rank-head{max-width:760px;margin-bottom:40px;}
.rank-eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    background:rgba(255,199,44,.14);border:1px solid rgba(255,199,44,.4);
    color:var(--amarelo);font-size:11.5px;font-weight:900;letter-spacing:2px;
    padding:9px 18px;border-radius:999px;margin-bottom:20px;
}
.rank-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amarelo);box-shadow:0 0 10px 2px rgba(255,199,44,.7);}
.rank-title{font-size:clamp(28px,3.6vw,44px);font-weight:900;line-height:1.14;margin-bottom:18px;letter-spacing:-.5px;}
.rank-title span{
    color:#06142a;background:linear-gradient(135deg,#FFE38A,var(--amarelo));
    padding:0 14px;border-radius:14px;display:inline-block;
    box-shadow:0 6px 18px rgba(255,199,44,.32);
}
.rank-text{font-size:17px;line-height:1.75;color:rgba(255,255,255,.86);max-width:640px;margin-bottom:26px;font-weight:500;}
.rank-text strong{color:var(--amarelo);}
.rank-cta{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--amarelo);color:#06142a;font-size:14px;font-weight:900;
    text-transform:uppercase;letter-spacing:.8px;padding:16px 30px;border-radius:999px;
    text-decoration:none;box-shadow:0 10px 28px rgba(255,199,44,.36);
    transition:transform .25s ease,box-shadow .25s ease;
}
.rank-cta span{transition:transform .25s ease;}
.rank-cta:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(255,199,44,.5);}
.rank-cta:hover span{transform:translateX(4px);}

.rank-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:34px;
}
.rank-card{
    position:relative;display:flex;align-items:center;gap:16px;
    background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);
    border-radius:20px;padding:20px 18px;backdrop-filter:blur(8px);
    transition:transform .3s ease,background .3s ease,border-color .3s ease;
}
.rank-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.26);}
.rank-card--lider{background:rgba(255,199,44,.1);border-color:rgba(255,199,44,.35);}
.rank-card--lider:hover{background:rgba(255,199,44,.16);}
.rank-pos{
    flex-shrink:0;width:56px;height:56px;border-radius:16px;
    display:flex;align-items:center;justify-content:center;
    font-size:22px;font-weight:900;color:#06142a;
}
.rank-pos--ouro{background:linear-gradient(150deg,#FFE38A,#FFC107);box-shadow:0 8px 18px rgba(255,193,7,.4);}
.rank-pos--prata{background:linear-gradient(150deg,#f3f6fa,#c7d2de);box-shadow:0 8px 18px rgba(200,210,225,.3);}
.rank-pos--bronze{background:linear-gradient(150deg,#e8b48a,#c67c4c);color:#2c1608;box-shadow:0 8px 18px rgba(198,124,76,.35);}
.rank-info strong{display:block;font-size:15px;font-weight:800;margin-bottom:4px;color:#fff;}
.rank-info p{font-size:13px;line-height:1.5;color:rgba(255,255,255,.78);margin:0;}
.rank-card--lider .rank-info strong{color:var(--amarelo);}

.rank-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:30px;border-top:1px solid rgba(255,255,255,.14);}
.rank-stat strong{font-size:22px;font-weight:900;color:var(--amarelo);display:block;margin-bottom:6px;}
.rank-stat p{font-size:14px;line-height:1.6;color:rgba(255,255,255,.82);margin:0;}

@media(max-width:980px){
    .rank-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px){
    .rank-shell{padding:34px 22px;border-radius:24px;}
    .rank-grid{grid-template-columns:1fr;}
    .rank-stats{grid-template-columns:1fr;gap:20px;}
}

/* ─── NOTÍCIAS COMPACTAS ─────────────────────────────────────── */
.news-section{max-width:1280px;margin:0 auto 50px;padding:0 15px;}
.news-section-title{
    text-align:center;font-size:14px;font-weight:900;color:var(--azul);
    letter-spacing:2px;text-transform:uppercase;margin-bottom:22px;
    display:flex;align-items:center;justify-content:center;gap:14px;
}
.news-section-title::before,.news-section-title::after{
    content:"";height:2px;width:40px;
    background:linear-gradient(135deg,var(--verde),var(--amarelo));border-radius:2px;
}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.news-card{
    background:#fff;border-radius:16px;overflow:hidden;
    text-decoration:none;color:var(--texto);
    box-shadow:0 4px 16px rgba(0,74,144,.09);
    transition:.25s ease;border:1px solid var(--cinza-border);
    display:flex;flex-direction:column;
}
.news-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,74,144,.16);border-color:var(--azul);}
.news-card-img{width:100%;height:110px;object-fit:cover;object-position:center top;display:block;background:var(--azul-light);}
.news-card-body{padding:12px;flex:1;display:flex;flex-direction:column;gap:5px;}
.news-card-date{font-size:9px;color:var(--texto-suave);letter-spacing:.1em;text-transform:uppercase;}
.news-card-title{font-size:12px;font-weight:700;line-height:1.45;color:var(--texto);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.news-loading{grid-column:1/-1;text-align:center;padding:20px;color:var(--texto-suave);font-size:13px;}

/* ─── NOTÍCIAS DESTAQUE ─────────────────────────────────────── */
.news-featured-section{max-width:1280px;margin:0 auto 60px;padding:0 15px;}
.news-featured-hero{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.news-featured-card{
    position:relative;display:block;text-decoration:none;color:var(--texto);
    border-radius:4px;overflow:hidden;background:#fff;
    box-shadow:0 6px 24px rgba(0,0,0,.08);
    transition:transform .25s ease,box-shadow .25s ease;
}
.news-featured-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,74,144,.14);}
.news-featured-card-img{width:100%;height:280px;object-fit:cover;object-position:center top;display:block;background:var(--azul-light);}
.news-featured-card-content{position:relative;padding:0 18px 22px;margin-top:-2px;}
.news-featured-cat{
    display:inline-block;background:#fff;
    font-size:11px;font-weight:800;letter-spacing:.04em;
    text-transform:uppercase;color:var(--texto);
    padding:6px 10px;margin-bottom:10px;
    box-shadow:0 2px 8px rgba(0,0,0,.06);border:1px solid #eee;
}
.news-featured-title{
    font-size:22px;font-weight:900;line-height:1.35;color:#111;
    padding:2px 0;
}
.news-featured-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.news-featured-row .news-card-img{height:140px;}
.news-featured-row .news-card-title{font-size:13px;-webkit-line-clamp:4;}

/* ─── TOP 10 (pódio + lista) ─────────────────────────────────────── */
.chart-section{max-width:960px;margin:0 auto 60px;padding:0 20px;}
.chart-head{text-align:center;margin-bottom:44px;}
.chart-eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    background:#eaf3ff;color:var(--azul);font-size:11.5px;font-weight:900;
    letter-spacing:2px;padding:8px 18px;border-radius:999px;margin-bottom:16px;
}
.chart-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--verde);}
.chart-title{font-size:clamp(26px,3.4vw,36px);font-weight:900;color:var(--azul-dark);letter-spacing:.5px;margin-bottom:8px;}
.chart-sub{font-size:14px;color:var(--texto-suave);font-weight:500;}

/* pódio — 1° no centro e mais alto, 2° e 3° nas laterais */
.chart-podium{
    display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:18px;
    align-items:end;margin-bottom:42px;
}
.chart-podium-card{
    position:relative;border-radius:24px;overflow:hidden;aspect-ratio:1;
    box-shadow:0 14px 34px rgba(0,74,144,.16);border:2px solid var(--cinza-border);
    transition:transform .35s ease,box-shadow .35s ease;background:#eef3f8;
}
.chart-podium-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(0,74,144,.24);}
.chart-podium-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.chart-podium-card:hover img{transform:scale(1.06);}
.chart-podium-card--1{transform:scale(1.08);z-index:2;border-color:var(--amarelo);box-shadow:0 20px 46px rgba(255,193,7,.28);}
.chart-podium-card--1:hover{transform:scale(1.08) translateY(-6px);}
.chart-podium-crown{
    position:absolute;top:-15px;left:50%;transform:translateX(-50%);z-index:4;
    width:34px;height:34px;color:var(--amarelo);filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));
}
.chart-podium-crown svg{width:100%;height:100%;fill:currentColor;}
.chart-podium-medal{position:absolute;top:12px;left:12px;z-index:3;width:44px;height:44px;font-size:16px;border-radius:14px;box-shadow:0 6px 16px rgba(0,0,0,.22);}
.chart-podium-info{
    position:absolute;bottom:0;left:0;right:0;padding:16px;z-index:2;
    background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.35) 65%,transparent 100%);
}
.chart-podium-info h3{font-size:14.5px;font-weight:800;color:#fff;margin-bottom:2px;text-shadow:0 2px 6px rgba(0,0,0,.4);}
.chart-podium-info p{font-size:11.5px;color:rgba(255,255,255,.85);}

/* lista — do 4° ao 10° */
.chart-list{
    background:#fff;border:1px solid var(--cinza-border);border-radius:22px;
    overflow:hidden;box-shadow:0 10px 30px rgba(0,74,144,.08);
}
.chart-row{
    display:grid;grid-template-columns:34px 52px 1fr auto;align-items:center;gap:16px;
    padding:14px 20px;border-bottom:1px solid var(--cinza-border);
    transition:background .2s ease;
}
.chart-row:last-child{border-bottom:none;}
.chart-row:hover{background:#f7fafd;}
.chart-row-rank{font-size:20px;font-weight:900;color:#c3d2e2;text-align:center;transition:color .2s ease;}
.chart-row:hover .chart-row-rank{color:var(--azul);}
.chart-row img{width:52px;height:52px;border-radius:12px;object-fit:cover;display:block;}
.chart-row-info h3{font-size:14px;font-weight:800;color:var(--azul-dark);margin-bottom:1px;}
.chart-row-info h3 small{font-size:11px;font-weight:600;color:var(--texto-suave);}
.chart-row-info p{font-size:12px;color:var(--texto-suave);}
.chart-row-eq{display:flex;align-items:flex-end;gap:3px;height:18px;opacity:0;transition:opacity .2s ease;}
.chart-row:hover .chart-row-eq{opacity:1;}
.chart-row-eq i{display:block;width:3px;border-radius:2px;background:var(--verde);animation:chartEq 1s ease-in-out infinite;}
.chart-row-eq i:nth-child(1){height:8px;animation-delay:0s;}
.chart-row-eq i:nth-child(2){height:16px;animation-delay:.2s;}
.chart-row-eq i:nth-child(3){height:11px;animation-delay:.4s;}
@keyframes chartEq{0%,100%{transform:scaleY(.4);}50%{transform:scaleY(1);}}

/* ─── SECTION TITLE ───────────────────────────────────────────── */
.section-title{
    text-align:center;font-size:14px;font-weight:900;color:var(--azul);
    letter-spacing:2px;text-transform:uppercase;margin-bottom:24px;
    display:flex;align-items:center;justify-content:center;gap:16px;
}
.section-title::before,.section-title::after{content:"";height:2px;width:40px;background:linear-gradient(135deg,var(--verde),var(--amarelo));border-radius:2px;}

/* ─── PROGRAMAÇÃO ─────────────────────────────────────────────── */
.prog-section{width:calc(100% - 30px);max-width:1000px;margin:0 auto 60px;}
.prog-sub{text-align:center;font-size:14px;color:var(--texto-suave);margin:-10px 0 30px;font-weight:500;}
.prog-subtitle{
    font-size:12px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;
    color:var(--azul);margin:34px 0 16px;padding-left:2px;
}
.prog-subtitle::before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--amarelo);margin-right:9px;vertical-align:middle;}

.prog-timeline{display:flex;flex-direction:column;gap:12px;position:relative;}
.prog-item{
    display:grid;grid-template-columns:96px 56px 1fr;gap:18px;align-items:flex-start;
    background:#fff;border:1px solid var(--cinza-border);border-radius:18px;
    padding:16px 18px;transition:.25s ease;
}
.prog-item:hover{border-color:var(--azul);box-shadow:0 12px 28px rgba(0,74,144,.10);transform:translateY(-2px);}
.prog-time{display:flex;flex-direction:column;padding-top:2px;}
.prog-time span{font-size:15px;font-weight:900;color:var(--azul-dark);}
.prog-time small{font-size:10.5px;color:var(--texto-suave);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-top:2px;}
.prog-avatar{
    width:56px;height:56px;border-radius:50%;overflow:hidden;flex-shrink:0;
    background:linear-gradient(135deg,#e8f0fb,#d6e6fb);border:2px solid var(--cinza-border);
    display:flex;align-items:center;justify-content:center;
}
.prog-avatar img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.prog-avatar--icon{font-size:24px;background:linear-gradient(135deg,#eaf3ff,#dceeff);}
.prog-avatar.sem-foto{background:linear-gradient(135deg,var(--azul),var(--azul-dark));}
.prog-body h3{font-size:15.5px;font-weight:900;color:var(--azul-dark);margin-bottom:3px;}
.prog-apresenta{display:block;font-size:11.5px;font-weight:700;color:var(--verde);margin-bottom:6px;}
.prog-body p{font-size:13px;line-height:1.55;color:var(--texto);margin-bottom:6px;}
.prog-tag{display:block;font-size:12px;font-style:italic;color:var(--texto-suave);}

.prog-weekend-lead{text-align:center;font-size:14px;font-weight:600;color:var(--texto-suave);margin:-4px 0 20px;}
.prog-weekend{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px;}
.prog-weekend-card{
    background:linear-gradient(160deg,#04305e,#00519c);color:#fff;
    border-radius:22px;padding:26px 24px;box-shadow:0 18px 40px rgba(0,74,144,.22);
}
.prog-weekend-card h4{font-size:19px;font-weight:900;margin-bottom:14px;color:var(--amarelo);}
.prog-weekend-card ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin-bottom:16px;}
.prog-weekend-card li{font-size:13.5px;display:flex;gap:10px;color:rgba(255,255,255,.92);}
.prog-weekend-card li span{flex-shrink:0;min-width:118px;font-weight:800;color:#fff;}
.prog-marathon{font-size:13px;line-height:1.6;color:rgba(255,255,255,.85);padding-top:14px;border-top:1px solid rgba(255,255,255,.18);}
.prog-marathon strong{color:var(--amarelo);}

.prog-bulletin{
    display:flex;align-items:center;gap:18px;background:#fff;
    border:1px solid var(--cinza-border);border-radius:20px;padding:20px 22px;
}
.prog-bulletin-icon{
    width:52px;height:52px;border-radius:50%;flex-shrink:0;font-size:22px;
    background:linear-gradient(135deg,var(--amarelo),#FFD54A);color:#06142a;
    display:flex;align-items:center;justify-content:center;
}
.prog-bulletin-body h4{font-size:15px;font-weight:900;color:var(--azul-dark);margin-bottom:3px;}
.prog-bulletin-body p{font-size:13px;color:var(--texto);margin-bottom:10px;}
.prog-bulletin-times{display:flex;flex-wrap:wrap;gap:8px;}
.prog-bulletin-times span{
    font-size:11.5px;font-weight:700;color:var(--azul);
    background:#eaf3ff;padding:6px 12px;border-radius:999px;
}

/* ─── FOOTER ──────────────────────────────────────────────────── */
.footer-bt{
    position:relative;margin-top:80px;background:var(--azul);color:#fff;
    padding:60px 24px 28px;overflow:hidden;border-top:4px solid var(--amarelo);
}
.footer-bt::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at top left,rgba(255,199,44,.1),transparent 22%),
               radial-gradient(circle at bottom right,rgba(0,156,59,.08),transparent 20%);
    pointer-events:none;
}
.footer-inner{
    width:min(1180px,100%);margin:0 auto;
    display:grid;grid-template-columns:1.6fr 1fr 1fr;
    gap:28px;align-items:flex-start;position:relative;z-index:1;
}
.footer-brand{display:flex;flex-direction:column;gap:18px;}
.footer-logo{width:180px;max-width:100%;border-radius:18px;display:block;}
.footer-brand p{max-width:420px;color:rgba(255,255,255,.9);font-size:14px;line-height:1.8;}
.footer-column h3{font-size:13px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--amarelo);margin-bottom:18px;}
.footer-column a,.footer-column span{display:block;color:rgba(255,255,255,.92);text-decoration:none;font-size:14px;font-weight:600;margin-bottom:12px;transition:.25s ease;}
.footer-column a:hover{color:var(--amarelo);transform:translateX(4px);}
.footer-list a{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);margin-bottom:10px;color:#fff;transition:.25s ease;}
.footer-list a:hover{background:rgba(255,199,44,.18);border-color:rgba(255,199,44,.3);color:var(--amarelo);}
.footer-main-whatsapp,.footer-main-email{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:100px;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.5px;transition:.25s ease;}
.footer-main-whatsapp{background:linear-gradient(135deg,#25D366,#14b85a);color:#06142a;box-shadow:0 10px 30px rgba(37,211,102,.28);}
.footer-main-email{background:linear-gradient(135deg,#FFD54A,#FFC107);color:#06142a;box-shadow:0 10px 30px rgba(255,199,44,.25);}
.footer-main-whatsapp:hover,.footer-main-email:hover{transform:translateY(-3px);}
.footer-bottom{
    width:min(1180px,100%);margin:40px auto 0;padding-top:20px;
    border-top:1px solid rgba(255,255,255,.14);
    display:flex;align-items:center;justify-content:space-between;
    gap:18px;color:rgba(255,255,255,.85);font-size:12px;flex-wrap:wrap;
    position:relative;z-index:1;
}
.footer-bottom strong{color:var(--amarelo);font-weight:900;}
.back-top{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    min-height:44px;padding:0 18px;border:none;border-radius:999px;
    background:linear-gradient(135deg,#FFD54A,#FFC107);color:#06142a;
    font-size:14px;font-weight:900;cursor:pointer;
    box-shadow:0 10px 26px rgba(255,193,7,.35);transition:.25s ease;text-decoration:none;
}
.back-top:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(255,193,7,.45);}

/* ─── RESPONSIVE ──────────────────────────────────────────────── */
@media(max-width:960px){
    .news-featured-hero{grid-template-columns:1fr;}
    .news-featured-card-img{height:220px;}
    .news-featured-title{font-size:18px;}
    .news-featured-row{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:950px){
    .player{flex-direction:column;text-align:center;padding:30px;}
    .player-cover-wrap{width:240px;min-width:240px;height:240px;}
    .artist{font-size:36px;}
    .song{font-size:17px;}
    .controls{justify-content:center;}
    .footer-inner{grid-template-columns:1fr 1fr;}
    .footer-brand{grid-column:1/-1;}
}
@media(max-width:768px){.news-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){
    .player-cover-wrap{width:200px;min-width:200px;height:200px;}
    .artist{font-size:28px;}
    .song{font-size:15px;}
    #play{width:72px;height:72px;font-size:22px;}
    #volume{width:100px;}
    .chart-podium{grid-template-columns:1fr 1fr;gap:12px;}
    .chart-podium-card--3{grid-column:1/-1;aspect-ratio:16/9;}
    .chart-podium-card--1{transform:none;}
    .chart-podium-card--1:hover{transform:translateY(-6px);}
    .chart-row{grid-template-columns:26px 44px 1fr;gap:10px;padding:12px 14px;}
    .chart-row-eq{display:none;}
    .footer-bt{padding:48px 18px 24px;}
    .footer-inner{grid-template-columns:1fr;}
    .prog-item{grid-template-columns:56px 1fr;}
    .prog-time{grid-column:1/-1;flex-direction:row;gap:8px;align-items:baseline;}
    .prog-weekend{grid-template-columns:1fr;}
    .prog-bulletin{flex-direction:column;text-align:center;}
    .prog-bulletin-times{justify-content:center;}
}
@media(max-width:420px){
    .news-grid{grid-template-columns:1fr 1fr;gap:10px;}
    .news-card-img{height:80px;}
    .news-featured-row{grid-template-columns:1fr;}
}

/* ─── BANNERS INLINE (antigas imagens com style="") ─────────────── */
.banner-strip{width:100%;max-width:1280px;display:block;margin:0 auto 50px;border-radius:0;}

/* ─── REVELAÇÃO SUAVE AO ROLAR ───────────────────────────────────── */
.a-revelar{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
.a-revelar.revelado{opacity:1;transform:translateY(0);}
