        /* --------------------------------- */
        /* VARIÁVEIS DE COR TEMA CLARO */
        /* --------------------------------- */
        :root {
            --cor-principal: #E20712;
            /* Vermelho Forte (DESTAQUE GERAL) */
            --cor-secundaria: #333333;
            /* Texto Escuro Padrão (PRETO) */
            --cor-fundo: #ffffff;
            /* Fundo Branco */
            --cor-fundo-destaque: #f8f9fa;
            /* Fundo Cinza Claro (para cards e seções) */
            --cor-borda: #dee2e6;
            /* Borda Cinza Clara */
            --cor-marinho: #003366;

            /* Cores Escuras para os componentes específicos */
            /* NOVO: Fundo Branco com 70% de opacidade para o menu */
            --cor-dark-nav: rgba(255, 255, 255, 0.7);
            --cor-dark-player: #212529;
            /* Cinza Escuro Bootstrap para o player */

            /* COR DESTAQUE MENU E ACENTOS */
            --cor-destaque-menu: var(--cor-principal); /* ALTERADO: Usando o vermelho principal para destaque */

            /* COR NEON PARA O PLAYER DA RÁDIO */
            --cor-neon-radio: #00ff00;
            /* Verde Neon/Elétrico */
        }

        /* --------------------------------- */
        /* ESTILOS BASE E PADDING */
        /* --------------------------------- */
        body {
            background-color: var(--cor-fundo);
            color: var(--cor-secundaria);
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            min-height: 100vh;
            /* Mantido o padding para menu maior e player fixo */
            padding-top: 120px;
            scroll-behavior: smooth;
        }

        /* O CONTEÚDO PRINCIPAL COMEÇA OCULTO (SEM ALTERAÇÃO) */
        #main-content {
            display: none;
            width: 100%;
        }

        /* --------------------------------- */
        /* ESTILIZAÇÃO DO PRELOADER (SEM ALTERAÇÃO) */
        /* --------------------------------- */
        #preloader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: #000;
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 9999;
            overflow: hidden;
            opacity: 1;
            visibility: visible;
            transition: opacity 2.0s ease-in-out, visibility 2.0s ease-in-out;
        }

        #preloader-video {
            position: absolute;
            top: 50%;
            left: 50%;
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            z-index: -1;
            transform: translate(-50%, -50%);
            filter: brightness(0.7);
        }

        #preloader img {
            width: 260px;
            border-radius: 50%;
            animation: pulse 5.0s ease-in-out infinite;
        }

        @keyframes pulse {
            0% {
                opacity: 0.5;
                transform: scale(0.9);
            }

            50% {
                opacity: 1;
                transform: scale(1);
            }

            100% {
                opacity: 0.5;
                transform: scale(0.9);
            }
        }

        .preloader-hidden {
            opacity: 0 !important;
            visibility: hidden !important;
        }

        /* --------------------------------- */
        /* ESTILO DO PLAYER DE RÁDIO FIXO (SEM ALTERAÇÃO) */
        /* --------------------------------- */
        #radio-player-fixed {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            background-color: var(--cor-dark-player);
            border-bottom: 2px solid var(--cor-principal);
            z-index: 1030;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
            padding: 5px 0;
            height: 50px;
            display: flex;
            align-items: center;
        }

        #radio-info {
            font-size: 0.9rem;
            font-weight: 500;
            color: #ffffff;
        }

        /* ESTILO DO BOTÃO DO PLAYER (SEM ALTERAÇÃO) */
        #play-button,
        #pause-button {
            border: none;
            background: transparent;
            color: var(--cor-neon-radio);
            font-size: 1.5rem;
            padding: 0;
            width: 35px;
            height: 35px;
            cursor: pointer;
            transition: color 0.2s, text-shadow 0.2s;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%;
        }

        #play-button:hover,
        #pause-button:hover {
            color: #ffffff;
            text-shadow: 0 0 5px var(--cor-neon-radio), 0 0 10px var(--cor-neon-radio);
        }

        .text-neon {
            color: var(--cor-neon-radio) !important;
            font-weight: 700;
        }

        /* --------------------------------- */
        /* ESTILO DO MENU DE NAVEGAÇÃO (BRANCO OPACO) */
        /* --------------------------------- */
        .navbar {
            position: fixed;
            top: 50px;
            /* Abaixo do player */
            left: 0;
            width: 100%;
            /* ALTERADO: Fundo branco 70% opaco */
            background-color: var(--cor-dark-nav) !important;
            /* ALTERADO: Borda superior fina */
            border-bottom: 1px solid var(--cor-borda);
            z-index: 1029;
            backdrop-filter: blur(5px);
            /* Adiciona o blur de volta para suavizar o fundo */
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
            /* Sombra suave */
            padding: 0;
        }

        /* LOGOTIPO */
        .navbar-brand {
            padding: 10px 0;
            height: auto;
            display: flex;
            align-items: center;
            /* ALTERADO: Garante que o logo tenha a cor correta, se for SVG/Texto */
            color: var(--cor-secundaria) !important;
        }

        .navbar-brand img {
            height: 50px;
            width: auto;
        }

        .navbar-toggler {
            /* MANTIDO: Toggler escuro contra o fundo branco */
            border-color: rgba(0, 0, 0, 0.1) !important;
        }

        .navbar-toggler-icon {
            /* MUDADO: Ícone do toggler para preto contra o fundo claro */
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2851, 51, 51, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        }

        /* LINKS DE NAVEGAÇÃO (MAIS LARGOS E TEXTO PRETO) */
        .nav-link {
            /* ALTERADO: Texto Preto */
            color: var(--cor-secundaria) !important;
            font-weight: 600; /* Um pouco mais de peso */
            text-transform: uppercase;
            /* MANTIDO: Padding grande para menu espaçoso */
            padding: 20px 18px !important;
            border-bottom: none;
            transition: background-color 0.3s, color 0.2s;
        }

        /* Efeito de hover e ativo (texto vermelho, fundo levemente escuro) */
        .nav-link:hover,
        .nav-link.active {
            /* ALTERADO: Destaque em vermelho principal */
            color: var(--cor-principal) !important;
            /* ALTERADO: Fundo muito leve no hover */
            background-color: rgba(0, 0, 0, 0.05);
            border-bottom: none !important;
        }

        @media (max-width: 991.98px) {
            .navbar {
                padding-bottom: 0;
            }

            .navbar-collapse {
                /* No mobile, usa o fundo escuro do player para contraste */
                background-color: var(--cor-dark-player);
                padding: 10px 15px;
                border-radius: 0 0 5px 5px;
            }

            .nav-link {
                /* No mobile, reverte a cor do texto para branco */
                padding-left: 0 !important;
                padding-right: 0 !important;
                padding-top: 8px !important;
                padding-bottom: 8px !important;
                color: #ffffff !important;
                margin-top: 0;
            }

            .nav-link:hover,
            .nav-link.active {
                /* Destaque em ciano (mantido) ou vermelho para o mobile */
                background-color: transparent;
                color: var(--cor-destaque-menu) !important;
            }
        }


        /* --------------------------------- */
        /* ESTILO GERAL DO SITE (SEM ALTERAÇÃO) */
        /* --------------------------------- */
        .btn-primary {
            background-color: var(--cor-principal) !important;
            border-color: var(--cor-principal) !important;
            color: #ffffff !important;
            font-weight: 600;
        }

        .text-danger {
            color: #dc3545 !important;
        }

        .section-title {
            color: var(--cor-principal);
            padding-bottom: 20px;
            margin-bottom: 40px;
            font-weight: 700;
            position: relative;
        }

        .section-title::after {
            content: '';
            display: block;
            width: 50px;
            height: 3px;
            background: var(--cor-principal);
            margin: 0 auto;
            margin-top: 10px;
        }

        section {
            padding: 60px 0;
            border-bottom: 1px solid var(--cor-fundo-destaque);
        }

        #sobre,
        #ministerios,
        #agenda,
        #contribuir,
        .card {
            background-color: var(--cor-fundo-destaque);
            border: 1px solid var(--cor-borda);
            color: var(--cor-secundaria);
            transition: transform 0.3s, box-shadow 0.3s;
        }

        .icon-box {
            font-size: 3rem;
            color: var(--cor-principal);
            margin-bottom: 15px;
        }

        .table-striped>tbody>tr:nth-of-type(odd)>* {
            background-color: var(--cor-fundo) !important;
        }

        .table-striped>tbody>tr:nth-of-type(even)>* {
            background-color: var(--cor-fundo-destaque) !important;
        }

        /* --------------------------------- */
        /* ESTILOS DA NOVA SEÇÃO #NOVIDADES (SEM ALTERAÇÃO) */
        /* --------------------------------- */

        /* Novas Cores de Destaque para os Cards de Recursos */
        .text-roxo {
            color: #8A2BE2 !important;
        }

        .text-laranja {
            color: #FF8C00 !important;
        }

        .text-verde {
            color: #28a745 !important;
        }

        .text-ciano {
            color: #17a2b8 !important;
        }

        .text-amarelo {
            color: #ffc107 !important;
        }

        .text-vermelho {
            color: var(--cor-principal) !important;
        }

        .novidade-card {
            border: 1px solid var(--cor-borda);
            transition: transform 0.3s, box-shadow 0.3s;
            background-color: var(--cor-fundo);
            /* Fundo branco para se destacar no fundo-destaque da seção */
            height: 100%;
            /* Garante altura uniforme */
        }

        .novidade-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        }

        .novidade-card .card-header {
            font-weight: 700;
            color: #fff;
            background-color: var(--cor-secundaria) !important;
            /* Cor Secundária Escura */
            font-size: 0.9rem;
        }

        .icon-large {
            font-size: 2.5rem !important;
            margin-bottom: 10px;
            display: block;
        }

        .versiculo {
            display: block;
            margin-top: 15px;
            font-size: 0.85rem;
            font-style: italic;
            color: #6c757d;
            border-left: 3px solid var(--cor-principal);
            padding-left: 8px;
        }

        /* --------------------------------- */
        /* FOOTER (SEM ALTERAÇÃO) */
        /* --------------------------------- */
        footer {
            background-color: #343a40 !important;
            color: #ccc !important;
        }

        footer .text-info {
            color: var(--cor-principal) !important;
        }

        footer a {
            color: #fff;
            text-decoration: none;
            transition: color 0.2s;
        }

        footer a:hover {
            color: var(--cor-destaque-menu);
        }
        
        /* 1. Estilo para os cards de Ministérios */
.card {
    background-color: var(--cor-fundo-destaque);
    border: 1px solid var(--cor-borda);
    color: var(--cor-secundaria);
    transition: transform 0.3s, box-shadow 0.3s;
    /* Arredondamento diagonal */
    border-radius: 40px 0px 40px 0px; 
    overflow: hidden;
    /* Sombra suave padrão */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.card:hover {
    transform: translateY(-5px);
    /* Sombra mais intensa no hover */
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15);
}

/* 2. Estilo para os cards de Novidades (Recursos) */
.novidade-card {
    border: 1px solid var(--cor-borda);
    transition: transform 0.3s, box-shadow 0.3s;
    background-color: var(--cor-fundo);
    height: 100%;
    /* Arredondamento diagonal */
    border-radius: 40px 0px 40px 0px;
    overflow: hidden;
    /* Sombra suave padrão */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.novidade-card:hover {
    transform: translateY(-5px);
    /* Sombra mais intensa no hover */
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15);
}

/* 3. Ajuste fino para o Header do card não "vazar" o arredondamento */
.novidade-card .card-header {
    border-radius: 38px 0px 0px 0px !important;
    border-bottom: none;
}
/* Neon Roxo */
.border-neon-roxo {
    border-color: #8A2BE2 !important;
    box-shadow: 0 0 10px rgba(138, 43, 226, 0.2), inset 0 0 5px rgba(138, 43, 226, 0.1);
}
.border-neon-roxo:hover {
    box-shadow: 0 0 20px rgba(138, 43, 226, 0.5), 0 0 40px rgba(138, 43, 226, 0.2);
}

/* Neon Laranja */
.border-neon-laranja {
    border-color: #FF8C00 !important;
    box-shadow: 0 0 10px rgba(255, 140, 0, 0.2);
}
.border-neon-laranja:hover {
    box-shadow: 0 0 20px rgba(255, 140, 0, 0.5);
}

/* Neon Verde */
.border-neon-verde {
    border-color: #28a745 !important;
    box-shadow: 0 0 10px rgba(40, 167, 69, 0.2);
}
.border-neon-verde:hover {
    box-shadow: 0 0 20px rgba(40, 167, 69, 0.5);
}

/* Neon Marinho/Ciano */
.border-neon-ciano {
    border-color: #17a2b8 !important;
    box-shadow: 0 0 10px rgba(23, 162, 184, 0.2);
}
.border-neon-ciano:hover {
    box-shadow: 0 0 20px rgba(23, 162, 184, 0.5);
}

/* Neon Vermelho (Cor Principal) */
.border-neon-vermelho {
    border-color: var(--cor-principal) !important;
    box-shadow: 0 0 10px rgba(226, 7, 18, 0.2);
}
.border-neon-vermelho:hover {
    box-shadow: 0 0 20px rgba(226, 7, 18, 0.5);
}

/* Configuração Base dos Cards */
.novidade-card {
    border-radius: 40px 0px 40px 0px !important;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    height: 100%;
}
.novidade-card:hover { transform: translateY(-8px); }

/* Cores Neon */
.border-neon-roxo { border-color: #8A2BE2 !important; box-shadow: 0 0 10px rgba(138,43,226,0.2); }
.border-neon-roxo:hover { box-shadow: 0 0 20px rgba(138,43,226,0.6); }

.border-neon-ciano { border-color: #00d4ff !important; box-shadow: 0 0 10px rgba(0,212,255,0.2); }
.border-neon-ciano:hover { box-shadow: 0 0 20px rgba(0,212,255,0.6); }

.border-neon-laranja { border-color: #ff8c00 !important; box-shadow: 0 0 10px rgba(255,140,0,0.2); }
.border-neon-laranja:hover { box-shadow: 0 0 20px rgba(255,140,0,0.6); }

.border-neon-verde { border-color: #28a745 !important; box-shadow: 0 0 10px rgba(40,167,69,0.2); }
.border-neon-verde:hover { box-shadow: 0 0 20px rgba(40,167,69,0.6); }

.border-neon-vermelho { border-color: #ff0000 !important; box-shadow: 0 0 10px rgba(255,0,0,0.2); }
.border-neon-vermelho:hover { box-shadow: 0 0 20px rgba(255,0,0,0.6); }

.border-neon-amarelo { border-color: #ffc107 !important; box-shadow: 0 0 10px rgba(255,193,7,0.2); }
.border-neon-amarelo:hover { box-shadow: 0 0 20px rgba(255,193,7,0.6); }