/**** GLOBALS ****/
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
body{
  font-family: 'Roboto' !important;
}
h1, .h1 {
  font-family: Roboto !important;
}
.fw-500{
  font-weight: 500 !important;
}
.fw-700{
  font-weight: 700 !important;
}
.text-blanco{
  color: #fff !important;
}
.text-azul{
  color: #0F69C4 !important;
}
.fs-14{
  font-size: 0.9rem !important;
}
.fs-18{
  font-size: 1.125rem !important;
}
.fs-20{
  font-size: 1.25rem !important;
}
.fs-24{
  font-size: 1.5rem !important;
}
.fs-32{
  font-size: 2rem !important ;
}
.fs-40{
  font-size: 2.5rem !important ;
}
.p-40{
  padding: 2.5rem !important;
}
.pb-40{
  padding-bottom: 2.5rem !important;
}
.pr-20{
  padding-right: 1.25rem !important;
}
.px-68{
  padding-left: 4.25rem !important;
  padding-right: 4.25rem !important;
}
.py-10{
  padding-top: .625rem !important;
  padding-bottom: .625rem !important;
}
.my-20{
  margin-right: 1.25rem !important;
  margin-left: 1.25rem !important;
}
.gap-40{
  gap: 2.5rem !important
}
.gap-32{
  gap: 2rem !important
}
.stack-24 {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.wfit{
  width: fit-content;
}
.flipX{
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
.flipY{
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
}
.bg-info{
  background-color: #CFE1F3 !important;
}
.offset-200{
  top: 12.5rem !important;
}
.borde-primario { border-color: #006FB3 !important;  }

/* Permitir que flex no desborde */
.boton-link {
  min-width: 0;
  max-width: 100%;
}

/* Cortar URLs largas */
.boton-link span {
  overflow-wrap: break-word;
  word-break: break-word;
}


.boton-link i { visibility: visible !important;}
.boton-link:hover span.cl, 
.boton-link:hover span.material-symbols-outlined { margin-left: 4px; transition: 0.5s}

/* .boton-link:hover span + span.cl, 
.boton-link:hover span + span.material-symbols-outlined{ margin-right: 4px; transition: 0.5s} */

.borde-info { border-color:  #0096F3 !important; }
.borde-terciario { border-color: #012C50 !important;}

.bg-verde9 { background-color: #DEEADE; }
.bg-rojo9 { background-color: #FBDEDD; }
.w400 { width: 25rem !important; }

.share-icons{ width: 32px !important; }

.mh-auto{ min-height: auto; }

.fullwidth-section {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

@media (max-width: 991px) {
  .fullwidth-mobile {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }
  .wrap-on-mobile {
    white-space: normal !important;
  }
}
/**** FIN GLOBALS ****/

/*****************************************/
/*****************************************/
/**** HEADER ****/
header {
    position: relative; /* O 'sticky' si quieres que te siga al bajar */
    z-index: 1050;      /* Mayor que el 1000 de los sub-menús */
    background-color: #fff; /* Evita que sea transparente */
}

ul.nav .nav-item,
ul.nav .dropdown-nav {
    position: relative !important;
}
nav.navbar.navbar-expand-lg{
  align-items: center !important;
  z-index: 1051;
}
ul.nav ul.sub-menu {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: #fff !important;
    z-index: 1000 !important;

    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) !important;
    transition:
        opacity 0.3s ease,
        transform 0.3s ease !important;
}
ul.nav > li.nav-item:hover > ul.sub-menu {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;

    left: 0 !important;
    right: auto !important;
}
ul.nav ul.sub-menu > li.nav-item.dropdown-nav:hover > ul.sub-menu {
    display: block !important;
    top: 0 !important;
    left: 100% !important;

    right: auto !important;
}
ul.nav > li.nav-item:last-child:hover > ul.sub-menu,
ul.nav > li.nav-item:nth-last-child(2):hover > ul.sub-menu {
    left: auto !important;
    right: 0 !important;
}
ul.nav ul.sub-menu > li.dropdown-nav:last-child:hover > ul.sub-menu {
  left: auto !important;
  right: 100% !important;
}
ul.nav .nav-link{
  text-decoration: underline !important;
}
ul.nav .nav-link:active{
  background-color: transparent !important;
}
ul.sub-menu li{
    border-bottom: 1px solid #ccc;
}
#navbarNavDropdown .dropdown-item {
    padding: 5px 10px;
    margin: 10px 0;
    border-bottom: none;
}
header img.contrast{
    display: none;
}
header .toolbar-form-btn input{
  min-height: 38px !important;
  border-color: #A8B7C7 !important;
}
header .toolbar-form-btn input::placeholder{
  opacity: 1; /* Firefox */
  color: #4A4A4A;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400 !important;
  font-family: Roboto !important;
  margin-bottom: 20px;
}
header .toolbar-form-btn a{
  border-color: #A8B7C7 !important;
  color: #4A4A4A !important;
}
header .toolbar-form-btn a span{
  font-size: 1.2rem !important;
}
header .toolbar-behavior-read{
  width: 6.2rem !important;
}
header .toolbar-behavior-read span{
  font-family: Roboto !important;
}
header .cl-sound{
  font-size: 12px !important;
}
/*header mobile*/
.mobile-nav li {
  margin-bottom: 0.5rem;
}
.mobile-nav button {
  background: none;
  border: none;
  font-weight: 500;
}
.material-symbols-outlined {
  font-size: 1.2rem;
}
/* Mejora visual para submenús */
.mobile-nav .collapse {
  transition: max-height 0.35s ease;
  overflow: hidden;
  max-height: 0;
  display: block !important; /* important para no dejar que Bootstrap lo oculte */
  visibility: visible;
}

/* Submenús abiertos */
.mobile-nav .collapse.show {
  max-height: 999px; /* valor suficientemente alto para permitir la expansión */
}
#mobileNavOffcanvas {
  overflow: hidden;
  transition: height 0.35s ease;
}

header .offcanvas button{
  background-color: transparent;
  color: #191A1A;
}
/**** FIN HEADER ****/

/*****************************************/
/*****************************************/
/**** CONTRASTE ****/ 
/*header*/
.a11y-contrast ul.nav ul.sub-menu,
.a11y-contrast .offcanvas h4,
.a11y-contrast .offcanvas p
{
    color: #fff
}
.a11y-contrast ul.nav .nav-link:focus{
  background-color: #191A1A !important;
}
.a11y-contrast header img.contrast{
    display: block;
}
.a11y-contrast header img.normal{
    display: none;
}
.a11y-contrast a,
.a11y-contrast .accordion-item button
{
  color: #FCFF3C !important;
}
.a11y-contrast input[type=text] {
    color: #fff !important;
    background-color: transparent !important;
}
.a11y-contrast input[type=text]::placeholder {
    color: #fff !important;
}
/*body*/
.a11y-contrast main,
.a11y-contrast .offcanvas,
.a11y-contrast .accordion-item,
.a11y-contrast .accordion-item button,
.a11y-contrast ul.nav ul.sub-menu
{
  background-color: #000 !important;
}
.a11y-contrast .boton{
  color: #000 !important;
}
.a11y-contrast .boton:hover,
.a11y-contrast ul.nav ul.sub-menu a:hover,
.a11y-contrast .noticias-pagination .page-link:hover{
  background-color: #333333 !important;
  color: #29EDFF !important;
}

.a11y-contrast .boton-link,
.a11y-contrast .nav-tabs .nav-link,
.a11y-contrast header .icon{
  color: #FCFF3C !important;
  background-color: transparent !important;
}
.a11y-contrast .boton-link:hover,
.a11y-contrast .footer a:hover,
.a11y-contrast .navbar .nav-link:hover,
.a11y-contrast .boton-link:hover > .icon{
  color: #29EDFF !important;
}

.a11y-contrast .noticias-pagination .page-link{
  background-color: #29EDFF !important;
  border-color: #29EDFF !important;
}
/**** FIN CONTRASTE ****/ 

/*****************************************/
/*****************************************/
/**** FOOTER ****/
.footer-title{
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 2rem;
  color: #fff;
  margin-bottom: 1rem;
}
footer ul>li{
  margin-bottom: 0.5rem;
}
footer .rrss{
  font-size: 2rem;
}
/**** FIN FOOTER ****/

/*****************************************/
/*****************************************/
/**** HOME ****/
@media (max-width: 992px) {
  h2.home{
    font-weight: 500 !important;
    font-size: 1.5rem !important;
    line-height: normal !important;
  }
}
/*destacados*/
.enlace-principal .enlace-principal-img img{
  width: 100%; 
  height: 100%; 
  object-fit: contain;
}
.enlace-principal .enlace-principal-bajada{
  font-size: 1rem;
  margin-bottom: 28px;
}
.enlace-secundario .enlace-secundario-contenido .enlace-secundario-titulo{
  font-size: 1.04rem;
  line-height: 1.1;
  display: inline-block;
}
.enlace-secundario .enlace-secundario-img{
  width: 110px !important;
  height: 80px !important;
  margin-right: 12px !important;
}
.enlace-secundario .enlace-secundario-img img{
  width: 110px; 
  height: 80px; 
  object-fit: cover;
  border: solid 1px #CCCCCC;
}
@media (max-width: 992px) {
  .enlace-principal{
    margin-bottom: 48px !important;
  }
  .enlace-principal-boton a{
    width: 100% !important;
  }
  .enlace-secundario-titulo{
    font-weight: 500 !important;
  }
  .enlace-secundario-titulo a{
    text-decoration: none !important;
  }
}
/*vinculados*/
.vinculados-section .container .row{
  padding: 0 1rem;
}
.vinculados-section .vinculados-box{
  padding: 1.5rem 1.3rem;
}
@media (max-width: 992px) {
  .vinculados-section .container .row{
    padding: 0 !important;
  }
  .vinculados-section img {
    margin: 0 !important;
  }
  .vinculados-section .vinculados-box a{
    width: 100% !important;
  }
}
/*noticias*/
.card{
  border: none !important;
}

.home-noticias-img{
  height: 16rem;
}
/* .noticias-img img, */
.home-noticias-img img{
  width: 100%; 
  height: 100%; 
  object-fit: cover;
}
.noticias-meta > p,
.home-noticias-meta > p{
  font-size: 0.9rem;
}
.noticias-meta > span,
.home-noticias-meta > span{
  font-size: 1.4rem !important;
}
img[width="1"][height="1"] {
  width: 100% !important;
  height: 100% !important;
}

/*temas destacados*/
/* Etiqueta superior */
.tema-card-label {
  font-weight: 700;
  width: fit-content;
}

/* Card destacado */
.tema-card .tema-link {
  color: #006FB3;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 12px;
  text-decoration: underline;
  transition: color 0.2s;
}
.tema-card .tema-link:hover {
  color: #003d67;
}
.tema-link-icon {
  display: inline-flex;
  align-items: center;
  margin-right: 5px;
}
/* Responsive */
@media (max-width: 991.98px) {
  .tema-card {
    min-height: 360px;
  }
}
@media (max-width: 767.98px) {
  .tema-card {
    min-height: unset;
    margin-bottom: 18px;
  }
  .tema-card-label {
    font-size: 1rem;
    padding: 5px 15px 5px 10px;
  }
}
/*sitios destacados*/
.temas-destacados-img{
  height: 113px;
}
.temas-destacados-img img{
  width: 100%; 
  height: 100%; 
  object-fit: contain;
}
/*emergencias */
.notice-accordion .accordion-item{
  overflow: hidden;
}
.notice-accordion .accordion-button{
  gap: .75rem;
  align-items: center;
  background-color: #fff;
}
.chip-urgent{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: 1rem 1.25rem;
}
.chip-urgent .dot{
  width: .6rem;
  height: .6rem;
  border-radius: 50%;
  background: #E22C2C;
}
/* Caja informativa (azul) */
.info-callout{
  background: #E3F2FD;
  /* border: 1px solid #cfe7ff; */
  border-radius:.5rem;
  padding:.75rem 1rem; 
  display:flex; 
  gap:.75rem; 
  align-items:flex-start;
}

/* Botón link centrado */
.link-btn{
  display:inline-block; 
  text-decoration:none; 
  font-weight:600;
  border:1px solid #dbe2ea; 
  border-radius:.5rem; 
  padding:.5rem 1rem;
  background:#f8fafc;
}
/**** FIN HOME ****/

/*****************************************/
/*****************************************/
/**** NOTICIAS ****/
@media (max-width: 992px) {
  h1.noticias{
    font-size: 2rem !important;
  }
}
.filtros-card {
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 2px 14px 0 rgba(99,129,172,0.08);
  max-width: 370px;
  min-width: 260px;
}

.filtro-checkbox {
  width: 0.9em;
  height: 0.9em;
  accent-color: #006FB3;
  border: 1px solid;
  border-radius: 3px !important;
}
.filtro-checkbox:checked{
  background-color: #006FB3 !important;
  border-color: #006FB3 !important;
}
.filtro-checkbox-label {
  cursor: pointer;
  user-select: none;
}

/* Filtros seleccionados */
.filtro-pill {
  background: #D5E7F4;
  color: #006FB3;
  font-weight: 500;
  font-size: 1rem;
  border-radius: 22px;
  padding: 7px 16px 7px 18px;
  transition: box-shadow 0.2s;
}
.filtro-pill .btn-close {
  opacity: 0.7;
  margin-left: 6px;
  font-size: 1.05em;
  filter: invert(44%) sepia(65%) saturate(3638%) hue-rotate(176deg) brightness(95%) contrast(90%);
}
.filtro-pill .btn-close:hover {
  opacity: 1;
}

.boton-full {
  display: block !important;
  width: 100% !important;
}

@media (max-width: 575.98px) {
  .filtros-card {
    min-width: unset;
    max-width: 100vw;
    border-radius: 0;
    padding: 20px 8px !important;
  }
}
.noticias-lista {
  /* background: #000; */
}
.noticia-item {
  /* border-bottom: 1px solid #232323; */
}
.noticia-thumb {
  width: 100%;
  aspect-ratio: 16/9;
  /* background: #222; */
  overflow: hidden;
}
.noticia-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.badge-noticia {
  /* background: #D5E7F4; */
  color: #232323;
  font-weight: 600;
  font-size: 1rem;
  border-radius: 6px;
  padding: 4px 16px;
  margin-bottom: 2px;
}
.noticia-titulo {
  color: #0096F3;
  font-weight: 700;
  font-size: 1.1rem;
  line-height: 1.3;
  text-decoration: underline;
  margin-top: 2px;
}
.noticia-titulo:hover {
  color: #005688;
  text-decoration: underline;
}

/* Paginador */
.noticias-pagination {
  display: flex;
  gap: 0;
  background: none;
}
.noticias-pagination .page-item {
  /* background: #000; */
}
.noticias-pagination .page-link {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 !important;
  margin-left: -1px;
  margin-right: 0;
  /* background-color: transparent; */
}
.noticias-pagination .page-item.active .page-link{
  color: #0F69C4 !important;
  text-decoration: underline;
}
.noticias-pagination .page-link:hover {
  color: #CCCCCC !important;

  border-color: #CCCCCC !important;
}
.noticias-pagination .page-item.active:hover > .page-link{
  color: #0F69C4 !important;
  border-color: #0F69C4 !important;
}
@media (max-width: 767.98px) {
  .noticia-thumb {
    aspect-ratio: 16/9;
    max-height: 210px;
  }
  .noticias-pagination .page-link {
    width: 38px;
    height: 38px;
    padding: 0;
  }
}
.post-detalle .container{
  max-width: 50rem;
}
.noticia-mensaje p{
  padding: 0 !important;
  margin: 0 !important;
}

@media (max-width: 991.98px) {
  .post-contenido.colapsado {
    max-height: 580px;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(.4,0,.2,1);
    position: relative;
  }
  #mostrar-mas-btn {
    font-size: 1rem;
    font-weight: 600;
  }
}

/* Capa que cubre las noticias */
.loader-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(3px);
  background-color: rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
}

/* Loader animado circular */
.loader-spinner {
  border: 4px solid #bcd2e8;
  border-top: 4px solid #006FB3;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* Mobile chips row horizontal scroll si son muchos */
#chips-filtros-mobile {
  overflow-x: auto;
  white-space: nowrap;
  margin-bottom: 1rem;
}

/* Modal: que ocupe ancho adecuado y no se corte el contenido */
@media (max-width: 991.98px) {
  .modal-dialog {
    max-width: 98vw;
    margin: 0 auto;
  }
  .modal-content.filtros-card {
    border-radius: 16px;
    box-shadow: 0 2px 12px 0 rgba(99,129,172,0.16);
  }
}

/**** FIN NOTICIAS ****/

/*****************************************/
/*****************************************/
/**** MINISTERIO ****/
.personas .profile{
  width: 122px !important;
  height: 150px !important;
}
/**** FIN MINSITERIO ****/

/*****************************************/
/*****************************************/
/**** CENTRO DE AYUDA ****/
.contactos .icono{
  width: 24px;
  height: 24px;
}
/**** FIN CENTRO DE AYUDA ****/

/*****************************************/
/*****************************************/
/**** SOCIEDAD CIVIL ****/
.fixed-table-pagination{
  justify-self: center;
}

.pagination .page-link {
  text-decoration: underline;
  border-radius: 0px !important;
  color: #CCCCCC;
}
.pagination .page-pre .page-link,
.pagination .page-next .page-link {
  text-decoration: none;
}
.pagination .page-link.active{
  background-color: #FFF;
  border-color: #006FB3;
  color: #006FB3;
}
.pagination .disabled{
  --bs-pagination-disabled-bg: #FFF !important;
}
.pagination .active .page-link{
  background-color: #FFF !important;
  border-color: #0F69C4 !important;
  color: #0F69C4 !important;
}
.pagination .page-link .cl{
  vertical-align: middle;
}

.table-responsive .bootstrap-table button[name="customView"] {
  display: none !important;
}

@media (max-width: 991px) {
  .table-responsive.custom-view .bootstrap-table .fixed-table-container .table { display: none !important; }
  .table-responsive.custom-view .bootstrap-table .fixed-table-custom-view { display: block !important; }
}

@media (min-width: 992px) {
  .table-responsive.custom-view .bootstrap-table .fixed-table-container .table { display: block !important; }
  .table-responsive.custom-view .bootstrap-table .fixed-table-custom-view { display: none !important; }
}

.table-responsive table tbody{
  border-left: solid 1px #006FB3 !important;
  border-right: solid 1px #006FB3 !important;
  
}
.table-responsive .fixed-table-body{
  border-bottom: solid 1px #006FB3 !important;
  border-radius: 0px 0px 8px 8px !important;
}

.table-responsive .bs-bars{
  float: none !important;
}

.table-responsive table th{
  background-color: #006FB3 !important;
  color: #FFFFFF !important;
}

.table-responsive table th:first-child{
  border-radius: 8px 0 0 0;
}

.table-responsive table th:last-child{
  border-radius: 0 8px 0 0;
}

.table-responsive table{
  font-size: 14px !important;
}

.table-responsive table td:first-child{
  font-weight: 700 !important;
}

@media (min-width: 992px) {
  .table-responsive .table-titulo{
    display: none !important;
  }
}

@media (max-width: 991px) {
  .table-responsive .table-data{
    display: none !important;
  }
}


/**** FIN SOCIEDAD CIVIL ****/

/**** TO TOP ****/
.to-top-btn {
  bottom: 1rem;          
  margin-right: 1rem;    
  z-index: 1030;         
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
  bottom: var(--to-top-bottom, 1rem);
  box-shadow: 1px 3px 4px rgba(0, 0, 0, 0.6);
}

.to-top-btn.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.to-top-btn.is-hidden {
  pointer-events: none;
}

/**** FIN TO TOP ****/



.material-symbols-fill {
  font-variation-settings:
  'FILL' 1,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}

iframe[src^="https://www.youtube.com"],
iframe[src^="https://youtube.com"],
iframe[src^="https://www.youtube-nocookie.com"] {
  width: 100%;
  aspect-ratio: 16/9;
  height: 450px;
}
@media (max-width: 991px) {
  iframe[src^="https://www.youtube.com"],
  iframe[src^="https://youtube.com"],
  iframe[src^="https://www.youtube-nocookie.com"] {
    width: 100%;
    aspect-ratio: 3/2;
    height: 250px;
  }
}

@media (max-width: 991px) {
  .beneficios .boton-ventanilla{
    width: 100% !important;
  }
  .beneficios .boton-ventanilla a{
    width: 100% !important;
  }
}

@media (min-width: 991px) {
  .accordion.portadilla .accordion-item{
    border: none !important;
  }
}

/**** SEARCH MOBILE ****/
#mobileSearch button[type="submit"]{
  padding: 9px 15px !important;
}
#mobileSearch {
  transform: translateX(100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
}

#mobileSearch.active {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

#mobileSearch.hidden {
  opacity: 0;
  pointer-events: none;
}

/**** END SEARCH MOBILE ****/


/*Noticias mobile*/
@media (max-width: 991px) {
  #modalFiltros .filter-section .icon-collapse {
    transition: transform 0.2s ease;
  }

  #modalFiltros .filter-section .icon-collapse.rotated {
    transform: rotate(180deg);
  }

  #modalFiltros .modal-dialog {
    max-height: 100vh;
    display: flex;
    flex-direction: column;
  }

  #modalFiltros .modal-content {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  #modalFiltros .modal-body {
    flex: 1;
    overflow-y: auto;
    padding-bottom: 0.5rem;
  }

  #modalFiltros .filter-section .filtro-checkbox-group {
    max-height: 200px;
    overflow-y: auto;
    padding-right: 6px;
  }

  #modalFiltros .filtros-card {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  #modalFiltros .filtros-seleccionados,
  #modalFiltros .chips-filtros-modal {
    flex-shrink: 0;
  }

  #modalFiltros .aplicar-filtros,
  #modalFiltros #limpiar-filtros {
    flex-shrink: 0;
  }

  #modalFiltros .filtro-checkbox-group::-webkit-scrollbar {
    width: 6px;
  }
  #modalFiltros .filtro-checkbox-group::-webkit-scrollbar-thumb {
    background-color: #c2c2c2;
    border-radius: 3px;
  }

  #modalFiltros .modal-body::-webkit-scrollbar,
  #modalFiltros .filtro-checkbox-group::-webkit-scrollbar {
    width: 6px;
  }

  #modalFiltros .modal-body::-webkit-scrollbar-thumb,
  #modalFiltros .filtro-checkbox-group::-webkit-scrollbar-thumb {
    background-color: #006FB3;
    border-radius: 3px;
  }

  #modalFiltros .modal-body::-webkit-scrollbar-track,
  #modalFiltros .filtro-checkbox-group::-webkit-scrollbar-track {
    background-color: #CFE1F3;
  }

  /* Firefox únicamente */
  @-moz-document url-prefix() {
    #modalFiltros .modal-body,
    #modalFiltros .filtro-checkbox-group {
      scrollbar-width: thin;
      scrollbar-color: #006FB3 #CFE1F3 !important;
    }
  }

}


/*Imagen Fondo Landing Page*/

.image-box {
  position: relative;
}

.image-box-background,
.image-box-overlay {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.image-box-background {
  background: var(--image-url) center center no-repeat;
  background-size: cover;
}

.image-box-overlay {
  background: var(--color);
}

.image-box-content {
  position: relative;
  color: white;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.documentos .pagination .page-item.active {
    z-index: 1 !important;
}

.documentos .documento-item {
    display: none;
    animation: fadeIn 0.4s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.share-grid {
  max-width: 100%;
}

.share-item {
  width: 72px;              /* ancho controlado */
  flex: 0 0 auto;
}

.share-icons {
  width: 32px;
  height: 32px;
}

/* iPhone SE y similares */
@media (max-width: 360px) {
  .share-item {
    width: 64px;
  }

  .share-icons {
    width: 28px;
    height: 28px;
  }
}

@media (max-width: 767.98px) {
  footer .row > [class*="col-"] {
    margin-bottom: 2rem; /* ajusta a gusto: 1.5rem / 2rem / 3rem */
  }

  footer .row > [class*="col-"]:last-child {
    margin-bottom: 0;
  }

  footer .row + .row {
    margin-top: 2rem;
  }
}
