html{
    overflow-x: hidden;
	scroll-padding-top: 8.4rem;
}

body{
	font-family: 'Akzidenz-Grotesk Next';
}

.bg-black-opacity {
    background-color: rgba(0, 0, 0, 0.6);
}

.bg-transparente{
	background-color:transparent;
}

.bg-gris{
	background-color:#373737;
}

.bg-naranja{
	background-color:#f37321;
}

.bg-modal{
	background: linear-gradient(135deg, #f1f1f1 50%, #fff 50%);
}

.bg-contacto{
	background-image:url("../img/banner/contacto.jpg");
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.text-naranja{
	color:#f37321;
}

.nav-link{
	font-size:1rem;
	font-weight:bold;
	color:#fff;
	border:0;
	transition: border 0.15s ease-in-out; 
	padding: 0.15rem;
}

.nav-logo{
	width:15rem;
	transition: width 0.3s ease, height 0.3s ease;
}

.small-logo{
	width:10rem;
}

.nav-link:hover,.nav-link:active,.nav-link:focus{
	border:3px solid #f37321;
	border-radius:25px;
	color:#fff;
}

.content-caption{
	position:absolute;
	padding-bottom:3.5rem;
}

.title-slide{
	font-size:3rem;
	font-weight:bold;
}

.title-slide span{
	color:#f37321;
	font-style:italic;
	font-size:4rem;
}

.title-slide small{
	font-size:2.5rem;
}

.text-slide{
	font-size:1rem;
	font-style:italic;
}

.btn-slide{
	background-color:transparent;
	border:3px solid #f37321;
	border-radius:15px;
	padding: 0.5rem 1.75rem;
	font-size:1rem;
	font-weight:bold;
	font-style:italic;
}

.btn-slide:active, .btn-slide:focus, .btn-slide:hover{
	background-color:#f37321;
}

.title-banner-slide{
	font-size:1.25rem;
	font-weight:bold;
}

.text-banner-slide{
	font-size:1rem;
}

.hr-banner-slide{
	border:0;
	border-top:3px solid #f37321;
	opacity:1;
}

.border-naranja{
	border-left:3px solid #f37321;
}

.title-section{
	font-family: 'Akzidenz-Grotesk Next XBold';
	font-size:1.75rem;
	font-weight:bold;
	color:#f37321;
}

.subtitle-section{
	font-size:1rem;
	font-weight:300;
	color:#818285;
	font-style:italic;
}

.text-section{
	font-size:1rem;
	font-weight:300;
	color:#818285;
	text-align:justify;
}

.list-section{
	font-size:1rem;
	font-weight:300;
	color:#818285;
	list-style:none;
}

.btn-section{
	background-color:#f37321;
	border:3px solid #f37321;
	border-radius:15px;
	padding: 0.25rem 2rem;
	font-size:1rem;
	font-weight:bold;
	color:#fff;
}

.btn-section:active, .btn-section:focus, .btn-section:hover{
	background-color:#fff;
	color:#f37321;
}

#nosotros{
	padding-top:8rem;
}

.img-rounded{
	border-radius:25px;
	border: 8px solid #fff;
}

.logo-nosotros{
	width:auto;
}

.img-nosotros-1{
	top: -6rem;
    left: -4rem;
    z-index: 2;
}

.img-nosotros-2{
	z-index:1;
}

.img-nosotros-3{
	bottom:-10rem;
	right:-3rem;
	z-index:2;
}

.margin-nosotros{
	margin-top:-7rem;
}

.title-primer{
	font-family: 'Akzidenz-Grotesk Next XBold';
	font-size:2.5rem;
	font-weight:bold;
	color:#f37321;
}

.subtitle-primer{
	font-size:1.25rem;
	font-weight:300;
	color:#818285;
	font-style:italic;
}

#content-menu-service{
	position:absolute;
}

.content-title-servicios{
	padding:7rem 1rem;
}

.content-obras{
	margin-left:-5rem;
}

.title-servicios{
	font-family: 'Akzidenz-Grotesk Next XBold';
	font-size:1.5rem;
	font-weight:bold;
	color:#f37321;
}

.cuadro-naranja{
	border:1.5px solid #f37321;
	border-radius:25px;
}

.title-cimentacion{
	font-family: 'Akzidenz-Grotesk Next XLight';
	font-size:2rem;
	font-weight:400;
	color:#f37321;
}

.title-cimentacion b{
	font-family: 'Akzidenz-Grotesk Next Med';
	font-weight:500;
}

.border-proyectos{
	border-radius:25px;
}

.image-card-proyectos img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.img-proyectos{
	height:100%;
}

.box-proyecto > .caption {
    display: flex
;
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    cursor: pointer;
    transition: opacity 0.5s ease;
	border-radius:25px;
}

.box-proyecto:hover > .caption {
    opacity: 1;
}

.box-proy:hover,.box-proy:active,.box-proy:focus{
	box-shadow:0px 0px 5px #f37321;
	cursor:pointer;
}

.elemento{
	opacity:0;
}

.content-img-proyectos{
	height:46rem;
}

.text-contacto{
	font-family: 'Akzidenz-Grotesk Next XBold';
	font-size:1rem;
}

.input-contacto{
	border: 0;
    border-radius: unset;
    background-color: transparent;
    border-bottom: 2px solid rgba(255, 255, 255, 0.6);
	color:#fff;
}

.input-contacto:hover, .input-contacto:active, .input-contacto:focus{
    box-shadow:none;
	border-bottom: 2px solid rgba(255, 255, 255,1);
	background-color: transparent;
	color:#fff;
}

.form-floating>label{
	color:#fff;
}

.form-floating>.form-control-plaintext~label, .form-floating>.form-control:focus~label, .form-floating>.form-control:not(:placeholder-shown)~label, .form-floating>.form-select~label {
    color: rgba(255,255,255, .65);
}

.form-floating>.form-control-plaintext~label::after, .form-floating>.form-control:focus~label::after, .form-floating>.form-control:not(:placeholder-shown)~label::after, .form-floating>.form-select~label::after {
    background-color: transparent;
}

.btn-contacto {
	color: #f37321;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    max-width: 9rem;
    position: relative;
    text-decoration: none;
    width: 100%;
    border: none;
    height: 4rem;
	padding-top: 0.5rem;
    background-color: #fff;
}

.btn-contacto:hover {
	text-decoration: none;
	color: #fff;
}

.btn-1 svg {
	 height: 4rem;
	 left: 0;
	 position: absolute;
	 top: 0;
	 width: 100%;
}
 .btn-1 rect {
	 fill: none;
	 stroke: #fff;
	 stroke-width: 4;
	 stroke-dasharray: 422, 0;
	 transition: all 0.35s linear;
}
 .btn-1:hover {
	 background: rgba(0, 0, 0, 0);
	 font-weight: 600;
	 letter-spacing: 1px;
}
 .btn-1:hover rect {
	 stroke-width: 2;
	 stroke-dasharray: 15, 310;
	 stroke-dashoffset: 48;
	 transition: all 1.35s cubic-bezier(0.19, 1, 0.22, 1);
}

.icon-contacto{
	width:1.75rem;
	height:auto;
}

.text-footer{
	font-size:1rem;
}

.link-footer{
	text-decoration:none;
	color:#fff;
}

.title-servicios-int{
	font-size:3rem;
	font-weight:bold;
}

.title-servicios-int span{
	color:#f37321;
	font-style:italic;
	font-size:3.5rem;
}

.title-servicios-int small{
	font-size:1.75rem;
}

.subtitle-servicios-int{
	font-family: 'Akzidenz-Grotesk Next XBold';
	font-size:1.75rem;
	font-weight:bold;
	color:#f37321;
}

.nav-tabs{
	border:none;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    background: transparent;
    border: 0;
}

.nav-link{
	position:relative;
	z-index: 1;
	transition:unset;
}
.nav-link:focus, .nav-link:active, .nav-link:hover{
	border:0;
}
.nav-link.active::after {
    content: '';
    position: absolute;
    top: -1rem;
    left: -25%;
    width: 150%;
    height: 7.5rem;
    background-color: rgb(243,115,33,0.8);
    border-radius: 2px;
	z-index: -1;
}

.nav-link::after:focus, .nav-link::after:active, .nav-link::after:hover{
	content: '';
    position: absolute;
    top: -1rem;
    left: -7.5%;
    width: 115%;
    height: 7.5rem;
    background-color: rgb(243,115,33,0.8);
    border-radius: 2px;
	z-index: -1;
}

.nav-serv-double.active::after {
    height: 8.5rem;
}

.img-pilotaje{
	left: -15rem;
    bottom: -7rem;
}

.img-pilotaje-2{
	left: 0;
    bottom: -22rem;
}

.img-obras{
	top: 20rem;
    left: -15rem;
}

.title-proyectos-int{
	font-size:2.5rem;
	font-weight:bold;
}

.title-proyectos-int span{
	color:#f37321;
	font-style:italic;
	font-size:3.5rem;
}

.margin-proyecto{
	margin-top:-4rem;
}

.title-gracias span{
	color:#f37321;
	font-style:italic;
	font-size:4rem;
}

.title-gracias{
	font-size:2.75rem;
	font-weight:bold;
	margin-top:15rem;
}

.link-aviso{
	text-decoration:none;
	color:#818285;
}

.btn-close-modal {
    border: 0;
    background-color: transparent;
    font-size: 1.25rem;
    opacity: 0.8;
    right: -1rem;
    top: -0.5rem;
}

.carousel-control-next {
    right: -5rem;
}

.carousel-control-prev {
    left: -5rem;
}

@media (max-width: 1399.98px) {	
	.margin-nosotros{
		margin-top:-5rem;
	}
	
	.text-section, .list-section{
		font-size:1rem;
	}
	
	.img-nosotros-3 {
		bottom: -8rem;
	}
	
	.content-obras {
		margin-left: -3rem;
	}
}

@media (max-width: 1300px) {	
	.img-pilotaje {
		left: -13rem;
		bottom: -11rem;
	}
	
	.img-obras {
		top: 22rem;
		left: -13rem;
	}
}

@media (max-width: 1199.98px) {
	.nav-logo{
		width:10rem;
	}

	.small-logo{
		width:5rem;
	}
	
	.title-slide {
		font-size: 3rem;
	}
	
	.title-slide span {
		font-size: 4rem;
	}
	
	.title-slide small {
		font-size: 2.5rem;
	}
	
	.text-slide {
		font-size: 1rem;
	}
	
	.btn-slide {
		font-size: 1.25rem;
	}
	
	.title-banner-slide {
		font-size: 1.25rem;
	}
	
	.margin-nosotros{
		margin-top:2rem;
	}
	
	.margin-movil-nosotros{
		margin-top:8rem;
		margin-bottom:9rem;
	}
	
	.img-nosotros-1{
		top: -9rem;
		left: -9rem;
	}
	.img-nosotros-3{
		bottom:-9rem;
		right:-9rem;
	}
	.title-servicios {
		font-size: 1.5rem;
	}
	
	.text-section, .list-section, .subtitle-section{
		font-size:1rem;
	}
	
	.title-section {
		font-size: 2rem;
	}
	
	.title-cimentacion {
		font-size: 2rem;
	}
	
	.img-pilotaje {
        left: -16rem;
		bottom: -9rem;
    }
	
	.img-pilotaje-2 {
		bottom: -20rem;
	}
	
	.margin-movil-servicios{
		margin-bottom:12rem;
	}
	
	.title-proyectos-int {
		font-size: 1.75rem;
	}
	
	.title-proyectos-int span {
		font-size: 2.5rem;
	}
	
	#carouselProyectos .content-caption{
		left:7rem!important;
	}
	
	.cont-sig-serv{
		margin-top:8rem;
	}
}

@media (max-width: 991.98px) {
	.title-slide {
        font-size: 2rem;
    }
	.title-slide span {
        font-size: 3rem;
    }
	.title-slide small {
        font-size: 2.5rem;
    }
	.btn-slide {
        font-size: 1rem;
    }
	.title-section {
        font-size: 1.5rem;
    }
	.title-primer {
		font-size: 2.25rem;
	}
	.subtitle-primer {
		font-size: 1rem;
	}
	.img-nosotros-3 {
        bottom: -9rem;
        right: -6rem;
    }
	.img-nosotros-1 {
        top: -9rem;
        left: -6rem;
    }
	
	.content-obras {
        margin-left: 0rem;
        margin-top: -1rem;
    }
	
	.title-cimentacion {
        font-size: 1.5rem;
    }
	
	#content-menu-service{
		position:relative;
		--bs-bg-opacity:1!important;
	}
	
	#carrouselService .content-caption{
		bottom:0;
	}
	
	.title-servicios-int {
		font-size: 2rem;
	}
	
	.title-servicios-int span {
		font-size: 3rem;
	}
	
	.img-pilotaje {
        left: -9rem;
    }
	
	.img-obras {
        top: 18rem;
    }
}

@media (max-width: 767.98px) {
	.content-caption {
		padding-bottom: 0;
		width: 100%;
	}
	.title-slide {
        font-size: 1rem;
    }
	
	.title-slide span {
        font-size: 2rem;
    }
	.title-slide small {
        font-size: 1.5rem;
    }
	
	.text-slide {
        font-size: 0.8rem;
    }
	
	.nav-logo {
        width: 7rem;
    }
	
	.nav-link {
		font-size: 1rem
	}
	
	.btn-slide {
		padding: 0.5rem 1rem;
		font-size: 0.8rem;
	}
	
	.img-rounded {
		border: 5px solid #fff;
	}
	
	.img-nosotros-1 {
        top: -5rem;
        left: -3rem;
    }
	
	.img-nosotros-3 {
        bottom: -6rem;
        right: -3rem;
    }
	
	.title-section {
        font-size: 1.25rem;
    }
	
	.title-primer {
        font-size: 2rem;
    }
	
	.title-servicios {
        font-size: 1rem;
    }
	
	.btn-section {
		font-size: 1rem;
	}
	
	.title-servicios-int {
        font-size: 1rem;
    }
	
	.title-servicios-int span {
        font-size: 1.5rem;
    }
	
	.title-servicios-int small {
		font-size: 1rem;
	}
	
	#carrouselService .content-caption {
        bottom: 5rem;
    }
	
	.subtitle-servicios-int {
		font-size: 1.5rem;
	}
	
	.img-obras {
        top: 14rem;
		left: -9rem;
    }
}

@media (max-width: 575.98px) {
	.text-banner-slide {
		font-size: 0.8rem;
	}
	
	.title-banner-slide {
        font-size: 1rem;
    }
	
	.title-slide {
        font-size: 1rem;
    }
	
	.title-slide span {
        font-size: 1.5rem;
    }
	.title-slide small {
        font-size: 1rem;
    }
	
	.btn-slide {
		padding: 0.25rem 0.5rem;
		font-size: 0.6rem;
	}
	.text-slide {
        font-size: 0.6rem;
    }
	
	#nosotros{
		padding-top:4rem;
	}
	
	.img-nosotros-1 {
        top: -3rem;
        left: -2rem;
    }
	
	.img-nosotros-3 {
        bottom: -4rem;
        right: -2rem;
    }
	
	.margin-movil-nosotros {
        margin-top: 3rem;
        margin-bottom: 4rem;
    }
	
	.title-primer {
        font-size: 1.5rem;
    }
	
	.content-obras {
        margin-top: 1rem;
    }
	
	.title-cimentacion {
        font-size: 1rem;
    }
	
	.nav-serv-double.active::after {
		height: 6.5rem;
	}
	
	.nav-link.active::after {
		left: 0%;
		width: 100%;
		height: 5.5rem;
	}
	
	#content-menu-service .nav-link {
		font-size: 0.8rem;
	}
	
	.img-pilotaje {
        left: -6rem;
		bottom: -6rem;
    }
	
	.img-pilotaje-2 {
        bottom: -13rem;
    }
	
	.img-obras {
        top: 10rem;
        left: -6rem;
    }
	
	.carousel-control-next {
		right: -3rem;
	}
	
	.carousel-control-prev {
		left: -3rem;
	}
	
	#carouselProyectos .content-caption {
        left: 14rem !important;
    }
	
	.img-icon-flecha{
		height: 6rem !important;
	}	

}

@media (max-width: 400px) {

}

@media (max-width: 360px) {
	
}
