:root {
 
   /*========== Colors ==========*/
   --primary: #36559F;
   --secondary: #615D5E;
   --blue-light: #516FB4;
   --blue-demond: #4380C2;
   --txt-primary: #5F5C5D;
 
   /*========== Font and typography ==========*/
   --lgm-font-sans-serif: "Montserrat", Helvetica, Arial, Sans-Serif;
   /* --lgm-font-monospace: 'Noto Sans Mono', monospace; */
   --lgm-body-font: var(--lgm-font-sans-serif);
   /* --lgm-titles-font: var(--lw-font-sans-serif); */
   --lgm-xxl-font-size: clamp(28px, calc(16px + 4vw), 48px);
   --lgm-xl-font-size: clamp(24px, calc(14px + 3vw), 40px);
   --lgm-lg-font-size: clamp(22px, calc(12px + 2.5vw), 36px);
   --lgm-regular-font-size: clamp(12px, calc(10px + 1vw), 16px);
   --lgm-text-line-height: 1.5rem;
 
   /*========== Font weight ==========*/
   --lgm-font-light:300; 
   --lgm-font-regular:400; 
   --lgm-font-medium: 500;
   --lgm-font-semibold: 600;
   --lgm-font-bold: 700;  
 
   /*========== Marging Bottom ==========*/
   --mb-6: 3.5rem;
   --mb-7: 5rem;
   --mb-8: 5.5rem;
 
   /*========== Marging Top ==========*/
   --mt-6: 3.5rem;
   --mt-7: 5rem;
   --mt-8: 5.5rem;
   
   /*========== Padding Top ==========*/
   --pt-6: 3.5rem;
   --pt-7: 5rem;
   --pt-8: 5.5rem;
 
   /*========== Padding Bottom ==========*/
   --pb-6: 3.5rem;
   --pb-7: 5rem;
   --pb-8: 5.5rem;

   /*==== Break Points Media Queries ====*/
   --breakpoint-sm: 576px;
   --breakpoint-md: 768px;
   --breakpoint-lg: 992px;
   --breakpoint-xl: 1200px;
   --breakpoint-xxl: 1400px;
 }
*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
      margin: 0;
      font-family: var(--lgm-body-font);
      font-size: var(--lgm-regular-font-size);
      font-weight: var(--lgm-font-medium);
      line-height: var(--lgm-text-line-height);
      color: var(--txt-primary);
      background-color: var(--lgm-bg-color);
      font-optical-sizing: auto;
      overflow-x: hidden;
      -webkit-text-size-adjust: 100%;
      transition: all 0.5s;
      min-height: 100vh;
}
h3, h2, h1 {
      font-weight: var(--lgm-font-semibold);
      margin-top: 0;
      margin-bottom: 0.5rem;
      line-height: 1.2;
}
h1 { font-size: var(--lgm-xxl-font-size); }
h2 { font-size: var(--lgm-xl-font-size); }
h3 { font-size: var(--lgm-lg-font-size); }

p, ul { margin: 0; }
b { font-weight: var(--lgm-font-semibold); }

[class*="btn"] {
   cursor: pointer;
}

/*====== HEADER ======*/
nav{
   height: 6rem;
   width: 100vw;
   background-color: #fff;
   box-shadow: 0 3px 20px rgba(0, 0, 0, 0.2);
   display: flex;
   justify-content: center;
   position: fixed;
   z-index: 10;
}
.logo{
   padding:1vh 1vw;
   text-align: center;
}
.logo img {
   height: 5rem;
   width: 5rem;
}
/*Styling Links*/
.nav-links{
   display: flex;
   list-style: none; 
   width: 88vw;
   padding: 0 0.7vw;
   justify-content: center;
   align-items: center;
   text-transform: uppercase;
   margin: 0;
}
.nav-links li a{
   text-decoration: none;
   margin: 0 0.7vw;
   color: var(--txt-primary);
   font-weight: bold;
}
.nav-links li a:hover {
   color: var(--primary);
}
.nav-links li {
   position: relative;
}
.nav-links li a::before {
   content: "";
   display: block;
   height: 3px;
   width: 0%;
   background-color: var(--primary);
   position: absolute;
   bottom: 0;
   transition: all ease-in-out 250ms;
   margin: 0 0 0 10%;
}
.nav-links li a:hover::before{
   width: 80%;
}
/*Styling Buttons*/
.login-button{
   background-color: transparent;
   border: 1.5px solid #f2f5f7;
   border-radius: 2em;
   padding: 0.6rem 0.8rem;
   margin-left: 2vw;
   font-size: 1rem;
   cursor: pointer;
}
.login-button:hover {
   color: #131418;
   background-color: #f2f5f7;
   border:1.5px solid #f2f5f7;
   transition: all ease-in-out 350ms;
}
.join-button{
   color: #131418;
   background-color: #61DAFB;
   border: 1.5px solid #61DAFB;
   border-radius: 2em;
   padding: 0.6rem 0.8rem;
   font-size: 1rem;
   cursor: pointer;
}
.join-button:hover {
   color: #f2f5f7;
   background-color: transparent;
   border:1.5px solid #f2f5f7;
   transition: all ease-in-out 350ms;
}
/*Styling Hamburger Icon*/
.hamburger div{
   width: 30px;
   height:3px;
   background: var(--primary);
   margin: 5px;
   transition: all 0.3s ease;
}
.hamburger.toggle div{
   background: #fff;
}
.hamburger{
   display: none;
}
@media (min-width: 1400px) {
   .nav-links li {
      margin: 0 .5rem;
   }
}

/*Stying for small screens*/
@media screen and (max-width: 992px){
   nav{
       /* position: fixed; */
       justify-content: inherit;
       z-index: 3;
   }
   .hamburger{
       display:block;
       position: absolute;
       cursor: pointer;
       right: 5%;
       top: 50%;
       transform: translate(-5%, -50%);
       z-index: 2;
       transition: all 0.7s ease;
   }
   .nav-links{
       position: fixed;
       background: var(--blue-light);
       height: 100vh;
       width: 100%;
       flex-direction: column;
       clip-path: circle(50px at 90% -20%);
       -webkit-clip-path: circle(50px at 90% -10%);
       transition: all 1s ease-out;
       pointer-events: none;
   }
   .nav-links.open{
       clip-path: circle(1000px at 100%);
       -webkit-clip-path: circle(1000px at 100%);
       /* -webkit-clip-path: circle(1000px at 90% -10%); */
       pointer-events: all;
   }
   .nav-links li{
       opacity: 0;
   }
   .nav-links li.visible{
      margin: 1.2rem 0;

   }
   .nav-links li.visible a{
      color: #fff;
   }
   .nav-links li:nth-child(1){
       transition: all 0.5s ease 0.2s;
   }
   .nav-links li:nth-child(2){
       transition: all 0.5s ease 0.4s;
   }
   .nav-links li:nth-child(3){
       transition: all 0.5s ease 0.6s;
   }
   .nav-links li:nth-child(4){
       transition: all 0.5s ease 0.7s;
   }
   .nav-links li:nth-child(5){
       transition: all 0.5s ease 0.8s;
   }
   .nav-links li:nth-child(6){
       transition: all 0.5s ease 0.9s;
       margin: 0;
   }
   .nav-links li:nth-child(7){
       transition: all 0.5s ease 1s;
       margin: 0;
   }
   li.visible{
      opacity: 1;
   }
}
/*Animating Hamburger Icon on Click*/
.toggle .line1{
   transform: rotate(-45deg) translate(-5px,6px);
}
.toggle .line2{
   transition: all 0.7s ease;
   width:0;
}
.toggle .line3{
   transform: rotate(45deg) translate(-5px,-6px);
}

/*====== Wrapper ======
=======================*/
.wrapper{
   position: relative;
   padding-top: 6rem;
}
section{
   padding: 2rem 0;
}

/*====== Section class lmg ======
=======================*/
.lmg-mision-vision{
   background-image: url(../../assets/images/tabla-periodica.png);
   background-repeat: no-repeat;
   background-position: center;
   background-size: contain;
}
.lmg-our-customers{
   background-image: url(../../assets/images/img-heros/hero-nuestros-clientes.jpg);
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
   padding: 4rem 0;
}

/*====== Parallax ======
=======================*/
.parallax-container { position: relative; overflow: hidden; height: 500px; }
.parallax-container.hero-rest { height: 300px;} 
.parallax-container .parallax { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: -1; } 
.parallax img, .parallax picture { opacity: 1; position: absolute; left: 50%; bottom: 0; min-width: 100%; min-height: 100%; transform: translate3d(0, 0, 0); transform: translateX(-50%); width: 100%; }
.parallax-container .parallax-text { width: 100%; position: absolute; bottom: 0; left: 0; right: 0; background-color: #516FB4B2; color: #F2F2F2; text-shadow: 0px 4px 4px rgba(0,0,0,0.4); }
.parallax-container .parallax-hero-text{
   width: 100%;
   height: 100%;
   position: relative;
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
   z-index: 2;
}
.parallax-container .parallax-hero-text .text-hero{
   width: 90%;
   margin: auto;
   color: #F2F2F2; text-shadow: 0px 4px 4px rgba(0,0,0,0.4);
}
.parallax-back{
   position: absolute; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; z-index: 1;
   background: linear-gradient(177.75deg, rgba(81, 111, 180, 0.4) 1.88%, rgba(192, 208, 226, 0.4) 73.94%);
}
@media (min-width: 768px) {
   .parallax-container .parallax-hero-text .text-hero{
      width: 67%;
   }
}
@media (min-width: 992px) {
   .parallax-container .parallax-hero-text .text-hero{
      width: 45%;
   }
}
@media (min-width: 1600px) {
   .parallax-container .parallax-hero-text .text-hero{
      width: 35%;
   }
}

@media (max-width: 576px) {
   .parallax-container { height: 300px; }
}

/*====== Customize ======
=======================*/
.lmg-titles-underline{
   border-bottom: 4px solid var(--blue-demond);
   padding-bottom: .75rem;
}
.lmg-titles-underline-bl{
   border-bottom: 4px solid #97B9DF;
}
.txt-primary{
   color: var(--blue-light);
}
.txt-justify{
   text-align: justify;
}
.txt-underline{
   text-decoration: underline;
   text-decoration-color: var(--txt-primary);
}
.txt-underline-bluelight{
   color: var(--blue-light);
   text-decoration: underline;
   text-decoration-color:var(--blue-light);
   font-weight: var(--lgm-font-bold);
}
.txt-underline-wh{
   text-decoration: underline;
   text-decoration-color: #fff;
}
.card-header-grey{
   background-color: #EEEEEE;
   padding: .5rem 1rem;
   border-top-left-radius: 10px!important;
   border-top-right-radius: 10px!important;
   font-weight: var(--lgm-font-semibold);
}
.txt-mailto{
   text-decoration: underline;
   text-decoration-color: var(--primary);
   color: var(--primary);
   font-style: italic;
   font-weight: var(--lgm-font-semibold);
}
.txt-mailto-white{
   text-decoration: underline;
   text-decoration-color: #fff;
   color: #fff;
   font-style: italic;
}
.bg-blue-light-95{
   background-color: #516FB4F2;
}
.txt-small, .select2-results__message{ font-size: 15px; }

/*Modal*/
.modal-header{
   border: 0;
}
/*table*/
.table-container{
   width: 100%;
   border-collapse:collapse;
}
.table-container thead{
   background-color: #CEE3FF;
}
.table-container thead tr th{
   opacity: 1;
   padding: 12px;
   vertical-align: top;
   text-align: center;
   border: 1px solid var(--blue-light);
}
.table-container tbody tr td{
   background-color: #fff;
   padding: 8px;
   text-align: center;
   border: 1px solid var(--blue-light);
} 
@media (max-width: 768px){
   .table-container thead{
      display: none;
   }
   .table-container, .table-container tbody, .table-container tr, .table-container td{
      display: block;
      width: 100%;
   }
   .table-container tr{
      margin-bottom: 15px;
   }
   .table-container tbody tr td{
      text-align: right;
      padding-left: 50%;
      position: relative;
   }
   .table-container td:before{
      content: attr(data-label);
      position: absolute;
      top: 0;
      left: 0;
      font-weight: bold;
      width: 50%;
      height: 100%;
      padding-left: 15px;
      text-align: left;
      background-color: #CEE3FF;
      
      padding: 8px;
   }
}
/* Animación para las tabs */
.tabs-content{
   position: relative;
   width: 100%;
}
.tabs-content .nav-tabs{
   justify-content: center;
   margin-bottom: 1.5rem;
   border-color: var(--blue-light);
}
.tabs-content .nav-link{
   color: var(--txt-primary);
   font-weight: var(--lgm-font-bold);
}
.tabs-content .nav-link:hover{
   color: var(--blue-light);
   border-color: var(--blue-light);
}
.tabs-content .nav-link.active{
   color: var(--blue-light);
   border-color: var(--blue-light);
}
.tab-pane {
   visibility: hidden;
   position: absolute;
   opacity: 0;
   transform: scale(0);
   transition: visibility 0s, opacity 0.5s, transform 0.5s;
}
.tab-pane.active {
   visibility: visible;
   position: relative;
   opacity: 1;
   transform: scale(1);
}
.card-laboratory {
   opacity: 0;
   transform: scale(0);
   transition: opacity 0.5s, transform 0.5s;
}
.card-laboratory.show {
   opacity: 1;
   transform: scale(1);
}
.card-info-laboratory {
   display: grid;
   grid-template-columns: 1fr; /* Una sola columna por defecto */
   grid-template-rows: repeat(2, auto); /* Dos filas con altura automática */
   gap: 10px; /* Espacio entre los elementos */
}
.image-laboratory { 
   grid-area: 1 / 1 / 2 / 2; /* Imagen en la primera fila */
}
.name-laboratory { 
   grid-area: 2 / 1 / 3 / 2; /* Nombre en la segunda fila */
}

@media (min-width: 992px) {
   .card-info-laboratory {
      grid-template-columns: repeat(2, 1fr); /* Dos columnas */
      grid-template-rows: 1fr; /* Una sola fila */
      gap: 10px; /* Espacio entre columnas */
   }
   .image-laboratory { 
      grid-area: 1 / 1 / 2 / 2; /* Imagen en la primera columna */
   }
   .name-laboratory { 
      grid-area: 1 / 2 / 2 / 3; /* Nombre en la segunda columna */
   }
}
.card-laboratory .card-info-laboratory .names-laboratory-doctors{
   font-size: 14px;
   margin-top: 1rem;
} 
.card-laboratory .card-info-laboratory{
   margin-bottom: 1.3rem;
} 
.card-laboratory .card{
   border: 0;
   text-align: left;
}
@media (max-width: 576px) {
   .card-laboratory .card{
      text-align: center;
   }
}  




/*====== Buttons ======
=======================*/
.btn:before{
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   transition: all 0.4s ease;
   z-index: -1;
}
.lmg-btn-primary{
   background-color: var(--primary);
   color: #fff;
   font-weight: var(--lgm-font-semibold);
   padding-left: 1.5rem;
   padding-right: 1.5rem;
   border: none;
   overflow: hidden;
   text-transform: uppercase;
   transition: all 0.4s ease;
   transform: scaleY(1);

   -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.4);
   -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.4);
   box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.4);
}
.lmg-effect1:hover{
   background-color: var(--primary);
   color: #fff;
   border-color: inherit;
   box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
   transform: translateY(-5px)!important;
   top: -100%;
}
.lmg-effect1:before{
   background-color: var(--blue-light);
   top: -100%;
}
.lmg-effect1:hover::before{
   top: 0%;
}
.extras{
   color: #fff;
}
.btn-services{
   display: flex;
   justify-content: center;
   align-items: center;
}
@media (min-width: 768px) {
   .extras {
      background-color: var(--blue-light);
   }
}
@media (max-width: 767px) {
   .btn-services{
      background-color: var(--blue-light);
   }
}
.downloadable a{
   text-decoration: none;
}
.downloadable .btn{
   display: flex;
   justify-content: center;
   align-items: center;
   height: 100%;
}

/*-- SWIPER SLIDER --*/
.slideStyle {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: stretch;
   width: 100%;
   /*height: 100vh;*/
   height: auto;
   background: var(--white);
   color: var(--black);
   transition: 0.25s;
 }
 .slideStyle.darkStyle {
   background: var(--black);
   color: var(--white);
 }
 .swiperParallax.swiper {
   width: 100%;
   overflow: hidden;
 }
 .swiperParallax .swiper-wrapper {
   flex-direction: row;
   align-items: center;
   display: flex;
 }
 .swiperParallax .swiper-slide {
   width: 50vw;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   grid-column-gap: 1.5rem;
   grid-row-gap: 1.5rem;
   flex-direction: column;
   flex: none;
 }
 .swiperParallax .swiper-slide.swiper-slide-active .gallery-img__wrapper {
   opacity: 1;
   transform: scale(1);
 }
 .swiperParallax .swiper-slide.swiper-slide-active .gallery-info__wrapper {
   opacity: 1;
   transform: translateY(0%);
 }
 .swiperParallax .gallery-img__wrapper {
   position: relative;
   overflow: hidden;
   width: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   padding-top: 66.7%;
   border-radius: 0.75rem;
   opacity: 0.25;
   transform: scale(0.6);
   transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1), opacity 0.8s cubic-bezier(0.77, 0, 0.175, 1);
 }
 .swiperParallax .gallery-img__wrapper .gallery-img {
   position: absolute;
   top: 0;
   width: 130%;
   height: 100%;
   max-width: none;
   -o-object-fit: cover;
      object-fit: cover;
 }
 .swiperParallax .gallery-info__wrapper {
   display: flex;
   grid-column-gap: 0.5rem;
   grid-row-gap: 0.5rem;
   flex-direction: row;
   justify-content: center;
   align-items: center;
   opacity: 0;
   transform: translateY(50%);
   transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1), opacity 0.8s cubic-bezier(0.77, 0, 0.175, 1);
 }
 .swiperParallax .gallery-info__wrapper .heading-medium {
   text-transform: uppercase;
   font-size: 1.5rem;
   line-height: 1;
 }
  .swiper-arrow-nav{
   width: 4rem;
   height: 4rem;
   background: var(--blue-light);
 }
 .swiper-button-next:after, .swiper-button-prev:after{
   color: #fff;
 }
 .swiper-button-next{
   right: 13%;
 }
 .swiper-button-prev{
   left: 13%;
 }
 @media (max-width: 1199px) {
   .swiper-arrow-nav {
      width: 3rem;
      height: 3rem;
   }
   .swiper-button-next:after, .swiper-button-prev:after{
      font-size: 30px;
   }
 }
 @media (max-width: 767px) {
   .swiper-arrow-nav {
      width: 2rem;
      height: 2rem;
   }
   .swiper-button-next:after, .swiper-button-prev:after{
      font-size: 20px;
   }
 }

/*====== Activity ======
=======================*/
.txt-questions{
   position: relative;
}
.txt-options{
   margin: 1rem 0;
}
.txt-questions .option .option-select{
   background-color: #D9D9D9;
    border-radius: 16px;
    color: #000;
    font-weight: bold;
    text-align: center;
    font-size: 1.5rem;
    height: 95px;
    width: 95px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.txt-questions .option .option-select-icon{
   border: 2px solid #D9D9D9;
   border-radius: 16px;
   margin: .5rem 0;
   padding: 1rem 1rem;
   display: flex;
   align-items: center;
}
.txt-questions .option .option-select-icon .face{
   width: 60px;
   height: 60px;
   border: 2px solid #fff;
   border-radius: 50px;
   margin-right: .5rem;
}
.txt-questions .option .option-select-icon .face.fa1{
   border-color: #2AAD5F;
}
.txt-questions .option .option-select-icon .face.fa2{
   border-color: #FFAC26;
}
.txt-questions .option .option-select-icon .face.fa3{
   border-color: #FEC91E;
}
.txt-questions .option .option-select-icon .face.fa4{
   border-color: #E32117;
}

.txt-questions .option .btn-option.selected{
   background-color: #CEE3FF;
   border: none;
}

.txt-questions .option .option-select-icon.selected .face.fa1{
   border-color: #2AAD5F;
   background-color: #2AAD5F;
}
.txt-questions .option .option-select-icon.selected .face.fa2{
   border-color: #FFAC26;
   background-color: #FFAC26;
}
.txt-questions .option .option-select-icon.selected .face.fa3{
   border-color: #FEC91E;
   background-color: #FEC91E;
}
.txt-questions .option .option-select-icon.selected .face.fa4{
   border-color: #E32117;
   background-color: #E32117;
}
.openquest{
   background-color: #D9D9D9;
   padding: 1rem;
   border-radius: 16px;
}
.openquest textarea { 
   width:100%; 
   height:50px; 
   padding:8px 14px 0; 
   font-size:16px; 
   color:var(--blue-light);  
   letter-spacing:.05em; 
   line-height:24px; 
   border:1px solid #eee; 
   border-radius:4px; 
   box-sizing:border-box; 
   overflow-y:hidden; 
   resize:none; 
}
.openquest textarea:focus { color: var(--blue-light); border-color: var(--blue-light); outline:0; box-shadow:0 0 0 .1rem var(--blue-light); background:#fff; }

@media (max-width: 767px) {
   .txt-questions .option .option-select{
      font-size: 1rem;
      height: 55px;
      width: 55px;
   }
}

/*====== Blog ======
=======================*/
.lmg-blog-wrapper{
   position: relative;
}
.lmg-blog-wrapper .blog-wrapper-content .card{
   color: var(--txt-primary);
   height: 100%;
}
.lmg-blog-wrapper .blog-wrapper-content .card-header, .lmg-blog-wrapper .blog-wrapper-content .card-body, .lmg-blog-wrapper .blog-wrapper-content .card-footer {
   border: 0;
   background-color: #fff;
}
.lmg-blog-wrapper .blog-wrapper-content .card-header{
   padding: .75rem;
}
.lmg-blog-wrapper .blog-wrapper-content .card-body .blog-title{
   font-weight: bold;
}
.lmg-blog-wrapper .blog-wrapper-content .card-footer .blog-date{
   font-weight: bold;
   font-size: 14px;
}
.lmg-blog-wrapper .blog-wrapper-content .card-body .blog-tag .blog_category-collection{
   grid-column-gap: .547vw;
   grid-row-gap: .547vw;
   display: flex;
}
.lmg-blog-wrapper .blog-wrapper-content .card-body .blog-tag .blog_category-collection .blog_category-collection-item{
   background-color: var(--primary);
   color: #fff;
   border-radius: 100vw;
   padding: .3125vw .625vw;
   font-size: 14px;
   position: relative;
}
.lmg-blog-wrapper .blog-notice-list .notice-item, .lmg-blog-wrapper .blog-category-list .category-item, .lmg-blog-wrapper .blog-files-list .files-item{
   padding: 0;
   list-style: none;
}
.lmg-blog-wrapper .blog-notice-list .notice-item li, .lmg-blog-wrapper .blog-category-list .category-item li, .lmg-blog-wrapper .blog-files-list .files-item li{
   padding-bottom: .75rem;
   border-bottom: 1px solid var(--blue-demond);
   margin-bottom: 1rem;
   text-align: left;
}
.lmg-blog-wrapper .blog-notice-list .notice-item li:last-child, .lmg-blog-wrapper .blog-category-list .category-item li:last-child, .lmg-blog-wrapper .blog-files-list .files-item li:last-child {
   border: 0;
}
.lmg-blog-wrapper .blog-notice-list .notice-item li a, .lmg-blog-wrapper .blog-category-list .category-item li a, .lmg-blog-wrapper .blog-files-list .files-item li a{
   text-decoration: none;
   color: var(--txt-primary);
}
.lmg-blog-wrapper .sidebar-blog button{
   color: var(--txt-primary);
   font-weight: 700;
   outline: none;
   box-shadow: none;
}
.lmg-blog-wrapper .acticle-content .acticle-content-hero {
   position: relative;
   width: 100%;
}
.lmg-blog-wrapper .acticle-content .article-hero-title .lmg-titles-underline{
   display: inline;
   line-height: 54px;
   padding: 0;
}
.lmg-blog-wrapper .acticle-content .acticle-content-hero .article-hero-title{
   font-weight: 700;
   text-align: left;
}
.lmg-blog-wrapper .acticle-content .article-date {
   font-size: 14px;
   font-weight: var(--lgm-font-semibold);
}
@media (max-width: 576px) {
   .lmg-blog-wrapper .acticle-content .article-hero-title .lmg-titles-underline{
      line-height: 42px;
   }
}
/*====== Footer ======
=======================*/
footer{
   position: relative;  
}
.footer-content{
   background-color: var(--blue-light);
   color: #fff;
   padding: 2rem 0;
}
.footer-content .footer-list{
   list-style: none;
}
.footer-logo img{
   padding: 0 .55rem;
}
/* styles.css */
.footer-logo .responsive-sm  {
   margin: 5px; /* Espaciado entre las imágenes */
   text-align: center;
}

@media (max-width: 576px) {
   .footer-logo .responsive-sm {
      flex: 1 0 21%;
      max-width: 21%;
      margin: 0;
   }
}
.footer-logo .d-flex.flex-wrap {
   justify-content: center; /* Centro las imágenes dentro del contenedor flex */
}

/* Estilos personalizados */
.full-viewport-module {
   position: relative;
   width: 100vw;
   height: 100vh;
   overflow: hidden;
   margin: 0;
   padding: 0;
}

.media-container {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   z-index: 1;
}
/* Estilos específicos para imagen con parallax */
#fallback-image {
   transform: translate3d(0, -50%, -42px);
   will-change: transform;
   transition: transform 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* Estilos específicos para video */
#background-video {
   object-fit: cover;
   transform: none !important;
   will-change: auto;
}

.content-overlay {
   position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    text-align: center;
    padding: 2rem;
   background-color: rgba(81, 111, 180, 0.4);
}

.video-hero {
   position: relative;
   height: 700px;
   width: 100%;
   overflow: hidden;
}

.video-hero video {
   position: absolute;
   top: 50%;
   left: 50%;
   min-width: 100%;
   min-height: 100%;
   width: auto;
   height: auto;
   transform: translate(-50%, -50%);
   z-index: 0;
}

.hero-content {
   position: relative;
   z-index: 1;
   height: 100%;
   display: flex;
   align-items: center;
   color: white;
   text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
}
.hero-video-content{
	width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #516FB4B2;
    color: #F2F2F2;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.4);
	z-index:5;
}
.overlay-hero-video {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: rgba(81, 111, 180, 0.4);
   z-index: 0;
}


@media (max-width: 767px) {
   .full-viewport-module{
      height: 34vh!important;
   }
   #background-video{
      object-fit: fill!important;
   }
   #fallback-image{
      width: 179%;
   }
}

.intro{
   position: fixed;
   z-index: 999;
   left: 0;
   top: 0;
   width: 100%;
   height: 100vh;
   background-color: #fff;
   transition: 1s;
}
#loader {
   position: relative;
   width: 100%;
   height: 100%;
   background: rgba(255, 255, 255, 0);
   display: flex;
   justify-content: center;
   align-items: center;
 }
.logo-loader.active{
   bottom: 0;
   opacity: 1;
   transition: ease-in-out 0.5s;
}
.logo-loader.fade{
   bottom: 150px;
   opacity: 0;
   transition: ease-in-out 0.5s;
}
.logo-header{
   position: relative;
}
#loader-text {
   font-size: 2rem;
   font-weight: bold;
   color: #333;
   position: absolute;
   right: 1%;
   bottom: 2%;
 }
.spinner {
   position: relative;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background: conic-gradient(#5C5599, #38B8D6, #ffffff, #5C5599); /* Circular y degradado */
   animation: spin 1s linear infinite;
   display: flex;
   align-items: center;
   justify-content: center;
 }
 
 .logo-spinner {
   width: 90px;
   height: 90px;
   object-fit: contain;
   border-radius: 50%;
   background-color: #fff;
   padding: 5px;
   z-index: 5;
   position: absolute;
   top: 0;
   left: 0;
   text-align: center;
   right: 0;
   bottom: 0;
   margin: auto;
 }
 
 /* Animación circular */
 @keyframes spin {
   0% {
     transform: rotate(0deg);
   }
   100% {
     transform: rotate(360deg);
   }
 }