/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

.w-post-elm.post_content.usg_post_content_1 {
    word-break: break-all;
}

#header {
	background: #0f0f0f;
}

#header:before {
    mix-blend-mode: soft-light;
}

#header:before {
    content: '';
    max-width: 1490px;
    width: 100%;
    height: 100%;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

h2.w-post-elm.post_title.usg_post_title_1.has_text_color.entry-title.color_link_inherit {
    width: 88%;
}

.l-main .aligncenter {
   max-width: 100%;
}

.no-touch .l-subheader.at_middle a:hover, .no-touch .l-header.bg_transparent .l-subheader.at_middle .w-dropdown.opened a:hover {
    color: var(--color-header-middle-text-hover);
}

.w-btn.us-btn-style_1.usg_btn_1 {
    width: 200px!important;
    padding: 8 22 8 22!important;
}

/* HEADER */

.ush_menu_2 .menu-item.level_1 > a {
	z-index: 1;
}
.ush_menu_2 .menu-item.level_1 > a:after {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	width: 100%;
	height: calc(100% - 2px);
	background-color: rgba(255,255,255,0.20);
	transform: scale(0) translate(0);
	opacity: 0;
	transition: 0.3s ease-in-out;
	border-radius: 3rem;
	z-index: -1;
}
.sticky .ush_menu_2 .menu-item.level_1 > a:after {
	background-color: rgba(96,187,214,0.20);
}
.ush_menu_2 .menu-item.level_1 > a:hover:after,
.ush_menu_2 .menu-item.level_1 > a:focus:after {
	transform: scaleY(1) translate(-50%);
	transform-origin: center center;
	width: 48px;
	left: 50%;
	opacity: 1;
}
.ush_menu_2 .menu-item.level_1 .ripple-container {
	transform: translate(-50%);
	width: 48px;
	height: calc(100% - 2px);
	left: 50%;
	top: 2px;
	bottom: initial;
	right: initial;
}

.header_hor .ush_menu_2.type_desktop .menu-item.level_1 > a:not(.w-btn) {
	border-radius: 3rem;
}

/* HOME */

#slider {
    background: -webkit-radial-gradient(35vw 75vh at 25%, #9eddf2,#60bbd6,#60bbd6);
    background: radial-gradient(35vw 75vh at 25%, #9eddf2,#60bbd6,#60bbd6);
	overflow: hidden;
}
#slider .l-section-h,
#slider .g-cols.via_flex,
#slider .vc_column_container,
#slider .g-cols.via_flex > div > .vc_column-inner {
	position: initial;
}

.text-years {
	position: absolute;
	left: 50px;
	bottom: 0;
	transform: rotate(-90deg);
	transform-origin: bottom left;
  	z-index: 2;
	padding-left: 65px;
}
.text-years:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 50px;
	height: 1px;
	background: #ffffff;
}
.text-years .w-text-h {
	display: inline-block;
	position: relative;
}

.services-block .has-link {
	position: relative;
}
.services-block .has-link .vc_column-inner .wpb_wrapper {
	transition: opacity 0.3s linear;
}
.services-block .has-link:hover .vc_column-inner .wpb_wrapper {
	opacity: 0.5;
}
.services-block .has-link:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-30%);
	background: url('/wp-content/uploads/2022/11/arrow-service.png') center center no-repeat;
	background-size: 100% auto;
	width: 68px;
	height: 69px;
	opacity: 0;
	transition: all 0.35s linear;
}
.services-block .has-link:hover:before {
	opacity: 1;
	transform: translate(-50%,-50%);
}

.products-carousel .owl-stage-outer {
	border: 1px solid #ffffff;
}

.products-carousel article .bg-animation {
	background: transparent;
	background-position: 1% 50%;
	background-size: 300% 300%;
	background-image: linear-gradient(270deg, rgba(96,187,214,.9), rgba(96,187,214,.9), rgba(96,187,214,0), rgba(96,187,214,0));
	transition: all 0.4s ease-out;
}
.products-carousel article:hover .bg-animation {
	background-position: 99% 50%;
}
.products-carousel .image-product a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.products-carousel .image-product a img {
	width: auto !important;
	height: auto !important;
	max-width: 85%;
	object-fit: inherit !important;
}

.awards-block .vc_col-sm-3 > .vc_column-inner > .wpb_wrapper {
	transform: translateY(0);
	transition: transform 0.4s ease-out;
}
.awards-block .vc_col-sm-3 > .vc_column-inner > .wpb_wrapper:hover {
	transform: translateY(-25px);
}

.title-proyect {
	position: relative
}
.title-proyect:before {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	height: 1px;
	background: #b0b0b0;
}
.btn-proyect {
	display: flex;
	align-items: center;
	justify-content: center;
}
.btn-proyect a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 100%;
	border: 1px solid var(--color-content-text);
	transform: scale(1);
	transition: transform 0.2s linear;
}
.btn-proyect a:hover {
	transform: scale(0.95);
}
.btn-proyect a img {
	border-radius: 0;
}

.projects .w-grid-item:nth-child(odd) .project {
	flex-direction: row-reverse;
}
.projects .project .arrow-link a span {
	transition: transform 0.3s linear;
	transform: rotate(-45deg);
}
.projects .project:hover .arrow-link a span {
	transform: rotate(0);
}

.border-testimonial {
	border-top-right-radius: 30px;
}
.border-blog {
	border-top-left-radius: 30px;
	transition: all 0.3s linear;
	overflow: hidden;
}
.blog article {	
	transition: all 0.15s linear;
  	transform: translateY(0px);
	padding-top: 12px !important;
}
.blog article:hover {
	transform: translateY(-12px);
}
.blog article:hover .border-blog {
	border-top-left-radius: 80px;
}

/* GENERAL */

.w-toplink {
	transition: background,box-shadow,border,color,opacity,transform 0.3s linear;
}

.h1 {
	font-family: var(--font-h1);
	font-weight: 700;
	font-size: max( 5.5rem,5.5vw );
	line-height: 1;
	letter-spacing: 0;
	margin-bottom: 1.5rem;
}

/*.hover-scale {
	transition: 0.3s;
}
.hover-scale:hover {
	transform: scale(0.8);
}*/

/* Botón animado */
.btn-animation a {
	position: relative;
	display: inline-block;
	width: 12rem;
	height: auto;
}
.btn-animation a .fas {
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	position: relative;
	display: block;
	margin: 0;
	width: 4rem;
	height: 4rem;
	border: 1px solid #ffffff;
	border-radius: 2.625rem;
}
.btn-animation a .fas:before {
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	position: absolute;
	top: 50%;
  	left: 1.625rem;
	transform: translateY(-50%);
	margin: auto;
	font-size: 1.3rem;
	color: #ffffff;
}
.btn-animation a .fas.fa-chevron-down:before {
	left: 1.35rem;
}
.btn-animation a .w-text-value {
	transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 1.25rem 0;
	margin: 0 0 0 2rem;
	color: #ffffff;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
	opacity: 0;
}
.btn-animation a:hover .fas {
	width: 100%;
}
.btn-animation a:hover .fas:before {
	transform: translate(1rem, -50%);
}
.btn-animation a:hover .w-text-value {
	opacity: 1;
}

/* Cambio de fondo */
.clearBg,
.clearBg h2,
.clearBgInvert,
.clearBgInvert h2 {
	transition: all 0.8s;
}
.clearBgInvert:before {
    mix-blend-mode: soft-light;
}
.darkBg {
	background-color: #1f1d21;
	color: #ffffff;
}
body .darkBgInvert {
	background-color: #ffffff !important;
	color: #1f1d21 !important;
}
.darkBg:before {
    mix-blend-mode: soft-light;
}
.darkBgInvert:before {
    mix-blend-mode: inherit;
}
.darkBg h2 {
	color: #ffffff;
}
.darkBgInvert h2 {
	color: #1f1d21;
}
/**/

.card {
	transition: transform .3s ease;
	transform-style: preserve-3d;
	will-change: transform;
}
.card:hover {
	transition-duration: .1s;
}

.no-touch .owl-carousel.navpos_outside.navstyle_circle > .owl-nav div:hover,
.no-touch .owl-carousel.navpos_outside.navstyle_block > .owl-nav div:hover {
  background: transparent !important;
}
.owl-prev:after {
	content: '\f060' !important;
}
.owl-next:after {
	content: '\f061' !important;
}

h2.w-post-elm.post_title.usg_post_title_1.has_text_color.entry-title.color_link_inherit {
color: var(--color-header-middle-text-hover)!important;
}

/* FOOTER */

footer .l-section:before {
	display: none;
}
footer .social a {
	text-decoration: underline;
	position: relative;
}
footer .social a .fab {
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translate(-50%, 25px);
	opacity: 0;
	pointer-events: none;
	font-size: 1.2rem;
	transition: all 0.3s ease-in-out;
}
footer .social a:hover .fab {
	transform: translate(-50%, 0);
	opacity: 1;
}

.contact-button {
	display: flex;
	align-items: center;
	justify-content: center;
}
.contact-button .w-btn-label {
	opacity: 1;
	transition: all 0.3s ease-in-out;
}
.contact-button .far {
	position: absolute;
	left: 110%;
	font-size: 3rem;
	margin: 0 !important;
	transform: translateX(0);	
	transition: all 0.3s ease-in-out;
}
.contact-button:hover .w-btn-label {
	opacity: 0;
}
.contact-button:hover .far {
	left: 50%;
	transform: translateX(-50%);	
}

.l-main [style*="color"] {
    color: white !important;
}

.l-main a {
    color: white !important;
}

#ez-toc-container.ez-toc-light-blue {
    background: #232323 !important; 
}

#ez-toc-container {
    border: none !important;
}

.vc_column-overlay {
    background: transparent !important;
}

.w-grid-none.type_message {
    background-color: #282828;
    color: #ffffff;
}

div.w-hwrapper.usg_hwrapper_1 {
    background-color: #1A1A1A !important;
}

h1.w-post-elm.post_title.us_custom_8ea4799b {
    color: #ffffff !important;
}

.has_text_color h2 {
    color: #ffffff !important;
}