
        body {
            font-family: 'Saira Condensed', sans-serif;
            margin: 0;
             overflow-x: hidden; /* Evita rolagem horizontal quando o offcanvas está aberto */
}
            
        
        .offcanvas {
    z-index: 1050; /* Certifique-se de que esse valor seja maior que o z-index de outros elementos */
}

        /* Player de barra fixa no topo */
.radio-player {
    position: fixed;
    top: 0; /* Fixa no topo da página */
    left: 0;
    width: 100%;
   background-color: #d00002;
    color: #ffffff;
   
    z-index: 1050; /* Garante que o player fique acima de outros elementos */
    display: flex;
    align-items: center;
    padding: 2px 0; /* Ajuste no padding para melhor espaçamento */
}

/* Navbar fixada logo abaixo do player */
.menu-top {
    position: fixed;
    top: 66px; /* Ajuste conforme a altura do player */
    left: 0;
    width: 100%;
    z-index: 1040; /* Navbar abaixo do player */
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
      background-color: #333333; /* Cinza escuro */
}

.menu-top2 {
    position: fixed;
    top: 65px; /* Ajuste conforme a altura do player */
    left: 0;
    width: 100%;
    z-index: 1040; /* Navbar abaixo do player */
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
      background-color: #333333; /* Cinza escuro */
}
        /* Personalizando o botão de play/pause */
        .play-pause {
            background: transparent;
            border: none;
            color: #ffffff; /* Cor do ícone */
            font-size: 2.5rem; /* Aumenta o tamanho do ícone */
        }

        /* Controle de volume à direita */
        .volume-control {
            width: 150px;
            -webkit-appearance: none; /* Remove o estilo padrão */
            appearance: none; /* Remove o estilo padrão */
            height: 5px; /* Altura da barra de volume */
            background: linear-gradient(to right, #ffcc00 0%, #ffcc00 var(--volume-percent, 50%), #ffffff var(--volume-percent, 50%), #ffffff 100%);
            border-radius: 5px; /* Bordas arredondadas */
            outline: none; /* Remove a borda ao focar */
        }

        /* Responsividade para o controle de volume em telas menores */
        @media (max-width: 768px) {
            .volume-control {
                width: 80px; /* Reduz o tamanho da barra de volume */
            }
            .play-pause {
                font-size: 2.5rem; /* Ajusta o tamanho do botão play/pause */
            }
        }

        /* Estilo da bolinha (thumb) do controle de volume */
        .volume-control::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            width: 20px; 
            height: 20px;
            border-radius: 50%;
            background: #ffcc00;
            cursor: pointer;
        }

        /* Estilo para navegadores Firefox */
        .volume-control::-moz-range-thumb {
            width: 20px;
            height: 20px;
            border-radius: 50%;
            background: #ffcc00;
            cursor: pointer;
        }

        .logo-desktop {
            position: absolute;
            top: 8px; /* Distância do topo */
            right: 10%; /* Distância da direita */
            transition: all 0.3s ease; /* Suaviza a transição do tamanho */
            width: 200px; /* Tamanho original da logo */
        }

        .logo-desktop.shrink {
            width: 100px; /* Tamanho reduzido da logo */
            top: 8px; /* Ajusta a posição ao encolher */
            right: 10%; /* Mantém a distância da direita */
        }
        
         .logo-mobile {
            position: absolute;
            top: 5px; /* Distância do topo */
            right: 10px; /* Distância da direita */
            transition: all 0.3s ease; /* Suaviza a transição do tamanho */
            width: 150px; /* Tamanho original da logo */
        }

        .logo-mobile.shrink2 {
            width: 100px; /* Tamanho original da logo */
            top: 5px; /* Ajusta a posição ao encolher */
            right: 10px; /* Mantém a distância da direita */
        }
        
        .carousel-inner img {
   
    
        }
        /* Altera a cor de fundo do offcanvas */
.offcanvas {
    background-color: rgba(50, 50, 50, 0.9); /* Fundo cinza escuro com 90% de opacidade */
    color: #ffffff; /* Muda a cor do texto para branco */
}

/* Altera a cor dos links no offcanvas */
.offcanvas .nav-link {
    color: #ffffff; /* Cor do texto dos links */
}

/* Altera a cor dos links ao passar o mouse */
.offcanvas .nav-link:hover {
    color: #ffe6e6; /* Cor de hover dos links */
}

/* Altera a cor do título do offcanvas */
.offcanvas-header .offcanvas-title {
    color: #ffffff; /* Cor do título */
}
    
.music-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* Alinha os itens à esquerda */
    gap: 10px; /* Espaço entre as músicas */
}

.music-item {
    color: #ffffff;
    text-decoration: none; /* Remove o sublinhado */
    transition: color 0.3s; /* Transição suave de cor */
    padding: 0px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: -8px; 
     text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

.music-item:hover {
    color: #d00002; /* Cor ao passar o mouse */
}



    .news-carousel {
        max-width: 100%; /* Defina a largura máxima desejada */
        margin: 20px auto; /* Centraliza o carrossel */
    }

    .news-carousel img {
        height: auto; /* Ajusta a altura da imagem */
        height: 400px; /* A imagem se ajusta à largura do carrossel */
        object-fit: cover; /* Faz com que a imagem preencha o espaço, cortando o que não se encaixar */
    object-position: top; /* Alinha a imagem ao topo */
    }

    .carousel-caption {
    font-size: 24px;
    color: #ffffff; /* Cor do texto */
    padding: 10px 20px; /* Padding para a legenda */
    border-radius: 5px; /* Bordas arredondadas */
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.7); /* Sombra no texto */
    font-weight: bold; /* Negrito para o título */
}

.carousel-caption h1 {
    font-weight: bold; /* Negrito para o título h1 */
}

.carousel-caption h1:hover {
    color: #ffc800;
    font-weight: bold; /* Negrito para o título h1 */
}

.carousel-inner .col {
      flex: 1 0 33%; /* Exibe 3 imagens por vez */
      padding: 5px;
    }    

        .news-card {
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        background-color: #f8f9fa; /* Cor de fundo para o card */
        padding: 15px;
        border-radius: 8px;
        cursor: pointer; /* Mudar o cursor ao passar sobre o card */
    }

    .news-card:hover {
        transform: scale(1.05); /* Aumenta levemente o card ao passar o mouse */
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); /* Sombra mais intensa no hover */
    }

    .news-title {
        font-size: 1.25rem;
        font-weight: bold;
        margin-bottom: 5px;
    }

    .news-description {
        font-size: 1rem;
        color: #6c757d; /* Cor de texto mais suave */
    }

    .img-fluid {
        max-width: 100%;
        height: auto;
    }

    .d-flex {
        display: flex;
    }

    .me-3 {
        margin-right: 1rem; /* Espaçamento entre imagem e texto */
    }
    
        .footer {
        background-color: #333; /* Fundo escuro */
        color: #fff; /* Cor do texto */
        margin-bottom: 0px;
    }
    
    .footer a {
        color: #bbb; /* Cor dos links */
        text-decoration: none;
        transition: color 0.3s;
    }

    .footer a:hover {
        color: #f8d000; /* Cor dos links ao passar o mouse */
    }

    .footer h5 {
        font-size: 1.2rem;
        font-weight: 600;
        letter-spacing: 1px;
    }

    .footer i {
        transition: transform 0.3s;
    }

    .footer i:hover {
        transform: scale(1.2); /* Efeito de zoom nos ícones ao passar o mouse */
    }

    .footer .list-unstyled li {
        margin-bottom: 0.5rem;
    }


.luckiest-guy-regular {
  font-family: "Luckiest Guy", cursive;
  font-weight: 400;
  font-style: normal;
}
.custom-text {
    font-family: 'Luckiest Guy', cursive;
    text-align: center;
}

.top-text {
    font-size: 50px; /* Tamanho menor para 'TOP' */
    color: #fff; /* Cor branca */
    display: block;
    margin-bottom: -95px; /* Reduz o espaço após 'TOP' */
}

.top-text-2 {
    font-size: 30px; /* Tamanho menor para 'TOP' */
    color: #fff; /* Cor branca */
    display: block;
    
}

.top-text-3 {
    font-size: 30px; 
    color: #ff0000; 
    display: block;
     margin-bottom: -55px;
    
}
.top-number {
    font-size: 150px;
    color: #ff0000; 
    display: block;
    margin-bottom: -85px;   
}
.top-number-2 {
    font-size: 50px; 
    color: #fff; 
    display: block;
     
}
/* Estilo básico */
.clientes-section {
    padding: 20px;
    background-color: #f9f9f9;
    text-align: center;
}
/* Estilo básico */
.clientes-section {
    padding: 20px;
    background-color: #f9f9f9;
    text-align: center;
}

.clientes-title {
    margin-bottom: 20px;
}

.clientes-slider {
    overflow: hidden; /* Esconde as imagens fora da área visível */
    position: relative;
    width: 100%; /* Certifica-se de que o slider ocupe toda a largura */
}

.slider-track-clientes {
    display: flex;
    animation: scrollClientes 20s linear infinite; /* Animação de rolagem contínua */
    width: calc(2 * 150px * 9 + 30px * 8); /* Largura total considerando a duplicação */
}

.cliente-item {
    flex: 0 0 auto; /* Assegura que cada imagem ocupe apenas o seu tamanho natural */
    margin-right: 30px;
}

.cliente-item img {
    width: 150px; /* Ajuste o tamanho das imagens conforme necessário */
    height: auto;
}

/* Animação para rolagem contínua */
@keyframes scrollClientes {
    0% {
        transform: translateX(0); /* Começa no início */
    }
    100% {
        transform: translateX(-50%); /* Movemos -50% da largura para que as imagens rolem até a metade (onde começa o conjunto duplicado) */
    }
}

/* Ajustes para mobile */
@media (max-width: 768px) {
    .slider-track-clientes {
        width: calc(2 * 100px * 9 + 20px * 8); /* Ajusta a largura total das imagens no mobile */
    }

    .cliente-item img {
        width: 100px; /* Tamanho menor das imagens para dispositivos móveis */
    }
}



/* Estrutura Geral */
.programacao-section {
    text-align: center;
    padding-top: 20px;

    border-radius: 15px; /* Bordas arredondadas para a seção */
}

.programacao-title {
    font-size: 32px;
    color: #333;
    margin-bottom: 30px;
}

/* Guias Grade e Programas */
.tab-container {
    display: inline-block;
    margin-bottom: 30px;
}

.tab-btn {
    padding: 12px 20px;
    margin: 0 10px;
    border: none;
    cursor: pointer;
    background-color: #eaeaea;
    color: #555;
    font-size: 18px;
    border-radius: 25px;
    transition: background-color 0.3s, transform 0.3s;
}

.tab-btn:hover {
    background-color: #ffcc00;
    transform: scale(1.05);
}

.tab-btn.active {
    background-color: #ff0000; /* Cor vermelha para botão ativo */
    color: white;
    font-weight: bold;
    transform: scale(1.05);
}

/* Conteúdo das Guias */
.tab-content {
    display: none;
    
    padding: 20px;
    border-radius: 15px; /* Bordas arredondadas para os conteúdos */
   
}

.tab-content.active {
    display: block;
}

/* Estilo para os Dias da Semana (sem botões) */
.dias-semana {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-bottom: 20px;
    font-size: 18px;
}

.dia {
    position: relative;
    cursor: pointer;
    padding: 5px;
    transition: color 0.3s;
    display: inline-block; /* Adicionado para melhor controle do tamanho */
}

.dia:hover {
    color: #ff0000; /* Cor vermelha ao hover */
}

.dia.active::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background-color: #ff0000; /* Linha vermelha abaixo do dia ativo */
    left: 0;
    bottom: -2px; /* Ajuste padrão para desktop */
}

/* Media query para dispositivos móveis */
@media (max-width: 767px) {
    .dias-semana {
        gap: 10px; /* Reduz o espaço entre os dias na versão mobile */
        font-size: 16px; /* Reduz o tamanho da fonte para mobile */
    }

    .dia {
        padding: 3px; /* Reduz o padding para mobile */
    }

    .dia.active::after {
        bottom: -1px; /* Ajusta a posição da linha para ficar mais próxima ao texto no mobile */
    }
}



/* Estilos para o Conteúdo da Programação */
.programacao-dia {
    /* Mesma cor de fundo */
    text-align: left;
   
    border-radius: 15px;
}

.programacao-html h3 {
    color: #ff0000; /* Cor vermelha para o título da programação */
    font-size: 24px;
    margin-bottom: 15px;
}

.programacao-html p {
    font-size: 16px;
    margin: 5px 0;
}

.custom-program {
    align-items: flex-start; /* Alinha os itens no topo da coluna */
    border-bottom: 1px solid #ddd; /* Adiciona uma linha separadora entre os programas */
    padding: 10px 0; /* Espaçamento interno */
}

.custom-program img {
    max-width: 100%; /* Mantém a imagem responsiva */
    height: 100px; /* Mantém a proporção da imagem */
    width: auto; /* Define uma largura padrão para a imagem */
    margin-right: 15px; /* Espaço entre a imagem e o texto */
}

.custom-program h3, 
.custom-program h5, 
.custom-program p {
    text-align: left; /* Alinha todos os textos à esquerda */
    margin: 5px 0; /* Espaçamento vertical entre os textos */
}

.custom-program h3 {
    font-size: 1.5rem; /* Tamanho da fonte do título */
}

.custom-program h5 {
    font-size: 1.2rem; /* Tamanho da fonte do apresentador */
    color: #555; /* Cor mais suave para o nome do apresentador */
}

.custom-program p {
    font-size: 1rem; /* Tamanho da fonte da descrição */
    color: #333; /* Cor padrão para o texto */
}



/* Seção de Notícias */
.news-section {
    background-color: #f7f7f7;
    padding: 50px 0;
}

.programacao-title {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 40px;
}

/* Estilo da notícia de capa */
.news-cover {
    padding: 60px 20px;
    border-radius: 15px;
    position: relative; /* Necessário para posicionar o overlay */
    overflow: hidden; /* Para esconder a parte da imagem que sai do contêiner */
}

/* Título da Manchete */
.cover-title {
    color: #d00002; /* Cor do título */
    text-decoration: none; /* Remove o sublinhado padrão */
    transition: color 0.3s ease; /* Transição suave de cor */
    font-size: 3rem; /* Tamanho padrão do título */
    margin-bottom: 10px; /* Espaço abaixo do título */
    position: relative; /* Para o efeito de sombra */
    font-weight: bold;
}

/* Efeito de sombra no título */
.cover-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -5px; /* Ajusta a posição da sombra */
    width: 100%;
    height: 5px; /* Altura da sombra */
    background-color: rgba(208, 0, 2, 0.5); /* Cor da sombra */
    transform: scaleX(0);
    transition: transform 0.3s ease; /* Transição suave do efeito */
}

/* Efeito de hover no título */
.cover-title:hover {
    color: #a00001; /* Cor ao passar o mouse */
}

/* Ativar a sombra ao passar o mouse */
.cover-title:hover::after {
    transform: scaleX(1); /* Apresenta a sombra ao passar o mouse */
}

/* Subtítulo */
.cover-text {
    color: #333; /* Cor escura para o subtítulo */
    font-size: 1.5rem; /* Tamanho padrão do subtítulo */
    margin: 20px 0; /* Margem entre o subtítulo e o botão */
}

/* Botão */
.btn-dark {
    background-color: #d00002; /* Cor do botão */
    border: none; /* Remove a borda padrão */
    padding: 10px 20px; /* Espaçamento interno do botão */
    color: #fff; /* Cor do texto do botão */
    border-radius: 5px; /* Bordas arredondadas */
    transition: background-color 0.3s ease; /* Transição suave da cor de fundo */
}

.btn-dark:hover {
    background-color: #a00001; /* Cor ao passar o mouse no botão */
}

/* Ajuste de tamanho do texto em telas menores */
@media (max-width: 768px) {
    .cover-title {
        font-size: 2.5rem; /* Tamanho do título em telas menores */
    }
    
    .cover-text {
        font-size: 1.2rem; /* Tamanho do subtítulo em telas menores */
    }
}

/* Estilo do overlay */
.cover-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    transition: opacity 0.3s ease; /* Transição suave da opacidade */
}

/* Exibir overlay ao passar o mouse */
.news-cover:hover .cover-overlay {
    opacity: 1;
}

/* Efeito de zoom na imagem */
.cover-image {
    width: 100%; /* Faz a imagem ocupar toda a largura */
    transition: transform 0.3s ease; /* Transição suave do efeito de zoom */
}

.news-cover:hover .cover-image {
    transform: scale(1.1); /* Zoom ao passar o mouse */
}


/* Estilo da grid de notícias */
.news-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.news-item {
    flex: 1 1 calc(33.333% - 30px);
    display: flex;
}

.news-card {
    border: none;
    overflow: hidden;
    border-radius: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.news-card:hover {
    transform: translateY(-10px);
}

.news-image {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}

.news-card:hover .news-image {
    transform: scale(1.05);
}

.news-title {
    font-size: 1.5rem;
    font-weight: bold;
    color: #d00002;
    text-decoration: none;
    margin-bottom: 10px;
}

.news-summary {
    font-size: 1rem;
    color: #555;
}

/* Ajustes responsivos */
@media (max-width: 768px) {
    .news-item {
        flex: 1 1 100%;
    }

    .cover-image {
        height: 300px;
    }
}


.card-title {
    font-size: 1.8rem;
    color: red;
    font-weight: bold;
}

