/* ========================================
   UNIFIED CSS - CRISTIANÍSIMO
   ======================================== */
    /* ========================================
    BOTÓN SLIDER - IGUAL AL DE LAS CARDS
    ======================================== */
    .btn-slider {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        padding: 0.6rem 1.8rem;
        background: #c0392b;
        color: #ffffff;
        border: none;
        border-radius: 50px;
        font-weight: 600;
        font-size: 0.9rem;
        transition: all 0.3s ease;
        text-decoration: none;
        margin-top: 0.5rem;
    }

    .btn-slider:hover {
        background: #e74c3c;
        color: #ffffff;
        transform: translateX(5px);
        text-decoration: none;
        box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
    }

    .btn-slider i {
        transition: all 0.3s ease;
    }

    .btn-slider:hover i {
        transform: translateX(5px);
    }

    /* Responsive */
    @media (max-width: 767px) {
        .btn-slider {
            padding: 0.4rem 1.2rem;
            font-size: 0.8rem;
        }
    }

    @media (max-width: 576px) {
        .btn-slider {
            padding: 0.35rem 1rem;
            font-size: 0.75rem;
        }
    }


   /* ========================================
   TOP BAR - FECHA Y REDES SOCIALES (COMÚN A TODAS)
   ======================================== */
   .top-bar {
       background: #1a2940;
       color: #fff;
       padding: 0.5rem 1.5rem;
       font-size: 0.85rem;
       border-bottom: 2px solid #c0392b;
       width: 100%;
   }

   .container-fluid {
       padding-left: 1.5rem;
       padding-right: 1.5rem;
       max-width: 100%;
   }

   .top-date {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
   }

   .top-date i {
       color: #c0392b;
   }

   .top-social a {
       color: rgba(255,255,255,0.7);
       margin-left: 1rem;
       font-size: 1.1rem;
       transition: all 0.3s ease;
       text-decoration: none;
   }

   .top-social a:hover {
       color: #c0392b;
       transform: translateY(-2px);
   }

   /* ========================================
   HERO - BUSCADOR (index.css)
   ======================================== */
   .buscador-wrapper {
       max-width: 650px;
       margin: 2rem auto 0;
   }

   .buscador-hero-form .input-group {
       background: rgba(255,255,255,0.12);
       border-radius: 50px;
       overflow: hidden;
       backdrop-filter: blur(10px);
       border: 2px solid rgba(255,255,255,0.2);
       transition: all 0.3s ease;
   }

   .buscador-hero-form .input-group:hover,
   .buscador-hero-form .input-group:focus-within {
       border-color: #c0392b;
       box-shadow: 0 0 30px rgba(192, 57, 43, 0.2);
   }

   .buscador-hero-form .form-control {
       background: transparent;
       border: none;
       padding: 0.8rem 1.5rem;
       font-size: 1rem;
       color: #ffffff;
   }

   .buscador-hero-form .form-control::placeholder {
       color: rgba(255,255,255,0.6);
   }

   .buscador-hero-form .form-control:focus {
       box-shadow: none;
       background: transparent;
       color: #ffffff;
   }

   .btn-buscar-hero {
       background: #c0392b;
       color: #fff;
       border: none;
       padding: 0.8rem 2rem;
       font-weight: 600;
       transition: all 0.3s ease;
       border-radius: 0 50px 50px 0;
   }

   .btn-buscar-hero:hover {
       background: #e74c3c;
       color: #fff;
   }

   /* ========================================
   CONTENIDO PRINCIPAL - SLIDER + NOTICIAS (index.css)
   ======================================== */
   .contenido-principal {
       padding: 2rem 0;
       background: #f8f9fa;
       width: 100%;
   }

   .carousel-modern {
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 10px 40px rgba(0,0,0,0.1);
       height: 100%;
   }

   .carousel-image-wrapper {
       position: relative;
       overflow: hidden;
       height: 450px;
   }

   .carousel-image-wrapper img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.3s ease;
   }

   .carousel-modern:hover .carousel-image-wrapper img {
       transform: scale(1.03);
   }

   .carousel-overlay {
       position: absolute;
       bottom: 0;
       left: 0;
       right: 0;
       height: 60%;
       background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 100%);
   }

   .carousel-caption {
       position: absolute;
       bottom: 0;
       left: 0;
       right: 0;
       padding: 3rem;
       text-align: left;
       background: none;
   }

   .caption-content h3 {
       font-size: 1.8rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .caption-content p {
       font-size: 1rem;
       color: rgba(255,255,255,0.85);
       margin-bottom: 0;
   }

   .carousel-modern .carousel-indicators {
       margin-bottom: 1rem;
   }

   .carousel-modern .carousel-indicators button {
       width: 12px;
       height: 12px;
       border-radius: 50%;
       border: 2px solid rgba(255,255,255,0.6);
       background: transparent;
       transition: all 0.3s ease;
   }

   .carousel-modern .carousel-indicators button.active {
       background: #c0392b;
       border-color: #c0392b;
       transform: scale(1.2);
   }

   .carousel-modern .carousel-control-prev,
   .carousel-modern .carousel-control-next {
       width: 50px;
       height: 50px;
       top: 50%;
       transform: translateY(-50%);
       background: rgba(0,0,0,0.4);
       border-radius: 50%;
       opacity: 0;
       transition: all 0.3s ease;
   }

   .carousel-modern:hover .carousel-control-prev,
   .carousel-modern:hover .carousel-control-next {
       opacity: 1;
   }

   /* ========================================
   NOTICIAS MINI (COLUMNA DERECHA) (index.css)
   ======================================== */
   .card-noticia-mini {
       background: #ffffff;
       border-radius: 12px;
       overflow: hidden;
       box-shadow: 0 4px 15px rgba(0,0,0,0.08);
       transition: all 0.3s ease;
       height: 100%;
       border: 1px solid rgba(0,0,0,0.05);
   }

   .card-noticia-mini:hover {
       transform: translateY(-5px);
       box-shadow: 0 10px 30px rgba(0,0,0,0.15);
   }

   .card-noticia-mini-image {
       height: 150px;
       overflow: hidden;
   }

   .card-noticia-mini-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.3s ease;
   }

   .card-noticia-mini:hover .card-noticia-mini-image img {
       transform: scale(1.05);
   }

   .card-noticia-mini-body {
       padding: 1rem;
   }

   .noticia-mini-date {
       font-size: 0.7rem;
       color: #6c757d;
       display: block;
       margin-bottom: 0.3rem;
   }

   .noticia-mini-date i {
       margin-right: 0.2rem;
   }

   .card-noticia-mini-body h5 {
       font-size: 0.9rem;
       font-weight: 700;
       color: #1a2940;
       margin-bottom: 0.3rem;
       display: -webkit-box;
       -webkit-line-clamp: 2;
       line-clamp: 2;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }

   .btn-noticia-mini {
       display: inline-flex;
       align-items: center;
       gap: 0.3rem;
       color: #c0392b;
       font-weight: 600;
       font-size: 0.8rem;
       text-decoration: none;
       transition: all 0.3s ease;
   }

   .btn-noticia-mini:hover {
       color: #1a2940;
       transform: translateX(5px);
       text-decoration: none;
   }

   /* ========================================
   ACERCA DE CRISTIANÍSIMO (index.css)
   ======================================== */
   .acerca-section {
       padding: 4rem 0;
       background: linear-gradient(135deg, #1a2940 0%, #2c3e50 100%);
       color: #ffffff;
       width: 100%;
       margin: 0;
       padding-left: 0;
       padding-right: 0;
   }

   .acerca-full {
       width: 100%;
       padding: 0;
       margin: 0;
   }

   .acerca-content {
       max-width: 1200px;
       margin: 0 auto;
       padding: 0 2rem;
   }

   .acerca-imagen {
       text-align: center;
   }

   .acerca-imagen img {
       max-width: 100%;
       max-height: 450px;
       width: 100%;
       height: auto;
       object-fit: cover;
       border-radius: 16px;
       border: 4px solid rgba(255,255,255,0.1);
       box-shadow: 0 20px 60px rgba(0,0,0,0.3);
       transition: all 0.3s ease;
   }

   .acerca-imagen img:hover {
       transform: scale(1.02);
       border-color: rgba(192, 57, 43, 0.4);
       box-shadow: 0 25px 70px rgba(0,0,0,0.4);
   }

   .acerca-badge {
       display: inline-block;
       background: rgba(192, 57, 43, 0.2);
       color: #c0392b;
       padding: 0.3rem 1.5rem;
       border-radius: 50px;
       font-size: 0.8rem;
       font-weight: 600;
       text-transform: uppercase;
       letter-spacing: 1px;
       margin-bottom: 1rem;
       border: 1px solid rgba(192, 57, 43, 0.3);
   }

   .acerca-title {
       font-size: 2.8rem;
       font-weight: 800;
       margin-bottom: 1.5rem;
       letter-spacing: -0.02em;
       background: linear-gradient(to right, #ffffff, #f1c40f);
       -webkit-background-clip: text;
       -webkit-text-fill-color: transparent;
       background-clip: text;
   }

   .acerca-texto {
       font-size: 1.1rem;
       line-height: 1.8;
       color: rgba(255,255,255,0.85);
   }

   .acerca-texto p {
       margin-bottom: 1rem;
   }

   .acerca-texto strong {
       color: #f1c40f;
       font-weight: 600;
   }

   /* ========================================
   CARDS SECTION (index.css)
   ======================================== */
   .cards-section {
       padding: 4rem 0;
       background: #f8f9fa;
   }

   .card-modern {
       background: #ffffff;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.08);
       transition: all 0.3s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-modern:hover {
       transform: translateY(-10px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.15);
   }

   .card-image {
       position: relative;
       overflow: hidden;
       height: 200px;
   }

   .card-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.3s ease;
   }

   .card-modern:hover .card-image img {
       transform: scale(1.08);
   }

   .card-body {
       padding: 1.5rem;
       flex: 1;
   }

   .card-title {
       font-size: 1.2rem;
       font-weight: 700;
       color: #1a2940;
       margin-bottom: 0.5rem;
   }

   .card-text {
       color: #6c757d;
       font-size: 0.9rem;
       line-height: 1.6;
   }

   .card-footer {
       padding: 1rem 1.5rem;
       background: transparent;
       border-top: 1px solid rgba(0,0,0,0.05);
   }

   .btn-card {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.5rem 1.5rem;
       background: transparent;
       color: #1a2940;
       border: 2px solid #1a2940;
       border-radius: 50px;
       font-weight: 600;
       transition: all 0.3s ease;
       text-decoration: none;
   }

   .btn-card:hover {
       background: #1a2940;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
   }

   /* ========================================
   CARDS REDISEÑADAS - TEXTO BLANCO (index.css)
   ======================================== */
   .section-badge {
       display: inline-block;
       background: rgba(192, 57, 43, 0.1);
       color: #c0392b;
       padding: 0.4rem 1.5rem;
       border-radius: 50px;
       font-size: 0.8rem;
       font-weight: 600;
       text-transform: uppercase;
       letter-spacing: 1px;
       margin-bottom: 0.5rem;
   }

   .section-title {
       font-size: 2.5rem;
       font-weight: 800;
       color: #1a2940;
       margin-bottom: 0.5rem;
       letter-spacing: -0.02em;
   }

   .section-subtitle {
       font-size: 1.1rem;
       color: #6c757d;
       max-width: 600px;
       margin: 0 auto;
   }

   .card-modern-new {
       background: #1a2940;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
       border: none;
       position: relative;
   }

   .card-modern-new:hover {
       transform: translateY(-12px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-image-new {
       position: relative;
       overflow: hidden;
       height: 200px;
   }

   .card-image-new img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-modern-new:hover .card-image-new img {
       transform: scale(1.08);
   }

   .card-overlay-new {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       background: linear-gradient(135deg, rgba(26, 41, 64, 0.7) 0%, rgba(192, 57, 43, 0.3) 100%);
       display: flex;
       align-items: center;
       justify-content: center;
       opacity: 0;
       transition: all 0.4s ease;
   }

   .card-modern-new:hover .card-overlay-new {
       opacity: 1;
   }

   .card-overlay-new i {
       font-size: 3.5rem;
       color: #ffffff;
       transform: scale(0.8);
       transition: all 0.4s ease;
   }

   .card-modern-new:hover .card-overlay-new i {
       transform: scale(1);
   }

   .card-body-new {
       padding: 1.8rem 1.8rem 1rem 1.8rem;
       flex: 1;
       position: relative;
   }

   .card-icon-new {
       width: 50px;
       height: 50px;
       border-radius: 12px;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 1.5rem;
       margin-bottom: 1rem;
       transition: all 0.3s ease;
   }

   .card-parroquias .card-icon-new {
       background: rgba(52, 152, 219, 0.2);
       color: #3498db;
   }

   .card-noticias .card-icon-new {
       background: rgba(243, 156, 18, 0.2);
       color: #f39c12;
   }

   .card-movimientos .card-icon-new {
       background: rgba(155, 89, 182, 0.2);
       color: #9b59b6;
   }

   .card-modern-new:hover .card-icon-new {
       transform: scale(1.1) rotate(-5deg);
   }

   .card-title-new {
       font-size: 1.3rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.8rem;
   }

   .card-text-new {
       color: rgba(255,255,255,0.8);
       font-size: 0.95rem;
       line-height: 1.6;
       margin-bottom: 1.2rem;
   }

   .card-stats {
       display: flex;
       flex-wrap: wrap;
       gap: 0.8rem;
   }

   .stat-item {
       font-size: 0.8rem;
       color: rgba(255,255,255,0.7);
       display: flex;
       align-items: center;
       gap: 0.3rem;
   }

   .stat-item i {
       color: #c0392b;
       font-size: 0.6rem;
   }

   .card-footer-new {
       padding: 1rem 1.8rem 1.8rem 1.8rem;
       background: transparent;
       border-top: none;
   }

   .btn-card-new {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       text-decoration: none;
       width: 100%;
       justify-content: center;
   }

   .btn-card-new:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-card-new i {
       transition: all 0.3s ease;
   }

   .btn-card-new:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   BUSCADOR HERO (buscador.css)
   ======================================== */
   .buscador-hero {
       height: auto;
       min-height: 400px;
       padding: 3rem 0;
   }

   .buscador-form-wrapper {
       max-width: 650px;
       margin: 2rem auto 0;
   }

   .buscador-form .input-group {
       background: rgba(255,255,255,0.1);
       border-radius: 50px;
       overflow: hidden;
       backdrop-filter: blur(10px);
       border: 2px solid rgba(255,255,255,0.2);
       transition: all 0.3s ease;
   }

   .buscador-form .input-group:hover,
   .buscador-form .input-group:focus-within {
       border-color: #c0392b;
       box-shadow: 0 0 30px rgba(192, 57, 43, 0.2);
   }

   .buscador-form .form-control {
       background: transparent;
       border: none;
       padding: 0.8rem 1.5rem;
       font-size: 1.1rem;
       color: #ffffff;
   }

   .buscador-form .form-control::placeholder {
       color: rgba(255,255,255,0.6);
   }

   .buscador-form .form-control:focus {
       box-shadow: none;
       background: transparent;
       color: #ffffff;
   }

   .btn-buscar {
       background: #c0392b;
       color: #fff;
       border: none;
       padding: 0.8rem 2rem;
       font-weight: 600;
       transition: all 0.3s ease;
       border-radius: 0 50px 50px 0;
   }

   .btn-buscar:hover {
       background: #e74c3c;
       color: #fff;
   }

   /* ========================================
   RESULTADOS (buscador.css)
   ======================================== */
   .resultados-section {
       padding: 3rem 0;
       background: #f8f9fa;
       min-height: 400px;
   }

   .resultados-header {
       margin-bottom: 2rem;
       padding-bottom: 1rem;
       border-bottom: 2px solid #e9ecef;
   }

   .resultados-header h2 {
       font-size: 1.8rem;
       font-weight: 700;
       color: #1a2940;
       margin-bottom: 0.2rem;
   }

   .resultados-header h2 span {
       color: #c0392b;
   }

   .total-resultados {
       color: #6c757d;
       font-size: 0.95rem;
   }

   /* ========================================
   CARDS DE RESULTADOS (buscador.css)
   ======================================== */
   .card-resultado {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-resultado:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-resultado-image {
       position: relative;
       height: 180px;
       overflow: hidden;
   }

   .card-resultado-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

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

   .badge-tipo {
       position: absolute;
       top: 0.8rem;
       right: 0.8rem;
       padding: 0.3rem 0.8rem;
       border-radius: 50px;
       font-size: 0.7rem;
       font-weight: 600;
       text-transform: uppercase;
       letter-spacing: 0.5px;
       backdrop-filter: blur(5px);
   }

   .badge-tipo.parroquia {
       background: rgba(52, 152, 219, 0.9);
       color: #fff;
   }

   .badge-tipo.capilla {
       background: rgba(46, 204, 113, 0.9);
       color: #fff;
   }

   .badge-tipo.movimiento {
       background: rgba(155, 89, 182, 0.9);
       color: #fff;
   }

   .badge-tipo.noticia {
       background: rgba(243, 156, 18, 0.9);
       color: #fff;
   }

   .badge-tipo i {
       margin-right: 0.3rem;
   }

   .card-resultado-body {
       padding: 1.2rem;
       flex: 1;
   }

   .card-resultado-body h5 {
       font-size: 1.05rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .card-resultado-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       line-height: 1.6;
       margin-bottom: 0.5rem;
   }

   .card-resultado-body .text-muted {
       color: rgba(255,255,255,0.6) !important;
       font-size: 0.8rem;
   }

   .card-resultado-body .text-muted i {
       margin-right: 0.3rem;
       color: #c0392b;
   }

   .card-resultado-footer {
       padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       background: transparent;
       border-top: 1px solid rgba(255,255,255,0.05);
   }

   .btn-resultado {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.5rem 1.5rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.85rem;
       transition: all 0.3s ease;
       text-decoration: none;
       width: 100%;
       justify-content: center;
   }

   .btn-resultado:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-resultado i {
       transition: all 0.3s ease;
   }

   .btn-resultado:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   SIN RESULTADOS (buscador.css)
   ======================================== */
   .sin-resultados {
       text-align: center;
       padding: 4rem 0;
   }

   .sin-resultados i {
       font-size: 4rem;
       color: #c0392b;
       opacity: 0.3;
   }

   .sin-resultados h3 {
       color: #1a2940;
       margin-top: 1rem;
       font-weight: 700;
   }

   .sin-resultados p {
       color: #6c757d;
   }

   /* ========================================
   BUSCADOR INICIO (buscador.css)
   ======================================== */
   .buscador-inicio {
       padding: 3rem 0;
   }

   .sugerencias {
       display: flex;
       justify-content: center;
       gap: 1rem;
       flex-wrap: wrap;
       margin-top: 1.5rem;
   }

   .sugerencia {
       background: #1a2940;
       color: #ffffff;
       padding: 0.4rem 1.2rem;
       border-radius: 50px;
       font-size: 0.85rem;
       transition: all 0.3s ease;
       cursor: default;
   }

   .sugerencia:hover {
       background: #c0392b;
       transform: translateY(-2px);
   }

   /* ========================================
   HERO SECTION OVERRIDE (buscador.css)
   ======================================== */
   .hero-section {
       position: relative;
       width: 100%;
       display: flex;
       align-items: center;
       justify-content: center;
       background: url('/assets/img/000.webp') center center / cover no-repeat;
       overflow: hidden;
   }

   .hero-section::before {
       content: '';
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       background: rgba(0, 0, 0, 0.6);
       z-index: 1;
   }

   .hero-overlay {
       display: none;
   }

   .hero-content {
       position: relative;
       z-index: 2;
       text-align: center;
       padding: 2rem;
       width: 100%;
   }

   .hero-logo {
       max-height: 80px;
       width: auto;
       margin-bottom: 1rem;
       filter: drop-shadow(0 4px 12px rgba(0,0,0,0.3));
   }

   .hero-title {
       font-size: 3.5rem;
       font-weight: 800;
       color: #ffffff;
       margin-bottom: 0.5rem;
       letter-spacing: -0.03em;
       text-shadow: 0 2px 20px rgba(0,0,0,0.3);
   }

   .hero-subtitle {
       font-size: 1.2rem;
       color: rgba(255,255,255,0.9);
       font-weight: 300;
       line-height: 1.6;
       text-shadow: 0 2px 10px rgba(0,0,0,0.3);
   }

   /* ========================================
   MOVIMIENTOS (movimiento.css)
   ======================================== */
   .card-modern-movimiento {
       background: #1a2940;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
       border: none;
       position: relative;
   }

   .card-modern-movimiento:hover {
       transform: translateY(-12px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-image-movimiento {
       position: relative;
       overflow: hidden;
       height: 200px;
   }

   .card-image-movimiento img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-modern-movimiento:hover .card-image-movimiento img {
       transform: scale(1.08);
   }

   .card-overlay-movimiento {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       background: linear-gradient(135deg, rgba(26, 41, 64, 0.7) 0%, rgba(155, 89, 182, 0.3) 100%);
       display: flex;
       align-items: center;
       justify-content: center;
       opacity: 0;
       transition: all 0.4s ease;
   }

   .card-modern-movimiento:hover .card-overlay-movimiento {
       opacity: 1;
   }

   .card-overlay-movimiento i {
       font-size: 3.5rem;
       color: #ffffff;
       transform: scale(0.8);
       transition: all 0.4s ease;
   }

   .card-modern-movimiento:hover .card-overlay-movimiento i {
       transform: scale(1);
   }

   .card-body-movimiento {
       padding: 1.8rem 1.8rem 1rem 1.8rem;
       flex: 1;
       position: relative;
   }

   .card-icon-movimiento {
       width: 50px;
       height: 50px;
       border-radius: 12px;
       background: rgba(155, 89, 182, 0.2);
       color: #9b59b6;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 1.5rem;
       margin-bottom: 1rem;
       transition: all 0.3s ease;
   }

   .card-modern-movimiento:hover .card-icon-movimiento {
       transform: scale(1.1) rotate(-5deg);
   }

   .card-title-movimiento {
       font-size: 1.2rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.8rem;
       display: -webkit-box;
       -webkit-line-clamp: 2;
       line-clamp: 2;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }

   .card-text-movimiento {
       color: rgba(255,255,255,0.8);
       font-size: 0.95rem;
       line-height: 1.6;
       margin-bottom: 0;
       display: -webkit-box;
       -webkit-line-clamp: 3;
       line-clamp: 3;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }

   .card-footer-movimiento {
       padding: 1rem 1.8rem 1.8rem 1.8rem;
       background: transparent;
       border-top: none;
   }

   .btn-card-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       text-decoration: none;
       width: 100%;
       justify-content: center;
   }

   .btn-card-movimiento:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-card-movimiento i {
       transition: all 0.3s ease;
   }

   .btn-card-movimiento:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   NOTICIAS (noticias.css)
   ======================================== */
   .card-modern-noticia {
       background: #1a2940;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
       border: none;
       position: relative;
   }

   .card-modern-noticia:hover {
       transform: translateY(-12px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-image-noticia {
       position: relative;
       overflow: hidden;
       height: 200px;
   }

   .card-image-noticia img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-modern-noticia:hover .card-image-noticia img {
       transform: scale(1.08);
   }

   .card-noticia-date {
       position: absolute;
       top: 0.8rem;
       right: 0.8rem;
       background: rgba(0,0,0,0.75);
       color: #fff;
       padding: 0.2rem 0.8rem;
       border-radius: 50px;
       font-size: 0.7rem;
       backdrop-filter: blur(5px);
       z-index: 2;
   }

   .card-noticia-date i {
       margin-right: 0.2rem;
   }

   .card-overlay-noticia {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       background: linear-gradient(135deg, rgba(26, 41, 64, 0.7) 0%, rgba(243, 156, 18, 0.3) 100%);
       display: flex;
       align-items: center;
       justify-content: center;
       opacity: 0;
       transition: all 0.4s ease;
   }

   .card-modern-noticia:hover .card-overlay-noticia {
       opacity: 1;
   }

   .card-overlay-noticia i {
       font-size: 3.5rem;
       color: #ffffff;
       transform: scale(0.8);
       transition: all 0.4s ease;
   }

   .card-modern-noticia:hover .card-overlay-noticia i {
       transform: scale(1);
   }

   .card-body-noticia {
       padding: 1.8rem 1.8rem 1rem 1.8rem;
       flex: 1;
       position: relative;
   }

   .card-icon-noticia {
       width: 50px;
       height: 50px;
       border-radius: 12px;
       background: rgba(243, 156, 18, 0.2);
       color: #f39c12;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 1.5rem;
       margin-bottom: 1rem;
       transition: all 0.3s ease;
   }

   .card-modern-noticia:hover .card-icon-noticia {
       transform: scale(1.1) rotate(-5deg);
   }

   .card-title-noticia {
       font-size: 1.2rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.8rem;
       display: -webkit-box;
       -webkit-line-clamp: 2;
       line-clamp: 2;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }

   .card-text-noticia {
       color: rgba(255,255,255,0.8);
       font-size: 0.95rem;
       line-height: 1.6;
       margin-bottom: 0;
       display: -webkit-box;
       -webkit-line-clamp: 3;
       line-clamp: 3;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }

   .card-footer-noticia {
       padding: 1rem 1.8rem 1.8rem 1.8rem;
       background: transparent;
       border-top: none;
   }

   .btn-card-noticia {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       text-decoration: none;
       width: 100%;
       justify-content: center;
   }

   .btn-card-noticia:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-card-noticia i {
       transition: all 0.3s ease;
   }

   .btn-card-noticia:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   PAGINACIÓN (noticias.css)
   ======================================== */
   .pagination .page-link {
       color: #1a2940;
       border-radius: 8px;
       margin: 0 3px;
       transition: all 0.3s ease;
       background: #ffffff;
       border: 1px solid #dee2e6;
   }

   .pagination .page-link:hover {
       background: #1a2940;
       color: white;
       border-color: #1a2940;
   }

   .pagination .page-item.active .page-link {
       background: #c0392b;
       border-color: #c0392b;
       color: white;
   }

   .pagination .page-item.disabled .page-link {
       color: #6c757d;
       background: transparent;
       border-color: #dee2e6;
   }

   /* ========================================
   PARROQUIAS (parroquias.css)
   ======================================== */
   .card-modern-parroquia {
       background: #1a2940;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
       border: none;
       position: relative;
   }

   .card-modern-parroquia:hover {
       transform: translateY(-12px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-image-parroquia {
       position: relative;
       overflow: hidden;
       height: 200px;
   }

   .card-image-parroquia img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-modern-parroquia:hover .card-image-parroquia img {
       transform: scale(1.08);
   }

   .card-overlay-parroquia {
       position: absolute;
       top: 0;
       left: 0;
       right: 0;
       bottom: 0;
       background: linear-gradient(135deg, rgba(26, 41, 64, 0.7) 0%, rgba(192, 57, 43, 0.3) 100%);
       display: flex;
       align-items: center;
       justify-content: center;
       opacity: 0;
       transition: all 0.4s ease;
   }

   .card-modern-parroquia:hover .card-overlay-parroquia {
       opacity: 1;
   }

   .card-overlay-parroquia i {
       font-size: 3.5rem;
       color: #ffffff;
       transform: scale(0.8);
       transition: all 0.4s ease;
   }

   .card-modern-parroquia:hover .card-overlay-parroquia i {
       transform: scale(1);
   }

   .card-body-parroquia {
       padding: 1.8rem 1.8rem 1rem 1.8rem;
       flex: 1;
       position: relative;
   }

   .card-icon-parroquia {
       width: 50px;
       height: 50px;
       border-radius: 12px;
       background: rgba(52, 152, 219, 0.2);
       color: #3498db;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 1.5rem;
       margin-bottom: 1rem;
       transition: all 0.3s ease;
   }

   .card-modern-parroquia:hover .card-icon-parroquia {
       transform: scale(1.1) rotate(-5deg);
   }

   .card-title-parroquia {
       font-size: 1.3rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.8rem;
   }

   .card-text-parroquia {
       color: rgba(255,255,255,0.8);
       font-size: 0.95rem;
       line-height: 1.6;
       margin-bottom: 0.8rem;
   }

   .card-direccion {
       color: rgba(255,255,255,0.6);
       font-size: 0.85rem;
       margin-bottom: 0;
   }

   .card-direccion i {
       margin-right: 0.3rem;
       color: #3498db;
   }

   .card-footer-parroquia {
       padding: 1rem 1.8rem 1.8rem 1.8rem;
       background: transparent;
       border-top: none;
   }

   .btn-card-parroquia {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       text-decoration: none;
       width: 100%;
       justify-content: center;
   }

   .btn-card-parroquia:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-card-parroquia i {
       transition: all 0.3s ease;
   }

   .btn-card-parroquia:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   DETALLES - TÍTULOS (capilla_detalle.css / parroquia_detalle.css)
   ======================================== */
   .section-title-detalle {
       font-size: 1.8rem;
       font-weight: 700;
       color: #1a2940;
   }

   .section-title-movimiento {
       font-size: 1.8rem;
       font-weight: 700;
       color: #1a2940;
       margin-bottom: 1.5rem;
   }

   /* ========================================
   BOTÓN VER MÁS - ESTILO UNIFICADO (capilla_detalle.css / parroquia_detalle.css)
   ======================================== */
   .btn-ver-mas-detalle {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.5rem 1.5rem;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.85rem;
       transition: all 0.3s ease;
       text-decoration: none;
       cursor: pointer;
   }

   .btn-ver-mas-detalle:hover {
       transform: translateX(5px);
       text-decoration: none;
   }

   .btn-ver-mas-detalle i {
       transition: all 0.3s ease;
   }

   .btn-ver-mas-detalle:hover i {
       transform: translateX(5px);
   }

   /* Colores específicos para cada tipo */
   .btn-noticia {
       background: #f39c12;
       color: #ffffff;
   }

   .btn-noticia:hover {
       background: #e67e22;
       color: #ffffff;
       box-shadow: 0 8px 25px rgba(243, 156, 18, 0.4);
   }

   .btn-movimiento {
       background: #9b59b6;
       color: #ffffff;
   }

   .btn-movimiento:hover {
       background: #8e44ad;
       color: #ffffff;
       box-shadow: 0 8px 25px rgba(155, 89, 182, 0.4);
   }

   .btn-capilla {
       background: #2ecc71;
       color: #ffffff;
   }

   .btn-capilla:hover {
       background: #27ae60;
       color: #ffffff;
       box-shadow: 0 8px 25px rgba(46, 204, 113, 0.4);
   }

   /* ========================================
   MOVIMIENTOS DETALLE (capilla_detalle.css / parroquia_detalle.css / movimiento_detalle.css)
   ======================================== */
   .card-movimiento-detalle {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-movimiento-detalle:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-movimiento-detalle-image {
       height: 160px;
       overflow: hidden;
   }

   .card-movimiento-detalle-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-movimiento-detalle:hover .card-movimiento-detalle-image img {
       transform: scale(1.05);
   }

   .card-movimiento-detalle-body {
       padding: 1.2rem;
       flex: 1;
   }

   .card-movimiento-detalle-body h5 {
       font-size: 1rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .card-movimiento-detalle-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       line-height: 1.6;
       margin-bottom: 0.8rem;
   }

   /* ========================================
   NOTICIAS DETALLE (capilla_detalle.css / parroquia_detalle.css / noticia_detalle.css)
   ======================================== */
   .card-noticia-detalle {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-noticia-detalle:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-noticia-detalle-image {
       height: 160px;
       overflow: hidden;
   }

   .card-noticia-detalle-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-noticia-detalle:hover .card-noticia-detalle-image img {
       transform: scale(1.05);
   }

   .card-noticia-detalle-body {
       padding: 1.2rem;
       flex: 1;
   }

   .card-noticia-detalle-body h5 {
       font-size: 1rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .card-noticia-detalle-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       line-height: 1.6;
       margin-bottom: 0.8rem;
   }

   /* ========================================
   CAPILLAS DETALLE (parroquia_detalle.css)
   ======================================== */
   .card-capilla-detalle {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-capilla-detalle:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-capilla-detalle-image {
       height: 160px;
       overflow: hidden;
   }

   .card-capilla-detalle-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-capilla-detalle:hover .card-capilla-detalle-image img {
       transform: scale(1.05);
   }

   .card-capilla-detalle-body {
       padding: 1.2rem;
       flex: 1;
   }

   .card-capilla-detalle-body h5 {
       font-size: 1rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .card-capilla-detalle-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       line-height: 1.6;
       margin-bottom: 0.8rem;
   }

   /* ========================================
   HISTORIA DETALLE (capilla_detalle.css / movimiento_detalle.css / parroquia_detalle.css)
   ======================================== */
   .card-historia-detalle {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       margin-bottom: 2rem;
   }

   .card-historia-detalle:hover {
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-historia-header {
       padding: 1rem 1.5rem;
       background: rgba(192, 57, 43, 0.2);
       border-bottom: 1px solid rgba(255,255,255,0.05);
   }

   .card-historia-header h3 {
       font-size: 1.3rem;
       font-weight: 700;
       color: #ffffff;
       margin: 0;
   }

   .card-historia-header h3 i {
       color: #c0392b;
       margin-right: 0.5rem;
   }

   .card-historia-body {
       padding: 1.5rem;
       color: rgba(255,255,255,0.85);
       font-size: 1rem;
       line-height: 1.8;
   }

   .btn-historia-detalle {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.5rem 1.5rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.85rem;
       transition: all 0.3s ease;
       cursor: pointer;
   }

   .btn-historia-detalle:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   .btn-historia-detalle i {
       transition: all 0.3s ease;
   }

   .btn-historia-detalle:hover i {
       transform: translateX(5px);
   }

   /* ========================================
   HISTORIA MOVIMIENTO (movimiento_detalle.css)
   ======================================== */
   .card-historia-movimiento {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       margin-bottom: 2rem;
   }

   .card-historia-movimiento:hover {
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .btn-historia-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #c0392b;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       cursor: pointer;
   }

   .btn-historia-movimiento:hover {
       background: #e74c3c;
       transform: translateX(5px);
       box-shadow: 0 8px 25px rgba(192, 57, 43, 0.4);
   }

   /* ========================================
   DESCRIPCIÓN MOVIMIENTO (movimiento_detalle.css)
   ======================================== */
   .card-descripcion-movimiento {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       margin-bottom: 2rem;
   }

   .card-descripcion-movimiento:hover {
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-descripcion-header {
       padding: 1rem 1.5rem;
       background: rgba(52, 152, 219, 0.2);
       border-bottom: 1px solid rgba(255,255,255,0.05);
   }

   .card-descripcion-header h3 {
       font-size: 1.3rem;
       font-weight: 700;
       color: #ffffff;
       margin: 0;
   }

   .card-descripcion-header h3 i {
       color: #3498db;
       margin-right: 0.5rem;
   }

   .card-descripcion-body {
       padding: 1.5rem;
       color: rgba(255,255,255,0.85);
       font-size: 1rem;
       line-height: 1.8;
   }

   .btn-descripcion-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 1.8rem;
       background: #3498db;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.9rem;
       transition: all 0.3s ease;
       cursor: pointer;
   }

   .btn-descripcion-movimiento:hover {
       background: #2980b9;
       transform: translateX(5px);
       box-shadow: 0 8px 25px rgba(52, 152, 219, 0.4);
   }

   /* ========================================
   NOTICIAS MOVIMIENTO (movimiento_detalle.css)
   ======================================== */
   .card-noticia-movimiento {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       height: 100%;
       display: flex;
       flex-direction: column;
   }

   .card-noticia-movimiento:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-noticia-movimiento-image {
       height: 160px;
       overflow: hidden;
   }

   .card-noticia-movimiento-image img {
       width: 100%;
       height: 100%;
       object-fit: cover;
       transition: all 0.5s ease;
   }

   .card-noticia-movimiento:hover .card-noticia-movimiento-image img {
       transform: scale(1.05);
   }

   .card-noticia-movimiento-body {
       padding: 1.2rem;
       flex: 1;
   }

   .card-noticia-movimiento-body h5 {
       font-size: 1rem;
       font-weight: 700;
       color: #ffffff;
       margin-bottom: 0.5rem;
   }

   .card-noticia-movimiento-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       line-height: 1.6;
       margin-bottom: 0.8rem;
   }

   .btn-noticia-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.3rem;
       color: #f39c12;
       font-weight: 600;
       font-size: 0.85rem;
       text-decoration: none;
       transition: all 0.3s ease;
   }

   .btn-noticia-movimiento:hover {
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
   }

   /* ========================================
   BOTÓN VOLVER (capilla_detalle.css / movimiento_detalle.css / noticia_detalle.css / parroquia_detalle.css)
   ======================================== */
   .btn-volver {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 2rem;
       background: #1a2940;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.95rem;
       transition: all 0.3s ease;
       text-decoration: none;
   }

   .btn-volver:hover {
       background: #c0392b;
       color: #ffffff;
       transform: translateX(-5px);
       text-decoration: none;
   }

   .btn-volver-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.6rem 2rem;
       background: #1a2940;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.95rem;
       transition: all 0.3s ease;
       text-decoration: none;
   }

   .btn-volver-movimiento:hover {
       background: #c0392b;
       color: #ffffff;
       transform: translateX(-5px);
       text-decoration: none;
   }

   .btn-volver-noticia {
       display: inline-flex;
       align-items: center;
       justify-content: center;
       gap: 0.5rem;
       padding: 0.7rem 1.8rem;
       background: #1a2940;
       color: #ffffff;
       border: none;
       border-radius: 50px;
       font-weight: 600;
       font-size: 0.95rem;
       transition: all 0.3s ease;
       text-decoration: none;
   }

   .btn-volver-noticia:hover {
       background: #c0392b;
       color: #ffffff;
       transform: translateX(-5px);
       text-decoration: none;
   }

   /* ========================================
   PARROQUIAS Y CAPILLAS (movimiento_detalle.css)
   ======================================== */
   .card-parroquia-movimiento,
   .card-capilla-movimiento {
       background: #1a2940;
       border-radius: 16px;
       padding: 1.5rem;
       height: 100%;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
       display: flex;
       align-items: flex-start;
       gap: 1rem;
   }

   .card-parroquia-movimiento:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
       border: 1px solid rgba(192, 57, 43, 0.3);
   }

   .card-capilla-movimiento:hover {
       transform: translateY(-8px);
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
       border: 1px solid rgba(155, 89, 182, 0.3);
   }

   .tipo-parroquia {
       display: inline-block;
       background: #c0392b;
       color: #fff;
       padding: 0.1rem 0.6rem;
       border-radius: 4px;
       font-size: 0.7rem;
       font-weight: 600;
       margin-right: 0.3rem;
       vertical-align: middle;
       text-transform: uppercase;
   }

   .tipo-capilla {
       display: inline-block;
       background: #9b59b6;
       color: #fff;
       padding: 0.1rem 0.6rem;
       border-radius: 4px;
       font-size: 0.7rem;
       font-weight: 600;
       margin-right: 0.3rem;
       vertical-align: middle;
       text-transform: uppercase;
   }

   .card-parroquia-body {
       flex: 1;
   }

   .card-parroquia-body h5 {
       color: #ffffff;
       font-weight: 700;
       font-size: 1.1rem;
       margin-bottom: 0.5rem;
   }

   .card-parroquia-body p {
       color: rgba(255,255,255,0.8);
       font-size: 0.9rem;
       margin-bottom: 0.3rem;
   }

   .card-parroquia-body p i {
       color: #c0392b;
       margin-right: 0.5rem;
   }

   .card-capilla-movimiento .card-parroquia-body p i {
       color: #9b59b6;
   }

   .btn-parroquia-movimiento,
   .btn-capilla-movimiento {
       display: inline-flex;
       align-items: center;
       gap: 0.5rem;
       padding: 0.4rem 1.2rem;
       border-radius: 50px;
       font-size: 0.85rem;
       font-weight: 600;
       transition: all 0.3s ease;
       text-decoration: none;
       border: none;
       cursor: pointer;
   }

   .btn-parroquia-movimiento {
       background: #c0392b;
       color: #ffffff;
   }

   .btn-parroquia-movimiento:hover {
       background: #e74c3c;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
   }

   .btn-capilla-movimiento {
       background: #9b59b6;
       color: #ffffff;
   }

   .btn-capilla-movimiento:hover {
       background: #af7ac5;
       color: #ffffff;
       transform: translateX(5px);
       text-decoration: none;
   }

   /* ========================================
   MODALES - ESTILOS COMPLETOS (capilla_detalle.css / movimiento_detalle.css / parroquia_detalle.css)
   ======================================== */
   .modal-overlay {
       display: none;
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       background: rgba(0, 0, 0, 0.7);
       z-index: 9999;
       align-items: center;
       justify-content: center;
       padding: 20px;
       overflow-y: auto;
       animation: fadeIn 0.3s ease;
   }

   .modal-overlay.active {
       display: flex !important;
   }

   .modal-contenido {
       background: white;
       border-radius: 16px;
       max-width: 800px;
       width: 100%;
       max-height: 90vh;
       overflow-y: auto;
       position: relative;
       animation: slideUp 0.3s ease;
       box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
   }

   .modal-contenido::-webkit-scrollbar {
       width: 8px;
   }
   .modal-contenido::-webkit-scrollbar-track {
       background: #f1f1f1;
       border-radius: 10px;
   }
   .modal-contenido::-webkit-scrollbar-thumb {
       background: #888;
       border-radius: 10px;
   }
   .modal-contenido::-webkit-scrollbar-thumb:hover {
       background: #555;
   }

   .modal-cerrar {
       position: sticky;
       top: 15px;
       right: 15px;
       float: right;
       width: 40px;
       height: 40px;
       border: none;
       background: rgba(0, 0, 0, 0.7);
       color: white;
       border-radius: 50%;
       font-size: 1.2rem;
       cursor: pointer;
       transition: all 0.3s ease;
       z-index: 10;
       margin: 15px;
       display: flex;
       align-items: center;
       justify-content: center;
   }

   .modal-cerrar:hover {
       background: #e74c3c;
       transform: rotate(90deg);
   }

   .modal-imagen {
       width: 100%;
       height: 300px;
       overflow: hidden;
   }

   .modal-imagen img {
       width: 100%;
       height: 100%;
       object-fit: cover;
   }

   .modal-titulo {
       padding: 1.5rem 2rem 0.5rem 2rem;
   }

   .modal-titulo h2 {
       font-weight: 700;
       color: #1a2940;
       margin-bottom: 0.2rem;
   }

   .modal-titulo p {
       color: #6c757d;
       font-size: 0.9rem;
   }

   .modal-texto {
       padding: 0.5rem 2rem 2rem 2rem;
       line-height: 1.8;
       color: #333;
       font-size: 1.05rem;
   }

   /* ========================================
   SACERDOTES MODAL (capilla_detalle.css / parroquia_detalle.css)
   ======================================== */
   .modal-sacerdotes {
       padding: 0.5rem 2rem 2rem 2rem;
       display: grid;
       grid-template-columns: repeat(3, 1fr);
       gap: 1rem;
   }

   .sacerdote-card {
       display: flex;
       flex-direction: column;
       align-items: center;
       text-align: center;
       padding: 1.2rem 0.8rem;
       background: #f8f9fa;
       border-radius: 12px;
       border: 1px solid #e9ecef;
       transition: all 0.3s ease;
   }

   .sacerdote-card:hover {
       background: #e9ecef;
       transform: translateY(-5px);
       box-shadow: 0 5px 15px rgba(0,0,0,0.1);
   }

   .sacerdote-avatar {
       width: 100px;
       height: 100px;
       border-radius: 50%;
       display: flex;
       align-items: center;
       justify-content: center;
       background: #e9ecef;
       margin-bottom: 0.8rem;
       overflow: hidden;
       flex-shrink: 0;
   }

   .sacerdote-img {
       width: 100px;
       height: 100px;
       border-radius: 50%;
       object-fit: cover;
       border: 3px solid #1a2940;
   }

   .sacerdote-info h5 {
       font-weight: 600;
       color: #1a2940;
       margin-bottom: 0.2rem;
       font-size: 0.95rem;
   }

   .sacerdote-info p {
       color: #6c757d;
       font-size: 0.8rem;
       margin: 0;
   }

   .sacerdote-info p i {
       margin-right: 5px;
   }

   /* ========================================
   MODAL UNIFICADO DE MIEMBROS (movimiento_detalle.css)
   ======================================== */
   .modal-miembros-unificado {
       padding: 0.5rem 2rem 1rem 2rem;
       display: grid;
       grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
       gap: 1rem;
   }

   .miembro-card-unificado {
       display: flex;
       align-items: center;
       gap: 1rem;
       padding: 1rem;
       background: #f8f9fa;
       border-radius: 12px;
       border: 1px solid #e9ecef;
       transition: all 0.3s ease;
   }

   .miembro-card-unificado:hover {
       background: #e9ecef;
       transform: translateY(-3px);
       box-shadow: 0 5px 15px rgba(0,0,0,0.08);
   }

   .miembro-avatar-unificado {
       width: 70px;
       height: 70px;
       min-width: 70px;
       border-radius: 50%;
       display: flex;
       align-items: center;
       justify-content: center;
       background: #e9ecef;
       overflow: hidden;
   }

   .miembro-img-unificado {
       width: 70px;
       height: 70px;
       border-radius: 50%;
       object-fit: cover;
       border: 3px solid #1a2940;
   }

   .miembro-info-unificado {
       flex: 1;
   }

   .miembro-info-unificado h5 {
       font-weight: 600;
       color: #1a2940;
       margin-bottom: 0.2rem;
       font-size: 1rem;
   }

   .rol-badge {
       display: inline-block;
       padding: 0.15rem 0.8rem;
       border-radius: 20px;
       font-size: 0.7rem;
       font-weight: 600;
       color: #fff;
       margin-bottom: 0.3rem;
   }

   .miembro-info-unificado p {
       color: #6c757d;
       font-size: 0.8rem;
       margin: 0.1rem 0;
   }

   .miembro-info-unificado p i {
       width: 16px;
       margin-right: 5px;
       color: #1a2940;
   }

   .modal-footer-unificado {
       padding: 1rem 2rem 2rem 2rem;
       border-top: 1px solid #e9ecef;
   }

   .contador-numero {
       display: block;
       font-size: 1.8rem;
       font-weight: 700;
   }

   .contador-etiqueta {
       display: block;
       font-size: 0.75rem;
       color: #6c757d;
   }

   .text-purple {
       color: #6f42c1 !important;
   }

   .text-success {
       color: #28a745 !important;
   }

   .info-card.clickable {
       transition: all 0.3s ease;
       cursor: pointer;
   }

   .info-card.clickable:hover {
       transform: translateY(-5px);
       box-shadow: 0 8px 25px rgba(0,0,0,0.12);
       border-color: #0D6EFD;
   }

   /* ========================================
   CARD DETALLE NOTICIA (noticia_detalle.css)
   ======================================== */
   .card-detalle-noticia {
       background: #24344C;
       border-radius: 20px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
       transition: all 0.4s ease;
   }

   .card-detalle-noticia:hover {
       box-shadow: 0 20px 60px rgba(0,0,0,0.25);
   }

   .card-detalle-body {
       padding: 2rem;
       color: rgba(255,255,255,0.85);
   }

   .card-detalle-body .img-fluid {
       border-radius: 12px;
       width: 100%;
       max-height: 450px;
       object-fit: cover;
   }

   .contenido-noticia {
       font-size: 1.05rem;
       line-height: 1.9;
       color: rgba(255,255,255,0.9);
   }

   .contenido-noticia p {
       margin-bottom: 1rem;
   }

   /* ========================================
   NOTICIAS RELACIONADAS (noticia_detalle.css)
   ======================================== */
   .card-relacionadas {
       background: #1a2940;
       border-radius: 16px;
       overflow: hidden;
       box-shadow: 0 8px 30px rgba(0,0,0,0.15);
   }

   .card-relacionadas-header {
       padding: 1rem 1.2rem;
       background: rgba(243, 156, 18, 0.15);
       border-bottom: 1px solid rgba(255,255,255,0.05);
   }

   .card-relacionadas-header h5 {
       font-weight: 700;
       color: #ffffff;
       margin: 0;
   }

   .card-relacionadas-header h5 i {
       color: #f39c12;
       margin-right: 0.5rem;
   }

   .card-relacionadas-body {
       padding: 1.2rem;
   }

   .relacionada-item {
       display: flex;
       gap: 0.8rem;
       align-items: flex-start;
   }

   .relacionada-item img {
       width: 70px;
       height: 70px;
       object-fit: cover;
       border-radius: 8px;
       flex-shrink: 0;
       border: 2px solid rgba(255,255,255,0.05);
   }

   .relacionada-info h6 {
       font-size: 0.9rem;
       font-weight: 600;
       margin-bottom: 0.2rem;
   }

   .relacionada-info h6 a {
       color: #ffffff;
       text-decoration: none;
       transition: all 0.3s ease;
   }

   .relacionada-info h6 a:hover {
       color: #f39c12;
   }

   .relacionada-info small {
       color: rgba(255,255,255,0.6);
       font-size: 0.75rem;
   }

   .relacionada-info small i {
       margin-right: 0.2rem;
   }

   .card-relacionadas-body hr {
       border-color: rgba(255,255,255,0.05);
       margin: 0.8rem 0;
   }

   /* ========================================
   ANIMACIONES
   ======================================== */
   @keyframes fadeIn {
       from {
           opacity: 0;
       }
       to {
           opacity: 1;
       }
   }

   @keyframes slideUp {
       from {
           transform: translateY(50px) scale(0.95);
           opacity: 0;
       }
       to {
           transform: translateY(0) scale(1);
           opacity: 1;
       }
   }

   /* ========================================
   RESPONSIVE - TABLETS (max-width: 991px)
   ======================================== */
   @media (max-width: 991px) {
       .top-bar .text-end {
           text-align: center !important;
           margin-top: 0.3rem;
       }
       .top-bar .text-start {
           text-align: center !important;
       }
       .carousel-image-wrapper {
           height: 350px;
       }
       .acerca-title {
           font-size: 2.2rem;
       }
       .acerca-texto {
           font-size: 1rem;
       }
       .acerca-imagen img {
           max-height: 350px;
       }
       .buscador-wrapper {
           max-width: 500px;
       }
       .buscador-hero-form .form-control {
           font-size: 0.95rem;
           padding: 0.6rem 1.2rem;
       }
       .btn-buscar-hero {
           padding: 0.6rem 1.5rem;
           font-size: 0.9rem;
       }
       .section-title {
           font-size: 2rem;
       }
       .hero-title {
           font-size: 2.8rem;
       }
       .buscador-form .form-control {
           font-size: 0.95rem;
           padding: 0.6rem 1rem;
       }
       .btn-buscar {
           padding: 0.6rem 1.2rem;
           font-size: 0.9rem;
       }
       .resultados-header h2 {
           font-size: 1.5rem;
       }
       .section-title-detalle {
           font-size: 1.5rem;
       }
       .section-title-movimiento {
           font-size: 1.5rem;
       }
       .card-detalle-body {
           padding: 1.5rem;
       }
       .contenido-noticia {
           font-size: 1rem;
       }
   }

   /* ========================================
   RESPONSIVE - MÓVILES GRANDES (max-width: 767px)
   ======================================== */
   @media (max-width: 767px) {
       .top-bar {
           font-size: 0.75rem;
           padding: 0.5rem 0.8rem;
       }
       .top-social a {
           margin-left: 0.6rem;
           font-size: 0.9rem;
       }
       .carousel-image-wrapper {
           height: 250px;
       }
       .carousel-caption {
           padding: 1.5rem;
       }
       .caption-content h3 {
           font-size: 1.2rem;
       }
       .caption-content p {
           font-size: 0.85rem;
       }
       .carousel-modern .carousel-control-prev,
       .carousel-modern .carousel-control-next {
           opacity: 1;
           width: 35px;
           height: 35px;
       }
       .card-noticia-mini-image {
           height: 120px;
       }
       .acerca-section {
           padding: 3rem 0;
       }
       .acerca-title {
           font-size: 1.8rem;
       }
       .acerca-texto {
           font-size: 0.95rem;
       }
       .acerca-imagen img {
           max-height: 280px;
           border-radius: 12px;
       }
       .cards-section {
           padding: 2rem 0;
       }
       .card-image {
           height: 160px;
       }
       .acerca-content {
           padding: 0 1.5rem;
       }
       .buscador-wrapper {
           max-width: 100%;
           margin: 1.5rem auto 0;
       }
       .buscador-hero-form .input-group {
           border-radius: 30px;
       }
       .buscador-hero-form .form-control {
           font-size: 0.85rem;
           padding: 0.5rem 1rem;
       }
       .btn-buscar-hero {
           padding: 0.5rem 1.2rem;
           font-size: 0.8rem;
       }
       .section-title {
           font-size: 1.6rem;
       }
       .card-image-new {
           height: 160px;
       }
       .card-body-new {
           padding: 1.2rem;
       }
       .card-footer-new {
           padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       }
       .buscador-hero {
           min-height: 300px;
           padding: 2rem 0;
       }
       .hero-title {
           font-size: 2rem;
       }
       .hero-subtitle {
           font-size: 0.95rem;
       }
       .hero-logo {
           max-height: 60px;
       }
       .buscador-form-wrapper {
           margin: 1.5rem 0 0;
       }
       .buscador-form .input-group {
           border-radius: 30px;
       }
       .buscador-form .form-control {
           font-size: 0.85rem;
           padding: 0.5rem 1rem;
       }
       .btn-buscar {
           padding: 0.5rem 1rem;
           font-size: 0.8rem;
       }
       .resultados-section {
           padding: 2rem 0;
       }
       .resultados-header h2 {
           font-size: 1.3rem;
       }
       .card-resultado-image {
           height: 150px;
       }
       .sugerencias {
           gap: 0.5rem;
       }
       .sugerencia {
           font-size: 0.75rem;
           padding: 0.3rem 0.8rem;
       }
       .card-image-movimiento {
           height: 160px;
       }
       .card-body-movimiento {
           padding: 1.2rem;
       }
       .card-footer-movimiento {
           padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       }
       .card-image-noticia {
           height: 160px;
       }
       .card-body-noticia {
           padding: 1.2rem;
       }
       .card-footer-noticia {
           padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       }
       .card-image-parroquia {
           height: 160px;
       }
       .card-body-parroquia {
           padding: 1.2rem;
       }
       .card-footer-parroquia {
           padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       }
       .card-noticia-detalle-image,
       .card-capilla-detalle-image,
       .card-movimiento-detalle-image {
           height: 140px;
       }
       .card-historia-body {
           padding: 1rem;
       }
       .card-historia-movimiento .card-historia-body,
       .card-descripcion-movimiento .card-descripcion-body {
           padding: 1rem;
       }
       .btn-ver-mas-detalle {
           padding: 0.4rem 1rem;
           font-size: 0.8rem;
       }
       .section-title-detalle {
           font-size: 1.5rem;
       }
       .section-title-movimiento {
           font-size: 1.3rem;
       }
       .hero-section {
           height: 250px;
       }
       .hero-section h1 {
           font-size: 1.8rem;
       }
       .card-detalle-body {
           padding: 1.2rem;
       }
       .contenido-noticia {
           font-size: 0.95rem;
       }
       .relacionada-item img {
           width: 60px;
           height: 60px;
       }
       .modal-contenido {
           max-width: 100%;
           max-height: 100vh;
           border-radius: 0;
       }
       .modal-imagen {
           height: 200px;
       }
       .modal-titulo {
           padding: 1rem 1.2rem 0.3rem 1.2rem;
       }
       .modal-titulo h2 {
           font-size: 1.3rem;
       }
       .modal-texto {
           padding: 0.3rem 1.2rem 1.5rem 1.2rem;
           font-size: 0.95rem;
       }
       .modal-cerrar {
           top: 10px;
           right: 10px;
           width: 35px;
           height: 35px;
           font-size: 1rem;
           margin: 10px;
       }
       .modal-sacerdotes {
           padding: 0.3rem 1.2rem 1.5rem 1.2rem;
           grid-template-columns: 1fr;
       }
       .sacerdote-card {
           flex-direction: row;
           text-align: left;
           gap: 1rem;
           padding: 0.8rem 1rem;
       }
       .sacerdote-avatar {
           width: 70px;
           height: 70px;
           margin-bottom: 0;
           flex-shrink: 0;
       }
       .sacerdote-img {
           width: 70px;
           height: 70px;
       }
       .sacerdote-avatar i {
           font-size: 2.5rem !important;
       }
       .modal-miembros-unificado {
           padding: 0.3rem 1.2rem 1rem 1.2rem;
           grid-template-columns: 1fr;
       }
       .miembro-card-unificado {
           flex-direction: row;
           padding: 0.8rem 1rem;
       }
       .miembro-avatar-unificado {
           width: 60px;
           height: 60px;
           min-width: 60px;
       }
       .miembro-img-unificado {
           width: 60px;
           height: 60px;
       }
       .miembro-avatar-unificado i {
           font-size: 2.5rem !important;
       }
       .modal-footer-unificado {
           padding: 0.8rem 1.2rem 1.2rem 1.2rem;
       }
       .contador-numero {
           font-size: 1.4rem;
       }
   }

   /* ========================================
   RESPONSIVE - MÓVILES PEQUEÑOS (max-width: 576px)
   ======================================== */
   @media (max-width: 576px) {
       .hero-title {
           font-size: 1.6rem;
       }
       .hero-subtitle {
           font-size: 0.8rem;
       }
       .hero-logo {
           max-height: 50px;
       }
       .buscador-form .input-group {
           flex-wrap: nowrap;
       }
       .buscador-form .form-control {
           font-size: 0.8rem;
           padding: 0.4rem 0.8rem;
       }
       .btn-buscar {
           font-size: 0.75rem;
           padding: 0.4rem 0.8rem;
       }
       .card-resultado-image {
           height: 130px;
       }
       .resultados-header h2 {
           font-size: 1.1rem;
       }
       .total-resultados {
           font-size: 0.85rem;
       }
       .carousel-image-wrapper {
           height: 200px;
       }
       .card-noticia-mini-image {
           height: 100px;
       }
       .card-noticia-mini-body h5 {
           font-size: 0.8rem;
       }
       .acerca-title {
           font-size: 1.5rem;
       }
       .acerca-texto {
           font-size: 0.9rem;
       }
       .acerca-imagen img {
           max-height: 220px;
           border-radius: 10px;
       }
       .container-fluid {
           padding-left: 1rem;
           padding-right: 1rem;
       }
       .acerca-content {
           padding: 0 1rem;
       }
       .card-image {
           height: 140px;
       }
       .buscador-hero-form .input-group {
           flex-wrap: nowrap;
       }
       .buscador-hero-form .form-control {
           font-size: 0.8rem;
           padding: 0.4rem 0.8rem;
       }
       .btn-buscar-hero {
           font-size: 0.75rem;
           padding: 0.4rem 0.8rem;
       }
       .card-image-new {
           height: 140px;
       }
       .card-title-new {
           font-size: 1.1rem;
       }
       .card-text-new {
           font-size: 0.85rem;
       }
       .section-title {
           font-size: 1.4rem;
       }
       .card-image-movimiento {
           height: 140px;
       }
       .card-title-movimiento {
           font-size: 1rem;
       }
       .card-text-movimiento {
           font-size: 0.85rem;
       }
       .card-image-noticia {
           height: 140px;
       }
       .card-title-noticia {
           font-size: 1rem;
       }
       .card-text-noticia {
           font-size: 0.85rem;
       }
       .card-image-parroquia {
           height: 140px;
       }
       .card-title-parroquia {
           font-size: 1.1rem;
       }
       .card-text-parroquia {
           font-size: 0.85rem;
       }
       .hero-section {
           height: 200px;
       }
       .hero-section h1 {
           font-size: 1.4rem;
       }
       .card-detalle-body {
           padding: 1rem;
       }
       .contenido-noticia {
           font-size: 0.9rem;
       }
   }