:root {
  --white: white;
  --naranja: #f15a25;
  --azul: #023a49;
  --transparent: rgba(0, 0, 0, 0);
  --negron: #1e1e1e;
}

body {
  color: #333;
  font-family: Stolzl Book, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.header {
  z-index: 4;
  padding: 20px 40px;
  position: fixed;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.header.scrolled {
  background-color: var(--white);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-bottom: 1px solid rgba(0, 0, 0, .09);
}

.container-header {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(133, 133, 133, .28);
  border-radius: 200px;
  justify-content: space-between;
  align-items: center;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 30px;
  transition: all .2s;
  display: flex;
}

.container-header.scrolled {
  background-color: var(--white);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

.link-logo {
  position: relative;
}

.logo-svg {
  width: 50px;
}

.menu-group {
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 750px;
  display: flex;
}

.link-header {
  color: var(--white);
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: 12px;
  line-height: 1em;
  text-decoration: none;
  transition: all .2s;
  display: block;
  position: relative;
}

.link-header.w--current {
  color: var(--naranja);
}

.link-header.scrolled {
  color: var(--azul);
}

.link-header.scrolled.w--current {
  color: var(--naranja);
}

.links-menu {
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 73%;
  display: flex;
}

.redes-menu {
  justify-content: space-between;
  align-items: flex-start;
  width: 21%;
  max-width: 120px;
  display: flex;
}

.link-redes {
  transition: all .2s;
}

.icono-redes {
  border: 1px solid rgba(255, 255, 255, .27);
  border-radius: 100%;
  width: 27px;
  padding: 5px;
  transition: all .2s;
}

.icono-redes:hover {
  border-color: var(--naranja);
  background-color: var(--naranja);
}

.icono-redes.scrolled {
  border-color: var(--azul);
  background-color: var(--azul);
}

.icono-redes.scrolled:hover {
  border-color: var(--naranja);
  background-color: var(--naranja);
}

.section-hero-home {
  z-index: 0;
  background-color: var(--negron);
  height: 90svh;
  transition: all .2s;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.slider-hero {
  background-color: var(--transparent);
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.btn-slider-hero {
  display: none;
}

.imagen-slider {
  z-index: 0;
  opacity: .52;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.wrapper-slide-content {
  padding-bottom: 50px;
  padding-left: 40px;
  padding-right: 40px;
  position: absolute;
  top: auto;
  bottom: 20px;
  left: 0%;
  right: 0%;
}

.container-slide-content {
  justify-content: space-between;
  align-items: flex-end;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.title-slide {
  color: var(--white);
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 40px;
  font-weight: 300;
  line-height: 1.1em;
}

.col-titulo-slider {
  width: 46%;
}

.fila-boton-slider {
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

.link-con-flecha {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  padding-right: 10px;
  text-decoration: none;
  transition: all .2s;
  display: flex;
}

.link-con-flecha:hover {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  padding-right: 0;
}

.texto-link {
  background-color: var(--white);
  color: var(--azul);
  border-radius: 100px;
  margin-bottom: 0;
  padding: 10px 22px 8px;
}

.texto-link.flecha {
  background-color: var(--naranja);
  color: var(--white);
  margin-left: 10px;
  padding-left: 15px;
  padding-right: 15px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, Oxygen, Fira Sans, Droid Sans, sans-serif;
}

.texto-link.arrow {
  background-color: var(--naranja);
  color: var(--white);
  padding-left: 15px;
  padding-right: 15px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, Oxygen, Fira Sans, Droid Sans, sans-serif;
}

.texto-link.azul {
  border: 1px solid var(--azul);
}

.nav-slides {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 310px;
  height: 38px;
  display: flex;
}

.flecha {
  border-bottom: 1px solid var(--white);
  border-left: 1px solid var(--white);
  cursor: pointer;
  width: 14px;
  height: 14px;
  transform: rotate(45deg);
}

.flecha.right {
  transform: rotate(-135deg);
}

.puntos-slide {
  justify-content: space-between;
  align-items: center;
  width: 20%;
  display: flex;
}

.linea-slide {
  border: 1px solid var(--white);
  cursor: pointer;
  border-radius: 100%;
  width: 10px;
  height: 10px;
  transition: all .2s;
}

.linea-slide:hover, .linea-slide.on-punto {
  background-color: var(--white);
}

.bolder {
  font-weight: 400;
}

.segradado-slide {
  z-index: 1;
  background-image: linear-gradient(rgba(0, 0, 0, .66), rgba(0, 0, 0, 0));
  height: 50%;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.section-quienes-somos {
  z-index: 1;
  background-color: var(--white);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: -20px;
  padding: 206px 40px;
  position: relative;
}

.container-quienes-somos {
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.col-mision-y-vision {
  flex-flow: column;
  justify-content: space-around;
  align-items: flex-start;
  width: 50%;
  padding-right: 20px;
  display: flex;
}

.img-mivions-vision {
  object-fit: cover;
  border-radius: 20px;
  width: 50%;
  min-height: 590px;
}

.logo-svg-scrolled {
  opacity: 0;
  width: 50px;
  transition: all .2s;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: auto;
}

.logo-svg-scrolled.scrolled {
  opacity: 1;
}

.title-mision-vision {
  color: var(--azul);
  max-width: 490px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.1em;
}

.hero-falso-animacion-programatica {
  z-index: -1;
  height: 600px;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.p-mision-valores {
  color: var(--negron);
  max-width: 610px;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.5em;
}

.linea-mision-vision {
  background-image: linear-gradient(90deg, var(--azul), white);
  width: 100%;
  max-width: 590px;
  height: 1px;
}

.naranja {
  color: var(--naranja);
}

.linea-subrayado {
  background-color: var(--naranja);
  color: var(--transparent);
  width: 0%;
  height: 1px;
  transition: all .2s;
  display: block;
  position: absolute;
  top: auto;
  bottom: 3px;
  left: 0%;
  right: 0%;
}

.linea-subrayado.hover {
  width: 100%;
}

.link-wrapper {
  display: flex;
}

.section-services-home {
  z-index: 1;
  background-color: var(--white);
  padding: 100px 40px;
  position: relative;
}

.container-servicios-home {
  z-index: 1;
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  max-width: 1400px;
  margin-top: 100px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.title-servicios {
  color: var(--white);
  max-width: 940px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.1em;
}

.linea-servicios-home {
  background-image: linear-gradient(90deg, var(--azul), white);
  width: 100%;
  height: 1px;
  margin-top: 63px;
  margin-bottom: 63px;
}

.lista-de-servicios-home {
  flex-flow: wrap;
  display: flex;
}

.servicio-home {
  color: var(--naranja);
  margin-bottom: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  font-family: Stolzl, sans-serif;
  font-size: 30px;
  font-weight: 300;
  line-height: 1.3em;
}

.fila-boton-servicios {
  justify-content: flex-start;
  align-items: center;
  margin-top: 63px;
  display: flex;
}

.section-imagen-con-texto {
  z-index: 2;
  background-color: var(--white);
  position: relative;
}

.imagen-full {
  z-index: 1;
  object-fit: cover;
  width: 100%;
  position: relative;
}

.imagen-media-imagen-texto {
  object-fit: cover;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  width: 50%;
  min-height: 490px;
  display: block;
}

.contenido-media-imagen {
  justify-content: center;
  align-items: center;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.container-media-imagen {
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  max-width: 1400px;
  display: flex;
}

.col-fortalezas {
  width: 50%;
  padding-left: 60px;
}

.lista-de-fortalezas {
  flex-flow: wrap;
  display: flex;
}

.p-fortalezas {
  color: var(--azul);
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 19px;
  font-weight: 300;
  line-height: 1.3em;
}

.col-punto-fortalezas {
  width: 50%;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 20px;
  display: flex;
}

.linea-punto-fortaleza {
  border-right: 1px solid var(--naranja);
  border-bottom: 1px solid var(--naranja);
  width: 10px;
  height: 10px;
  margin-right: 10px;
  position: relative;
  top: 6px;
  left: -4px;
  transform: rotate(-45deg);
}

.linea-fortalezas {
  background-image: linear-gradient(90deg, var(--azul), white);
  width: 100%;
  height: 1px;
  margin-top: 60px;
  margin-bottom: 60px;
}

.fila-soluci-n {
  width: 100%;
}

.titulo-solucion {
  cursor: pointer;
  padding-left: 45px;
  transition: all .2s;
  position: relative;
}

.titulo-solucion:hover {
  padding-left: 55px;
}

.titulo-solucion.menos:hover {
  padding-left: 45px;
}

.mas-solucion {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 14px;
  left: 0;
}

.linea-h-sol {
  border-bottom: 1px solid var(--naranja);
  height: 50%;
}

.linea-v-sol {
  border-right: 1px solid var(--naranja);
  width: 50%;
  height: 100%;
  transition: all .2s;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: auto;
}

.linea-v-sol.menos {
  height: 0%;
  top: 50%;
  bottom: 50%;
}

.colapsable-info-solucion {
  padding-top: 28px;
  padding-bottom: 28px;
  padding-left: 45px;
  display: none;
}

.colapsable-info-solucion.debug {
  display: block;
}

.p-ser-mas {
  color: var(--negron);
  max-width: 500px;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.5em;
}

.section-rutas {
  z-index: 1;
  background-color: var(--white);
  justify-content: space-between;
  align-items: center;
  padding-top: 100px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.col-a-rutas {
  aspect-ratio: 1;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  width: 50%;
  max-height: 790px;
  position: relative;
  overflow: hidden;
}

.mapa {
  background-color: #eee;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.col-b-rutas {
  z-index: 3;
  aspect-ratio: 1;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  width: 50%;
  max-height: 790px;
  position: relative;
  overflow: hidden;
}

.col-b-rutas.sin-redondear {
  border-radius: 20px 0 0 20px;
}

.contenido-rutas {
  z-index: 1;
  justify-content: center;
  align-items: center;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.container-rutas {
  width: 100%;
  max-width: 1400px;
}

.col-rutas-interno {
  width: 50%;
  padding-right: 60px;
}

.punto-base {
  width: 100%;
  padding-top: 5px;
  padding-bottom: 5px;
  display: flex;
}

.icono-ubicacion {
  background-color: var(--naranja);
  border-top-left-radius: 100%;
  border-top-right-radius: 100%;
  border-bottom-left-radius: 100%;
  width: 10px;
  height: 10px;
  margin-right: 10px;
  position: relative;
  top: 5px;
  left: 0;
  transform: rotate(45deg);
}

.lista-ubicaciones {
  height: 0;
  overflow: hidden;
}

.punto-container {
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
}

.icono-punto-cont {
  background-color: var(--naranja);
  border-top-left-radius: 100%;
  border-top-right-radius: 100%;
  border-bottom-left-radius: 100%;
  width: 10px;
  height: 10px;
  margin-left: auto;
  margin-right: auto;
  transform: rotate(45deg);
}

.label-ubicacion {
  background-color: var(--white);
  color: var(--azul);
  border-radius: 100px;
  margin-top: 10px;
  margin-bottom: 0;
  padding: 6px 8px;
  font-family: Stolzl, sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1em;
}

.section-footer {
  background-color: var(--azul);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-left: 40px;
  margin-right: 40px;
  padding: 50px 40px;
}

.container-footer {
  flex-flow: wrap;
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.col-a-container {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.link-logo-footer.responsive {
  display: none;
}

.img-logo-footer {
  width: 150px;
}

.col-contenido-footer {
  flex-flow: wrap;
  width: 50%;
  display: flex;
}

.col-info-footer {
  flex-flow: column;
  width: 50%;
  min-width: 250px;
  padding-top: 38px;
  padding-right: 30px;
  display: flex;
  position: relative;
}

.col-info-footer.ultimo {
  width: 74%;
}

.titulo-links-footer {
  color: var(--white);
  margin-bottom: 20px;
  font-family: Stolzl, sans-serif;
  font-size: 19px;
  font-weight: 300;
  line-height: 1.3em;
}

.titulo-links-footer.telefonos {
  margin-top: 40px;
}

.titulo-links-footer.side {
  color: var(--naranja);
  margin-top: 20px;
  margin-bottom: 0;
}

.link-footer {
  color: var(--naranja);
  margin-bottom: 0;
  padding-right: 20px;
  font-family: Stolzl, sans-serif;
  font-size: 30px;
  font-weight: 300;
  line-height: 1.3em;
  text-decoration: none;
  transition: all .2s;
}

.link-footer:hover {
  padding-left: 20px;
  padding-right: 0;
}

.footer-wrapper {
  z-index: 1;
  background-color: var(--white);
  padding-top: 100px;
  position: relative;
}

.dato-footer-menor {
  color: var(--white);
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 19px;
  font-weight: 300;
  line-height: 1.3em;
  text-decoration: none;
  transition: all .2s;
  display: block;
}

.dato-footer-menor:hover {
  padding-left: 15px;
}

.dato-footer-menor.static:hover {
  padding-left: 0;
}

.legal-footer {
  color: rgba(255, 255, 255, .37);
  margin-bottom: 0;
  margin-right: 30px;
  font-family: Stolzl, sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.3em;
  text-decoration: none;
  display: block;
}

.container-footer-dos {
  flex-flow: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin-top: 100px;
  display: flex;
}

.blur {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-top-right-radius: 20px;
  width: 50%;
  height: 270px;
  position: absolute;
  bottom: 0%;
  left: 0%;
  right: auto;
  overflow: hidden;
}

.scroll-top {
  padding-left: 40px;
  padding-right: 40px;
  position: absolute;
  top: 4.9svh;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.container-scroll {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.flecha-scroll {
  color: var(--naranja);
  margin-left: 10px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, Oxygen, Fira Sans, Droid Sans, sans-serif;
  display: inline-block;
}

.p-scroll {
  color: var(--negron);
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-weight: 400;
}

.hero-servicios {
  background-color: var(--negron);
  position: relative;
}

.hero-servicios.legales {
  height: 330px;
}

.img-hero-servicios {
  opacity: .51;
  object-fit: cover;
  width: 100%;
  min-height: 350px;
}

.titulo-section {
  color: var(--white);
  max-width: 540px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 40px;
  font-weight: 300;
  line-height: 1.1em;
}

.wrapper-section {
  padding-bottom: 70px;
  padding-left: 40px;
  padding-right: 40px;
  position: absolute;
  top: auto;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.titulo-servicio-detalle {
  color: var(--azul);
  margin-bottom: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  font-family: Stolzl, sans-serif;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.3em;
}

.mas-solucion-chico {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 16px;
  left: 0;
}

.imgen-servicios {
  border-radius: 20px;
  margin-top: 30px;
}

.colapsable-info-solucion-detalle {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 45px;
  display: none;
}

.colapsable-info-solucion-detalle.debug {
  display: block;
}

.col-servicios-pagina {
  justify-content: space-between;
  align-items: flex-start;
  width: 31%;
}

.lista-de-servicios-pagina {
  flex-flow: wrap;
  align-items: flex-start;
  width: 65%;
  margin-top: 40px;
  display: flex;
}

.title-servicios-pagina {
  color: var(--naranja);
  max-width: 940px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 35px;
  font-weight: 300;
  line-height: 1.1em;
}

.container-servicios-pagina {
  flex-flow: row;
  justify-content: space-between;
  align-items: stretch;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.fila-soluci-n-pagina {
  width: 100%;
}

.colapsable-info-solucion-pagina {
  padding-top: 5px;
  padding-bottom: 28px;
  padding-left: 45px;
  display: none;
}

.colapsable-info-solucion-pagina.debug {
  display: block;
}

.section-services-page, .section-rutas-pagina {
  z-index: 1;
  background-color: var(--white);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: -20px;
  padding: 150px 40px;
  position: relative;
}

.container-rutas-pagina {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.titulo-rutas {
  color: var(--azul);
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.1em;
}

.col-rutas-pagina {
  width: 25%;
  padding-right: 20px;
}

.fila-rutas-principales {
  margin-top: 60px;
  display: flex;
}

.nombre-ruta-base {
  color: var(--azul);
  margin-bottom: 20px;
  font-family: Stolzl, sans-serif;
  font-size: 30px;
  font-weight: 300;
  line-height: 1.3em;
}

.linea-rutas {
  background-image: linear-gradient(90deg, var(--azul), white);
  width: 100%;
  height: 1px;
  margin-top: 60px;
  margin-bottom: 60px;
}

.punto-ruta-pagina {
  margin-right: 11px;
  padding-top: 5px;
  padding-bottom: 5px;
  display: flex;
  position: relative;
}

.lista-de-rutas {
  flex-flow: column;
  display: flex;
}

.section-contacto {
  z-index: 1;
  background-color: var(--white);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: -20px;
  padding: 150px 40px;
  position: relative;
}

.container-contacto {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.form-contacto {
  margin-bottom: 0;
}

.label {
  color: var(--negron);
  margin-bottom: 0;
}

.input {
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--azul);
  color: #999;
  border-radius: 0;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.col-campos {
  width: 100%;
  position: relative;
}

.fila-campos {
  margin-bottom: 30px;
  display: flex;
}

.espacio-formulario {
  flex: none;
  width: 20px;
  height: 20px;
}

.select {
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--azul);
  background-color: var(--transparent);
  color: #999;
  border-radius: 0;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.select-wrapper {
  position: relative;
}

.flecha-visual {
  border-bottom: 1px solid var(--azul);
  background-color: var(--white);
  pointer-events: none;
  justify-content: center;
  align-items: center;
  width: 38px;
  height: 38px;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: auto;
  right: 0%;
}

.flecha-down {
  border-right: 1px solid var(--naranja);
  border-bottom: 1px solid var(--naranja);
  width: 15px;
  height: 15px;
  position: relative;
  top: -4px;
  transform: rotate(45deg);
}

.textarea {
  color: var(--negron);
  background-color: #f8f8f8;
  border: 1px #000;
  border-radius: 0;
  min-height: 150px;
  margin-top: 10px;
  margin-bottom: 0;
}

.enviar-formulario {
  background-color: var(--naranja);
  border-top-left-radius: 10px;
  padding: 10px 25px;
  transition: all .2s;
  position: absolute;
  top: auto;
  bottom: 0%;
  left: auto;
  right: 0%;
}

.enviar-formulario:hover {
  background-color: var(--azul);
}

.titulo-cotizar {
  color: var(--azul);
  max-width: 860px;
  margin-top: 0;
  margin-bottom: 40px;
  font-family: Stolzl, sans-serif;
  font-size: 35px;
  font-weight: 300;
  line-height: 1.1em;
}

.section-certificaciones {
  z-index: 1;
  background-color: var(--white);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: -20px;
  padding: 206px 40px;
  position: relative;
}

.linea-naranja {
  width: 40px;
  margin-bottom: 40px;
}

.lista-de-certificados {
  grid-column-gap: 180px;
  grid-row-gap: 60px;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.fila-certificaciones {
  width: 50%;
}

.section-imagen-full {
  overflow: hidden;
}

.linea-ruta {
  background-color: #f15a25;
  width: 1px;
  height: 30px;
  position: absolute;
  top: 20px;
  left: 4px;
}

.section-video-home {
  z-index: 2;
  background-color: var(--white);
  padding-top: 206px;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;
}

.container-video-home {
  z-index: 1;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.imagen-video {
  border-radius: 20px;
  width: 100%;
}

.embebed-video {
  z-index: 2;
  display: none;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.boton-play {
  z-index: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.btn-play {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  color: var(--white);
  border-bottom: 1px solid rgba(255, 255, 255, .29);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  text-decoration: none;
  transition: all .2s;
  display: flex;
}

.btn-play:hover {
  color: var(--naranja);
}

.triangulo-play {
  margin-top: 4px;
  margin-bottom: 0;
  margin-left: 8px;
  font-size: 40px;
  line-height: 1em;
}

.pleca-color {
  z-index: 0;
  background-color: var(--azul);
  position: absolute;
  top: 30%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.p-detalle-servicio {
  color: var(--white);
  max-width: 610px;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.5em;
}

.certificado-footer {
  width: 200px;
  margin-bottom: 20px;
}

.title-servicios-home {
  color: var(--azul);
  max-width: 940px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.1em;
}

.fila-servicios-parche {
  width: 50%;
}

.title-servicios-rutas {
  color: var(--azul);
  max-width: 940px;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Stolzl, sans-serif;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.1em;
}

.menu-group-responsive {
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  display: none;
}

.cerrar-boton, .hamb-btn {
  display: none;
}

.container-legales {
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.p-legales {
  letter-spacing: .5px;
  column-count: 2;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.5em;
}

@media screen and (max-width: 991px) {
  .menu-group {
    width: 520px;
    max-width: none;
  }

  .title-slide {
    max-width: 420px;
  }

  .col-titulo-slider {
    width: 50%;
  }

  .container-quienes-somos {
    flex-flow: column;
  }

  .col-mision-y-vision {
    width: 100%;
  }

  .img-mivions-vision {
    width: 100%;
    height: 310px;
    min-height: 0;
    margin-top: 60px;
  }

  .linea-mision-vision {
    margin-top: 34px;
    margin-bottom: 34px;
  }

  .container-servicios-home {
    margin-top: 60px;
  }

  .imagen-media-imagen-texto {
    border-radius: 0;
    width: 100%;
    height: 390px;
    min-height: 0;
    margin-bottom: 60px;
    margin-left: auto;
    margin-right: auto;
  }

  .contenido-media-imagen {
    position: static;
  }

  .col-fortalezas {
    width: 100%;
    padding-left: 0;
  }

  .section-rutas {
    flex-flow: column;
    padding-top: 0;
  }

  .col-a-rutas {
    display: none;
  }

  .mapa {
    width: 100%;
    height: 400px;
    position: static;
  }

  .col-b-rutas {
    aspect-ratio: auto;
    border-radius: 0;
    width: 100%;
  }

  .contenido-rutas {
    width: 100%;
    margin-top: 60px;
    position: static;
  }

  .col-rutas-interno {
    width: 100%;
  }

  .col-a-container {
    order: 1;
    width: 100%;
    margin-top: 60px;
  }

  .col-a-container.legal {
    margin-top: 0;
  }

  .link-logo-footer {
    display: none;
  }

  .link-logo-footer.responsive {
    display: block;
  }

  .col-contenido-footer {
    width: 100%;
  }

  .col-contenido-footer.legal {
    flex-flow: column;
  }

  .fila-datos-adicionales {
    width: 100%;
  }

  .legal-footer {
    margin-top: 10px;
    margin-right: 0;
  }

  .container-footer-dos {
    margin-top: 70px;
  }

  .blur {
    display: none;
  }

  .img-hero-servicios {
    height: 330px;
  }

  .col-servicios-pagina, .lista-de-servicios-pagina {
    width: 100%;
  }

  .title-servicios-pagina {
    max-width: 660px;
  }

  .container-servicios-pagina {
    flex-flow: column;
  }

  .titulo-rutas {
    font-size: 35px;
  }

  .col-rutas-pagina {
    width: 50%;
  }

  .fila-rutas-principales {
    grid-row-gap: 60px;
    flex-flow: wrap;
  }

  .embebed-video {
    width: 90vw;
  }

  .pleca-color {
    top: 19%;
  }

  .title-servicios-home {
    max-width: 570px;
  }

  .fila-servicios-parche {
    width: 100%;
  }

  .container-legales {
    flex-flow: column;
  }

  .p-legales {
    column-count: 1;
  }
}

@media screen and (max-width: 767px) {
  .logo-svg {
    width: 30px;
  }

  .menu-group {
    z-index: 1;
    width: 500px;
    display: none;
  }

  .link-header {
    letter-spacing: 1px;
    margin-top: 8px;
    margin-bottom: 8px;
    font-family: Stolzl, sans-serif;
    font-size: 20px;
    font-weight: 300;
  }

  .link-header.scrolled {
    color: var(--white);
  }

  .links-menu {
    flex-flow: column;
    margin-bottom: 70px;
  }

  .redes-menu {
    width: 80%;
    max-width: 140px;
  }

  .icono-redes {
    width: 30px;
  }

  .icono-redes.scrolled {
    background-color: var(--transparent);
    border-color: rgba(255, 255, 255, .27);
  }

  .col-titulo-slider {
    width: 100%;
  }

  .nav-slides {
    max-width: none;
    margin-top: 40px;
  }

  .logo-svg-scrolled {
    width: auto;
  }

  .title-mision-vision, .title-servicios {
    font-size: 39px;
  }

  .servicio-home {
    font-size: 20px;
  }

  .imagen-full {
    height: 320px;
  }

  .col-punto-fortalezas {
    width: 100%;
  }

  .titulo-solucion, .titulo-solucion:hover {
    padding-left: 32px;
  }

  .mas-solucion {
    width: 20px;
    height: 20px;
  }

  .colapsable-info-solucion {
    padding-left: 32px;
  }

  .titulo-links-footer {
    font-size: 15px;
  }

  .link-footer {
    font-size: 20px;
  }

  .dato-footer-menor {
    font-size: 15px;
  }

  .wrapper-section {
    padding-bottom: 60px;
  }

  .colapsable-info-solucion-pagina {
    padding-left: 32px;
  }

  .col-campos {
    margin-bottom: 30px;
  }

  .fila-campos {
    flex-flow: column;
    margin-bottom: 0;
  }

  .espacio-formulario {
    display: none;
  }

  .title-servicios-home, .title-servicios-rutas {
    font-size: 39px;
  }

  .menu-group-responsive {
    z-index: 5;
    background-color: var(--negron);
    flex-flow: column;
    justify-content: center;
    width: 400px;
    transition: all .2s;
    display: flex;
    position: fixed;
    top: 0%;
    bottom: 0%;
    right: -400px;
  }

  .menu-group-responsive.on {
    right: 0;
  }

  .cerrar-boton {
    z-index: 4;
    display: none;
    position: fixed;
    top: 0%;
    bottom: 0%;
    left: 0%;
    right: 0%;
  }

  .hamb-btn {
    border-top: 1px solid var(--naranja);
    border-bottom: 1px solid var(--naranja);
    width: 40px;
    height: 18px;
    padding-bottom: 0;
    padding-right: 0;
    display: block;
    position: relative;
  }

  .linea-menu {
    border-bottom: 1px solid var(--naranja);
    width: 100%;
    height: 50%;
    padding-bottom: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 479px) {
  .header {
    padding-left: 20px;
    padding-right: 20px;
  }

  .link-header.scrolled {
    color: var(--white);
  }

  .section-hero-home {
    position: static;
  }

  .wrapper-slide-content {
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .title-slide {
    font-size: 27px;
  }

  .section-quienes-somos {
    padding-left: 20px;
    padding-right: 20px;
  }

  .title-mision-vision {
    font-size: 26px;
  }

  .section-services-home {
    padding-left: 20px;
    padding-right: 20px;
  }

  .title-servicios {
    font-size: 26px;
  }

  .contenido-media-imagen {
    padding-left: 20px;
    padding-right: 20px;
  }

  .p-fortalezas {
    font-size: 16px;
  }

  .titulo-solucion:hover {
    padding-left: 32px;
  }

  .contenido-rutas {
    padding-left: 20px;
    padding-right: 20px;
  }

  .section-footer {
    margin-left: 0;
    margin-right: 0;
    padding-left: 20px;
    padding-right: 20px;
  }

  .scroll-top {
    padding-left: 20px;
    padding-right: 20px;
  }

  .titulo-section {
    font-size: 27px;
  }

  .wrapper-section {
    padding-bottom: 60px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .titulo-servicio-detalle {
    font-size: 16px;
  }

  .mas-solucion-chico {
    top: 9px;
  }

  .title-servicios-pagina {
    max-width: 260px;
    font-size: 26px;
  }

  .section-services-page, .section-rutas-pagina {
    padding: 70px 20px;
  }

  .titulo-rutas {
    font-size: 26px;
  }

  .col-rutas-pagina {
    width: 100%;
  }

  .nombre-ruta-base {
    font-size: 26px;
  }

  .section-contacto {
    padding: 70px 20px;
  }

  .titulo-cotizar {
    font-size: 26px;
  }

  .pleca-color {
    top: 13.5%;
  }

  .title-servicios-home {
    max-width: 350px;
    font-size: 26px;
  }

  .title-servicios-rutas {
    font-size: 26px;
  }

  .menu-group-responsive {
    width: 80vw;
    right: -80vw;
  }
}


@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Stolzl Book';
  src: url('../fonts/Stolzl-Book.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}