/*
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:*/
:root {
	--white: #ffffff;
	--beige: #ede9e6;
	--beige-dark: #DFDAD1;
	--black: #0f131f;
	--green: #707455;
	--brown: #2d2618;
}
.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
	padding-top: 0px!important;
}
.ybig-title :is(h1,h2,h3,h4,h5,h6,p) {
	font-size: 72px;
	line-height: 68px;
	color: var(--white);
}
.ybig-title em {
	font-size: 80px;
	line-height: 80px;
}
.yicons-services {
	margin-bottom: 10px;
}
.yicons-services .w-iconbox-title {
	font-size: 28px;
	line-height: 30px;
	padding-bottom: 2px;
	padding-top: 5px;
}
.ybox-services :is(h1, h2, h3, h4, h5, h6) {
	font-size: 14px;
	line-height: 18px;
	text-transform: uppercase;
	font-family: var(--font-family, inherit);
	font-weight: 300;
	letter-spacing: 1px;
	height: 50px;
}
.ybox-services :is(h1, h2, h3, h4, h5, h6) {
	height: auto;
}
.ymain-titles :is(h1, h2, h3, h4, h5, h6 , p) {
	margin-bottom: 30px;
}
.ymain-titles :is(h1, h2, h3, h4, h5, h6 , p) {
	font-size: 54px;
}
.ymain-titles em {
	font-size: 60px;
}
/* Permette all'elemento centrale di ingrandirsi verticalmente */
.tessuti-carousel .owl-stage-outer,
.tessuti-carousel .w-carousel-list,
.tessuti-carousel .w-grid-list {
	overflow: visible !important;
}

/* Aspetto degli elementi laterali */
.tessuti-carousel .w-grid-item-h {
	position: relative;
	z-index: 1;
	transform: scale(0.85);
	transform-origin: center center;
	transition:
		transform 0.55s cubic-bezier(0.22, 0.61, 0.36, 1),
		opacity 0.55s ease;
}

/* Elemento perfettamente centrale */
.tessuti-carousel .w-grid-item.is-center .w-grid-item-h {
	z-index: 10;
	opacity: 1;
	transform: scale(1.1);
}
.yicons-services .w-iconbox-icon img {
	width: 100%;
	
    object-fit: cover;
}
.yicons-services .w-iconbox-icon {
	width: 100%;
}
/* Desktop: allarga il carosello oltre lo schermo */
@media (min-width: 1025px) {

	.tessuti-carousel {
		width: 125vw !important;
		max-width: none !important;
		margin-left: calc(50% - 62.5vw) !important;
		padding-top: 80px;
		padding-bottom: 80px;
	}
}

/* Tablet 
@media (min-width: 768px) and (max-width: 1024px) {

	.tessuti-carousel {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.tessuti-carousel .w-grid-item-h {
		transform: scale(0.92);
	}

	.tessuti-carousel .w-grid-item.is-center .w-grid-item-h {
		transform: scale(1.08);
	}
}*/

/* Mobile: disattiva l'ingrandimento 
@media (max-width: 767px) {

	.tessuti-carousel {
		width: 100% !important;
		margin-left: 0 !important;
		padding: 0;
	}

	.tessuti-carousel .w-grid-item-h,
	.tessuti-carousel .w-grid-item.is-center .w-grid-item-h {
		opacity: 1;
		transform: none;
	}
}*/
.tessuti-carousel .tessuto-info {
	opacity: 0;
	visibility: hidden;
	transform: translateY(15px);
	transition: opacity 0.4s ease,	transform 0.4s ease, visibility 0.4s;
}

.tessuti-carousel .w-grid-item.is-center .tessuto-info {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.w-vwrapper>*:not(:last-child) {
	margin-bottom: 0px!important;
}
.tessuto-info {
	background: var(--white);
	padding: 20px;
}
.beige-dark {
	background: var(--beige-dark);
}
.green-clmn {
	position: relative;
}
.green-clmn .vc_column-inner {
	z-index: 1;
}
.first-green .vc_column-overlay {
    backdrop-filter: blur(5px);
}
.green-clmn:after {
	content: '';
	position: absolute;
	background-image: url("../Impreza-child/images/scritta-decor-vertical.svg");
	background-repeat: no-repeat;
	height: 100%;
	width: 35%;
    left: -1px;
    top: 0;
    z-index: 0;
}
.w-nav-control span {
	text-transform: uppercase;
    font-size: 12px;
    transform: rotate(-90deg);
    line-height: 14px;
    letter-spacing: 1px;
	color: var(--color-content-heading);
}

.home.page .w-nav-control span {
	color: var(--white);
}
.home.page #page-header.sticky .w-nav-control span,
.home.page #page-header.sticky .w-nav.ush_menu_1 {
	color: var(--color-content-heading);
}
.page .w-nav.ush_menu_1{
	color: var(--color-content-heading);
}
.home.page .w-nav.ush_menu_1 {
	color: var(--white);
}
.w-nav-control .w-nav-icon {
	margin-left: 0px;
}
.green-clmn {
	padding: 60px 55px!important;
}
.w-btn.us-btn-style_1 i {
	width: 36px;
	height: 36px;
	background: var(--green);
	border-radius: 50px;
	color: var(--beige);
}
.top-home .w-btn i {
    width: 60px;
    height: 60px;
    border: 1px solid var(--beige-dark);
    border-radius: 50px;
    background: var(--beige-dark);
	font-size: 20px;
	margin-left: 15px;
	color: var(--black);
}

/* Griglia verticale su tutto il sito */
body::after {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	pointer-events: none;
	z-index: 0;
background:
		linear-gradient(
			to right,
			transparent calc(25% - 1px),
			rgba(255, 255, 255, 0.5) calc(25% - 1px),
			rgba(255, 255, 255, 0.5) 25%,
			transparent 25%
		),
		linear-gradient(
			to right,
			transparent calc(50% - 1px),
			rgba(255, 255, 255, 0.5) calc(50% - 1px),
			rgba(255, 255, 255, 0.5) 50%,
			transparent 50%
		),
		linear-gradient(
			to right,
			transparent calc(75% - 1px),
			rgba(255, 255, 255, 0.5) calc(75% - 1px),
			rgba(255, 255, 255, 0.5) 75%,
			transparent 75%
		);



	background-repeat: no-repeat;
}
/* Contenuti delle sezioni sopra le righe */

.l-section > .l-section-h {
	position: relative;
	z-index: 2;
}
/* Header e menu sempre sopra */
.l-header,
.w-nav-list {
	position: relative;
	z-index: 10;
}
.green-clmn {
	position: relative;
	overflow: hidden;
}

/* Disattiva la scritta SVG sovrapposta */
.green-clmn::after {
	content: none !important;
}

/* Overlay verde con lettere ritagliate */
.green-clmn .vc_column-overlay {

	/* Chrome, Edge e Safari */
	-webkit-mask-image:
		linear-gradient(#000 0 0),
		url("../Impreza-child/images/scritta-decor-vertical.svg");

	-webkit-mask-repeat:
		no-repeat,
		no-repeat;

	-webkit-mask-position:
		0 0,
		-1px center;

	-webkit-mask-size:
		100% 100%,
		35% 100%;

	-webkit-mask-composite: xor;

	/* Sintassi standard */
	mask-image:
		linear-gradient(#000 0 0),
		url("../Impreza-child/images/scritta-decor-vertical.svg");

	mask-repeat:
		no-repeat,
		no-repeat;

	mask-position:
		0 0,
		-1px center;

	mask-size:
		100% 100%,
		35% 100%;

	mask-composite: exclude;
}

/* Contenuti della colonna sopra l’overlay */
.green-clmn > .vc_column-inner {
	position: relative;
	z-index: 1;
}
.yfooter-title :is(h1, h2, h3, h4, h5, h6 , p) {
	text-transform: uppercase;
	margin-bottom: 10px;
	font-size: 14px;
    letter-spacing: 1px;
	font-weight: 400;
}
.ycontacts-footer :is(h1, h2, h3, h4, h5, h6 , p){
	font-family: var(--h1-font-family, inherit);
    font-size: 30px;
    line-height: 42px;
}
.ybottom-footer :is(h1, h2, h3, h4, h5, h6 , p) {
	font-size: 14px;
	letter-spacing: 1px;
}
.ysocial-box p i {
	width: 40px;
    height: 40px;
    background: var(--beige);
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    align-content: center;
    justify-content: center;
	margin-right: 12px;
	color: var(--black);
	font-size: 18px;
}
.ysocial-box.green p i  {
	 background: var(--green);
	color: var(--beige);
}
.yrow-form p {
	display: flex;
	justify-content: space-between;
	margin-bottom: 18px;
}
.yrow-form p label {
	width: 49%;
}
.wpcf7-form-control-wrap {
	margin-top: 0px!important;
}
::placeholder {
	opacity: 0.8;
	
}
.ybig-text :is(h1, h2, h3, h4, h5, h6 , p),
.ybox-contacts :is(h1, h2, h3, h4, h5, h6,p){
	font-size: 28px;
	font-family: var(--h1-font-family, inherit);
}
.ybox-contacts {
	/*border-bottom: 1px solid var(--white);
	padding-bottom: 40px;*/
    margin-bottom: 50px;
}
.ycontacts:not(:last-child) {
	margin-bottom: 20px;
}
.ybox-contacts .w-iconbox-icon i {
	color: var(--color-content-heading);
	font-size: 22px;
}
.ycontacts i {
	font-size: 20px!important;
}
.ybox-contacts .w-iconbox-icon {
	margin-right: 10px!important;
}
.yarrow-down i {
    width: 60px;
    height: 60px;
    border: 1px solid var(--beige);
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    color: var(--white);
    font-size: 23px;
    background: var(--beige);
    color: var(--black);
}
.top-home {
	z-index: 1;
}
.w-nav.type_mobile .w-nav-list.level_1::before {
	content: "";
	display: block;
    width: 90px;
    height: 90px;
	margin: 0px 22px 50px 0px;
	background-image: url("/wp-content/themes/Impreza-child/images/decor-tappezzeria-logo.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
}
.top-section {
	background: var(--beige-dark);
	height: 400px;
	display: flex;
    align-items: flex-end;
}
.ymain-subtitle :is(h1, h2, h3, h4, h5, h6,p) {
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 1px;
}
.top-section :is(h1, h2, h3, h4, h5, h6) {
	font-size: 62px;
}
.top-section em {
	font-size: 64px;
}
.top-section .ymain-subtitle :is(h1, h2, h3, h4, h5, h6,p) {
	margin-bottom: 10px;
}
.wpcf7-list-item-label {
	font-size: 13px;
	line-height: 16px;
}
.ygreen-numbers :is(h1, h2, h3, h4, h5, h6,p) {
	color: var(--green);
	text-transform: uppercase;
}
.ybox-services .w-iconbox-icon {
	display: none;
}
.yservices-section .ybox-services  {
	margin-bottom: 80px;
}
.ycarousel .owl-prev,
.ycarousel .owl-next {
	    width: 60px;
    height: 60px;
    background: var(--beige-dark)!important;
	box-shadow: unset;
}
.owl-next:after {
	content: "\f178";
	font-size: 16px;
	color: var(--black);
}
.owl-prev:after {
	content: "\f177";
	font-size: 16px;
	color: var(--black);
}
.w-nav-title {
	letter-spacing: 1px;
}
.yimage-services img {
	
}
.yrow-services .wpb_column {
	background: var(--beige-dark);
	padding-bottom: 12px;
}
.ywhatsapp {
	width: 60px;
    height: 60px;
    background: #25D366;
    border-radius: 50px;
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	/*border: 1px solid;*/
	box-shadow: 4px 4px 10px 1px rgba(0,0,0,0.3);
	
}
.ywhatsapp .w-iconbox-icon {
	color: var(--color-content-heading)!important;
}
	.ybox-contacts .ywhatsapp-box i  {
		    width: 50px;
    height: 50px;
		    min-width: 50px;
    background: #25D366;
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    /* border: 1px solid; */
    box-shadow: 4px 4px 10px 1px rgba(0, 0, 0, 0.3);
		margin-right: 30px;
	}
.ywhatsapp a {
	    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
}
.ywhatsapp i {
	
	font-size: 24px;
}
.yphone-top  {
	background: #405089;
	width: 54px;
    height: 54px;
    border-radius: 50px;
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
}
.yphone-top i {
	color: var(--white);
}
@media screen and (max-width: 767.98px) {
	.ybig-title :is(h1,h2,h3,h4,h5,h6,p) {
		    font-size: 50px;
    line-height: 54px;
	}
	.ybig-title em {
    font-size: 56px;
    line-height: 60px;
}
	body.header_hor .l-subheader-cell.at_left .w-nav:first-child .w-nav-control {
		padding-left: 0px;
	}
	.yarrow-down i {
		width: 54px;
    height: 54px;
	}
		.green-clmn .vc_column-overlay {
		-webkit-mask-image:
			linear-gradient(#000 0 0),
			url("../Impreza-child/images/scritta-decor-mobile.svg");
			    mask-size: 100% 100%, 100% 100%;

		mask-image:
			linear-gradient(#000 0 0),
			url("../Impreza-child/images/scritta-decor-mobile.svg");
			    mask-size: 100% 100%, 100% 100%;
	}
	.w-nav-control span {
		font-size: 10px;
	}
	.w-grid.type_carousel .owl-item>.w-grid-item {
		--gap: 10px!important;
	}
	.tessuto-info {
		padding: 10px 15px;
	}
	.yicons-services img {
		height: 350px;
	}
	.yicons-services {
    margin-bottom: 0px;
}
	.ymain-titles em {
    font-size: 50px;
}
	.ybox-contacts .w-iconbox {
		display: flex!important;
	}
	.top-section :is(h1, h2, h3, h4, h5, h6) {
		font-size: 48px;
	}
	.top-section em {
    font-size: 54px;
}
	.yservices-section {
		padding: 80px 24px!important;
	}
	.top-section {
		padding-bottom: 50px!important;
	}
	.w-nav.type_mobile .w-nav-list.level_1::before {
		    width: 74px;
    height: 74px;
    margin: 0px 10px 30px 0px;
	}
	.ybox-contacts .ywhatsapp-box i {
		margin-right: 0px;
	}
	.ybox-contacts .ywhatsapp-box .w-iconbox-title {
		margin-left: 8px;
	}
}

@media (min-width: 768px) and (max-width: 1279.98px) {
	.w-nav.type_mobile.m_layout_panel .w-nav-list.level_1 {
	min-width: 475px!important;
}
	.ybig-title :is(h1,h2,h3,h4,h5,h6,p) {
		font-size: 50px;
    line-height: 52px;
	}
	.ybig-title em {
    font-size: 54px;
    line-height: 54px;
}
	.g-cols.cols_5 {
    grid-template-columns: repeat(3, 1fr)!important;
}
	.w-grid.type_carousel .owl-item>.w-grid-item {
		--gap: 10px!important;
	}
	#page-footer p {
		font-size: 14px;
	}
	#page-footer .yfooter-title :is(h1, h2, h3, h4, h5, h6 , p){
        font-size: 12px;
    }
	.g-cols.cols_4 {
    grid-template-columns: repeat(1, 1fr)!important;
		padding: 0px 32px!important;
}
}
@media (min-width: 1280px) and (max-width: 1339.98px) {
		.w-grid.type_carousel .owl-item>.w-grid-item {
		--gap: 10px!important;
	}
}



