/*----------------------------------- Globales -----------------------------------*/

*,
*::before,
*::after {
	padding: 0;
	margin: 0;
	text-decoration: none;
	list-style: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


html {
	font-size: 16px;
}


img {
	max-width: 100%;
	height: auto;
}




h1 {
	font-size: 1.8rem;
}

h2 {
	font-size: 1.6rem;
}

h3 {
	font-size: 1.4rem;
}

h4 {
	font-size: 1.2rem;
}

a, p, span {
	font-size: 1rem;
	line-height: 1.7;
}








.container,
.container-menu {
	width: 90%;
	max-width: 1500px;
	margin: 0 auto;
}






.btn {
	display:inline-block;
	padding:0.5rem 1.5rem;
	margin-bottom:0;
	font-size:1rem;
	font-weight:400;
	line-height:1.42857143;
	text-align:center;
	white-space:nowrap;
	vertical-align:middle;
	-ms-touch-action:manipulation;
	touch-action:manipulation;
	cursor:pointer;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	background-image:none;
	border:1px solid transparent;
	border-radius:4px;
}

.btn:active {
   transform: scale(0.98);
   box-shadow: 3px 2px 22px 1px rgba(0, 0, 0, 0.24);
   background-image: none;
   outline: 0;
   -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
   box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-red {
	background-color: #94272B;
	color: #FFFFFF;
	width: 7.61vw;
	height: 6.08vh;
	font-family: 'OpenSans-Bold';
	font-size: 1vw;
}

.btn-red:hover {
	background-color: #FFFFFF;
	color: #94272B;
}

.btn-blue {
	background-color: #3A3A3A;
	border-radius: 10px;
}

.btn-transparent {
   font-size: 1rem;
   font-family: 'OpenSans-Regular';
   color: #FFF;
   background-color: transparent;
   border: 1px solid #FFF;
}

.btn-transparent:active,
.btn-transparent:focus {
   border: 1px solid #FFF;
   outline: none;
}




a.scroll-top {
   color: #fff;
   display: none;
   width: 2.2vw;
   height: 2.2vw;
   position: fixed;
   z-index: 1000;
   bottom: 50px;
   right: 38px;
   font-size: 1.4vw;
   background: #147EC2;
   border-radius: 50% !important;
   text-align: center;
   border: 1px solid hsla(0, 0%, 78%, 0.3);
}
a.scroll-top i {
   position: relative;
   top: -3px;
   font-size:1.5em;
}




.redes-sociales {
  width: 2.92vw;
  position: fixed;
  z-index: 1000;
  top: 38%;
  right: 30px;
  text-align: center;
}

.redes-sociales-icon,
a.scroll-top {
   transition: transform .2s;
}


.redes-sociales-icon:hover,
a.scroll-top:hover {
   -ms-transform: scale(1.6); /* IE 9 */
   -webkit-transform: scale(1.6); /* Safari 3-8 */
   transform: scale(1.6); 
}




.icon-shadow {
  box-shadow: 5px 3px 5px 1px #b7c5d6;
   border-radius: 50%;
   background-color: transparent;
}


.zoom {
   transition: transform .2s; /* Animation */
 }
 .zoom:hover {
     transform:scale(1.2);
}



@media only screen and (max-width: 480px) {

  .redes-sociales {
     right: 18px;
  }

  a.scroll-top {
     right: 22px;
  }
}










.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
}
.form-control:focus {
  border-color: #E67A25;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(230, 122, 37, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(230, 122, 37, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}









.modal {
  display: none;
  justify-content: center;
  align-items: center;
  background: rgba(58, 58, 58, 0.5);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal-container {
  flex-basis: 50%;
  background-color: #FFF;
  border-radius: 2rem;
  padding: 2rem;
  max-height: 90vh;
}

.modal-container > div:last-child {
  overflow: auto;
  max-height: 65vh;
}


.modal-header {
  margin: 1rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.modal-header > div {
  flex-basis: 75%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  text-align: center;
}

.modal-header h3 {
  font-family: 'OpenSans-Bold';
  font-size: 1.5rem;
  text-transform: uppercase;
  z-index: 10;
}

.modal-header .servicios-detail-bar {
  height: 3rem;
  background-color: #E67A25;
  position: absolute;
  display: none;
}

.modal-header .servicios-detail-bar-1 {
  width: 50%;
  transform: translateX(-53%);
}


.modal-container ul > li {
  font-family: 'OpenSans-Light';
  font-size: 1rem;
  margin: 0 1.5rem 1rem 1.5rem;
  list-style: initial;
  color: #E67A25;
}

.modal-container ul > li p {
  color: #3A3A3A;
}

.modal-container a {
  color: #E67A25;
  margin-left: 0.5rem;
}

.modal-container a > p {
  display: inline-block;
  margin-left: 0.5rem;
  font-family: 'OpenSans-Light';
  font-size: 1rem;
}




@media screen and (max-width: 1100px) {

  .modal-container {
    flex-basis: 75%;
  }

}

@media screen and (max-width: 900px) {

  .modal-header h3 {
    font-size: 1.2rem;
  }

}

@media screen and (max-width: 650) {

  .modal-container {
    flex-basis: 80%;
  }

  .modal-container {
    padding: 1.2rem;
  }

  .modal-header > div {
    flex-basis: 100%;
  }

  .modal-container ul > li {
    margin: 0 1rem 1rem 1rem;
  }

}

@media screen and (max-width: 480px) {

  .modal-container {
    flex-basis: 80%;
    padding: 1.5rem;
  }

  .modal-container ul > li {
    margin: 0 1rem 1rem 1rem;
  }

  .modal-header h3 {
    font-size: 1rem;
  }

  .modal-container ul > li p {
    font-size: 0.95rem;
  }
}








@font-face {
  font-family:"OpenSans-Bold";
  src: url("../../fonts/OpenSans-Bold.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-BoldItalic";
  src: url("../../fonts/OpenSans-BoldItalic.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-ExtraBold";
  src: url("../../fonts/OpenSans-ExtraBold.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-ExtraBoldItalic";
  src: url("../../fonts/OpenSans-ExtraBoldItalic.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-Italic";
  src: url("../../fonts/OpenSans-Italic.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-Light";
  src: url("../../fonts/OpenSans-Light.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-LightItalic";
  src: url("../../fonts/OpenSans-LightItalic.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-Regular";
  src: url("../../fonts/OpenSans-Regular.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-Semibold";
  src: url("../../fonts/OpenSans-Semibold.ttf") format("truetype");
}

@font-face {
  font-family:"OpenSans-SemiboldItalic";
  src: url("../../fonts/OpenSans-SemiboldItalic.ttf") format("truetype");
}


/*----------------------------------- Globales -----------------------------------*/























/*------------------------------------- Sweet Alert --------------------------------*/

.alert-title {
    color: #3A3A3A;
    font-family: 'OpenSans-Bold';
    font-size: 2.5rem;
}

.alert-desc {
    font-family: 'OpenSans-Regular';
    font-size: 1.2rem;
    color: #3A3A3A;
}

.btn-warning-alert {
    background-color: #E67A25 !important;
    color: #FFFFFF !important;
    font-family: 'OpenSans-Bold' !important;
    font-size: 1.25rem !important;
}

    .btn-warning-alert:hover {
        background-color: #DF6709 !important;
    }

.btn-danger-alert {
    background-color: #94272B !important;
    color: #FFFFFF !important;
    font-family: 'OpenSans-Bold' !important;
    font-size: 1.25rem !important;
}

    .btn-danger-alert:hover {
        background-color: #942720 !important;
    }


@media screen and (max-width: 480px) {

    .alert-title {
        font-size: 2rem;
    }

    .alert-desc {
        font-size: 1rem;
    }

    .btn-warning-alert {
        font-size: 1rem !important;
    }

    .btn-danger-alert {
        font-size: 1rem !important;
    }

}

/*------------------------------------- End Sweet Alert --------------------------------*/

























/*----------------------------------- Header -----------------------------------*/


header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
  width: 100%;
}

.header-color {
  background-color: #FFFFFF;
  box-shadow: 0px 2px 3px rgba(0,0,0,.5);
  transition: all 0.8s linear;
}

.header-alt-color {
  background-color: transparent;
  transition: all 0.8s linear;
}


.logo-nav-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

header a {
  text-decoration: none;
  color: white;
}

.logo {
  padding: 0.3rem 0 0 0;
  max-width: 9rem;
}

.menu-icon {
  font-size: 1.5rem;
  display: none;
}

header a img {
  display: none;
}

.header-color img.img-principal {
  display: block;
  transition: all 0.8s linear;
  margin-bottom: 7px;
}

.header-alt-color img.img-principal-alt {
  display: block;
  transition: all 0.8s linear;
}


.header-color .telefono-header-content {
  display: none;
}


.telefono-header-content span {
  font-size: 1vw;
  font-family: 'OpenSans-Light';
  color: #FFF;
}
.telefono-header-content span:last-child {
  background-color: #e67a25;
  margin-left: 0.5rem;
  padding: 0.2rem 0.5rem 0.2rem 0.5rem;
  border-bottom-left-radius: 25% 100%;
  border-bottom-right-radius: 25% 100%;
  border-top-left-radius: 25% 100%;
  border-top-right-radius: 25% 100%;
}



.navigation > ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
}

.navlist li {
  display: inline-block;
}

.navigation ul li a {
 display: block;
 padding: 0.8rem 0.5rem;
 font-size: 14px;
 font-family: 'OpenSans-Light';
}


.lnk-menu-color {
  color: #262626 !important;
  transition: all 0.8s linear;
}

.lnk-menu-alt-color {
  color: #FFF !important;
  transition: all 0.8s linear;
}

.navigation ul li a:hover {
 transition: all 0.4s linear;
 border-radius: 5px;
}











@media screen and (min-width: 851px) and (max-width: 960px) {

  .telefono-header-content {
     display: none;
  }

}


@media only screen and (min-width: 851px) and (max-width: 911px) {

 header .logo {
   max-width: 10rem;
 }

 header .navigation ul li a {
   font-size: 0.9rem;
 }

}

@media only screen and (max-width: 850px) {

  .header-color,
  .header-alt-color {
     background-color: #FFFFFF !important;
  }

  .lnk-menu-alt,
  .lnk-menu-alt-color {
     color: #262626 !important;
  }

  img.img-principal-alt {
    display: none !important;
  }
  img.img-principal {
    display: block;
  }

  .telefono-header-content {
     display: none;
  }

 .menu-icon {
   display: block;
   cursor: pointer;
   padding: 0.5rem 1rem;
   color: #262626;
 }

 .navigation {
   width: 100%;
 }

 .navigation > ul {
   display: none;
 }

 .navigation ul.show {
   display: block;
   border-top: 1px solid #262626;
 }

 .navigation ul li {
   display: block;
 }

 .navigation ul li a {
   display: block;
   padding: 0.5rem 0;
 }

 .navigation ul li a:hover {
   background-color: #C8C8C8;
   transition: all 0.4s linear;
   border-radius: 5px;
 }



 .navigation ul li.icon-responsive {
   display: inline-block;
   margin-right: 1rem;
 }

 .navigation ul li:last-child {
   margin-bottom: 1rem;
 }

 
}




@media only screen and (min-width: 851px) {

 .navigation ul li a {
   position: relative;
   padding: 0.5em 0.5em;
   border: none;
   background-color: transparent;
   cursor: pointer;
   outline: none;
   font-size: 14px;
   font-size: 1vw;
   margin: 0.5em 0.7em;
 }

 .lnkMenu {
   color: #566473;
 }

 .lnkMenu::after,
 .lnkMenu::before {
   content: '';
     display: block;
     position: absolute;
     width: 20%;
     height: 20%;
     border: 2px solid;
     transition: all 0.6s ease;
     border-radius: 2px;
 }

 .lnk-menu-color::after {
   bottom: 0;
    right: 0;
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #566473;
    border-right-color: #566473;
 }

 .lnk-menu-color::before {
   top: 0;
    left: 0;
    border-bottom-color: transparent;
    border-right-color: transparent;
    border-top-color: #566473;
    border-left-color: #566473;
 }

  .lnk-menu-alt-color::after {
   bottom: 0;
    right: 0;
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #FFF;
    border-right-color: #FFF;
 }

 .lnk-menu-alt-color::before {
   top: 0;
    left: 0;
    border-bottom-color: transparent;
    border-right-color: transparent;
    border-top-color: #FFF;
    border-left-color: #FFF;
 }

 .lnkMenu:hover:after,
 .lnkMenu:hover:before {
   width: 100%;
    height: 100%;
 }
}






@media only screen and (max-width: 1024px) {

 .redes-sociales {
   width: 40px;
 }

 a.scroll-top {
   width: 30px;
   height: 30px;
   font-size: 1.2rem;
 }

 .logo {
   padding: 0;
   max-width: 9rem;
 }

 .navigation ul li a {
     font-size: 0.9rem;
 }

  .telefono-header-content > span {
     font-size: 0.9rem;
  }

}


a.lnk-menu-alt-color {
    box-shadow: 2px 2px 20px -6px rgb(0 0 0 / 75%);
    background-color: rgba(50, 50, 50, 0.1) !important;
}

@media screen and (max-width: 850px) {
    a.lnk-menu-alt-color {
        box-shadow: none;
        background-color: transparent !important;
    }
}
/*----------------------------------- End Header -----------------------------------*/





























/*----------------------------------- Section 1 -----------------------------------*/

#section-1 {
  min-height: 100vh;
  position: relative;
  display: grid;
  align-content: center;
  justify-content: center;
  background-image: url(../../imagenes/ics-old/SLIDE-1.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}


.banner-inicio-container {
  padding: 8rem 0;
}

.banner-inicio-container h1 {
  margin: 0;
  color: #FFF;
}

.banner-inicio-container h1:nth-child(1) {
  font-size: 44.6px;
  font-family: 'OpenSans-ExtraBold';
}
.banner-inicio-container h1:nth-child(2) {
  font-size: 84px;
  font-family: 'OpenSans-ExtraBold';
  width: max-content;
  left: 150px;
  position: relative;
}
.banner-inicio-container h1:nth-child(3) {
  font-size: 44.6px;
  font-family: 'OpenSans-Light';
  letter-spacing: 10.5px;
}
.banner-inicio-container h1:nth-child(4) {
  font-size: 98.64px;
  font-family: 'OpenSans-ExtraBoldItalic';
}


.banner-inicio-alt-container {
  position: absolute;
  width: 100%;
  top: 80%;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(../../imagenes/ics-old/barra-degradada.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.banner-inicio-alt-container > div {
  flex-basis: 55%;
  text-align: center;
}

.banner-inicio-alt-container p {
  font-size: 21px;
  line-height: 25.2px;
  font-family: 'OpenSans-Regular';
  color: #FFF;
}


@media screen and (max-width: 1330px) {

  .banner-inicio-alt-container > div {
    flex-basis: 70%;
  }

}

@media screen and (max-width: 1050px) {

  .banner-inicio-alt-container > div {
    flex-basis: 90%;
  }

}

@media screen and (max-width: 850px) {
  
  #section-1 {
    min-height: 100vh;
    position: relative;
    display: flex;
    align-content: normal;
    flex-wrap: wrap;
  }

  .banner-inicio-container {
    padding: 8rem 0 3rem 0;
  }
  .banner-inicio-alt-container {
    position: relative;
    padding: 3rem 0;
  }

}



@media screen and (max-width: 800px) {

  .banner-inicio-alt-container p {
    font-size: 1rem;
  }

  .banner-inicio-container h1:nth-child(1) {
    font-size: 38px;
  }
  .banner-inicio-container h1:nth-child(2) {
    font-size: 75px;
    left: 150px;
  }
  .banner-inicio-container h1:nth-child(3) {
    font-size: 37px;
    letter-spacing: 12px;
  }
  .banner-inicio-container h1:nth-child(4) {
    font-size: 90px;
  }

}

@media screen and (max-width: 615px) {

  .banner-inicio-alt-container {
    padding: 2rem 0;
  }
}



@media screen and (max-width: 480px) {

  #section-1 {
    align-content: center;
    min-height: calc(100vh - 45px);
  }

  .banner-inicio-container {
    padding: 5rem 0;
  }

  .banner-inicio-alt-container p {
    font-size: 0.9rem;
  }

  .banner-inicio-container h1:nth-child(1) {
    font-size: 35px;
  }
  .banner-inicio-container h1:nth-child(2) {
    font-size: 60px;
    left: 140px;
  }
  .banner-inicio-container h1:nth-child(3) {
    font-size: 33px;
    letter-spacing: 9px;
  }
  .banner-inicio-container h1:nth-child(4) {
    font-size: 77px;
  }

  .banner-inicio-alt-container {
    padding: 0;
    position: absolute;
  }

}



/*----------------------------------- End Section 1 -----------------------------------*/






























/*----------------------------------- Section 2 (Servicios) -----------------------------------*/

#section-2 {
  min-height: 100vh;
  background-color: #FFF;
  position: relative;
}

.background-servicios {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-image: url('../../imagenes/ics-old/Barra_Servicios.png');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.servicios-container {
  display: grid;
  grid-template-columns: 1fr;
}



.servicios-container > div:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4rem;
  margin: 1.5rem 0;
}




.servicios-title-content > div {
  flex-basis: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}






.servicios-alt-content {
  display: none;
}




.servicios-title-content h3 {
  color: #3A3A3A;
  font-family: 'OpenSans-Bold';
  font-size: 2.5rem;
  text-transform: uppercase;
  z-index: 10;
}

.servicios-title {
  transform: translateX(-104%);
  opacity: 0;
}

.servicios-bar {
  width: 10rem;
  height: 4.3rem;
  background-color: #F4C600; 
  position: absolute;
  transform: translateX(-150%);
  opacity: 0;
}

.servicios-title-bar-animation {
  animation: slideToRightServiceBar 1.5s linear;
	-webkit-animation: slideToRightServiceBar 1.5s linear;
	-moz-animation: slideToRightServiceBar 1.5s linear;
	-o-animation: slideToRightServiceBar 1.5s linear;
	-ms-animation: slideToRightServiceBar 1.5s linear;
  transform: translateX(-45%);
  opacity: 1;
}

.servicios-title-animation {
  animation: slideToRightService 1.5s linear;
	-webkit-animation: slideToRightService 1.5s linear;
	-moz-animation: slideToRightService 1.5s linear;
	-o-animation: slideToRightService 1.5s linear;
	-ms-animation: slideToRightService 1.5s linear;
  transform: translateX(0%);
  opacity: 1;
}

@keyframes slideToRightServiceBar {
	0% {
    opacity: 0;
		transform: translateX(-150%);
	}

	100% {
    opacity: 1;
		transform: translateX(-45%);
	}
}

@-moz-keyframes slideToRightServiceBar {
	0% {
    opacity: 0;
		transform: translateX(-150%);
	}

	100% {
    opacity: 1;
		transform: translateX(-45%);
	}
}

@-webkit-keyframes slideToRightServiceBar {
	0% {
    opacity: 0;
		transform: translateX(-150%);
	}

	100% {
    opacity: 1;
		transform: translateX(-45%);
	}
}

@-o-keyframes slideToRightServiceBar {
	0% {
    opacity: 0;
		transform: translateX(-150%);
	}

	100% {
    opacity: 1;
		transform: translateX(-45%);
	}
}

@-ms-keyframes slideToRightServiceBar {
	0% {
    opacity: 0;
		transform: translateX(-150%);
	}

	100% {
    opacity: 1;
		transform: translateX(-45%);
	}
}








@keyframes slideToRightService {
	0% {
    opacity: 0;
		transform: translateX(-104%);
	}

	100% {
    opacity: 1;
		transform: translateX(0%);
	}
}

@-moz-keyframes slideToRightService {
	0% {
    opacity: 0;
		transform: translateX(-104%);
	}

	100% {
    opacity: 1;
		transform: translateX(0%);
	}
}

@-webkit-keyframes slideToRightService {
	0% {
    opacity: 0;
		transform: translateX(-104%);
	}

	100% {
    opacity: 1;
		transform: translateX(0%);
	}
}

@-o-keyframes slideToRightService {
	0% {
    opacity: 0;
		transform: translateX(-104%);
	}

	100% {
    opacity: 1;
		transform: translateX(0%);
	}
}

@-ms-keyframes slideToRightService {
	0% {
    opacity: 0;
		transform: translateX(-104%);
	}

	100% {
    opacity: 1;
		transform: translateX(0%);
	}
}








.servicios-image-content {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  opacity: 0;
  margin-top: 5rem;
  z-index: 10;
}


.servicios-image-content-animation {
  animation: slideToUpService 1.5s linear;
	-webkit-animation: slideToUpService 1.5s linear;
	-moz-animation: slideToUpService 1.5s linear;
	-o-animation: slideToUpService 1.5s linear;
	-ms-animation: slideToUpService 1.5s linear;
  opacity: 1;
  margin-top: 0; 
}

@keyframes slideToUpService {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-moz-keyframes slideToUpService {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-webkit-keyframes slideToUpService {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-o-keyframes slideToUpService {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-ms-keyframes slideToUpService {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

	100% {
    opacity: 1;
		margin-top: 0;
	}
}


.servicios-image-content > div {
  flex-basis: calc(33% - 5rem);
}








.servicios-desc-content {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin-bottom: 1rem;
  opacity: 0;
  margin-top: 5rem;
  z-index: 10;
}


.servicios-desc-content-animation {
  animation: slideToUpService2 1.5s linear;
	-webkit-animation: slideToUpService2 1.5s linear;
	-moz-animation: slideToUpService2 1.5s linear;
	-o-animation: slideToUpService2 1.5s linear;
	-ms-animation: slideToUpService2 1.5s linear;
  opacity: 1;
  margin-top: 0;
}

@keyframes slideToUpService2 {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}
  
  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-moz-keyframes slideToUpService2 {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-webkit-keyframes slideToUpService2 {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-o-keyframes slideToUpService2 {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

  100% {
    opacity: 1;
		margin-top: 0;
	}
}

@-ms-keyframes slideToUpService2 {
	0% {
    opacity: 0;
		margin-top: 5rem;
	}

	100% {
    opacity: 1;
		margin-top: 0;
	}
}




.servicios-desc-content > div {
  flex-basis: calc(33% - 5rem);
  display: flex;
  margin-top: -3.2rem;
  padding: 12px;
}

.servicios-desc-item {
  background-color: #FFF;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}

.servicios-desc-item > div {
  flex-basis: 100%;
  text-align: center;
  padding: 0 1rem;
}

.servicios-desc-item > div:nth-child(1) {
  margin: 1rem 0;
}

.servicios-desc-item > div:nth-child(3) {
  margin: 0.5rem 0 1rem 0;
}





.servicios-desc-item h5 {
  font-family: 'OpenSans-Bold';
  font-size: 0.9rem;
  text-transform: uppercase;
  color: #3A3A3A;
}

.servicios-desc-item p {
  font-family: 'OpenSans-Regular';
  font-size: 0.9rem;
  color: #3A3A3A;
}

.servicios-desc-item p:last-of-type {
  margin-top: 0.5rem;
}

.btn-orange-alt {
  font-family: 'OpenSans-Regular';
  font-size: 0.9rem;
  color: #3A3A3A;
  background-color: #FFF;
  border: 1px solid #3A3A3A;
  padding: 0.3rem 1rem;
  border-radius: 0;
}

.btn-orange-alt:hover {
  background-color: #E67A25;
  color: white;
  border: 1px solid rgba(230, 122, 37, 0.8);
}












@media screen and (max-width: 1100px) {

  #section-2 {
    background-image: url('../../imagenes/ics-old/fondo.servicios.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
  }

  .background-servicios {
    display: none;
  }

  .servicios-image-content > div,
  .servicios-desc-content > div {
    flex-basis: calc(33% - 1rem);
  }

  .servicios-desc-content > div {
    padding: 11px;
  }

}



@media screen and (max-width: 850px) {


  .servicios-container > div:first-child {
    margin: 3rem 0 1.8rem 0;
  }




  .servicios-image-content,
  .servicios-desc-content {
    display: none;
  }





  .servicios-alt-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    margin-top: 5rem;
    opacity: 0;
  }


  .servicios-alt-content-animation {
    animation: slideToUpService_alt 1.5s linear;
    -webkit-animation: slideToUpService_alt 1.5s linear;
    -moz-animation: slideToUpService_alt 1.5s linear;
    -o-animation: slideToUpService_alt 1.5s linear;
    -ms-animation: slideToUpService_alt 1.5s linear;
    margin-top: 0;
    opacity: 1;
  }

  @keyframes slideToUpService_alt {
    0% {
      opacity: 0;
      margin-top: 5rem;
    }
    
    100% {
      opacity: 1;
      margin-top: 0;
    }
  }
  
  @-moz-keyframes slideToUpService_alt {
    0% {
      opacity: 0;
      margin-top: 5rem;
    }
  
    100% {
      opacity: 1;
      margin-top: 0;
    }
  }
  
  @-webkit-keyframes slideToUpService_alt {
    0% {
      opacity: 0;
      margin-top: 5rem;
    }
  
    100% {
      opacity: 1;
      margin-top: 0;
    }
  }
  
  @-o-keyframes slideToUpService_alt {
    0% {
      opacity: 0;
      margin-top: 5rem;
    }
  
    100% {
      opacity: 1;
      margin-top: 0;
    }
  }
  
  @-ms-keyframes slideToUpService_alt {
    0% {
      opacity: 0;
      margin-top: 5rem;
    }
  
    100% {
      opacity: 1;
      margin-top: 0;
    }
  }
















  .servicios-alt-content > div {
    flex-basis: 100%;
  }

  .servicios-desc-item-alt {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    margin: 1.5rem 0;
  }

  .servicios-desc-item-alt > div {
    flex-basis: calc(50% - 2rem);
  }


  .servicios-item-alt {
    background-color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 1.5rem;
  }

  .servicios-item-alt > div {
    flex-basis: 100%;
    text-align: center;
  }

  .servicios-item-alt > div:not(:last-child) {
    margin-bottom: 1rem;
  }

  .servicios-item-alt h5 {
    font-family: 'OpenSans-Bold';
    font-size: 0.9rem;
    text-transform: uppercase;
    color: #3A3A3A;
  }

  .servicios-item-alt p {
    font-family: 'OpenSans-Regular';
    font-size: 0.9rem;
    color: #3A3A3A;
  }

  .servicios-item-alt p:last-of-type {
    margin-top: 0.5rem;
  }

}




@media screen and (max-width: 700px) {

  .servicios-desc-item-alt > div {
    flex-basis: calc(100% - 5rem);
  }

  .servicios-desc-item-alt > div:first-child {
    flex-basis: 75%;
  }

  .servicios-item-alt {
    margin-top: -5px;
  }

}


@media screen and (max-width: 500px) {

  .servicios-title-content h3 {
    font-size: 1.8rem;
  }

  .servicios-desc-item-alt > div:first-child {
    flex-basis: calc(100% - 5rem);
  }

  .servicios-item-alt {
    padding: 1rem;
  }

}


/*----------------------------------- End Section 2 (Servicios) -----------------------------------*/

























/*----------------------------------- Section 3 (Nosotros) -----------------------------------*/

#section-3 {
  min-height: 100vh;
  display: flex;
  position: relative;
  background-image: url(../../imagenes/ics-old/Fondo_Nosotros.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.nosotros-background-alt {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 28%;
  background-color: #DDD;
}

.nosotros-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 92%;
}

.nosotros-left-container {
  flex-basis: calc(25% - 7rem);
  display: flex;
  flex-direction: column;
  margin: 2rem 0;
}

.nosotros-left-container > div:first-child {
  flex-basis: 20%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.nosotros-left-container > div:last-child {
  flex-basis: 80%;
  text-align: justify;
  display: flex;
  align-items: center;
  z-index: 10;
}

.nosotros-left-container h3 {
  font-family: 'OpenSans-Bold';
  color: #3A3A3A;
  font-size: 2.5rem;
  text-transform: uppercase;
  z-index: 10;
}

.nosotros-bar {
  background-color: #82C341;
  height: 4.31rem;
  width: 30%;
  position: absolute;
}

.nosotros-left-container p {
  font-size: 1rem;
  color: #3A3A3A;
  font-family: 'OpenSans-Light';
  line-height: 1.5;
}







.nosotros-title {
  opacity: 0;
  transform: translateX(-75%);
}

.nosotros-bar {
  opacity: 0;
  transform: translateX(-123%);
}

.nosotros-title-animation {
  animation: slideToRightTitleNosotros 1.5s linear;
	-webkit-animation: slideToRightTitleNosotros 1.5s linear;
	-moz-animation: slideToRightTitleNosotros 1.5s linear;
	-o-animation: slideToRightTitleNosotros 1.5s linear;
	-ms-animation: slideToRightTitleNosotros 1.5s linear;
  opacity: 1;
  transform: translateX(0%);
}

.nosotros-bar-animation {
  animation: slideToRightBarNosotros 1.5s linear;
	-webkit-animation: slideToRightBarNosotros 1.5s linear;
	-moz-animation: slideToRightBarNosotros 1.5s linear;
	-o-animation: slideToRightBarNosotros 1.5s linear;
	-ms-animation: slideToRightBarNosotros 1.5s linear;
  opacity: 1;
  transform: translateX(-48%);
}


@keyframes slideToRightTitleNosotros {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-moz-keyframes slideToRightTitleNosotros {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-webkit-keyframes slideToRightTitleNosotros {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-o-keyframes slideToRightTitleNosotros {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-ms-keyframes slideToRightTitleNosotros {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}
















@keyframes slideToRightBarNosotros {
	0% {
    opacity: 0;
    transform: translateX(-123%);
	}

	100% {
    opacity: 1;
    transform: translateX(-48%);
	}
}

@-moz-keyframes slideToRightBarNosotros {
	0% {
    opacity: 0;
    transform: translateX(-123%);
	}

	100% {
    opacity: 1;
    transform: translateX(-48%);
	}
}

@-webkit-keyframes slideToRightBarNosotros {
	0% {
    opacity: 0;
    transform: translateX(-123%);
	}

	100% {
    opacity: 1;
    transform: translateX(-48%);
	}
}

@-o-keyframes slideToRightBarNosotros {
	0% {
    opacity: 0;
    transform: translateX(-123%);
	}

	100% {
    opacity: 1;
    transform: translateX(-48%);
	}
}

@-ms-keyframes slideToRightBarNosotros {
	0% {
    opacity: 0;
    transform: translateX(-123%);
	}

	100% {
    opacity: 1;
    transform: translateX(-48%);
	}
}














.nosotros-right-container {
  flex-basis: calc(75% - 3rem);
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.nosotros-right-row {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-basis: 100%;
}

.nosotros-col-1 {
  justify-content: center;
}

.nosotros-col-2 {
  justify-content: center;
}

.nosotros-col-3 {
  justify-content: center;
}

.nosotros-col-4 {
  justify-content: space-evenly;
}


.nosotros-col-1 > div.nosotros-cell {
  flex-basis: 50%;
}

.nosotros-col-2 > div.nosotros-cell {
  flex-basis: calc(50% - 10rem);
}

.nosotros-col-3 > div.nosotros-cell {
  flex-basis: calc(33% - 2rem);
}

.nosotros-col-4 > div.nosotros-cell {
  flex-basis: calc(25% - 2rem);
}


.nosotros-cell {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0.5rem 0;
  opacity: 0;
}

.nosotros-cell-animation {
  animation: displayCell 2s linear;
	-webkit-animation: displayCell 2s linear;
	-moz-animation: displayCell 2s linear;
	-o-animation: displayCell 2s linear;
	-ms-animation: displayCell 2s linear;
  opacity: 1;
}

@keyframes displayCell {
	0% {
    opacity: 0;
	}

	100% {
    opacity: 1;
	}
}

@-moz-keyframes displayCell {
	0% {
    opacity: 0;
	}

	100% {
    opacity: 1;
	}
}

@-webkit-keyframes displayCell {
	0% {
    opacity: 0;
	}

	100% {
    opacity: 1;
	}
}

@-o-keyframes displayCell {
	0% {
    opacity: 0;
	}

	100% {
    opacity: 1;
	}
}

@-ms-keyframes displayCell {
	0% {
    opacity: 0;
	}

	100% {
    opacity: 1;
	}
}









.nosotros-cell > div {
  flex-basis: 100%;
  text-align: center;
}

.nosotros-cell img {
  max-width: 8rem;
}

.nosotros-cell p {
  font-family: 'OpenSans-Light';
  font-size: 0.9rem;
  color: #3A3A3A;
}












:root {
  --color-primary-500: #FFEB3B;
  --color-primary-600: #FDD835;
  --color-primary-900: #F57F17;
  --color-secondary-500: #009688;
  --color-secondary-900: #004D40;
  --font-primary: "Montserrat", sans-serif;
}

.effect-container {
  position: relative;
  display: block;
  margin: 0;
  background: transparent;
  line-height: normal;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  transition: background 250ms, box-shadow 250ms;
}

.effect-container:active, .effect-container:focus {
  outline: none;
}


.effect-container .img-effect {
  position: relative;
  z-index: 2;
}

.effect-container .dot {
  position: absolute;
  z-index: 1000;
  display: block;
  width: 5.85vw;
  height: 1.52vh;
  transform-origin: 0.76vh 0.36vw;
  pointer-events: none;
}
.effect-container .dot:nth-child(1) {
  top: 50%;
  left: 85%;
  transform: translate3d(-10px, -5px, 0);
}
.effect-container .dot:nth-child(2) {
  bottom: 0;
  left: 85%;
  transform: translate3d(-10px, 0, 0) rotate(45deg);
}
.effect-container .dot:nth-child(3) {
  bottom: 0;
  left: 50%;
  transform: translate3d(-5px, 0, 0) rotate(90deg);
}
.effect-container .dot:nth-child(4) {
  bottom: 0;
  left: 15%;
  transform: rotate(135deg);
}
.effect-container .dot:nth-child(5) {
  top: 50%;
  left: 15%;
  transform: translate3d(0, -5px, 0) rotate(180deg);
}
.effect-container .dot:nth-child(6) {
  top: 0;
  left: 15%;
  transform: rotate(225deg);
}
.effect-container .dot:nth-child(7) {
  top: 0;
  left: 50%;
  transform: translate3d(-5px, 0, 0) rotate(270deg);
}
.effect-container .dot:nth-child(8) {
  top: 0;
  left: 85%;
  transform: translate3d(-10px, 0, 0) rotate(315deg);
}
.effect-container .dot::before {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  width: 6px;
  height: 6px;
  background-color: orange;
  border-radius: 50%;
  offset-path: path("M0 1c7.1 0 5 2 5 4s7.1 4 5 4 5-2 5-4 5-4 5-4 5 2 5 4 5 4 5 4 5-2 5-4 5-4 5-4 5 2 5 4 5 4 5 4 5-2 5-4 5-4 5-4 5 2 5 4 5 4 5 4");
  offset-distance: 0;
  pointer-events: none;
  content: "";
}




.effect-container.is-animating .dot::before {
	display: block;
  	-webkit-animation: dot 750ms cubic-bezier(0.215, 0.61, 0.355, 1);
    animation: dot 750ms cubic-bezier(0.215, 0.61, 0.355, 1);
}

@-webkit-keyframes dot {
  0% {
    offset-distance: 0%;
    opacity: 1;
  }
  100% {
    offset-distance: 100%;
    opacity: 0;
  }
}

@keyframes dot {
  0% {
    offset-distance: 0%;
    opacity: 1;
  }
  100% {
    offset-distance: 100%;
    opacity: 0;
  }
}




@media screen and (max-width: 1200px) {

  .nosotros-col-4 {
    justify-content: center;
  }

  .nosotros-col-4 > div.nosotros-cell {
    flex-basis: calc(33% - 2rem);
  }

  .nosotros-col-4 > div.nosotros-cell:nth-child(1) {
    flex-basis: 100%;
  }

}


@media screen and (max-width: 1100px) {

  .nosotros-right-container {
    flex-basis: calc(75% - 1rem);
  }

  .nosotros-col-3 > div.nosotros-cell,
  .nosotros-col-4 > div.nosotros-cell {
    flex-basis: calc(33% - 1rem);
  }

  .nosotros-col-4 > div.nosotros-cell:nth-child(1) {
    flex-basis: 100%;
  }

}



@media screen and (max-width: 1000px) {
  
  .nosotros-background-alt {
    display: none;
  }

  .nosotros-left-container {
    flex-basis: calc(100% - 1rem);
    margin: 4rem 0 2rem 0;
  }

  .nosotros-left-container h3 {
    font-size: 2rem;
  }

  .nosotros-right-container {
    flex-basis: calc(100% - 1rem);
    margin-bottom: 2rem;
  }

  .nosotros-left-container > div:last-child {
    margin-top: 2rem;
  }

}



@media screen and (max-width: 800px) {

  .nosotros-col-2 {
    justify-content: space-evenly;
  }
}


@media screen and (max-width: 750px) {

  .nosotros-left-container > div:last-child {
    padding: 1rem 2rem;
  }

  .nosotros-bar {
    width: 50%;
  }

  .nosotros-cell {
    flex-basis: calc(50% - 1rem);
  }

  .nosotros-col-2 {
    justify-content: center;
  }

  .nosotros-col-2 > div.nosotros-cell {
    flex-basis: calc(50% - 3rem);
  }

}

@media screen and (max-width: 650px) {

  .nosotros-col-3 > div.nosotros-cell {
    flex-basis: calc(50% - 1rem);
  }

  .nosotros-col-4 > div.nosotros-cell {
    flex-basis: calc(50% - 1rem);
  }
  .nosotros-col-4 > div.nosotros-cell:nth-child(1) {
    flex-basis: calc(50% - 1rem);
  }

}


@media screen and (max-width: 480px) {

  .nosotros-left-container h3 {
    font-size: 1.8rem;
  }

  .nosotros-left-container p {
    font-size: 0.9rem;
  }


  .nosotros-col-1 > div.nosotros-cell,
  .nosotros-col-2 > div.nosotros-cell,
  .nosotros-col-3 > div.nosotros-cell,
  .nosotros-col-4 > div.nosotros-cell,
  .nosotros-col-4 > div.nosotros-cell:nth-child(1) {
    flex-basis: calc(100% - 2rem);
  }

  .nosotros-col-1,
  .nosotros-col-2,
  .nosotros-col-3,
  .nosotros-col-4 {
    justify-content: center;
  }

}

/*----------------------------------- End Section 3 (Nosotros) -----------------------------------*/























/*----------------------------------- Section 4 (Nuestro Trabajo) -----------------------------------*/

#section-4 {
  min-height: 100vh;
  background-image: url(../../imagenes/ics-old/SLIDE-2.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: grid;
}      


.nuestro-trabajo-container {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: minmax(min-content, max-content);
  align-content: space-around;
}


.nuestro-trabajo-title-container {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 4rem;
}

.nuestro-trabajo-title-container > div {
  flex-basis: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.nuestro-trabajo-title-container h3 {
  font-size: 2.5rem;
  color: #3A3A3A;
  font-family: 'OpenSans-Bold';
  text-transform: uppercase;
}



.nuestro-trabajo-title {
  opacity: 0;
  transform: translateX(-75%);
}

.nuestro-trabajo-title-animation {
  animation: slideToRightTitleNuestroTrabajo 1.5s linear;
	-webkit-animation: slideToRightTitleNuestroTrabajo 1.5s linear;
	-moz-animation: slideToRightTitleNuestroTrabajo 1.5s linear;
	-o-animation: slideToRightTitleNuestroTrabajo 1.5s linear;
	-ms-animation: slideToRightTitleNuestroTrabajo 1.5s linear;
  opacity: 1;
  transform: translateX(0%);
}

@keyframes slideToRightTitleNuestroTrabajo {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-moz-keyframes slideToRightTitleNuestroTrabajo {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-webkit-keyframes slideToRightTitleNuestroTrabajo {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-o-keyframes slideToRightTitleNuestroTrabajo {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}

@-ms-keyframes slideToRightTitleNuestroTrabajo {
	0% {
    opacity: 0;
    transform: translateX(-75%);
	}

	100% {
    opacity: 1;
    transform: translateX(0%);
	}
}










.nuestro-trabajo-desc-container {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
}

.nuestro-trabajo-desc-container > div {
  flex-basis: calc(30% - 1rem);
  position: relative;
}

.nuestro-trabajo-desc-container > div:first-child {
  margin-right: 2rem;
}

.nuestro-trabajo-desc-container > div:last-child {
  margin-left: 2rem;
}



.nuestro-trabajo-background {
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}
.nuestro-trabajo-background-orange {
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}


.nuestro-trabajo-desc {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.nuestro-trabajo-desc > div {
  flex-basis: 80%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  z-index: 20;
  text-align: center;
  margin-top: 1rem;
}

.nuestro-trabajo-desc > div:nth-of-type(1) {
  margin-top: 1.5rem;
  flex-basis: 70%;
}

.nuestro-trabajo-desc > div:nth-of-type(4) {
  margin-bottom: 1.5rem;
}

.nuestro-trabajo-desc > div:nth-of-type(2) {
  z-index: 8;
}

.nuestro-trabajo-desc h5 {
  color: white;
  font-size: 1.25rem;
  font-family: 'OpenSans-Bold';
}

.nuestro-trabajo-desc p {
  color: white;
  font-size: 1rem;
  font-family: 'OpenSans-Regular';
}




@media screen and (max-width: 1000px) {

  .nuestro-trabajo-title-container > div {
    flex-basis: 100%;
  }
  .nuestro-trabajo-desc-container > div {
    flex-basis: 35%;
  }

  .nuestro-trabajo-title-container h3 {
    font-size: 2rem;
  }

}

@media screen and (max-width: 800px) {

  .nuestro-trabajo-desc-container > div:first-child {
    margin-right: 1rem;
  }
  
  .nuestro-trabajo-desc-container > div:last-child {
    margin-left: 1rem;
  }

  .nuestro-trabajo-desc-container > div {
    flex-basis: 40%;
  }

}


@media screen and (max-width: 700px) {

  .nuestro-trabajo-desc-container > div:first-child {
    margin-right: 0;
  }
  
  .nuestro-trabajo-desc-container > div:last-child {
    margin-left: 0;
    margin-top: 2rem;
    margin-bottom: 2rem;
  }

  .nuestro-trabajo-desc-container > div {
    flex-basis: calc(90% - 1rem);
  }

  .nuestro-trabajo-desc > div {
    flex-basis: 90%;
  }
  .nuestro-trabajo-desc > div:nth-of-type(1) {
    flex-basis: 90%;
  }

}


@media screen and (max-width: 480px) {

  .nuestro-trabajo-title-container {
    margin: 1rem 0;
  }

  .nuestro-trabajo-desc > div {
    flex-basis: 85%;
  }
  .nuestro-trabajo-desc > div:nth-of-type(1) {
    flex-basis: 85%;
  }

  .nuestro-trabajo-title-container h3 {
    font-size: 1.8rem;
  }

  .nuestro-trabajo-desc h5 {
    font-size: 1rem;
  }

  .nuestro-trabajo-desc p {
    font-size: 0.9rem;
  }

  .btn-transparent {
    font-size: 0.9rem;
  }
  
}

/*----------------------------------- End Section 4 (Nuestro Trabajo) -----------------------------------*/





























/*----------------------------------- Section Nuestro trabajo detail -----------------------------------*/


#section-5,
#section-6 {
   min-height: 100vh;
   background-color: #F2F2F2;
   display: flex;
}


.nuestro-trabajo-detail-container {
  display: flex;
  justify-content: space-evenly;
  margin-top: 8vh;
}

.nuestro-trabajo-detail-container > div {
  flex-basis: calc(50% - 4rem);
  min-height: 550px;
}












.carousel {
  position: relative;
}




.carousel__button {
  position: absolute;
  top: 50%;
  cursor: pointer;
  background: #FFF;
  border: 0;
  border-radius: 50%;
  z-index: 10;
}

.carousel__button--left {
  transform: translate(0, -50%);
}
.carousel__button--right {
  right: 0;
  transform: translate(0, -50%);
}

.carousel__button i {
  font-size: 2rem;
 color: #157eb1;
}





.carousel__slider-container {
  height: 100%;
  position: relative;
  overflow: hidden;
}

.carousel__slider {
  position: relative;
  height: 100%;
  transition: transform 1s linear;
}

.carousel__slide {
  display: flex;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #F2F2F2;
}







.carousel__nav {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 10px 0;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: none;
}

.carousel__indicator {
  border: 0;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  background: rgba(0, 0, 0, 0.4);
  cursor: pointer;
  margin: 0 10px;
}

.carousel__indicator.current-slide {
  background: rgba(0, 0, 0, 0.75);
}







.nuestro-trabajo-item {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}


.nuestro-trabajo-item > div:first-child {
  flex-basis: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.nuestro-trabajo-item > div:last-child {
  flex-basis: 100%;
  display: flex;
  align-items: center;
  margin: 1rem 0;
}


.nuestro-trabajo-item img {
  max-height: 320px;
}


.nuestro-trabajo-item p {
  font-size: 1rem;
  color: #3A3A3A;
  font-family: 'OpenSans-Light';
}



.nuestro-trabajo-item-principal > div:first-child {
  display: block;
}

.nuestro-trabajo-item-principal > div:nth-child(2) {
  flex-basis: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 1rem auto;
}


.nuestro-trabajo-item-principal h3 {
  font-family: 'OpenSans-Bold';
  color: #3A3A3A;
  font-size: 2.5rem;
}

.nuestro-trabajo-item-principal h3:first-child {
  background-color: #82C341;
  display: inline-block;
  padding: 0.5rem 1rem 0.5rem 0;
}






@media screen and (max-width: 1100px) {

  .nuestro-trabajo-detail-container > div {
    flex-basis: calc(50% - 5rem);
  }

}

@media screen and (max-width: 980px) {

  .nuestro-trabajo-detail-container {
    margin-top: 2.5rem;
  }

  .nuestro-trabajo-item-principal h3 {
    font-size: 2rem;
  }

}

@media screen and (max-width: 700px) {

  .nuestro-trabajo-detail-container {
    flex-wrap: wrap;
    justify-content: center;
  }

  .nuestro-trabajo-detail-container > div {
    flex-basis: calc(100% - 5rem);
  }

  .nuestro-trabajo-item-principal > div:first-child {
    text-align: center;
  }

  .nuestro-trabajo-item-principal h3:first-child {
    padding: 0.5rem 1rem 0.5rem 1rem;
  }

}



@media screen and (max-width: 480px) {

  .nuestro-trabajo-detail-container > div {
    min-height: 550px;
    flex-basis: calc(100% - 2rem);
  }

  .nuestro-trabajo-detail-container > div:last-child {
    min-height: 500px;
  }

  .nuestro-trabajo-item-principal h3 {
    font-size: 1.8rem;
  }

  .nuestro-trabajo-item p {
    font-size: 0.9rem;
  }

}



/*--------------------------------- End Section Nuestro trabajo detail ---------------------------------*/






















/*----------------------------------------- Section Contacto -------------------------------------------*/

#section-7 {
  min-height: 100vh;
  background-color: #F2F2F2;
  display: flex;
  position: relative;
}

#particles-js {
	top: 0;
  left: 0;
  width: 100%;
  height: 100%;
	background-color: transparent;
	position: absolute;
  z-index: 10;
}



.contacto-container {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: wrap;
}

.contacto-container > div:first-child {
  flex-basis: calc(35% - 4rem);
  z-index: 50;
}
.contacto-container > div:last-child {
  flex-basis: calc(65% - 4rem);
}

.contacto-desc h1 {
  font-family: 'OpenSans-Bold';
  font-size: 3.9rem;
  text-transform: uppercase;
  margin: 0.5rem 0;
  color: #3A3A3A;
  line-height: 4.68rem;
}

.contacto-desc > div {
  width:60%;
  height: 2.5rem;
  background-color: #E67A25;
}











.contacto-content {
  display: flex;
  justify-content: center;
  align-items: center;
}

fieldset {
  border: none;
  width: 75%;
  z-index: 50;
}

.formulario-contacto-container {
  margin-bottom: 1rem;
}

.formulario-contacto-container div {
  display: block;
}

.formulario-contacto-container div:first-of-type {
  margin-bottom: 1rem;
}

.formulario-contacto-container input.form-control,
.formulario-contacto-container label,
.formulario-contacto-container textarea {
  font-family: 'OpenSans-Bold';
  font-size: 1rem;
  border-bottom-right-radius: 20px 20px;
  color: #3A3A3A;
}

.form input.form-control {
  height: 2.5rem;
}


.formulario-contacto-container:nth-of-type(3) {
  margin-top: 2rem;
}

textarea {
  resize: none;
  border-bottom-right-radius: 50px 50px;
}




.formulario-contacto-boton-container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn-orange {
  color:white;
  background-color: #E67A25;
  font-family: 'OpenSans-Bold';
  font-size: 1rem;
}



.formulario-contacto-container:last-of-type {
  text-align: center;
  margin-bottom: 0;
}

.formulario-contacto-container p {
  font-size: 0.87rem;
  font-family: 'OpenSans-Regular';
  color: #3A3A3A;
}



@media screen and (max-width: 1000px) {

  .contacto-container > div:first-child {
    flex-basis: calc(40% - 2rem);
  }

  .contacto-container > div:last-child {
    flex-basis: calc(60% - 2rem);
    margin: 1rem 0;
  }

  fieldset {
    width: 100%;
  }

}


@media screen and (max-width: 850px) {

  .contacto-container > div:first-child {
    flex-basis: 100%;
    margin: 1.5rem 0;
    text-align: center;
  }

  .contacto-desc h1 {
    font-size: 2.5rem;
    margin: 1rem 0;
  }

  .contacto-desc > div {
    position: relative;
    left: 20%;
    height: 1.5rem;
  }

  .contacto-container > div:last-child {
    flex-basis: 100%;
    margin: 1.5rem 0;
  }

}

@media screen and (max-width: 480px) {

  .contacto-container > div:first-child {
    margin: 1.5rem 0 0 0;
  }

  .contacto-desc h1 {
    font-size: 1.8rem;
  }

  .contacto-desc > div {
    left: 15%;
    width: 70%;
    height: 1rem;
  }

  .contacto-container > div:last-child {
    margin: 0 0 1.5rem 0;
  }

  .formulario-contacto-container {
    margin-top: 2rem;
  }

  .btn-orange {
    width: 75%;
  }

}

/*-------------------------------------- End Section Contacto -------------------------------------------*/








/*---------------------------------------- Sweet alert ------------------------------------------------*/
/*#region*/

.swal2-title,
.swal2-html-container {
    font-family: 'OpenSans-Bold';
}

.swal2-html-container {
    font-size: 0.9rem !important;
}

/*#endregion*/


/*---------------------------------------- Loading ------------------------------------------------*/
/*#region*/


.loader-container {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 10000;
    background-color: rgba(0, 0, 0, 0.6);
}

.loader-container-active {
    display: block;
}

.loader {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    border: 3px solid;
    border-color: #FFFFFF #FFFFFF transparent transparent;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

    .loader::after,
    .loader::before {
        content: '';
        box-sizing: border-box;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        border: 3px solid;
        border-color: transparent transparent #E67A25 #E67A25;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        box-sizing: border-box;
        animation: rotationBack 0.5s linear infinite;
        transform-origin: center center;
    }

    .loader::before {
        width: 40px;
        height: 40px;
        border-color: #F2F2F2 #F2F2F2 transparent transparent;
        animation: rotation 1.5s linear infinite;
    }

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes rotationBack {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-360deg);
    }
}


/*#endregion*/