@font-face {
  font-family: 'Merriweather-Regular';
  src: url(../fonts/Merriweather/Merriweather-Regular.ttf);
}
@font-face {
  font-family: 'Poppins-Regular';
  src: url(../fonts/Poppins/Poppins-Regular.ttf);
}
@font-face {
  font-family: 'Poppins-Light';
  src: url(../fonts/Poppins/Poppins-Light.ttf);
}
@font-face {
  font-family: 'Poppins-Medium';
  src: url(../fonts/Poppins/Poppins-Medium.ttf);
}

*{
  webkit-font-smoothing: antialiased;
}
:root{
  --colorPrincipal: #003B0D;
  --colorHover: #8EFFA7;
  --colorBlanco: #ffffff;
  --colorFondo: #f1f3ef;
  --font-titulos: 'Merriweather-Regular';
  --font-regular: 'Poppins-Regular';
  --font-textos: 'Poppins-Light';
  --font-medium: 'Poppins-Medium';
}

.content-wrapper{
  background: var(--colorFondo); 
}
/* Header */
.header{
  width: 100%;
  position: fixed;
  top: 10px;
  left: 0;
  z-index: 99;
}
.logo{
  width: 175px;
  height: auto;
  object-fit: contain;
}
.nav{
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--colorBlanco);
  border-radius: 50px;
  padding: 0 2rem;
  box-shadow: 0 4px 8px rgba(0,0,0,.04), 0 0 2px rgba(0,0,0,.06), 0 0 1px rgba(0,0,0,.04);
}
.list-nav{
  display: flex;
  align-items: center;
  column-gap: 1.2rem;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.link-nav{
  position: relative;
  display: flex;
  align-items: center;
  column-gap: .5rem;
  padding: 1.2rem 0;
  font-size: .7rem;
  font-family: var(--font-titulos);
  letter-spacing: 0.05rem;
  line-height: 1.5;
  text-decoration: none;
  color: var(--colorPrincipal);
  transition: all .3s;
}
.link-nav:after{
  content: '';
  position: absolute;
  bottom: 22px;
  left: 0;
  height: 1px;
  width: 0;
  background: var(--colorPrincipal);
}
.link-nav:hover{
  color: #003B0D;
}
.item-list-nav.active-menu .link-nav:after{
  width: 100%;
}
.item-list-nav:hover .link-nav::after{
  width: 100%;
  transition: all .3s;
}
.submenu-nav{
  position: absolute;
  top: 60px;
  background: var(--colorBlanco);
  border-radius: 8px;
  padding: .5rem .5rem;
  display: none;
  box-shadow: 0rem 0rem 1.25rem rgba(30, 34, 40, 0.04);
}
.list-submenu{
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
}
.list-submenu li a{
  display: block;
  color: var(--colorPrincipal);
  font-size: .7rem;
  font-family: var(--font-titulos);
  letter-spacing: 0.05rem;
  line-height: 1.5;
  padding: 0.4rem .8rem;
  border-radius: 6px;
}
.list-submenu li a:hover{
  background: var(--colorFondo);
}
.item-list-nav:hover .submenu-nav{
  display: block;
}
/* Fin Header */

/* Section Banner */
.container-banner-section{
  position: relative;
}
.container-banner-section::after{
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0,0,0,.3), rgba(0,0,0,.3));
}
.banner-text-section{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.title-text-section{
  font-size: 3rem;
  font-family: var(--font-titulos);
  letter-spacing: 0.05rem;
  line-height: 1.5;
  margin-bottom: 0;
  color: var(--colorBlanco);
  position: relative;
  z-index: 1;
}
.img-banner-section{
  width: 100%;
  height: auto;
  object-fit: cover;
}
/* Fin Section Banner */

/* Sección Nosotros */
.nosotros-index{
  background-image: url(../img/fondo.svg),linear-gradient(135deg, #001E07,#003B0D 84%,#003B0D);
  background-position: 50% 0,0 0;
  background-repeat: no-repeat,repeat;
  background-size: cover,auto;
  background-attachment: fixed,scroll;
  border-radius: 40px 40px 0 0;
  margin-top: -2rem;
  padding-top: 4rem;
  padding-bottom: 6rem;
  position: relative;
  z-index: 9;
}
.head-section{
  display: block;
  width: fit-content;
  font-size: .65rem;
  font-family: var(--font-regular);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
  color: var(--colorBlanco);
  padding: 0.4rem 0.8rem;
  background: rgb(56 98 65);
  border-radius: 50px;
  margin-bottom: 1.2rem;
}
.title-section{
  font-size: 1.6rem;
  font-family: var(--font-titulos);
  color: var(--colorBlanco);
  letter-spacing: 0.05rem;
  font-weight: 500;
  margin-bottom: 1rem;
}
.text-section{
  font-size: .8rem;
  font-family: var(--font-textos);
  font-weight: 400;
  color: var(--colorBlanco);
  letter-spacing: 0.05rem;
}
.text-section-color{
  font-size: .8rem;
  font-family: var(--font-textos);
  font-weight: 400;
  color: #111;
  letter-spacing: 0.05rem;
}
.container-img-nosotos{
  padding-left: 2rem;
  height: 100%;
}
.img-nosotros{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}
.btn-nosotros{
  display: inline-flex;
  align-items: center;
  column-gap: .5rem;
  color: var(--colorPrincipal);
  background: var(--colorBlanco);
  padding: .5rem 1rem;
  border-radius: 8px;
  font-size: .8rem;
  font-family: var(--font-medium);
  font-weight: 400;
  letter-spacing: 0.05rem;
  margin-top: .5rem;
  transition: all .3s;
}

.btn-nosotros img{
  width: 20px;
  aspect-ratio: 1/1;
  object-fit: contain;
  position: relative;
  top: 1px;
  transition: all .6s;
}
.btn-nosotros:hover{
  color: var(--colorBlanco);
  background: rgba(145, 255, 167, .3);
}
.btn-nosotros:hover img{
  transform: translateX(5px);
  filter: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(7448%) hue-rotate(176deg) brightness(119%) contrast(100%);
  transition: all .3s;
}

/* Pagina Nosotros */
.valores{
  padding-top: 4rem;
  padding-bottom: 6rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorFondo);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.info-nosotros{
  padding-top: 4rem;
  padding-bottom: 4rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorBlanco);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.grid-valores{
  background: var(--colorBlanco);
  border-radius: 8px;
  padding: 1rem;
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
}
.img-grid-valores{
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--colorFondo);
  margin-bottom: 0.8rem;
}
.img-grid-valores img {
  width: 35px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
.title-grid-valores{
  font-size: 1rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  color: var(--colorPrincipal);
  letter-spacing: 0.04rem;
  margin-bottom: 0.2rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Fin Sección Nosotros */

/* Beneficios */
.beneficios{
  padding-top: 4rem;
  padding-bottom: 4rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorFondo);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.head-section.head-beneficios{
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.8rem;
}
.title-section.title-color{
  color: var(--colorPrincipal);
  text-align: center;
  width: 70%;
  margin: 0 auto;
  margin-bottom: 1.4rem;
}
.title-section.title-color-mapa{
  color: var(--colorPrincipal);
  margin-bottom: 1.4rem;
}
.title-section.title-color-section{
  text-align: center;
  color: var(--colorPrincipal);
  margin-bottom: 0;
  width: 90%;
  margin: 0 auto;
  margin-bottom: 2rem;
}

.container-beneficios{
  background: var(--colorBlanco);
  border-radius: 8px;
  padding: 1rem;
  min-height: 245px;
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
}
.container-img-beneficios{
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--colorFondo);
  margin-bottom: .8rem;
}
.img-beneficios{
  width: 35px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
.title-beneficios{
  font-size: .85rem;
  color: var(--colorPrincipal);
  font-family: var(--font-textos);
  letter-spacing: 0.04rem;
  margin-bottom: .2rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 45px;
}
.text-beneficios{
  font-size: .75rem;
  color: #111;
  line-height: 1.4;
  letter-spacing: 0.03rem;
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Pagina Beneficios */
.row-beneficios{
  margin-top: 2rem;
}
.beneficios-container{
  position: relative;
}
.grid-beneficios{
  margin-left: 4rem;
  padding: 2.6rem;
  background: var(--colorBlanco);
  border-radius: 8px;
  margin-bottom: 2rem;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: 1.6rem;
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
}
.beneficios-title{
  font-size: 1.3rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  line-height: 1.8rem;
  margin-bottom: 0.8rem;
  letter-spacing: 0.04rem;
  color: var(--colorPrincipal);
}
.img-beneficios-container{
  width: 180px;
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--colorFondo);
}
.beneficios-img{
  width: 100px;
  aspect-ratio: 1/1;
  object-fit: contain;
  opacity: .8;
}
.line-beneficios{
  width: 1px;
  height: 100%;
  background: var(--colorPrincipal);
  position: absolute;
  left: 0;
  top: 0;
}
.dot-line{
  position: -webkit-sticky;
  position: sticky;
  top: 40vh;
  border-radius: 9999px;
  width: 0.15rem;
  height: 8rem;
  transform: translateX(calc(-50% + 1px/2));
  background: var(--colorPrincipal);
}
/* Fin Beneficios */

/* Planes */
.planes{
  background: var(--colorBlanco);
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.container-planes{
  background: var(--colorFondo);
  border-radius: 8px;
  padding: 1.4rem 1.4rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: 508px;
}
.title-planes{
  font-size: 1.1rem;
  font-family: var(--font-medium);
  font-weight: 400;
  color: var(--colorPrincipal);
  letter-spacing: 0.04rem;
  text-align: center;
  margin-bottom: 0;
  height: 60px;
}
.list-planes{
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.list-planes li{
  display: flex;
  align-items: flex-start;
  column-gap: .5rem;
  color: #111;
  font-size: .75rem;
  line-height: 1.5;
  letter-spacing: 0.04rem;
  margin-bottom: .5rem;
}
.list-planes li img{
  position: relative;
  top: 3px;
}
.btn-plan{
  width: fit-content;
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  color: var(--colorBlanco);
  background: var(--colorPrincipal);
  padding: 0.5rem 1rem;
  border-radius: 8px;
  font-size: .7rem;
  font-family: var(--font-textos);
  font-weight: 400;
  letter-spacing: 0.05rem;
  margin-top: auto;
  margin-left: auto;
  margin-right: auto;
  transition: all .3s;
}
.btn-plan img {
  width: 20px !important;
  aspect-ratio: 1/1;
  object-fit: contain;
  position: relative;
  top: 1px;
  transition: all .6s;
}
.btn-plan:hover img {
  transform: translateX(5px);
  transition: all .3s;
}
.btn-plan:hover {
  color: var(--colorBlanco);
  background: rgba(0, 59, 13, .8);
}
/* Fin Planes */

/* Footer */
.footer{
  border-radius: 40px 40px 0 0 ;
  padding-top: 2.5rem;
  background: var(--colorPrincipal);
}
.text-footer{
  font-size: .7rem;
  color: var(--colorBlanco);
  text-align: center;
  margin-bottom: 0;
  font-family: var(--font-textos);
  font-weight: 400;
  padding: .8rem 0;
}
.text-footer b{
  color: var(--colorBlanco);
  text-decoration: none;
  font-family: var(--font-medium);
  font-weight: 500;
  letter-spacing: 0.04rem;
}
.title-footer{
  font-size: 1.1rem;
  font-family: var(--font-titulos);
  font-weight: 400;
  color: var(--colorBlanco);
  line-height: 1.5;
  letter-spacing: 0.05rem;
  margin-top: .6rem;
  margin-bottom: .5rem;
}
.list-info{
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.link-list-info{
  font-size: .7rem;
  font-family: var(--font-textos);
  color: var(--colorBlanco);
  line-height: 1.5;
  letter-spacing: 0.04rem;
  display: flex;
  align-items: flex-start;
  column-gap: 8px;
  margin-bottom: 0.5rem;
  opacity: .8;
  transition: all .3s;
}
.link-list-info img{
  width: 16px;
  aspect-ratio: 1/1;
  object-fit: contain;
  position: relative;
  top: 2px;
}
.link-list-info:hover{
  opacity: 1;
  color: var(--colorBlanco);
}
.widget-padding{
  padding-left: 2rem;
}
.list-info-height{
  height: 160px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  column-gap: 1.2rem;
}
.row-porta{
  margin-top: 1.2rem;
  border-top: 1px solid rgba(255, 255, 255, .3);
}
/* Fin Footer */
/* Sedes Admistrativas */
.sedes{
  padding-top: 4rem;
  padding-bottom: 6rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorFondo);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.sedes-cards{
  padding-top: 4rem;
  padding-bottom: 4rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorBlanco);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.img-sede{
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
}
.list-sedes{
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.list-sedes li a{
  font-size: .8rem;
  font-family: var(--font-textos);
  font-weight: 400;
  color: #111;
  line-height: 1.5;
  letter-spacing: 0.04rem;
  display: flex;
  align-items: flex-start;
  column-gap: 8px;
  margin-bottom: 0.5rem;
  transition: all .3s;
}
.list-sedes li a img{
  width: 16px;
  aspect-ratio: 1/1;
  object-fit: contain;
  position: relative;
  top: 3px;
}
.list-sedes li a:hover{
  color: var(--colorPrincipal);
}
.card-sedes{
  padding: 1.2rem;
  background: var(--colorFondo);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 0;
}
.title-card-sedes{
  font-size: 1.2rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  letter-spacing: 0.04rem;
  color: var(--colorPrincipal);
  margin-top: 0.4rem;
}
.img-sede-card{
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 10px;
}
/* Fin Sedes Admistrativas */

/* Bocas de Cobranza */
.cobranza{
  background: var(--colorFondo);
  border-radius: 40px 40px 0 0;
  padding-top: 4rem;
  padding-bottom: 6rem;
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.credito{
  background: var(--colorBlanco);
  border-radius: 40px 40px 0 0;
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.row-cobranza{
  margin-top: 2rem;
}
.container-marcas a{
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  margin-bottom: 1.6rem;
  border-radius: 8px;
  background: var(--colorBlanco);
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
  transition: all .3s;
}
.container-marcas a:hover{
  transform: translateY(-8px);
  box-shadow: 0 15px 15px rgba(0, 0, 0, 0.15);
  transition: all .6s;
}

.container-marcas a img{
  height: 160px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
/* Fin Bocas de Cobranza */

/* Mapa Index */
.mapa-index{
  background: var(--colorFondo);
  border-radius: 40px 40px 0 0;
  padding-top: 4rem;
  padding-bottom: 6rem;
  margin-bottom: -2rem;
}
.row-mapa{
  align-items: center;
}
.mapa-svg path{
  cursor: pointer;
  transition: all .3s;
}
.mapa-svg path:hover{
  fill: var(--colorPrincipal);
}
.img-mapa, .mapa-svg{
  width: 100%;
  height: auto;
  object-fit: contain;
}
/* Fin Mapa Index */

/* Servicios */
.servicios{
  padding-top: 4rem;
  padding-bottom: 4rem;
  border-radius: 40px 40px 0 0;
  background: var(--colorFondo);
  margin-top: -2rem;
  position: relative;
  z-index: 9;
}
.card-servicios{
  padding: 1.2rem;
  background: var(--colorBlanco);
  border-radius:8px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
.card-servicios-index{
  padding: 1.2rem;
  background: var(--colorFondo);
  border-radius:8px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 0;
}
.img-servicios{
  width: 100%;
  height: 320px;
  object-fit: cover;
  border-radius: 10px;
}
.img-servicios-index{
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 10px;
}
.title-card-servicios{
  font-size: 1.3rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  letter-spacing: 0.04rem;
  color: var(--colorPrincipal);
  margin-top: .4rem;
  margin-bottom: 1rem;
}
.title-card-servicios-index{
  font-size: 1.2rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  letter-spacing: 0.04rem;
  color: var(--colorPrincipal);
  margin-top: .4rem;
}
.list-card-servicios {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.list-card-servicios li{
  display: flex;
  align-items: flex-start;
  column-gap: 0.5rem;
  color: #111;
  font-size: .75rem;
  line-height: 1.5;
  letter-spacing: 0.04rem;
  margin-bottom: 0.5rem;
}
.list-card-servicios li img{
  position: relative;
  top: 3px;
  width: 14px !important;
  aspect-ratio: 1/1;
  object-fit: contain;
}
.item-card-servicios .btn-plan{
  margin-left: unset;
  margin-right: auto;
}
.owl-banner .owl-nav button.owl-prev,
.owl-banner .owl-nav button.owl-next{
  width: unset !important;
  aspect-ratio: 1/1;
  border-radius: 50%;
  backdrop-filter: blur(12px);
  background: rgba(56, 98, 65, .5);
  top: 50%;
}
#planes .owl-nav button.owl-prev,
#planes .owl-nav button.owl-next {
  width: unset !important;
  aspect-ratio: 1/1;
  border-radius: 50%;
  backdrop-filter: blur(12px);
  background: rgba(56, 98, 65, .5);
  top: 42%;
}
#planes .owl-nav button.owl-prev{
  left: -5px;
}
#planes .owl-nav button.owl-next{
  right: -5px;
}
.owl-banner .owl-nav button.owl-prev img,
.owl-banner .owl-nav button.owl-next img,
#planes .owl-nav button.owl-prev img,
#planes .owl-nav button.owl-next img{
  width: 16px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
/* Fin Servicios */

/* Prestaciones */
.prestaciones{
  background: var(--colorFondo);
  border-radius: 40px 40px 0 0;
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-top: -2rem;
  position: relative;
  z-index: 1;
}
.row-prestaciones{
  margin-top: 2rem;
}
.grid-prestaciones{
  background-color: var(--colorBlanco);
  border-radius: 8px;
  min-height: 380px;
  /* display: grid; */
  /* grid-template-columns: 1fr 1fr; */
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
  margin-bottom: 2rem;
  overflow: hidden;
}
.grid-prestaciones:last-child{
  margin-bottom: 0;
}
.item-prestaciones{
  padding: 0;
}
.container-text-prestaciones{
  padding: 2rem;
}
.title-prestaciones{
  font-size: 1.3rem;
  font-family: var(--font-titulos);
  font-weight: 500;
  color: var(--colorPrincipal);
  line-height: 1.4;
  letter-spacing: 0.04rem;
}
.container-img-prestaciones{
  height: 100%;
}
.owl-prestaciones,
.owl-prestaciones div{
  height: 100%;
}

.img-prestaciones{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.btn-prestaciones{
  width: fit-content;
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  color: var(--colorBlanco);
  background: var(--colorPrincipal);
  padding: 0.5rem 1rem;
  border-radius: 8px;
  font-size: .7rem;
  font-family: var(--font-textos);
  font-weight: 400;
  letter-spacing: 0.05rem;
  transition: all .3s;
}
.btn-prestaciones img {
  width: 20px;
  aspect-ratio: 1/1;
  object-fit: contain;
  position: relative;
  top: 1px;
  transition: all .6s;
}
.btn-prestaciones:hover {
  color: var(--colorBlanco);
  background: rgba(0, 59, 13, .8);
}
.btn-prestaciones:hover img {
  transform: translateX(5px);
  transition: all .3s;
}
/* Fin Prestaciones */

/* Preguntas Frecuentes */
.preguntas{
  background: var(--colorFondo);
  border-radius: 40px 40px 0 0;
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-top: -2rem;
  position: relative;
  z-index: 1;
}
.container-info-tab {
  padding: 0.8rem 0.8rem;
  margin-bottom: 0.5rem;
  border: 1px solid var(--colorPrincipal);
  border-radius: 8px;
  background: var(--colorBlanco);
}
.button-tabs {
    background: transparent;
    border-color: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0;
    margin: 0;
    width: 100%;
    font-size: .8rem;
    font-family: var(--font-medium);
    letter-spacing: 0.04rem;
    text-align: left;
    transition: all .3s;
}
.button-tabs.open-tabs{
  padding-bottom: .5rem;
  color: var(--colorPrincipal);
}
.button-tabs.open-tabs img{
  transition: all .3s;
  transform: rotate(180deg);
}
.button-tabs img {
    width: 10px;
    transition: all .3s;
}
.text-container-tabs {
    height: 0;
    overflow: hidden;
    transition: all .3s;
}
.text-container-tabs.open-tabs {
    height: auto;
    transition: all .3s;
}
.text.text-tabs{
  color: #111;
  font-family: var(--font-textos);
  font-size: .75rem;
  letter-spacing: 0.04rem;
  line-height: 1.5;
}
/* Fin Preguntas Frecuentes */

/* Contacto */
.contacto-form{
  position: relative;
  border-radius: 40px 40px 0 0;
  background: var(--colorFondo);
  padding-top: 4rem;
  padding-bottom: 4rem;
  margin-top: -2rem;
  z-index: 1;
}
.row-info{
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.row-form{
  padding-top: 2rem;
}
.contact-form{
  padding: 1.2rem;
  background: var(--colorBlanco);
  border-radius: 8px;
}
.form-label-group > label{
  position: initial;
  padding: 0;
}
.form-label-group label {
  font-family: var(--font-textos);
  color: #111;
}
.form-label-group .form-control {
  display: block;
  width: 100%;
  border-top: transparent;
  border-left: transparent;
  border-right: transparent;
  border-bottom: 1px solid #333;
  border-radius: 0;
  padding: 0.5rem 0;
  background: transparent;
  font-size: 16px;
  box-shadow: none;
  height: 40px;
}
.form-label-group .form-control::placeholder {
  color: #111;
  opacity: .8;
}
.form-floating > .form-control::placeholder {
  color: #111;
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
  opacity: .8;
}
.form-label-group .form-control::-webkit-input-placeholder {
  color: #111;
  font-size: .7rem;
  opacity: .8;
  letter-spacing: 0.05rem;
}

.form-label-group .form-control:-ms-input-placeholder {
  color: #111;
  font-size: .7rem;
  opacity: .8;
  letter-spacing: 0.05rem;
}

.form-label-group .form-control::-ms-input-placeholder {
  color: #111;
  font-size: .7rem;
  opacity: .8;
  letter-spacing: 0.05rem;
}

.form-label-group .form-control::-moz-placeholder {
  color: #111;
  font-size: .7rem;
  opacity: .8;
  letter-spacing: 0.05rem;
}

.form-label-group .form-control::placeholder {
  color: #111 !important;
  font-size: .7rem;
  opacity: .8;
  letter-spacing: 0.03rem;
}
.help-block.with-errors {
  font-size: .75rem;
  color: #de4747;
  margin-top: 0.25rem;
}
.btn-primary{
  display: inline-flex;
  align-items: center;
  column-gap: 0.5rem;
  color: var(--colorBlanco);
  background: var(--colorPrincipal);
  padding: 0.5rem 1rem;
  border-radius: 8px !important;
  font-size: .75rem;
  font-family: var(--font-textos);
  font-weight: 400;
  letter-spacing: 0.05rem;
  margin-top: 0.5rem;
  border: 0;
  transition: all .3s;
}
.btn-primary:hover{
  color: var(--colorBlanco);
  background: rgba(0, 59, 13, .8);
}

.iframe-mapa{
  border: 1px solid #fefefe !important;
  border-radius: 8px;
  overflow: hidden;
}
.container-icons-contacto{
  border-radius: 8px;
  background: var(--colorBlanco);
  padding: 1rem;
  min-height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  box-shadow: 0 0 40px 0 rgb(212 217 232 / 20%);
}
.container-icons-contacto a{
  display: block;
  font-size: .75rem;
  font-family: var(--font-textos);
  letter-spacing: 0.04rem;
  text-align: center;
  line-height: 1.5;
  color: #111;
  transition: all .3s;
}
.container-icons-contacto a:hover{
  color: var(--colorPrincipal);
}
.container-icons-contacto .link-email{
  display: block;
  height: 119px;
}

.contacto-img {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--colorFondo);
  margin: 0 auto;
  margin-bottom: 1rem;
}
.contacto-img img {
  width: 26px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
.container-icons-contacto ul{
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: .2rem;
}

/* Fin Contacto */
@media only screen and (min-width: 768px){
  body {
    padding: 12px 12px 0;
  }
}
@media only screen and (min-width: 961px){
  body {
    padding: 16px 16px 0;
  }
}
@media only screen and (min-width: 1112px){
  body {
    padding: 0;
  }
}
header nav{
  border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.navbar-dark .navbar-nav .nav-link{
  font-family: 'Merriweather-Regular';
}
.rounded-4 {
  border-radius: 2.8rem !important;
}
.display-1 {
  font-size: 4.4rem;
}
.bg-secondary{
  background-color: var(--colorSecundario)!important;
}
.cards-row .card  {
  transition: transform .4s cubic-bezier(.215,.61,.355,1);
}
.cards-row .card:hover  {
  transform: translateZ(0) scale(1.05);
}
figure.card-img-bottom {
  overflow: hidden;
}

.cards-row .card figure.card-img-bottom img {
  transition: all cubic-bezier(.215,.61,.355,1) .4s;
}

.cards-row .card:hover figure.card-img-bottom img {
  transform: scale(1.1);
}

@media (min-width: 992px){
  a.dropdown-item span {
    font-size: 22px;
  }
}
@media (max-width: 991.98px){
  .offcanvas-nav{
    background: var(--colorPrincipal);
  }
  .offcanvas-header img {
    max-width: 60%;
  }
}
.bg-secondary blockquote.icon-top:before{
  color: #fefefe;
}
.bg-secondary .owl-carousel .owl-dots .owl-dot span{
  background: #fefefe;
}
.bg-secondary .owl-carousel .owl-dots .owl-dot span{
  background: #fefefe;
}
.bg-secondary .owl-carousel .owl-dots .owl-dot.active span {
  border-color: #fefefe;
}
.navbar-collapse.offcanvas-nav.open {
  background-image: url('../img/layout03.png');
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
}
.wave-layout:after {
  content: '';
  background-image: url('../img/layout03.png');
  bottom: 0;
  width: 100%;
  height: 100%;
  left: 0;
  background-position: bottom;
  background-size: contain;
  position: absolute;
  background-repeat: no-repeat;
  opacity: 0.1;
  z-index: 0;
}
.wave-layout * {
  z-index: 1;
}
.wave-layout {
  overflow: hidden;
}
.mega-menu-content > .row > [class*="col-"] + [class*="col-"]{
  border-left: 0;
}
.icon-list i.fab {
  top: 0;
}
img.img-fluid.rounded-circle {
  max-width: 500px;
  width: 100%;
  margin: auto;
}
.process-wrapper.line [class*="col-"]:after {
  border-top: 1px solid rgb(66 157 212 / 26%);
}
@media (min-width: 992px){
  .process-wrapper.line [class*="col-"]:after {
    left: 50%;
  }
}

/* Banner */
.img-banner{
  width: 100%;
  height: auto;
  object-fit: cover;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after{
  content: '' !important;
}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after{
  content: '' !important;
}
.swiper-button-prev, .swiper-button-next {
  width: unset !important;
  aspect-ratio: 1/1;
  border-radius: 50%;
  backdrop-filter: blur(12px);
}
.swiper-button-prev img, .swiper-button-next img {
  width: 16px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
/* Fin Banner */

/* footer */

.btn-wha {
  background: #25D366;
  width: 50px;
  height: 50px;
  position: fixed;
  bottom: 80px;
  right: 24px;
  z-index: 3;
  vertical-align: middle;
  display: inline-block;
  overflow: hidden;
  box-shadow: 1px 1px 3px rgb(56 56 56 / 12%);
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  margin: 5px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn-wha:hover{
  background: #25D366;
}
.btn-floating i {
  display: inline-block;
  width: inherit;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  line-height: 47px;
}

.btn-wha img {
  width: 38px;
}
.progress-wrap.active-progress {
  opacity: 1;
}
.progress-wrap svg.progress-circle path{
  stroke: var(--colorSecundario);
}
.progress-wrap:after{
  color: var(--colorSecundario);
}

/* Menú Mobile */
.btn-menu{
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  position: relative;
  z-index: 999;
}
.img-menu {
  width: 30px;
  aspect-ratio: 1/1;
  object-fit: contain;
}
.img-close {
  width: 20px;
  aspect-ratio: 1/1;
  object-fit: contain;
  display: none;
}
.item-nav.item-nav-mobile{
  display: none;
}
.menu-mobile{
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: var(--colorBlanco);
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-1000px);
  transition: all .6s ease-in-out;
  z-index: 99;
}
.menu-mobile.open {
  transform: translateY(0);
}
.list-menu-mobile{
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .8rem;
}
.list-menu-mobile li a{
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  font-size: 1rem;
  font-family: var(--font-titulos);
  letter-spacing: 0.05rem;
  line-height: 1.5;
  text-decoration: none;
  color: var(--colorPrincipal);
  transition: all .3s;
}
.list-menu-mobile li a:hover{
  color: var(--colorPrincipal);
}

/* Fin Menú Mobile */
@media screen and (max-width:1200px){
  body {
    padding: 0;
  }
  .container{
    max-width: 100%;
    margin: 0 auto;
  }
  .nav{
    padding: 0 1.4rem;
  }
  .logo{
    width: 150px;
  }
  .list-nav{
    column-gap: 1rem;
  }
  .btn-menu.change .img-menu {
    display: none;
  }
  .btn-menu.change .img-close {
    display: block;
  }
}
@media screen and (max-width:990px){
  .nav{
    padding: 0.5rem 1.4rem;
  }
  .item-nav a{
    position: relative;
    z-index: 999;
  }
  .item-nav.item-nav-desktop{
    display: none;
  }
  .item-nav.item-nav-desktop .list-nav{
    flex-direction: column;
  }
  .item-nav.item-nav-mobile{
    display: flex;
  }
  .nosotros-index, .beneficios, .planes, .mapa-index, .contacto-form, .preguntas, .prestaciones, .servicios, .valores, .info-nosotros, .sedes, .sedes-cards{
    padding-top: 2.4rem;
    padding-bottom: 4rem;
    border-radius: 20px 20px 0 0;
  }
  .title-section{
    font-size: 1.2rem;
  }
  .text-section{
    font-size: .75rem;
  }
  .container-img-nosotos {
    padding-top: 2rem;
    padding-left: 0;
    height: 100%;
  }
  .container-beneficios{
    margin-bottom: 1.6rem;
  }
  .row-mapa{
    gap: 1.6rem;
  }
  .footer{
    border-radius: 20px 20px 0 0;
  }
  .w-75{
    width: 200px !important;
  }
  .widget{
    margin-top: 1rem;
  }
  .widget-padding{
    padding-left: 0;
  }
  .list-info-height{
    height: auto;
  }
  .title-text-section{
    font-size: 1.6rem;
    width: 90%;
    margin: 0 auto;
    text-align: center;
  }
  .row-info, .row-form{
    gap: 1.6rem;
  }
  .grid-prestaciones{
    grid-template-columns: 1fr;
  }
  .grid-beneficios{
    margin-left: 1.2rem;
  }
  .grid-beneficios{
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: 1rem;
  }
  .grid-prestaciones{
    display: flex;
    flex-direction: column-reverse;
  }
  .img-beneficios-container {
    width: 80px;
    height: 80px;
  }
  .beneficios-img {
    width: 50px;
  }
  .grid-valores, .card-sedes{
    margin-top: 1.6rem;
  }
  .img-sedes{
    padding-top: 1.6rem;
  }
  .container-text-prestaciones{
    padding: 1.6rem;
  }
  .title-section.title-color-section{
    width: 96%;
  }
}
.banner-principal,
.banner-section{
  height: 102vh;
}