.titulo h2{
  color: #1c2d5a;
  font-weight: bold;
  border-top: solid 3px #1c2d5a;
  margin-bottom: -1rem;
}

.titulo2 h2{
  color: #1c2d5a;
  font-weight: bold;
}

.titulo-interno h2{
  color: #1c2d5a;
  font-weight: bold;
  border-bottom: solid 3px #1c2d5a;
}

.titulo-interno2 h2{
  color: #fff;
  font-weight: bold;
  text-align: center;
}

.titulo-blog h2{
  line-height: normal !important;
}

.centrado-horizontal-cen{
  display: flex;
  justify-content: center;
  align-items: center;
}

.centrado-horizontal-der{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.centrado-horizontal-izq{
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.imagen-contacto{
  width: 50px;
  height: 50px;
}

.contenido-nosotros h3{
  font-size: 1.6rem;
  font-weight: bolder;
  color: #1c2d5a;
  margin: 3rem;
}

.contenido-nosotros p{
  font-size: 1.2rem;
  margin: 3rem;
}

.contenido-nosotros ul{
  font-size: 1.2rem;
  margin-left: 6rem;
}

.contenido-nosotros2 h3{
  font-size: 1.6rem;
  font-weight: bolder;
  color: #fff;
  margin: 3rem;
}

.contenido-nosotros2 p{
  font-size: 1.2rem;
  color: #fff;
  margin: 3rem;
}

.contenido-servicios p{
  margin: 3rem;
}

.contenido-servicios ul{
  margin-left: 6rem;
  margin-right: 1rem;
}

.descarga{
  font-size: 0.9rem;
  font-weight: bolder;
  margin-top: 15px;
  margin-bottom: 15px;
}

.testimonios h2{
  margin-top: -2px;
  margin-bottom: -5px;
  font-weight: bolder;
}

.testimonios h3{
  margin-top: -15px;
  margin-bottom: -15px;
  font-weight: bolder;
}

.borde-superior{
  border-top: 2px solid #000000;
}

.borde-inferior{
  border-bottom: 2px solid #000000;
}

.borde-inferior-menu{
  border-bottom: 3px solid #e5e5e5;;
}

.borde-inferior-footer{
  border-bottom: 2px solid #fff;
}

.menu-lateral ul{
  margin-top: 20px;
}

.menu-lateral li{
  border-top: solid 1px #000;
}

.menu-lateral span{
  font-size: 1.2rem;
  font-weight: bolder;
  color: #000;
  margin-left: 6px;
}

.menu-lateral span:hover{
  color: #1c2d5a;
}

.menu-lateral ul{
  display: inline-grid;
}

.menu-footer span{
  color: #ffffff;
}

.menu-footer span:hover{
  color: #cccccc;
}

.menu-footer ul{
  display: inline-grid;
}

.texto-footer{
  color: #ffffff;
  font-size: 1.2rem;
}

.texto-solicitud a{
  color: #fff !important;
  font-size: 1.2rem;
  font-weight: bolder;
}

.texto-suscribirse{
  color: #fff;
  font-size: 0.9rem;
  font-weight: bolder;
}

.alinear-izq{
  text-align: right;
}

.boton-azul{
  background-color: #1c2d5a !important;
  color: #fff !important;
}



.login .plg_system_webauthn_login_button {
    display: none !important;
}
.boton-azulclaro{
  background-color: #6699cc;
  color: #fff;
  padding: 10px 30px;
  font-weight: bold; 
  cursor: pointer; 
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);       
  transition: background-color 0.3s ease;
}
.boton-azulclaro:hover {
  background-color: #333366;
}
.inicio{
  background-image: url(/images/inicio.png);
  background-size: cover;
  background-position: center top;
  text-align: center;
}
.titulo-inicio{
  font-size: 1.8rem;
  font-weight: bolder;
  text-align: center;
}

/* Ocultamos la imagen 'over' por defecto */
.img-contenedor .img-over {
    display: none;
}

/* Cuando pasamos el mouse sobre el contenedor... */
.img-contenedor:hover .img-normal {
    display: none; /* Escondemos la normal */
}

.img-contenedor:hover .img-over {
    display: block; /* Mostramos la over */
}

@media (min-width: 49rem){
  .ver-movil{
    display:none !important;
  }
}

@media (max-width: 49rem){
  .ver-pc{
    display:none !important;
  }
  .margen-movil{
    margin: 10px !important;
  }
}

/* Estilos Originales*/
.reviews-block__text {
  color: #fff !important;
  font-style: italic;
  font-weight: bolder;
}
.reviews-block__person-role {
  color: #fff !important;
}
.reviews-block__slide {
  background: #1c2d5a !important;
}
figure.effectck-zoe figcaption {
  background: rgb(28, 45, 90, 0.8) !important;
  color: #fff !important;
}
#g-navigation .g-main-nav .g-toplevel > li.active > .g-menu-item-container > .g-menu-item-content {
    box-shadow: 0 2px 0 #1c2d5a;
}
.size-33 {
  margin-bottom: -18px !important;
}
.mod-dpcalendar-upcoming-horizontal .dp-figure .dp-image {
  height: 100% !important;
}
.com-dpcalendar-event__image .dp-image{
  width: 50% !important;
}
.menu-lateral .g-toplevel > li.active {
  background-color: #1c2d5a !important;
  border-radius: 4px;
  transition: background-color 0.3s ease;
}
.menu-lateral .g-toplevel > li.active .g-menu-item-title {
  color: white !important;
}
.camera_caption > div {
    background: rgb(28, 45, 90, 0.8) !important;
}
.mod-dpcalendar-upcoming-horizontal .dp-link {
    font-size: 1.5rem !important;
}
.edit.item-page .btn-toolbar .btn, .pager.pagenav a, p.readmore .btn, .contact .form-actions .btn, #contact-form .controls .btn-primary.validate, .profile .btn, .login .btn, .logout .btn, .registration .btn, .profile-edit .btn, .remind .btn, .reset .btn, .search #searchForm .btn, .search #search-form .btn, .finder #searchForm .btn, .finder #search-form .btn{
  border-radius: 0.3rem !important;
}
html body .nui.blue {
    background-color: #1c2d5a !important;
    --h: 225;       /* Valores HSL para #1c2d5a */
    --s: 53%;
    --l: 23%;
    --lt: 100%;     /* Fuerza color blanco */
    color: #fff !important; /* Redundante por si --lt no aplica */
}
.btn-primary {
  font-size: 1rem !important;
  letter-spacing: 0.3rem !important;
  text-transform: none !important;
  background: #49829d !important;
}
.button {
  text-transform: none !important;
}
.login .plg_system_webauthn_login_button {
  display: none !important;
}
.pd-category .ph-top .btn-primary {
  display: none !important;
} 
figure.effectck-zoe figcaption [class*="title"] {
    float: none !important;
}
figure[class*="effectck"] figcaption {
	text-transform: none !important;
}