@font-face {
    font-family: 'univers_lt_std65_bold';
    src: url('../font/universltstd-bold-webfont.woff2') format('woff2'),
         url('../font/universltstd-bold-webfont.woff') format('woff'),
         url('../font/universltstd-bold-webfont.svg#univers_lt_std65_bold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'univers_lt_std55_roman';
    src: url('../font/universltstd-webfont.woff2') format('woff2'),
         url('../font/universltstd-webfont.woff') format('woff'),
         url('../font/universltstd-webfont.svg#univers_lt_std55_roman') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'univers_lt_std45_light';
    src: url('../font/universltstd-light-webfont.woff2') format('woff2'),
         url('../font/universltstd-light-webfont.woff') format('woff'),
         url('../font/universltstd-light-webfont.svg#univers_lt_std45_light') format('svg');
    font-weight: normal;
    font-style: normal;
}

body{
  background: #fff;
  /* font-family: 'univers_lt_std55_roman'; */
  color: #282828;
  -moz-font-feature-settings: "kern";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* **** - - - - GENERALES - - - - **** */
/* **** - - - - GENERALES - - - - **** */
/* **** - - - - GENERALES - - - - **** */
.pr{
  position: relative;
}
.ds-dn{
  display: none;
}
.pd0{
  padding: 0;
}
.pr{
  position: relative;
}
.marco{
  border:1px solid #ebe9e9;
}
.line-lr{
  border-left: 1px solid #ebe9e9;
  border-right: 1px solid #ebe9e9;
}
.w-100{
  width: 100%;
}
a{
  text-decoration: none;
  color: #282828;
}
p{
  font-size: .9rem;
}
.form-control,.form-select{
  border: none;
  border-bottom: 1px solid #656363;
  border-radius: 0;
  display: inline-block;
  width: 90%;
}
.col-lg-6 .form-control, .col-lg-6 .form-select{
  width: 80%;
}
.form-label{
  margin-bottom: 0;
  margin-top: 2rem;
}
textarea.form-control{
  width: 100%;
}
.form-floating>label{
  padding: 1rem 0;
}
main .container-fluid, section .container-fluid{
  max-width: 80%;
}
.form-floating label{
  margin-top: .5rem;
}
/* **** - - - - BOTONES - - - - **** */
/* **** - - - - BOTONES - - - - **** */
/* **** - - - - BOTONES - - - - **** */
.content {
	display: grid;
	width: 100%;
	margin: 0 auto;
	padding: 10vh 25px;
	max-width: 1300px;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	grid-auto-rows: 200px;
	grid-gap: 4rem;
	grid-row-gap: 6rem;
	justify-content: center;
	list-style: none;
}
.content__item {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	counter-increment: itemcounter;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
	pointer-events: none;
}
.button {
	pointer-events: auto;
	cursor: pointer;
	background: #2655b0;
	border: none;
	padding: .6rem 3rem;
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	position: relative;
	display: inline-block;
}
.button::before,
.button::after {
	position: absolute;
	top: -.1rem;
	left: 0;
	width: 100%;
	height: 100%;
}
.button--calypso {
	overflow: hidden;
	/* font-family: freight-display-pro, serif; */
	font-size: 1.15rem;
	border-radius: 0.85rem;
	color: #fff;
  box-shadow: 3px 3px 12px rgb(0 0 0 / 20%);
}
.button--calypso span {
	display: block;
	position: relative;
	z-index: 10;
  color: #e1e1e1;
  font-weight: 700;
}
.button--calypso:hover span {
  color: #fff;
	animation: MoveScaleUpInitial 0.3s forwards, MoveScaleUpEnd 0.3s forwards 0.3s;
}
@keyframes MoveScaleUpInitial {
	to {
		transform: translate3d(0,-105%,0) scale3d(1,2,1);
		opacity: 0;
	}
}
@keyframes MoveScaleUpEnd {
	from {
		transform: translate3d(0,100%,0) scale3d(1,2,1);
		opacity: 0;
	}
	to {
		transform: translate3d(0,0,0);
		opacity: 1;
	}
}
.button--calypso::before {
	content: '';
	background: #282828;
	width: 120%;
	height: 0;
	padding-bottom: 120%;
	top: -110%;
	left: -10%;
	border-radius: 50%;
	transform: translate3d(0,68%,0) scale3d(0,0,0);
}
.button--calypso:hover::before {
	transform: translate3d(0,0,0) scale3d(1,1,1);
	transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
}
.button--calypso::after {
	content: '';
	background: #282828;
	transform: translate3d(0,-100%,0);
	transition: transform 0.4s cubic-bezier(0.1, 0, 0.3, 1);
}
.button--calypso:hover::after {
	transform: translate3d(0,0,0);
	transition-duration: 0.05s;
	transition-delay: 0.4s;
	transition-timing-function: linear;
}/* **** - - - - NAVBAR - - - - **** */
/* **** - - - - NAVBAR - - - - **** */
/* **** - - - - NAVBAR - - - - **** */
nav{
  position: relative;
}
nav.navbar{
  position: relative;
  z-index: 999;
  padding: 2.5rem 0;
  max-width: 90%;
  margin: auto;
}
nav .navbar-brand{
  position: absolute;
  z-index: 20;
  left: 4%;
  cursor: pointer;
}
nav ul ul {
	display: none;
	position: absolute;
  padding: 1rem;
  left: -1rem;
	top: 2.2rem;
}
nav ul li:hover > ul {
	display:inherit;
}
nav ul ul li {
	width: 220px;
	float: none;
	display: list-item;
	position: relative;
  list-style: none;
  text-align: left;
}
nav ul ul li .nav-link{
  font-size: .8rem;
}
nav ul ul ul li {
	position: relative;
	top:-60px;
	left:170px;
}
li > a:only-child:after { content: ''; }
.nav-tel::after{
   content: '';
}
.nav-tel{
  display: inline-block;
  margin: 0!important;
}
nav .navbar-brand img{
  max-width: 3.2rem;
}
nav.navbar .nav-item{
  display: inline-block;
}
nav.navbar .nav-item:last-child .nav-link{
  display: inline-block;
}
nav .nav-link{
  color: #1c2c51!important;
  margin: 0 1rem;
  font-size: .9rem;
}
nav .nav-cont-tel{
  margin-right: 10%;
}
.navbar-nav{
  position: relative;
  display: block;
  width: 100%;
  text-align: right;
}
.nav-link{
  position: relative;
}
.nav-link::after{
  background: #000;
  height: 0;
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}
.nav-link:hover::after{
  height: 1px;
}
/* .nav-link:focus, .nav-link:hover{
  border-bottom: 1px solid #000;
} */
.navbar-nav .nav-link.active{
  font-weight: bold;
}
.navbar-nav .nav-link.active::after,.nav-link:focus::after,{
  content: '';
  width: 100%;
  height: 2px;
  background: #fff;
  display: block;
}
/* **** - - - - HOME - - - - **** */
/* **** - - - - HOME - - - - **** */
/* **** - - - - HOME - - - - **** */
main.home{
  margin: auto;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
  position: relative;
}
main.home .bg-w{
  background: #fff;
}
main.home .container-fluid{
  max-width: 88%;
}
main.home p{
  font-size: .8rem;
  text-align: justify;
}
main.home h1{
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 4rem;
}
main.home .line-lr{
  padding: 8rem 3rem 3rem;
  background: #fff;
}
main.home .button--calypso{
  margin-bottom: 3rem;
}
main.home video{
  width: 100%;
  margin-top: 20%;
  position: relative;
  z-index: 2;
  max-width: 100%;
}
main.home .img-agua{
  margin-top: -5%;
  position: relative;
  max-width: 100%;
}
main.home .cont-info{
  margin-top: 20%;
  padding: 0 25% 0 10%;
}
main.home .cont-info .frase-h{
  font-weight: 700;
  font-size: 1.8rem;
  display: block;
}
main.home .cont-info p{
  padding: 5% 15% 5% 0;
}
section.servicios-h{
  overflow: hidden;
}
section.servicios-h .container-fluid{
  max-width: 100%;
}
section.servicios-h .title, section.clientes-h .title-clientes{
  font-size: 10rem;
  line-height: 10rem;
  /* font-family: var(--roman); */
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-weight: 400;
}
section.servicios-h .sub-title{
  font-size: 2rem;
  /* font-family: 'univers_lt_std45_light'; */
  display: block;
  text-align: center;
  text-transform: uppercase;
}
section.servicios-h p{
  max-width: 29%;
  margin: auto;
  text-align: center;
  margin: 2rem auto;
  font-size: .8rem;
}
section.servicios-h .cont-servicios{
  position: relative;
  /* opacity: 0; */
  transition: all .5s ease;
}
section.servicios-h .cont-servicios img{
  width: 100%;
}
section.servicios-h .cont-servicios:hover{
  opacity: 1;
}
section.servicios-h .cont-servicios:hover .cont-info-servicios{
  opacity: 1;
}
section.servicios-h .cont-info-servicios{
  position: absolute;
  padding: 4rem 2rem 2rem 5rem;
  transition: all .8s ease;
  /* opacity: 0; */
}
section.servicios-h .cont-info-servicios h2{
  font-size: 1.6rem;
}
section.servicios-h .cont-info-servicios ul li{
  font-size: .8rem;
}
section.servicios-h .image-bg{
  background-image: url('../img/bg-servicios-limpieza.webp');
  background-size: cover;
  height: 110vh;
}
section.servicios-h .button{
  font-size: .9rem;
  margin-right: auto;
}
section.clientes-h{
  padding: 5rem 0;
}
section.clientes-h span{
  font-size: 2.4rem;
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
}
section.clientes-h p{
  max-width: 35%;
  margin: auto;
  text-align: center;
}
section.clientes-h .logo-cliente{
  width: 18%;
}
section.clientes-h .cont-logos-clientes{
  margin: 4rem auto;
  text-align: center;
}
section.contacto-h{
  border-top: 1px solid #7f7d7d;
  padding: 5rem 0;
}
section.contacto-h .title-c{
  font-size: 2.2rem;
  font-weight: 700;
  display: block;
  text-align: center;
}
section.contacto-h .button--calypso{
  font-size: .9rem;
  margin-left: auto;
  margin-top: 1rem;
}
/* **** - - - - NOSOTROS - - - - **** */
/* **** - - - - NOSOTROS - - - - **** */
/* **** - - - - NOSOTROS - - - - **** */
main.nosotros{
  margin: auto;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
  position: relative;
  padding: 5% 0;
}
main.nosotros span.title{
  display: block;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 5rem;
}
main.nosotros .cont-info{
  margin: 4rem 0;
  max-width: 80%;
  text-align: left;
}
main.nosotros .button--calypso,section.hacemos .button--calypso,main.servicios-s .button--calypso,section.banner-s .button--calypso{
  margin-right: auto;
}
section.hacemos{
  padding: 0;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
}
section.hacemos video{
  max-width: 100%;
  width: 100%;
}
section.hacemos h4{
  font-size: 2.2rem;
  font-weight: 700;
  display: block;
  text-align: center;
}
section.hacemos .cont-info{
  margin: 4rem 0;
  max-width: 80%;
  text-align: left;
}
section.rubros{
  padding: 0;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
  overflow: hidden;
}
section.rubros .cont-rubro{
  position: relative;
}
section.rubros .cont-rubro h3{
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  top: 50%;
}
.title-r{
  font-size: 12rem;
  line-height: 12rem;
  /* font-family: var(--roman); */
  display: block;
  text-align: center;
  text-transform: uppercase;
}
.title-f{
  font-size: 8rem;
}
section.servicios-n{
  background-image: url('../img/bg-servicios-limpieza-gl.webp');
}
section.servicios-master .lista-servicios{
  max-width: 70%;
  margin-top: 5%;
  padding-left: 25%;
  font-size: .8rem;
}
section.ventajas-n{
  padding: 5rem 0;
  border-bottom: 1px solid #000;
}
section.ventajas-n .title{
  display: block;
  text-align: center;
  font-size: 2rem;
  text-transform: uppercase;
  font-weight: 700;
  margin: 3rem auto;
}
section.ventajas-n ul{
  font-size: .9rem;
}
section.ventajas-n p{
  font-weight: 700;
  text-align: justify;
  padding: 1rem 3rem;
}
/* **** - - - - SERVICIOS - - - - **** */
/* **** - - - - SERVICIOS - - - - **** */
/* **** - - - - SERVICIOS - - - - **** */
section.servicios-master{
  padding: 4rem 0;
  height: 100vh;
  background-size: contain;
  background-position: bottom;
  background-repeat: no-repeat;
}
section.servicios-limpieza{
  background-image: url('../img/servicio-limpieza-corporativa-bg.webp');
}
main.servicios-s{
  margin: auto;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
  position: relative;
  padding: 5% 0;
}
main.servicios-s h1, section.banner-s .title, section.servicios-s .title{
  font-weight: 700;
  max-width: 50%;
  margin: auto;
  display: block;
  font-size: 2.5rem;
}
main.servicios-s .cont-info, section.banner-s .cont-info, section.servicios-s .cont-info{
  margin: 4rem 0;
  max-width: 80%;
  text-align: left;
}
section.banner-s{
  margin: auto;
  background-image: url('../img/bg-lineas.webp');
  background-size: contain;
  position: relative;
  padding-bottom: 5rem;
}
section.banner-s img{
  position: relative;
  z-index: 5;
}
section.banner-s .container-fluid{
  max-width: 100%;
}
section.banner-s .info-banner{
  max-width: 80%;
  margin: auto;
}
section.banner-s .follaje-1{
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  max-width: 20%;
}
section.servicios-jardineria{
  background-image: url('../img/servicio-jardineria-bg.webp');
}
section.servicios-renta{
  background-image: url('../img/servicio-renta-equipo-bg.webp');
}
section.servicios-s .cont-info ul, section.banner-s .cont-info ul{
  font-size: .9rem;
}
/* **** - - - - CONTACTO - - - - **** */
/* **** - - - - CONTACTO - - - - **** */
/* **** - - - - CONTACTO - - - - **** */
main.contacto .container-fluid{
  max-width: 100%;
  overflow: hidden;
}
/* **** - - - - FOOTER - - - - **** */
/* **** - - - - FOOTER - - - - **** */
/* **** - - - - FOOTER - - - - **** */
footer{
  background: #16253d;
  text-align: center;
  color: #d0cfcf;
  padding: 2rem 0 5rem 0;
}
footer img{
  margin-bottom: 1rem;
}
footer p{
  color: #d0cfcf;
}
footer a{
  font-size: .8rem;
  display: block;
  max-width: 30%;
  margin: auto;
  color: #d0cfcf;
}
footer .nav-tel{
  margin-top: 1rem!important;
  color: #fff;
  font-size: .8rem;
}
