/* ========================================
   CSS MINIMALISTA PARA SUBMENÚ JOOMLA 5
   ======================================== */

/*
 * Solución definitiva para la flecha del submenú.
 * Este selector anula cualquier regla que oculte la flecha en la vista de Trámites.
 */

 #sp-header .social-icons {
        display: flex !important;
        align-items: center;
        margin: 0;
        padding: 0;
        z-index: 1000;
    }

/* --- ESTILOS DE REDES SOCIALES --- */
ul.social-icons > li {
    margin-right: 5px;
}

ul.social-icons > li:last-child {
    margin-right: 0;
}

ul.social-icons > li a {
    color: #ffffff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    transition: all 0.3s ease-in-out;
    border: 2px solid transparent;
    border-radius: 50%;
}

ul.social-icons > li a:hover,
ul.social-icons > li a:focus {
    color: #ffffff !important;
    background-color: #d48e3e;
    border-color: #d48e3e;
}

 ul.social-icons > li {
        margin-right: 2px; /* Reduce el margen derecho para ocupar menos espacio */
    }

.social-icons li:nth-child(2) a svg {
    position: relative !important;
    top: 1.3px !important;
}

/* Contenedor para los iconos sociales */
.footer-social-icons {
    text-align: center !important; /* Fuerza la alineación */
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

/* Estilos de los iconos */
.social-icon-link {
    display: inline-block !important;
    width: 50px !important; /* Tamaño de los íconos */
    height: 50px !important;
    line-height: 50px !important;
    text-align: center !important;
    font-size: 24px !important; /* Tamaño del icono */
    margin: 0 8px !important; /* Espacio entre los íconos */
    border-radius: 50% !important;
    color: #fff !important;
    background-color: #202d78 !important;
    transition: background-color 0.3s ease, transform 0.3s ease !important;
}

/* Efecto de hover naranja */
.social-icon-link:hover {
    background-color: #d48e3e !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3) !important;
}

/* Responsividad para móviles */
@media (max-width: 767px) {
    .social-icon-link {
        width: 45px !important; /* Tamaño más pequeño en móviles */
        height: 45px !important;
        line-height: 45px !important;
        font-size: 20px !important;
    }
}
/* Contenedor para los iconos sociales */
.footer-social-icons {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

/* Estilos de los iconos */
.social-icon-link {
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    font-size: 24px;
    margin: 0 8px;
    border-radius: 50%;
    color: #fff;
    background-color: #202d78;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

/* Efecto de hover naranja */
.social-icon-link:hover {
    background-color: #d48e3e;
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

/* Responsividad para móviles */
@media (max-width: 767px) {
    .social-icon-link {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 20px;
    }
}
#dc-ca-carousel-136 .dc-ca-review-inner, #dc-ca-carousel-136 .dc-ca-portfolio-inner, #dc-ca-carousel-136 .dc-ca-article-inner {
    background-color: #efefef00 !important;
    color: #000000;
    font-size: 14px;
}
section#sp-bottom {
    padding: 0px !important;
    padding-top: 30px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    background: transparent !important;
    color: #202D78;
    position: relative;
    background: linear-gradient(180deg,rgba(255, 255, 255, 1) 3%, rgba(227, 227, 227, 1) 12%, rgba(227, 227, 227, 1) 88%, rgba(255, 255, 255, 1) 97%) !important;
}

/* Contenedor para centrar el botón */
.boton-mas-numeros {
    text-align: center;
    margin-top: -40px; /* Espacio entre los íconos y el botón */
}

/* Estilos del botón minimalista */
.btn-minimalista {
    display: inline-block;
    padding: 12px 25px;
    background-color: #202d78; /* Color de fondo azul */
    color: #fff; /* Color del texto blanco */
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    border-radius: 25px; /* Bordes redondeados */
    border: 2px solid transparent; /* Borde transparente inicial para evitar un "salto" en el hover */
    transition: all 0.3s ease; /* Transición suave para el efecto de hover */
}

/* Efecto de hover */
.btn-minimalista:hover {
    background-color: transparent; /* Fondo transparente en hover */
    color: #202d78; /* Color del texto azul en hover */
    border: 2px solid #202d78; /* Borde azul en hover */
    transform: translateY(-2px); /* Pequeño efecto de levantamiento */
}

/* Estilos para celulares */
@media (max-width: 767px) {
    .boton-mas-numeros {
        margin-top: -40px;
    }

    .btn-minimalista {
        padding: 10px 20px; /* Reduce el padding para un botón más compacto */
        font-size: 14px; /* Reduce el tamaño del texto */
        border-radius: 20px; /* Hace los bordes un poco más pequeños */
    }
}
/* 1. Eliminar las tres primeras líneas horizontales y reducir el espacio */

/* Seleccionar las primeras secciones para quitarles el borde superior y ajustar el padding */
/* Puedes ajustar los IDs de las secciones si son diferentes a sp-top1, sp-top2, etc. */
section#sp-top1,
section#sp-top2,
section#sp-main-body {
    border-top: none !important; /* Elimina la línea superior */
    padding-top: 0 !important; /* Reduce el espacio superior */
    margin-top: 0 !important; /* Asegura que no haya margen superior */
    padding-bottom: 0 !important; /* Reduce el espacio inferior de la sección */
    margin-bottom: 0 !important; /* Asegura que no haya margen inferior */
}

/* También puedes aplicar esto a un div o contenedor específico si el borde no está en la sección directamente */
/* Por ejemplo, si el borde está en un contenedor dentro de la sección, deberás ajustarlo. */


/* 2. Crear la última línea horizontal con diseño rojo, azul y amarillo */

/* Suponiendo que la "última" línea se refiere a la que está justo encima del footer o una sección específica antes del footer.
   Usaré 'section#sp-bottom1' como ejemplo, pero ajusta el ID si es otro (por ejemplo, 'sp-bottom2' o la sección antes del footer).
   Si no tienes una sección clara para esto, podemos crear un nuevo elemento o usar un :before/:after en el footer.
*/

/* Ejemplo usando un :before en el footer si la línea debe aparecer justo antes de él */
/* Si no quieres que afecte al footer, crea una nueva sección o un div específico para esta línea. */
footer#sp-footer:before { /* O puedes usar el ID de la última sección que quieres que tenga la línea */
    content: '';
    display: block;
    height: 4px; /* Altura de la línea */
    background: linear-gradient(to right, red 33.3%, blue 33.3%, blue 66.6%, yellow 66.6%); /* Colores y proporciones */
    margin: 20px 0; /* Ajusta el margen si necesitas más o menos espacio */
}


/* Si la línea es parte de una sección existente (por ejemplo, la última visible antes del footer),
   podrías usar algo como esto en lugar del :before en el footer: */

/*
section#sp-bottom2 {
    border-top: none !important; // Asegúrate de que no tenga un borde azul preexistente
    padding-top: 0 !important;
    margin-top: 0 !important;
    position: relative; // Necesario para posicionar el :after si es relativo
}

section#sp-bottom2:after {
    content: '';
    display: block;
    height: 4px; // Altura de la línea
    background: linear-gradient(to right, red 33.3%, blue 33.3%, blue 66.6%, yellow 66.6%); // Colores y proporciones
    margin-top: 20px; // Espacio entre el contenido de la sección y la línea
    margin-bottom: 0; // Si no quieres espacio extra debajo
}
*/


/* Ajuste general para el espacio entre todas las secciones */
/* Esto reducirá el espacio por defecto que Joomla o Bootstrap pueden aplicar entre <section> */

/* Si tu banner (SOMOS 100% LED) está dentro de una sección,
   es posible que quieras darle un padding específico para que no esté demasiado pegado */
/*
#tu-id-del-banner-o-su-contenedor {
    padding: 20px 0 !important;
}
*/

   

/* Estilos para el menú de opciones */
.options-menu {
    position: fixed;
    bottom: 20px;
    left: 20px;
    right: 20px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1000;
    padding: 10px;
    display: none; /* Oculto por defecto */
    text-align: center;
}

.options-menu a {
    display: block;
    padding: 15px;
    margin: 5px 0;
    border-radius: 8px;
    text-decoration: none;
    font-weight: bold;
    color: #fff;
}

.options-menu .call-btn {
    background-color: #007bff;
}

.options-menu .whatsapp-btn {
    background-color: #25d366;
}

/* Fondo oscuro para la pantalla */
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    display: none;
}

.titulo-contacto {
    text-align: center;
    font-family: Tahoma, Verdana, sans-serif;
    color: #9b9b9b;
    font-size: 18px;
}

.pagination li.page-item a[aria-label="Ir a la página anterior"] {
  display: none;
}

.pagination li .fa-angle-left:before{
  display:none;
}

.pagination li .fa-angle-left:after{
  display:none;
}
.offcanvas-menu .offcanvas-inner ul.menu li.active a {
    color: #202d79;
}

.offcanvas-menu .offcanvas-inner ul.menu>li a{
  color: #202d79;
  font-size: 20px;
}
.offcanvas-menu .offcanvas-inner ul.menu>li a:hover{
    color: #101A52;
    font-size: 22px;
}

.tns-inner .carousel-image img {
    outline: none;
    border-radius: 15px;
    max-width: 100% !important;
    margin-top: 0;
    margin-bottom: 0;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    opacity: 1;
    -webkit-transform: scale(1,1);
    -moz-transform: scale(1,1);
    -ms-transform: scale(1,1);
    -o-transform: scale(1,1);
    transform: scale(1,1);
}

@media screen and (max-width: 999px) {
  /* Selecciona el contenedor de la imagen */
  .jt-carousel-img {
    width: 90% !important;
    height: auto !important;
    margin: 0 auto;
    display: block;
  }
}

@media (max-width: 1200px) {
.hero-video-section {
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    height: 300px !important;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 80px !important;
} 
}
.call-icons-container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; 
    gap: 40px; 
    padding-bottom: 80px;
}

.call-icon {
    display: block;
    max-width: 90%;
    height: auto;
    transition: transform 0.3s ease-in-out;
}

/* Efecto hover minimalista */
.call-icon:hover {
    transform: scale(1.1);
}

/* Ajustes para móviles: mantiene la fila horizontal */
@media (max-width: 768px) {
    .call-icons-container {
        gap: 12px; /* Reduce el espacio entre los iconos en pantallas más pequeñas */
    }
    .call-icon {
        width: 80px; /* Reduce el tamaño de los iconos en móviles para que no se vean apretados */
    }
}

#acordeon-carnet .acordeon-item {
    margin-bottom: 15px;
}

#acordeon-numeros-utiles .acordeon-item {
    margin-bottom: 15px;
}

#acordeon-centros-asistenciales .acordeon-item {
    margin-bottom: 15px; /* Esto agrega el espacio vertical */
}

.carnet-fila {
    display: flex;
    justify-content: space-between;
    gap: 25px; /* Espacio entre las columnas */
    margin-bottom: 25px; /* Espacio entre las filas */
}

.carnet-seccion {
    flex: 1; /* Hace que cada sección ocupe el mismo espacio */
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08);
}

.carnet-titulo {
    color: #202D78;
    font-size: 1.5em;
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 15px;
    border-bottom: 2px solid #202D78;
    padding-bottom: 5px;
}

.carnet-contenido h4 {
    font-size: 1.1em;
    font-weight: bold;
    color: #495057;
    margin-top: 15px;
    margin-bottom: 5px;
}

.carnet-contenido ul {
    list-style-type: none;
    padding-left: 0;
}

.carnet-contenido li {
    margin-bottom: 5px;
    line-height: 1.5;
    color: #495057;
}

/* Para pantallas más pequeñas, los elementos se apilan */
@media (max-width: 767px) {
    .carnet-fila {
        flex-direction: column;
    }
}

#sp-menu ul.sp-megamenu-parent > li.sp-menu-item.active > a .menu-caret {
    display: inline-block !important;
    visibility: visible !important;
}

/* --- ENCABEZADO Y NAVEGACIÓN --- */
/* Estado por defecto del header */
#sp-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1050;
    background: linear-gradient(-90deg, rgba(212, 142, 62, 1) 0%, rgba(32, 45, 121, 1) 31%, rgba(32, 45, 121, 1) 100%);
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
}

/* Efecto de scroll: Este estilo se aplica cuando se hace scroll */
#sp-header.scrolled {
    background: linear-gradient(180deg,rgba(32, 45, 121, 0.81) 88%, rgba(255, 255, 255, 0.01) 100%); !important;
    backdrop-filter: blur(5px);
}

/* Transparencia inicial en Home y Noticias (el efecto que ya tenías) */
#sp-header.transparent {
    background: transparent !important;
    box-shadow: none !important;
}

/* Contenedor principal del dropdown */
.sp-dropdown-inner {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(20px);
    border: none !important;
    border-radius: 12px !important;
    padding: 6px 0 !important;
    margin-top: 8px !important;
    box-shadow: 
        0 15px 35px rgba(0, 0, 0, 0.15),
        0 0 0 1px rgba(255, 255, 255, 0.1) !important;
    
    /* Animaciones de entrada/salida */
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) scale(0.95) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 9999 !important;
    min-width: 200px !important;
    width: auto !important;
    max-width: 220px !important;
}

/* Mostrar dropdown al hover */
.sp-menu-item:hover .sp-dropdown-inner,
.sp-dropdown:hover .sp-dropdown-inner {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) scale(1) !important;
}

/* Flecha conectora del dropdown */
.sp-dropdown-inner::before {
    content: '' !important;
    position: absolute !important;
    top: -8px !important;
    left: 30px !important;
    width: 16px !important;
    height: 16px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    transform: rotate(45deg) !important;
    border-radius: 2px !important;
    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.05) !important;
    z-index: -1 !important;
}

/* Resetear TODOS los bordes y elementos que puedan crear líneas */
.sp-dropdown-inner .sp-menu-item,
.sp-dropdown-inner li a,
.sp-dropdown-inner a {
    display: block !important;
    padding: 10px 18px !important;
    color: #333 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    border: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Eliminar pseudo-elementos que puedan crear líneas */
.sp-dropdown-inner .sp-menu-item::before,
.sp-dropdown-inner li a::before,
.sp-dropdown-inner a::before {
    display: none !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
}

/* Hover en items del submenú - SOLO línea izquierda azul */
.sp-dropdown-inner .sp-menu-item:hover,
.sp-dropdown-inner li a:hover,
.sp-dropdown-inner a:hover {
    background: rgba(74, 144, 226, 0.08) !important;
    color: #202d78 !important;
    border-right: none !important;
    border-top: none !important;
    border-bottom: none !important;
    transform: translateX(3px) !important;
    position: relative !important;
}

/* Eliminar cualquier pseudo-elemento que cree líneas adicionales */
.sp-dropdown-inner .sp-menu-item:hover::before,
.sp-dropdown-inner li a:hover::before,
.sp-dropdown-inner a:hover::before,
.sp-dropdown-inner .sp-menu-item:hover::after,
.sp-dropdown-inner li a:hover::after,
.sp-dropdown-inner a:hover::after {
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Separadores entre items */
.sp-dropdown-inner .sp-menu-item:not(:last-child)::after,
.sp-dropdown-inner li:not(:last-child) a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 18px !important;
    right: 18px !important;
    height: 1px !important;
    background: linear-gradient(to right, 
        transparent 0%, 
        rgba(0, 0, 0, 0.08) 20%, 
        rgba(0, 0, 0, 0.08) 80%, 
        transparent 100%) !important;
}

/* Animación escalonada de entrada */
@keyframes slideInItem {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Aplicar animación escalonada */
.sp-dropdown-inner .sp-menu-item:nth-child(1),
.sp-dropdown-inner li:nth-child(1) a {
    animation: slideInItem 0.3s ease forwards;
    animation-delay: 0.05s;
}

.sp-dropdown-inner .sp-menu-item:nth-child(2),
.sp-dropdown-inner li:nth-child(2) a {
    animation: slideInItem 0.3s ease forwards;
    animation-delay: 0.1s;
}

.sp-dropdown-inner .sp-menu-item:nth-child(3),
.sp-dropdown-inner li:nth-child(3) a {
    animation: slideInItem 0.3s ease forwards;
    animation-delay: 0.15s;
}

.sp-dropdown-inner .sp-menu-item:nth-child(4),
.sp-dropdown-inner li:nth-child(4) a {
    animation: slideInItem 0.3s ease forwards;
    animation-delay: 0.2s;
}

.sp-dropdown-inner .sp-menu-item:nth-child(5),
.sp-dropdown-inner li:nth-child(5) a {
    animation: slideInItem 0.3s ease forwards;
    animation-delay: 0.25s;
}

/* Resetear estilos por defecto de Joomla */
.sp-dropdown-inner ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.sp-dropdown-inner li {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Responsive */
@media (max-width: 768px) {
    .sp-dropdown-inner {
        min-width: 180px !important;
        max-width: 200px !important;
        margin-top: 5px !important;
    }
    
    .sp-dropdown-inner .sp-menu-item,
    .sp-dropdown-inner li a {
        padding: 8px 16px !important;
        font-size: 12px !important;
    }
    
    .sp-dropdown-inner::before {
        left: 16px !important;
    }
}

/* Mejoras adicionales para templates específicos */
.sp-megamenu-parent .sp-dropdown-inner {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
}

/* Para asegurar que funcione con diferentes estructuras */
.sp-dropdown .sp-dropdown-inner,
.dropdown-menu.sp-dropdown-inner {
    /* Aplicar los mismos estilos */
}

@media (max-width: 1200px) {
    .col-lg-12{
      flex:0 auto;
      width:100%;
      margin-top: 60px !important;
      }
    }


.tabla-asistenciales {
    width: 100%;
    border-collapse: collapse;
}

.tabla-asistenciales th,
.tabla-asistenciales td {
    padding: 8px;
    border: 1px solid #ffffff;
    text-align: left;
}

.tabla-asistenciales thead tr {
    background-color: #f2f2f2;
}

.tabla-asistenciales tbody tr:nth-child(odd) {
    background-color: #F7EBDD;
}

.tabla-asistenciales tbody tr:nth-child(even) {
    background-color: #E1F0FB;
}

/* Estilo del título h1 */
.titulo-centrado {
    text-align: center;
    font-family: Tahoma, Verdana, sans-serif;
}

#acordeon-registro-civil .acordeon-item {
    margin-bottom: 15px;
}

.acordeon-item {
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 15px; /* Esta línea genera el espacio vertical entre los items */
    overflow: hidden;
    background-color: #f8f9fa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.acordeon-titulo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    font-weight: bold;
    color: #202d78;
    background-color: #e9f5ff;
    cursor: pointer;
    position: relative;
    transition: background-color 0.3s ease;
}

.acordeon-titulo:hover {
    background-color: #CBE6F9;
}

.acordeon-titulo span {
    flex-grow: 1;
}

.boton-descargar-container {
    display: flex;
    justify-content: flex-end; /* Alinea el botón a la derecha */
    padding: 20px 0;
}

.btn-descarga-acordeon {
    display: inline-block;
    padding: 5px 15px;
    background-color: #202d78;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    margin-right: 15px;
    transition: background-color 0.3s ease;
}

.btn-descarga-acordeon:hover {
    background-color: #18225C;
    color: #fff;
}

.acordeon-contenido {
    padding: 0 15px;
    background-color: #fff;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.acordeon-contenido p {
    margin: 10px 0;
    color: #495057;
}

/* Estilo para la flecha de Font Awesome */
.acordeon-titulo .fas {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

.acordeon-titulo.activo .fas {
    transform: rotate(180deg);
}

.acordeon-titulo.activo + .acordeon-contenido {
    max-height: 200px; /* Puedes ajustar este valor si las descripciones son más largas */
}



/* Contenedor del acordeón con diseño de dos columnas */
.carnet-acordeon-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 20px; /* Espacio entre los acordeones */
}

/* Estilos de los elementos del acordeón (reutilizados del Registro Civil) */
.acordeon-item {
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 0; /* Lo gestiona el 'gap' del grid */
    overflow: hidden;
    background-color: #f8f9fa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.acordeon-titulo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    font-weight: bold;
    color: #202d78;
    background-color: #e9f5ff;
    cursor: pointer;
    position: relative;
    transition: background-color 0.3s ease;
}

.acordeon-titulo:hover {
    background-color: #CBE6F9;
}

.acordeon-titulo span {
    flex-grow: 1;
}

.acordeon-contenido {
    padding: 0 15px;
    background-color: #fff;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.acordeon-contenido p {
    margin: 10px 0;
    color: #495057;
}

/* Estilo para la flecha de Font Awesome */
.acordeon-titulo .fas {
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}

.acordeon-titulo.activo .fas {
    transform: rotate(180deg);
}

.acordeon-titulo.activo + .acordeon-contenido {
    max-height: 500px; /* Se ajusta para contenido más largo */
}

.tramites-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e0e0e0; /* Línea horizontal sutil */
    padding-bottom: 10px; /* Espacio entre el contenido y la línea */
    margin-bottom: 15px; /* Espacio entre el borde y el siguiente ítem */
}

.btn-descarga {
    padding: 8px 15px;
    background-color: #007bff;
    color: #ffffff;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.btn-descarga:hover {
    background-color: #0056b3;
    color: #ffffff;
}

@media (min-width: 992px) and (max-width: 1200px) {
    #sp-header .row-fluid {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
    }
    
    #sp-header .mod-finder-search {
        flex-shrink: 0;
    }
}

@media (max-width: 991px) {

    .offcanvas-menu #mod-finder-searchword0.form-control,
    .offcanvas-menu #mod-finder-searchword0.form-control:focus {
        width: 100% !important;
        transition: none !important;
    }
    .col-auto {
        flex: 0 0 auto;
        width: 50%
    }
    .info-widgets.vertical-layout {
    display: none !important;
  }

      #sp-header {
        height: 90px
    }

    .hero-title {
    font-size: 2.5em !important;
    white-space: nowrap; /* Fuerza el texto a una sola línea */
  }
    
    #sp-header .row-fluid {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        padding: 0 15px;
    }

    #sp-header .logo {
        flex-shrink: 0;
        margin-right: 15px;
    }


    


    #sp-menu > .sp-megamenu-parent {
        display: none;
    }

    .hero-video-section {
        height: 450px;
        margin-top: 40px !important;
    }
    
    .hero-content {
        padding: 20px;
    }

 .info-widgets {
        bottom: 20px;
        left: 20px;
        padding: 8px 12px;
    }
    .day-large {
        font-size: 1.8em;
    }
    .time-container {
        font-size: 1.5em;
    }
    .month-year-container {
        font-size: 0.7em;
    }
    .separator-line {
        width: 100%;
    }
    .info-widgets.vertical-layout .separator-line {
        width: 100%;
    }
    
    .controls-and-accessibility {
        bottom: 20px;
        right: 20px;
        gap: 10px;
    }

    .video-control-button,
    .accessibility-button {
        width: 45px;
        height: 45px;
        font-size: 1.3em;
        color: #ffffff !important;
    }
    
    .video-control-button:hover,
    .accessibility-button:hover {
        color: #202d78 !important;
    }

    footer#sp-footer {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 15px 20px;
    }

    footer#sp-footer .sp-footer-text {
        order: 2;
        text-align: center;
        font-size: 0.9em !important;
        margin-top: 10px;
    }

    footer#sp-footer .sp-footer-logo {
        order: 1;
        margin-bottom: 0;
    }
}

#mod-finder-searchword0.form-control {
    border-radius: 20px;
    background-color: #ffffff;
    border: 1px solid #cccccc;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    
    /* El padding izquierdo para el texto del placeholder */
    padding: 6px 40px 6px 35px;
    
    width: 250px;
    
    /* Aplica transiciones a todas las propiedades para un efecto suave */
    transition: all 0.4s ease-in-out;
    
    /* Configuración inicial del icono de la lupa (en la izquierda) */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E");
    
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 16px;
}

#mod-finder-searchword0.form-control:focus {
width: 300px; 
background-position: calc(100% - 10px) center;
background-image: none; 
padding-left: 12px; 

}

#mod-finder-searchword0.form-control::placeholder {
opacity: 1;
transition: opacity 0.3s ease-in-out;
}

#mod-finder-searchword0.form-control:focus::placeholder {
opacity: 0;
}

.search-pagination {
    text-align: center;
}

.pagination li.active .page-link {
    background-color: transparent !important;
    color: #0345bf;
}

/* Oculta el botón "atrás" */
.pagination li.disabled.page-item,
/* Oculta el botón "adelante" */
.pagination li:last-child {
    display: none !important;
}

/* Si el botón "adelante" tiene una clase diferente, usa este selector */
.pagination .page-item a[aria-label="Ir a la página siguiente"] {
    display: none !important;
}



.sticky-header-placeholder {
    height: 9px !important;
}

/* Este estilo se aplica solo a la página de noticias */
body.itemid-154 .sp-noticias {
    margin-top: 150px !important;
}

/* Este código aplica solo a la página de noticias */
.noticias .sp-noticias {
    margin-top: 100px; /* Ajusta este valor según lo que necesites */
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-top: 3rem;
  }
/* --- ESTILOS DE NOTICIAS Y OTROS ELEMENTOS (Hover solo con zoom) --- */

.dc-ca-inner {
    /* Mantenemos una sombra sutil para la tarjeta */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    /* Aseguramos que la imagen no se desborde al hacer el zoom */
    overflow: hidden;
}

/* Efecto de zoom solo en la imagen al hacer hover sobre la tarjeta */
.dc-ca-inner:hover .dc-ca-image img {
    /* La imagen se agranda sutilmente */
    transform: scale(1.05) !important;
    /* Aseguramos una transición suave para la imagen */
    transition: transform 0.3s ease-in-out !important;
}

/* Resto de clases no duplicadas */
.dc-ca-portfolio-more {
    text-align: center !important;
    width: 100%;
    margin-top: 15px;
}

.dc-ca-portfolio-more a {
    color: #ffffff;
    font-size: 14px;
    background: #2c2f7c;
    display: inline-block;
    padding: 8px 15px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

.dc-ca-portfolio-more a:hover {
    background: #4A4EA6;
    color: #ffffff;
    text-decoration: none;
}

/* Resto de estilos que tenías, consolidados y sin duplicar */
#dc-ca-carousel-136 .dc-ca-review-inner *,
#dc-ca-carousel-136 .dc-ca-portfolio-inner *,
#dc-ca-carousel-136 .dc-ca-article-inner * {
    color: #333333;
}


body {
    padding-top: 0 !important ;
}

#sp-menu .sp-megamenu-parent > li {
    margin: 0 10px;
}

#sp-menu .sp-megamenu-parent > li > a {
    position: relative;
    display: block;
    text-decoration: none;
    padding: 5px 0;
    font-size: 15px;
    line-height: 1;
    font-weight: bold;
    color: #ffffff !important;
    transition: all 0.3s ease-in-out;
}

.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > a > span,
.sp-megamenu-parent > li > span.sp-menu-separator,
#sp-menu .sp-module-content ul.menu li a {
    color: #ffffff !important;
}

.sp-megamenu-parent > li > a:hover,
.sp-megamenu-parent > li > a:hover > span,
#sp-menu .sp-module-content ul.menu li a:hover {
    color: #ffffff !important;
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.active > a:hover,
.sp-megamenu-parent > li.current > a,
.sp-megamenu-parent > li.current > a:hover {
    color: #ffffff !important;
}

#sp-menu .sp-megamenu-parent > li > a::before {
    content: '';
    position: absolute;
    display: block;
    height: 3px;
    bottom: -5px;
    left: 50%;
    width: 0;
    background: #ffffff;
    transition: all 0.3s ease-in-out;
    transform: translateX(-50%);
}

#sp-menu .sp-megamenu-parent > li > a:hover::before {
    width: 100%;
}

#sp-menu .sp-megamenu-parent > li.active > a::after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 3px;
    bottom: -5px;
    left: 0;
    background: #ffffff;
}

.offcanvas-menu {
    background: linear-gradient(180deg,rgba(212, 142, 62, 1) 40%, rgba(255, 255, 255, 1) 83%);
}







section#sp-bottom2 {
    /* Mantiene los estilos de fondo y espacio, pero elimina el borde superior sólido */
    background-color: #E3E3E3 !important;
    color: #ffffff !important;
    padding-top: 30px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;

    /* Necesario para posicionar la línea de colores */
    position: relative;
    border-top: none !important; /* Asegura que se elimine la línea azul original */
}

section#sp-bottom2 {
    /* Mantiene los estilos de fondo y espacio, pero elimina el borde superior sólido */
    background: linear-gradient(0deg, rgba(32, 45, 120, 1) 35%, rgba(255, 255, 255, 1) 85%) !important;
    color: #ffffff !important;
    padding-top: 30px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;

    /* Necesario para posicionar la línea de colores */
    position: relative;
    border-top: none !important; /* Asegura que se elimine la línea azul original */
}

/* Este pseudo-elemento crea la línea de 3 colores en la parte superior */
section#sp-bottom2::before {
    content: '';
    display: block;
    height: 4px; /* El mismo grosor de tu línea original */
    width: calc(100% - 450px); /* El ancho de la línea será el 100% del contenedor menos 80px */
    position: absolute;
    top: 10;
    left: 225px; /* Desplaza la línea 40px desde la izquierda */
    /* La magia está aquí: aplicamos el degradado al pseudo-elemento */
    background: linear-gradient(to right, #202d78 33.3%, #d48e3e 33.3%, #d48e3e 66.6%, #808080 66.6%);
}


/* Media query para celulares */
@media (max-width: 767px) {
    section#sp-bottom2::before {
        /* Para celulares: ancho de la pantalla menos un margen más pequeño */
        width: calc(100% - 40px);
        /* Para celulares: centrado con left: 20px */
        left: 20px;
    }
}

#sp-position2 {
    padding: 0px 0 !important;
    text-align: center;
    border: none !important;
}

/* --- SLIDER Y HERO --- */
.hero-video-section {
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    height: 420px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 80px !important;
}

.hero-video-section video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 1;
    transform: translate(-50%, -50%);
    background-size: cover;
    background-position: center;
    background-image: none;
}

#dc-ca-carousel-136 .dc-ca-review-inner, #dc-ca-carousel-136 .dc-ca-portfolio-inner, #dc-ca-carousel-136 .dc-ca-article-inner {
    color: #000000;
    font-size: 14px;
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 2;
}

.hero-content {
    position: relative;
    z-index: 3;
    color: #ffffff;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 40px;
    box-sizing: border-box;
    align-items: flex-start;
}

.hero-video-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 30px;
    z-index: 2;
    background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
}

.hero-text-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    text-align: center;
    color: white;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
    opacity: 0;
    animation: fadeIn 2s ease-in-out forwards;
}

.hero-title {
    font-family: 'Roboto', sans-serif;
    font-size: 4em;
    font-weight: bold;
    margin: 0;
    line-height: 1.2;
    text-transform: uppercase;
}

.hero-subtitle {
    font-family: 'Roboto', sans-serif;
    font-size: 1.5em;
    margin: 10px 0 0;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translate(-50%, -40%);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

/* Estilos base del widget */
.info-widgets {
    position: absolute;
    bottom: 40px;
    left: 40px;
    z-index: 4;
    background: rgba(255, 255, 255, 0.7);
    color: #202D78;
    padding: 10px 15px;
    border-radius: 5px;
    white-space: nowrap;
    text-align: center; /* Centramos el contenido horizontalmente */
}

/* Estilos para la disposición vertical */
.info-widgets.vertical-layout {
    display: flex;
    flex-direction: column; /* Colocamos los elementos uno debajo del otro */
    align-items: center; /* Centramos los elementos horizontalmente */
}

.date-container {
    display: flex;
    align-items: center;
    margin-bottom: 10px; /* Espacio entre la fecha y la línea */
  justify-content: center; /* Centra horizontalmente la fecha */
}

.day-large {
    font-size: 2.5em;
    font-weight: bold;
    line-height: 1;
}

.month-year-container {
    display: flex;
    flex-direction: column;
    margin-left: 5px;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1;
    text-align: left;
}

/* La línea horizontal */
.info-widgets.vertical-layout .separator-line {
    width: 100%; /* Ajusta el ancho de la línea */
    height: 2px; /* Grosor de la línea */
    background-color: #202D78;
    margin: 10px 0; /* Espacio arriba y abajo de la línea */
}

.time-container {
    font-size: 2em;
    font-weight: bold;
}

/* Ocultamos la línea vertical que teníamos antes */
.info-widgets:not(.vertical-layout) .separator-line {
    display: none;
}

.controls-and-accessibility {
    position: absolute;
    bottom: 40px;
    right: 40px;
    z-index: 4;
    display: flex;
    gap: 15px;
}

.video-control-button,
.accessibility-button {
    background-color: rgba(0, 0, 0, 0.6);
    color: #ffffff !important;
    border: none;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 1.5em;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease, transform 0.2s ease, color 0.3s ease;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.video-control-button:hover,
.accessibility-button:hover {
    background-color: rgba(0, 0, 0, 0.8);
    transform: scale(1.05);
    color: #202d78 !important;
}

/* --- BOTONES DE NAVEGACIÓN DEL CARRUSEL --- */
.tns-controls button {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
    width: 40px !important;
    height: 40px !important;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.tns-controls button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
    transition: all 0.3s ease-in-out;
}

.tns-controls button[data-controls="prev"]::before {
    background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ffffff"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"/></svg>');
}

.tns-controls button[data-controls="next"]::before {
    background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ffffff"><path d="M8.59 16.59L10 18l6-6-6-6-1.41 1.41L13.17 12z"/></svg>');
}

.tns-controls button[data-controls="prev"]:hover::before,
.tns-controls button[data-controls="next"]:hover::before {
    background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23202d78"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"/></svg>');
}

.tns-controls button[data-controls="next"]:hover::before {
    background-image: url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23202d78"><path d="M8.59 16.59L10 18l6-6-6-6-1.41 1.41L13.17 12z"/></svg>');
}

.playButton {
    display: none !important;
}

.tns-nav {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 15px auto !important;
    padding: 0 !important;
    list-style: none !important;
    border-top: none !important;
}

.tns-nav button {
    margin: 0 5px !important;
    flex-shrink: 0;
}



.carousel-image::before {
    /* Mantienes los estilos existentes */
    background: transparent !important;
    opacity: 0 !important;
    transition: none !important;

    /* Aquí añades los estilos para el tamaño */
    content: ''; /* Asegurarse de que el pseudoelemento esté presente */
    display: block; /* Necesario para que `height` funcione */
    height: 10%; /* Fuerza la altura al 100% del padre */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.tns-horizontal.tns-subpixel .carousel-inner.tns-item .link-image {
    position: relative !important;
    z-index: 6 !important;
    width: 100% !important;
    height: 10% !important;
    display: block !important;
}

.jt-carousel-img:hover {
    transition: none !important;
    transform: none !important;
}



.finder {
    background-color: #ffffff;
    padding: 0;
    margin: 20px auto;
    max-width: 900px;
}

.finder fieldset.word.mb-3 {
    margin: 0;
    padding: 20px;
    background-color: #f8f9fa;
    border: none;
    border-bottom: 1px solid #e9ecef;
}

.finder form#finder-search-form input[type="text"] {
    border: 1px solid #ced4da;
    border-radius: 4px;
    padding: 10px;
    width: 70%;
    font-size: 14px;
    color: #495057;
    transition: all 0.3s ease;
}

.finder form#finder-search-form input[type="text"]:focus {
    border-color: #80bdff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    outline: none;
}

.finder form#finder-search-form button {
    background-color: #007bff;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.finder form#finder-search-form button:hover {
    background-color: #0056b3;
}

.finder div#search-results {
    padding: 20px;
}

.finder .search-result {
    padding: 20px 0;
    border-bottom: 1px solid #e9ecef;
}

.finder .search-result:last-child {
    border-bottom: none;
}

.finder .search-result h2 {
    font-size: 18px;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: 5px;
}

.finder .search-result h2 a {
    color: #343a40;
    text-decoration: none;
    transition: color 0.3s ease;
}

.finder .search-result h2 a:hover {
    color: #007bff;
    text-decoration: underline;
}

.finder .search-result p {
    font-size: 14px;
    line-height: 1.5;
    color: #6c757d;
    margin-bottom: 0;
}

.finder .search-result em {
    font-style: normal;
    font-weight: bold;
    color: #007bff;
}

.sp-module-title {
    text-align: center;
    color: #333333;
    font-family: Tahoma, Verdana, sans-serif;
    margin-top: 0px;
    font-size: 33px;
}

@media (max-width: 1200px) {
.sp-module-title {
    text-align: center;
    color: #333333;
    font-family: Tahoma, Verdana, sans-serif;
    margin-top: 0px;
    font-size: 23px;
}
}

.texto-azul {
    color: #202d79 !important;
    font-weight: bold !important;
}

/* --- TÍTULOS Y CABECERAS --- */
#sp-page-title .sp-module h5.sp-module-title {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 50px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 32px !important;
    margin-bottom: none !important;
    font-weight: 600 !important;
    letter-spacing: -0.56px !important;
    text-decoration: none !important;
    color: #252525 !important;
    display: block !important;
    width: 100% !important;
}
@media (max-width: 1200px) {
section#sp-section-2 h1.titulo-numeros-referencia,
section#sp-section-2 h4.titulo-numeros-referencia,
section#sp-bottom h1.dc-ca-heading-text {
    font-family: Tahoma, Verdana, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    font-size: 1.4em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    margin-bottom: 25px !important;
    color: #333333 !important;
}
}
section#sp-section-2 h1.titulo-numeros-referencia,
section#sp-section-2 h4.titulo-numeros-referencia,
section#sp-bottom h1.dc-ca-heading-text {
    font-family: Tahoma, Verdana, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    font-size: 2.0em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    margin-bottom: 25px !important;
    color: #333333 !important;
}

/* --- FOOTER --- */
footer#sp-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 40px;
    background-color: #202D78 !important;
    color: #ffffff !important;
    font-family: 'Roboto', sans-serif !important;
    min-height: 70px;
}

footer#sp-footer .sp-footer-text {
    display: flex;
    flex-direction: column;
    text-align: left;
    font-size: 1.0em !important;
    line-height: 1.5;
}

footer#sp-footer .sp-footer-text p,
footer#sp-footer .sp-footer-text span {
    display: block;
    margin-bottom: 3px;
}

footer#sp-footer .sp-footer-logo {
    display: flex;
    align-items: center;
}

footer#sp-footer .sp-footer-logo img {
    max-width: 120px;
    height: auto;
}

/* --- OCULTACIONES --- */
li.item-105,
li.item-105 > a {
    display: none !important;
}

.featured-article-badge {
    display: none !important;
}

#sp-titulo02 {
    display: none !important;
}

#sp-top-col1-lg-12 {
    display: none !important;
}

div.related-article {
    display: none !important;
}

.article-list .article .article-intro-image img, .article-list .article .article-featured-video img, .article-list .article .article-featured-audio img, .article-list .article .article-feature-gallery img {
    margin-top: 100px;
    width: 100%;
    border-radius: 12px 12px 0px 0px;
}

.article-details .author-img,
.article-details .article-author-information-wrap,
.article-details .author-info-wrap .flex-grow-1.ms-3.author-info,
.article-details .author-info-wrap .flex-grow-1.ms-3.author-info span,
.article-details .author-info-wrap h5.mt-0 {
    display: none !important;
}




@media (max-width: 767px) {
    .row.mod_sis_videogrid149 {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        margin-bottom: 10px;
        width: 100%;
        box-sizing: border-box;
    }

    .row.mod_sis_videogrid149 .col-md-9 {
        width: 65%;
        padding-right: 10px;
        box-sizing: border-box;
    }

    .row.mod_sis_videogrid149 .col-md-9 .sis_video_active,
    .row.mod_sis_videogrid149 .col-md-9 iframe {
        width: 100% !important;
        height: auto !important;
    }

    .row.mod_sis_videogrid149 .col-md-3 {
        width: 35%;
        box-sizing: border-box;
    }

    .row.mod_sis_videogrid149 .col-md-3 .sis_video {
        width: 100% !important;
        height: auto !important;
        margin-bottom: 5px;
    }

    .row.mod_sis_videogrid149 .col-md-3 .sis_video img {
        max-height: 100px;
        object-fit: cover;
    }

    #sis_videogrid {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

   
  
}

@media (max-width: 575px) {
    .hero-video-section {
        height: 350px;
    }

    .hero-content {
        padding: 15px;
    }



    .controls-and-accessibility {
        bottom: 15px;
        right: 15px;
        gap: 8px;
    }

    .video-control-button,
    .accessibility-button {
        width: 40px;
        height: 40px;
        font-size: 1.1em;
        color: #ffffff !important;
    }
    
    .video-control-button:hover,
    .accessibility-button:hover {
        color: #202d78 !important;
    }
}





/* Anula la visibilidad del pseudo-elemento ::before en el estado activo */
.sp-megamenu-parent > li.active::before {
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Restaura el estilo para el pseudo-elemento ::after, que es la línea inferior */
.sp-megamenu-parent > li.active > a::after {
    visibility: visible !important;
    opacity: 1 !important;
}

