/*
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-colore-principale: #ffc513;
	--imn-colore-secondario: #808080;
	--imn-colore-testo: #242424;
	--imn-colore-testo-alt: #ffffff;
	--imn-colore-sfondo-alt: #f2f4f7;
}

.pt-20 {
	padding-top: 20px;
}

.pt-50 {
	padding-top: 50px;
}

.pb-50 {
	padding-bottom: 50px;
}

.pt-70 {
	padding-top: 70px;
}

.pt-100 {
	padding-top: 100px;
}

.pb-100 {
	padding-bottom: 100px;
}


.testo-paragrafo {
	font-size: 17px;
}

.testo-centrato {
	text-align: center;
}

.testo-bianco :is(h1,h2,h3,h4,h5,h6,p),
.testo-bianco.titolo-h2 h2 {
	color: var(--imn-colore-testo-alt);
}

.testo-nero.titolo-h2 h2 {
	color: var(--imn-colore-testo);
}

.titolo-h2 h2 {
	color: var(--imn-colore-principale);
	font-weight: 600;
	font-size: 56px;
	text-transform: uppercase;
	padding-bottom: 50px;
}

.titolo-h3 h3 {
	font-weight: 600;
	font-size: 32px;
	padding-bottom: 30px;
}

.titolo-h4 h4 {
	font-size: 26px;
	font-weight: 600;
	padding-bottom: 25px;
}

.titolo-h5 h5 {
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	padding-bottom: 20px;
}

.titolo-h5 h5::before,
#slider h1::before {
	content: '';
	font-family: "fontawesome";
	font-weight: 300;
	font-size: 21px;
	text-align: center;
	line-height: 40px;
	width: 40px;
	height: 40px;
	background: var(--imn-colore-principale);
	color: var(--imn-colore-testo);
	display: block;
	border-radius: 50px;
	position: absolute;
	left: 0;
	top: -55px;
}

.titolo-h5.testo-centrato h5::before,
#slider h1::before {
	left: 50%;
	top: -55px;
	transform: translateX(-50%);
}

.titolo-h5.testo-nero h5::before {
	background: var(--imn-colore-testo-alt);
}

a.link-alt {
	color: var(--imn-colore-testo);
}

a.link-alt:hover {
	color: var(--imn-colore-testo-alt);
}

section.l-section.padding-sezione {
	padding-top: 120px;
	padding-bottom: 120px;
}

.fal.fa-phone {
	transform: scaleX(-1);
}

.colonna-testo-sx {
	padding-left: 100px;
}

.colonna-testo-dx {
	padding-right: 100px;
}

a.bottone-freccia.w-btn {
	margin-top: 30px;
	padding: 0;
}

a.bottone-freccia.w-btn i {
	width: 40px;
	height: 40px;
	background: var(--imn-colore-principale);
	display: inline-flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	border-radius: 50px;
	color: var(--imn-colore-testo);
	margin-right: 8px;
}

a.bottone-freccia.w-btn span {
	line-height: 40px;
}

::selection {
	background: var(--imn-colore-principale);
	color: var(--imn-colore-testo);
}

/* HEADER */

.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
	padding-top: 0 !important;
}

/* SEZIONE SLIDER */

#slider {
	padding-top: 0;
	padding-bottom: 0;
}

#slider h1::before {
	content: '\f5de';
}

/* SEZIONE INTRO */

#intro {
	padding-top: 60px;
	background: var(--imn-colore-sfondo-alt);
}

#intro .titolo-h5 h5::before {
	content: '\f05a';
}

/* SEZIONE INTRO-SERVIZI */

#intro-servizi .titolo-h5 h5::before {
	content: '\f7d9';
}

#intro-servizi .titolo-h2 h2 {
	padding-bottom: 80px;
}

#intro-servizi .riga-colonne-servizi .colonna-servizi {
	padding: 90px;
	height: 440px;
}

#intro-servizi .riga-colonne-servizi .colonna-servizi#colonna-servizi-gialla ::selection {
	background: var(--imn-colore-testo-alt);
}

/* SEZIONE OFFICINA */

#officina .colonna-testo-dx .titolo-h5 h5::before {
	content: '\f002';
}

#officina .colonna-testo-sx .titolo-h5 h5::before {
	content: '\f0ad';
}

/* SEZIONE SERVIZI */

#servizi .titolo-h5 h5::before {
	content: '\f60b';
}

#servizi .titolo-h2 h2 {
	padding-bottom: 80px;
}

#servizi .icona-servizi .w-iconbox-icon svg {
	width: 65px;
	filter: saturate(0) contrast(0);
	transition: 300ms;
}

#servizi #icona-ganci-traino .w-iconbox-icon svg {
	width: 75px;
}

#servizi .icona-servizi .w-iconbox-icon:hover svg,
#servizi .icona-servizi.icona-attiva .w-iconbox-icon svg {
	filter: none;
}

#servizi .icona-servizi .w-iconbox-icon {
	cursor: pointer;
}

#servizi .testo-servizi {
	display: none;
}

#servizi .testo-servizi.testo-attivo {
	display: block;
}

#servizi div.vc_column-inner:has(> .icona-servizi:not(#icona-manutenzione,#icona-auto-elettriche))::after {
	content: '';
    display: block;
    width: 80px;
    border-bottom: 2px solid var(--imn-colore-secondario);
    position: absolute;
    right: calc(-3rem / 2 - 40px);
    top: 50%;
    transform: translateY(-50%);
}

/* SEZIONE AUTO CORTESIA */

#auto-cortesia {
	padding-top: 120px;
	padding-bottom: 60px;
}

#auto-cortesia .titolo-h5 h5::before {
	content: '\f5e4';
}

#auto-cortesia .titolo-h2 h2 {
	padding-bottom: 20px;
}

/* SEZIONE PARTNER */

#partner {
	background: var(--imn-colore-sfondo-alt);
}

#partner .titolo-h5 h5::before {
	content: '\f084';
}

/* SEZIONE FORM */

#form {
	padding-bottom: 100px;
}

#form .titolo-h5 h5::before {
	content: '\f4b0';
}

#form .titolo-h2 h2 {
	padding-bottom: 80px;
}

#form #sez-contatti {
	padding: 0 70px 3rem 70px;
}

#form #sez-contatti .col-contatti {
	padding: 65px 50px;
	border: 1px solid var(--imn-colore-principale);
}

#form .titolo-h4 h4 {
	color: var(--imn-colore-principale);
}

#form #sez-form {
	border: 1px solid var(--imn-colore-principale);
	padding: 75px 100px;
	margin: 0 70px;
}

#form .campo_form_affiancato
{
	display: flex;
	justify-content: space-between;
}

#form .campo_form_affiancato label
{
	width: 49%;
}

#form .wpcf7-form-control-wrap {
	margin-top: 0;
}

#form span.wpcf7-list-item>label {
	padding: 0;
}

#form .check-policy input[type=checkbox]:focus {
	box-shadow: 0px 0px 0px 2px var(--imn-colore-principale);
}

#form .check-policy-text
{
	padding-left: 10px;
}

#form .btn-invio {
	margin-bottom: 0;
	position: relative;
}

#form .btn-invio input.wpcf7-submit {
	padding: 0 0 0 48px;
	border: none;
	font-weight: 600;
	line-height: 40px !important;
	font-size: 1rem;
}

#form .btn-invio input.wpcf7-submit:hover {
	background: none;
	border: none;
	color: var(--imn-colore-principale) !important;
}

#form .btn-invio label::before {
	content: '\f061';
	font-family: "fontawesome";
	font-weight: 300;
	font-size: 1rem;
	text-align: center;
	line-height: 40px;
	width: 40px;
	height: 40px;
	background: var(--imn-colore-principale);
	color: var(--imn-colore-testo);
	display: block;
	border-radius: 50px;
	margin-right: 8px;
	position: absolute;
	left: 0;
	top: 0;
	transform: translateY(0);
}

/* SEZIONE FOOTER */

#footer {
	background: var(--imn-colore-sfondo-alt);
}

#footer .footer-img {
	width: 80%;
}

#footer a.link-alt:hover {
	color: var(--imn-colore-principale);
}

#footer-alt {
	background: var(--imn-colore-principale);
	padding-top: 20px;
	padding-bottom: 20px;
}

#footer-alt ::selection {
	background: var(--imn-colore-testo-alt);
}

#footer-alt .testo-paragrafo p {
	font-size: 15px;
}

/* OTTIMIZZAZIONE */

@media screen and (max-width: 499.98px) {
	#servizi .riga-icone-servizi {
		row-gap: 1rem;
	}
	
	#servizi .icona-servizi .w-iconbox-icon {
		font-size: 2rem !important;
	}
	
	#servizi .icona-servizi .w-iconbox-icon svg {
		width: 47px;
	}
	
	#servizi #icona-ganci-traino .w-iconbox-icon svg {
		width: 57px;
	}
	
	#form #sez-contatti {
		padding: 0 0 3rem 0;
	}
	
	#form #sez-contatti .col-contatti {
		padding: 37px 27px;
	}
	
	#form #sez-form {
    	margin: 0;
	}
}

@media screen and (max-width: 600px) {
    p {
        margin-bottom: 1.5rem !important;
    }
}

@media screen and (max-width: 767.98px) {
	.titolo-h2 h2 {
		font-size: 42px;
		text-align: center;
	}
	
	.titolo-h4 h4 {
		text-align: center;
	}
	
	.titolo-h5 h5 {
		text-align: center;
	}
	
	.testo-paragrafo p {
		text-align: center;
	}
	
	.has_scroll_effects.has_translate_y {
		transform: none;
	}
	
	#intro-servizi .riga-colonne-servizi .colonna-servizi {
		height: 320px;
		padding: 16px;
	}
	
	#officina .colonne-officina.inverti > div:last-of-type {
		order: -1;
	}
	
	.colonna-testo-sx {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}

	.colonna-testo-dx {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
	
	#officina .colonna-testo-dx .titolo-h5 h5::before,
	#officina .colonna-testo-sx .titolo-h5 h5::before {
		left: 50%;
    	transform: translateX(-50%);
	}
	
	#servizi .riga-icone-servizi {
		grid-template-columns: repeat(3, 1fr);
		column-gap: 0;
	}
	
	#servizi .riga-icone-servizi > div:nth-of-type(4),
	#servizi .riga-icone-servizi > div:nth-of-type(5) {
		left: 50%;
	}
	
	#servizi div.vc_column-inner:has(> .icona-servizi:not(#icona-manutenzione,#icona-auto-elettriche))::after {
    	display: none;
	}
	
	#servizi .testo-servizi {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	
	#servizi .testo-servizi .titolo-h3 h3 {
		font-size: 27px;
	}
	
	#auto-cortesia .titolo-h5 h5::before {
		left: 50%;
    	transform: translateX(-50%);
	}
	
	#auto-cortesia .w-btn-wrapper {
		text-align: center;
	}
	
	#form #sez-form {
    	padding: 35px 30px;
	}
	
	#form .campo_form_affiancato {
    	display: block;
	}
	
	#footer .footer-img {
    	width: 65%;
    	margin: auto;
    	padding-bottom: 50px;
	}
}

@media (min-width: 768px) and (max-width: 991.98px){
	.titolo-h2 h2 {
		font-size: 50px;
		text-align: center;
	}
	
	.titolo-h4 h4 {
		text-align: center;
	}
	
	.titolo-h5 h5 {
		text-align: center;
	}
	
	.testo-paragrafo p {
		text-align: center;
	}
	
	.has_scroll_effects.has_translate_y {
		transform: none;
	}
	
	#intro-servizi .riga-colonne-servizi {
		grid-template-columns: 100%;
	}
	
	#intro-servizi .riga-colonne-servizi .colonna-servizi {
		height: 370px;
		padding: 70px;
	}
	
	#officina .colonne-officina.inverti > div:last-of-type {
		order: -1;
	}
	
	#officina .colonne-officina {
		grid-template-columns: 100%;
	}
	
	.colonna-testo-sx {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}

	.colonna-testo-dx {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
	
	#officina .colonna-testo-dx .titolo-h5 h5::before,
	#officina .colonna-testo-sx .titolo-h5 h5::before {
		left: 50%;
    	transform: translateX(-50%);
	}
	
	#servizi .riga-icone-servizi {
		gap: 0;
	}
	
	#servizi .icona-servizi .w-iconbox-icon {
		font-size: 2rem !important;
	}
	
	#servizi .icona-servizi .w-iconbox-icon svg {
		width: 47px;
	}
	
	#servizi #icona-ganci-traino .w-iconbox-icon svg {
		width: 57px;
	}
	
	#servizi div.vc_column-inner:has(> .icona-servizi:not(#icona-manutenzione,#icona-auto-elettriche))::after {
    	display: none;
	}
	
	#servizi .testo-servizi {
		padding-top: 70px;
		padding-bottom: 70px;
	}
	
	#servizi .testo-servizi .titolo-h3 h3 {
		font-size: 27px;
	}
	
	#auto-cortesia #riga-auto-cortesia {
		grid-template-columns: 100%;
	}
	
	#auto-cortesia .titolo-h5 h5::before {
		left: 50%;
    	transform: translateX(-50%);
	}
	
	#auto-cortesia .w-btn-wrapper {
		text-align: center;
	}
	
	#form #sez-contatti {
		grid-template-columns: 100%;
	}
	
	#form #sez-contatti .col-contatti {
    	padding: 30px 50px;
	}
	
	#footer #riga-footer {
		grid-template-columns: 100%;
	}
	
	#footer .footer-img {
    	width: 52%;
    	margin: auto;
    	padding-bottom: 50px;
	}
}

@media (min-width: 992px) and (max-width: 1139.98px){
	#intro-servizi .riga-colonne-servizi .colonna-servizi {
		padding: 20px;
	}
	
	.colonna-testo-sx {
		padding-left: 60px;
	}

	.colonna-testo-dx {
		padding-right: 60px;
	}
	
	#servizi div.vc_column-inner:has(> .icona-servizi:not(#icona-manutenzione,#icona-auto-elettriche))::after {display: block;
    	width: 50px;
    	right: calc(-3rem / 2 - 25px);
	}
	
	#auto-cortesia #riga-auto-cortesia {
		grid-template-columns: 3fr 2fr;
	}
	
	#form #sez-contatti {
    	padding: 0 30px 3rem 30px;
	}
	
	#form #sez-contatti .col-contatti {
    	padding: 35px 27px;
	}
	
	#form #sez-form {
    	margin: 0 30px;
	}
}

@media (min-width: 1140px) and (max-width: 1279.98px){
	#intro-servizi .riga-colonne-servizi .colonna-servizi {
		padding: 65px;
	}
	
	.colonna-testo-sx {
		padding-left: 70px;
	}

	.colonna-testo-dx {
		padding-right: 70px;
	}
	
	#servizi div.vc_column-inner:has(> .icona-servizi:not(#icona-manutenzione,#icona-auto-elettriche))::after {display: block;
    	width: 50px;
    	right: calc(-3rem / 2 - 25px);
	}
	
	#auto-cortesia #riga-auto-cortesia {
		grid-template-columns: 3fr 2fr;
	}
}

@media (min-width: 1280px) and (max-width: 1339.98px){
	#intro-servizi .riga-colonne-servizi .colonna-servizi {
		padding: 80px;
	}
	
	#auto-cortesia #riga-auto-cortesia {
		grid-template-columns: 3fr 2fr;
	}
}