/*
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 {
    --imn-blue: #427596;
    --imn-red: #ff0000;
    --imn-dark-blue: #21394a;
    --imn-light-blue: #a1bccc;
}

.first-row .l-section-h.i-cf {
    padding-top: 0!important;
}
.right-hover,
.left-hover {
    position: relative;
}
.right-hover:after {
    position: absolute;
    content: '';
    background: url("img/arrow-right-hover.svg");
    background-repeat: no-repeat;
    height: 0;
    width: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
}
.right-hover:hover:after,
.left-hover:hover:after {
    height: 100%;
    width: 100%;
}
.left-hover:after {
    position: absolute;
    content: '';
    background: url("img/arrow-left-hover.svg");
    background-repeat: no-repeat;
    height: 0;
    width: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
}
.glass-background .vc_column_container {
    background: rgba(65, 115, 149, 0.27);
    border-radius: 10px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    padding: 40px;
    transition: background 0.2s ease-in-out;
}
.glass-background .vc_column_container:hover {
    background: rgba(65, 115, 149, 0.50);
}
h2.number {
    color: #fff;
    font-size: 40px;
    font-weight: 500;
}
p.descrizione {
    color: #fff;
    font-size: 20px;
}
.title h1,
.title h2,
.title h3,
.title h4 {
    font-size: 55px;
    color: var(--imn-blue);
    padding-bottom: 20px;
}
.title-white h1,
.title-white h2,
.title-white h3,
.title-white h4 {
    font-size: 55px;
    color: #fff;
    padding-bottom: 20px;
}
.title h1 strong,
.title h2 strong,
.title h3 strong,
.title h4 strong {
    font-weight: 400;
    color: var(--imn-red);
}
.tooth {
    position: relative;
}
.tooth:before {
    position: absolute;
    content: '';
    background: url(img/tooth.svg);
    background-repeat: no-repeat;
    height: 360px;
    width: 322px;
    bottom: -175px;
    right: 115px;
    opacity: 0.5;
}
.tooth:after {
    position: absolute;
    content: '';
    background: url(img/tooth-red.svg);
    background-repeat: no-repeat;
    height: 360px;
    width: 322px;
    bottom: -195px;
    right: 135px;
    opacity: 0.2;
}
.box-icone .vc_column_container {
    border-radius: 15px;
    padding: 30px;
    box-shadow: 5px 7px 15px 0 rgb(38 38 38 / 9%) !important;
    background: #fff;
}
.box-icone h4.w-iconbox-title {
    font-size: 22px;
    text-transform: uppercase;
}
.box-icone h5.w-iconbox-title {
    font-size: 20px;
}
.w-btn.us-btn-style_1,
.w-btn.us-btn-style_3,
.btn-slider {
    padding-left: 20px;
    padding-right: 75px;
    position: relative;
}
.w-btn.us-btn-style_1:after,
.btn-slider:after {
    position: absolute;
    content: '';
    background: url(img/arrow-right-light.svg);
    background-repeat: no-repeat;
    background-size: contain;
    height: 30px;
    width: 30px;
    top: 50%;
    transform: translateY(-50%);
    right: 13px;
}
.w-btn.us-btn-style_3:after {
    position: absolute;
    content: '';
    background: url("img/arrow-right-white.svg");
    background-repeat: no-repeat;
    background-size: contain;
    height: 30px;
    width: 30px;
    top: 50%;
    transform: translateY(-50%);
    right: 13px;
}
.box-icone .vc_column_container {
    background: #fff;
    transition: background 0.5s ease-in-out;
}
.box-icone .vc_column_container:hover {
    background: var(--imn-blue);
}
.box-icone .vc_column_container:hover .w-iconbox-title,
.box-icone .vc_column_container:hover .w-iconbox-text {
    color: #fff;
}
.box-icone .vc_column_container:hover .w-btn.us-btn-style_1 {
    background: var(--imn-red);
}
.promozione {
    padding: 50px;
}
.txt-white p {
    color: #fff;
}
.fs-30 h2,
.fs-30 h2 a {
    font-size: 30px;
    color: #fff;
    margin-top: 20px;
}
.img-background {
    position: relative;
}
.img-background:after {
    position: absolute;
    content: '';
    background: url(img/check-up.webp);
    background-repeat: no-repeat;
    background-size: contain;
    height: 440px;
    width: 523px;
    bottom: 0;
    right: 50px;
}
.w-image-h img {
    border-radius: 20px;
}
.riga-orari .l-section {
    padding-left: 0;
    padding-right: 0;
}
.txt-footer p,
.txt-footer p a {
    color: #fff;
    font-size: 16px;
}
.title-big h1,
.title-big h2,
.title-big h3,
.title-big h4 {
    font-size: 85px;
    line-height: 105px;
    font-weight: 400;
    color: #fff;
    margin-right: -290px;
    margin-left: 80px;
    position: relative;
    z-index: 2;
}
.title-big.no-margin h1,
.title-big.no-margin h2,
.title-big.no-margin h3,
.title-big.no-margin h4 {
    margin-right: 0px;
    margin-left: 0px;
}
.subtitle h1,
.subtitle h2,
.subtitle h3,
.subtitle h4 {
    font-size: 50px;
    color: var(--imn-blue);
    padding-bottom: 20px;
}
.subtitle h1 strong,
.subtitle h2 strong,
.subtitle h3 strong,
.subtitle h4 strong {
    font-weight: 400;
    color: var(--imn-red);
}
.number h1,
.number h2,
.number h3,
.number h4 {
    font-size: 95px;
    color: var(--imn-blue);
    padding-bottom: 10px;
}
.number h1 strong,
.number h2 strong,
.number h3 strong,
.number h4 strong {
    color: var(--imn-red);
    font-weight: 400;
}
.aperture h1,
.aperture h2,
.aperture h3,
.aperture h4 {
    font-size: 50px;
    color: var(--imn-blue);
    padding-top: 10px;
}
.aperture h1 strong,
.aperture h2 strong,
.aperture h3 strong,
.aperture h4 strong {
    color: var(--imn-red);
    font-weight: 400;
}
.logo .w-image-h img {
    border-radius: 0;
}
p.menu-tel {
    text-transform: uppercase;
}
.title-footer p {
    text-transform: uppercase;
    color: var(--imn-red);
    font-size: 20px;
    font-weight: 600;
    padding-bottom: 20px;
    padding-top: 10px;
}
.txt-footer-basso p {
    font-size: 15px;
    color: #fff;
}
.l-header.shadow_thin .l-subheader.at_middle, .l-header.shadow_thin .l-subheader.at_bottom {
    box-shadow: 0px 6px 14px rgb(24 24 24 / 15%)!important;
}
/*FORM*/
.form-row p {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}
.form-row p label {
	width: 49%;
}
@media (max-width: 767.98px) { 
	.btn-slider:after {
		right: -30px;
	}
	p.menu-tel {
		font-size: 14px;
	}
	.glass-background .wpb_column {
		max-width: 50%!important;
		width: 48%!important;
	}
	.glass-background {
	display: flex!important;
    flex-wrap: wrap;
		justify-content: center;
	}
	.glass-background .vc_column_container {
		padding: 20px;
	}
	.glass-background .vc_column_container {
	background: rgba(65, 115, 149, 0.50);	
	}
	h2.number {
		margin-bottom: 10px!important;
	}
	p.descrizione {
		line-height: 24px;
	}
	.title h1, .title h2, .title h3, .title h4 {
		font-size: 44px;
		line-height: 48px;
	}
	.tooth:before {
	height: 280px;
    width: 315px;
	bottom: -225px;
	}
	.tooth:after {
	height: 250px;
    width: 315px;
		    bottom: -213px;
    right: 105px;
	}
	.box-icone .vc_column_container {
		padding: 20px 30px;
	}
	.img-background:after {
		height: 260px;
        width: 310px;
        bottom: 0;
        right: -95px;
	}
	.promozione {
    padding: 40px 60px 40px 20px;
}
	.logo {
		margin: 0 auto;
	}
	.title-big h1, .title-big h2, .title-big h3, .title-big h4 {
    font-size: 50px;
    line-height: 54px;
	margin-left: 0;
		margin-right: 0px;
	}
	.title-clmn {
		justify-content: flex-end!important;
	}
}
@media (min-width: 768px) and (max-width: 1023.98px) {
	.glass-background .vc_column_container {
		    padding: 15px 20px;
	}
.glass-background .vc_column_container{
    background: rgba(65, 115, 149, 0.50);
}
	.title h1, .title h2, .title h3, .title h4 {
		    font-size: 50px;
		line-height: 56px;
	}
	.box-icone .vc_column_container {
		    padding: 15px 5px;
	}
	.box-icone h4.w-iconbox-title {
		font-size: 16px;
	}
	.box-icone .w-iconbox-icon {
		height: 60px!important;
		font-size: 50px!important;
	}
	.w-btn.us-btn-style_1, .w-btn.us-btn-style_3, .btn-slider {
		    padding-left: 8px;
    padding-right: 46px;
	}
	.tooth:before {
	right: -115px;
		left: unset;
	}
	.tooth:after {
  right: -110px;
	}
	.display-flex {
		display: flex!important;
		flex-direction: column;
	}
	.img-background:after {
		    height: 380px;
    width: 455px;
		right: -90px;
	}
	.title-footer p {
		font-size: 14px;
		padding-bottom: 10px;
	}
	.title-white h1, .title-white h2, .title-white h3, .title-white h4 {
		font-size: 50px;
	}
	.w-btn.us-btn-style_1:after, .btn-slider:after {
		right: 6px;
	}
	.orari-section,
	.tooth {
		overflow: hidden;
	}
	.title h1, .title h2, .title h3, .title h4 {
        font-size: 46px;
        line-height: 50px;
    }
	.title-big h1, .title-big h2, .title-big h3, .title-big h4 {
	font-size: 60px;
    line-height: 80px;
	}
	.title-big h1, .title-big h2, .title-big h3, .title-big h4 {
		font-size: 55px;
        line-height: 65px;
	}
	.fasi.g-cols.cols_4 {
		grid-template-columns: repeat(2, 1fr)!important;
		
	}
	.aperture h1, .aperture h2, .aperture h3, .aperture h4 {
		font-size: 26px;
	}
	.box-icone .w-iconbox-icon {
		font-size: 30px!important;
		height: 35px !important;
	}
	.box-icone.g-cols.cols_4 {
		grid-template-columns: repeat(2, 1fr)!important;
	}
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
		.glass-background .vc_column_container {
		background: rgba(65, 115, 149, 0.50);
	}
	h1.sr7-layer,
		h2.sr7-layer{
		padding-left: 30px!important;
	}
	.btn-slider.sr7-btn.sr7-layer {
		margin-left: 30px!important;
	}
		.tooth:before {
		right: -90px;
	}
	.tooth:after {
		right: -80px;
	}
	.box-icone .vc_column_container {
		padding: 20px 10px;
	}
	.img-background:after {
		height: 404px;
    width: 480px;
		right: -95px;
	}
	.title-big h1, .title-big h2, .title-big h3, .title-big h4 {
		font-size: 65px;
    line-height: 75px;
		margin-left: 0px;
	}
	.title h1, .title h2, .title h3, .title h4 {
		font-size: 45px;
		line-height: 50px;
	}
}
@media (min-width: 1280px) and (max-width: 1539.98px) {
		.title h1, .title h2, .title h3, .title h4 {
		font-size: 50px;
		line-height: 55px;
	}
	.title-big h1, .title-big h2, .title-big h3, .title-big h4 {
		font-size: 70px;
		line-height: 80px;
	}
		h1.sr7-layer,
		h2.sr7-layer{
		padding-left: 30px!important;
	}
		.btn-slider.sr7-btn.sr7-layer {
		margin-left: 30px!important;
	}
	.glass-background .vc_column_container {
    background: rgba(65, 115, 149, 0.50);
	}
			.tooth:before {
		right: -90px;
	}
	.tooth:after {
		right: -80px;
	}
	.box-icone .vc_column_container {
	    padding: 20px 15px;	
	}
}

