/*
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 {
  --bordeaux: #853175;
  --white: #ffffff;
  --beige: #f3eddf;
	--grey:#d9d9d9;
	--grey-light: #efefef;
	--black: #333;
}
.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
	padding-top: 0px;
}
.main-titles h1,
.main-titles h2,
.main-titles h3,
.main-titles h4,
.main-titles p {
	font-size: 45px;
	line-height: 50px;
	color: var(--black);
	margin-bottom: 15px;
	letter-spacing: 1px;
}
.main-titles.white h1,
.main-titles.white h2,
.main-titles.white h3,
.main-titles.white h4,
.main-titles.white p {
	color: var(--white);
}
.main-subtitle h1,
.main-subtitle h2,
.main-subtitle h3,
.main-subtitle h4,
.main-subtitle p {
	font-family: var(--h2-font-family, inherit);
	text-transform: uppercase;
    letter-spacing: 2px;
	font-size: 16px;
	color: var(--bordeaux);
	margin-bottom: 15px;
}
.w-btn.us-btn-style_1,
.w-btn.us-btn-style_3,
.w-btn.us-btn-style_4 {
	border: 1px solid var(--white);
	z-index: 1;
}
.w-btn.us-btn-style_3,
.w-btn.us-btn-style_4 {
	z-index: 1;
	border: 1px solid var(--bordeaux);
}
.w-btn.us-btn-style_1.icon_atleft,
.w-btn.us-btn-style_3.icon_atleft,
.w-btn.us-btn-style_4.icon_atleft {
	padding-left: 0px;
}
.w-btn.us-btn-style_1.icon_atleft i,
.w-btn.us-btn-style_3.icon_atleft i,
.w-btn.us-btn-style_4.icon_atleft i{
	width: 47px;
	color: var(--white);
}
.w-btn.us-btn-style_4.icon_atleft i {
	color: var(--bordeaux);
}
.w-btn.us-btn-style_1.icon_atleft:before,
.w-btn.us-btn-style_3.icon_atleft:before,
.w-btn.us-btn-style_4.icon_atleft:before{
	content: '';
	position: absolute;
	width: 47px;
	height: 47px;
	background: var(--bordeaux);
	border-radius: 50px;
	z-index: -1;
	border: unset;
	transition: 350ms;
}
.w-btn.us-btn-style_4.icon_atleft:before {
	background: var(--white);
}
.w-btn.us-btn-style_1.icon_atleft:hover:before,
.w-btn.us-btn-style_3.icon_atleft:hover:before,
.w-btn.us-btn-style_4.icon_atleft:hover:before{
	width: 100%;
	transition: 350ms;
}
.w-btn.us-btn-style_1.icon_atleft span,
.w-btn.us-btn-style_3.icon_atleft span{
	padding-left: 20px;
}
.top-section {
	position: relative;
}
.top-section:after {
	content: '';
	position: absolute;
	background: rgb(0 0 0 / 35%);
	top: 0;bottom: 0;
	left: 0;
	right: 0;
	z-index: 0;
}
.top-section .l-section-h {
	z-index: 1;
}
.top-section p {
	color: var(--white);
	font-size: 18px;
}
.clmn-topborder {
	border: 1px solid var(--white);
	padding: 80px 30px;
	background: rgb(255 255 255 / 0%);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
}
.top-section .w-btn.us-btn-style_1.icon_atleft i,
.top-section .w-btn.us-btn-style_3.icon_atleft i{
	color: var(--white);
}
.beige-section {
	background: var(--beige);
}
.box-services .w-iconbox-title {
  font-family: var(--h2-font-family, inherit);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 15px;
    border-bottom: 1px solid var(--grey);
    width: fit-content;
    margin: 0 auto;
	padding-bottom: 15px;
    margin-bottom: 15px;
	font-size: 16px;
	color: var(--bordeaux);
}
.padding-clmn {
	padding: 30px 30px;
}
.padding-clmn .w-iconbox-icon {
	display: none;
}
.padding-clmn.grey {
	background: var(--grey);
}
.padding-clmn.bordeaux {
	background: var(--bordeaux);
}
.padding-clmn.bordeaux .box-services .w-iconbox-title,
.padding-clmn.bordeaux p {
	color: var(--white);
}
.border-right {
	border-right: 1px solid var(--grey);
}
.border-right.grey {
	border-right: 1px solid var(--grey);
}
.border-botttom {
	border-bottom: 1px solid var(--grey);
}
.bottom-section {
	background: var(--grey-light);
}
.footer-contacts,
.footer-contacts .w-iconbox-title {
	font-size: 18px;
	font-family: var(--h2-font-family, inherit);
}
.footer-contacts .w-iconbox-icon {
	margin-right: 10px!important;
}
.bottom-section.border {
	border-top: 1px solid var(--grey);
}
.bottom-text {
	font-size: 12px;
    letter-spacing: 2px;
}
.yrow-form p{
	display: flex;
	justify-content: space-between;
	margin-bottom: 15px;
}
.yrow-form p label{
	width: 49%;
}
#page-header .l-subheader.at_middle.width_full img {
	opacity: 0;
}
#page-header.sticky .l-subheader.at_middle.width_full img {
	opacity: 1;
}
ul.w-nav-list li {
	border-bottomn: 1px solid #fff;
}
.img-circle {
	position: relative;
}
/*.img-circle:after {
	content: '';
    position: absolute;
    width: 320px;
    height: 320px;
    background: rgb(255 255 255 / 15%);
    left: -160px;
    bottom: -160px;
    border-radius: 50%;
}*/
.img-circle.left:after {
	right: -150px;
    top: -150px;
	left: unset;
	backdrop-filter: blur(15px);
}
.img-circle:before {
	content: '';
	position: absolute;
	background-image: url("images/titolo-cerchio.svg");
	background-repeat: no-repeat;
    width: 200px;
    height: 200px;
    right: -92px;
    top: -92px;
	z-index: 1;
	animation: rotate-animation 26s infinite linear;
}
@keyframes rotate-animation {
	0% {
		transform: rotate(0deg);
  }
  50% {
		transform: rotate(180deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
iframe {
	filter: grayscale(1);
}
.w-nav-control span,
.w-nav-control.active .w-nav-icon:before{
    position: absolute;
    right: 45px;
    transform: rotate(-90deg);
    font-size: 12px;
    letter-spacing: 4px;
    text-transform: lowercase;
}
.w-nav-control.active .w-nav-icon:before,
.w-nav-control.active .w-nav-icon{
	color: var(--bordeaux);
}
.l-subheader .w-nav.ush_menu_1.type_mobile .w-nav-list.level_1 {
	  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
}
.w-nav-control.active .w-nav-icon {
	z-index: 4;
}
.w-nav-close {
	display: none!important;
}
.w-nav-control.active .w-nav-icon:before {
	content: 'chiudi';
	position: absolute;
	right: 45px;
	transition: 350ms;
}
.w-nav-control.active .w-nav-icon:before {
	letter-spacing: 2px;
}
.w-nav-icon>div:before {
	top: -20px;
}
.w-nav-icon>div:after {
	top: 20px;
}
.text-link a {
	color: var(--color-content-text);
}
.text-link a:hover {
	color: var(--bordeaux);
}
#page-header.sticky .l-subheader.at_middle  {
	background: color(srgb 1 1 1 / 0.8);
	backdrop-filter: blur(10px);
	box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.1), 0 2px 1px -1px rgba(0, 0, 0, 0.05)!important;
}
.padding-clmn.bordeaux .w-btn.us-btn-style_4 {
	    border: 1px solid var(--white);
}
.padding-clmn.bordeaux .w-btn.us-btn-style_4:hover {
	color: var(--bordeaux)!important;
}
.w-toplink, .w-header-show {
	border-radius: 50px !important;
}
.w-toplink:not(.w-btn) i:before {
	    content: "\f062";
}
.w-toplink, .w-header-show {
	    background: rgb(133 49 117 / 55%)!important;
	    backdrop-filter: blur(10px);
}
@media only screen and (max-width: 767.98px) {
  .clmn-topborder {
        padding: 30px 30px!important;
  }
	.w-nav-control span, .w-nav-control .w-nav-icon:before {
		bottom: 17px;
		right: 38px;
	}
	.w-nav-control.active .w-nav-icon:before {
		bottom: 0;
		right: 38px;
	}
	.main-titles h1, .main-titles h2, .main-titles h3, .main-titles h4, .main-titles p {
		font-size: 42px;
    line-height: 46px;
		margin-bottom: 10px;
	}
	#page-header.sticky .w-nav-control span {
		bottom: 13px;
	}

	.l-subheader .w-nav.ush_menu_1.type_mobile .w-nav-list.level_1 {
		background: rgba(255,255,255,0.97)!important;
	}
	#page-footer .bottom-text p {
		line-height: 16px;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1023.98px) {
	.clmn-topborder {
		padding: 30px 30px;
	}
	.main-titles h1, .main-titles h2, .main-titles h3, .main-titles h4, .main-titles p {
		font-size: 42px;
		line-height: 48px;
	}
	.display-flex {
		display: flex!important;
		flex-direction: column;
	}
	.wpb_column.vc_column_container.stretched {
		margin-left: 0px!important;
	}
	#page-content.l-main {
		overflow: hidden;
	}
	.row-clmns.g-cols.cols_4{
		grid-template-columns: repeat(2, 1fr)!important;

	}
	.padding-clmn {
    padding: 10px 10px;
}
}
@media only screen and (min-width: 1024px) and (max-width: 1279.98px) {
	.img-circle:before {
	left: -60px;
	width: 170px;
    height: 170px;
    right: -50px;
    top: -40px;
	}
	.row-clmns.g-cols.cols_4{
		grid-template-columns: repeat(2, 1fr)!important;

	}
	.top-section {
		height: 715px!important;
	}
	.top-section .clmn-topborder {
		margin-bottom: 150px!important;
	}
}
@media only screen and (min-width: 1280px) and (max-width: 1339.98px) {
	.clmn-topborder {
		padding: 30px 30px;
	}
	.main-titles h1, .main-titles h2, .main-titles h3, .main-titles h4, .main-titles p {
	font-size: 40px;
    line-height: 44px;
	}
	.padding-clmn {
    padding: 15px 15px;
}
}
@media only screen and (min-width: 1340px) and (max-width: 1499.98px) {
	.padding-clmn {
    padding: 15px 15px;
}
}

