/* Titolo servizio */
#titolo-servizio {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 50px 20px;
}
.titolo-servizio-container {
	max-width: 1400px;
	margin: 0 auto;
	text-align: center;
}
.titolo-servizio-container h2 {
	padding-bottom: 20px;
}
.titolo-servizio-container span {
	font-size: 20px;
}
.titolo-servizio-container h3 {
	font-weight: 400 !Important;
	font-size: 20px !Important;
}

/* Icone servizi */
#servizi-icone {
	padding: 50px 20px;
	background: #f3f6fb;
}
.servizi-icone-container {
	max-width: 1400px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	text-align: center;
	font-weight: 700;
}
.icon-box img {
	margin-bottom: 20px;
	width: 60px;
	height: auto;
}
.icon-box h2 {
	font-size: 16px !Important;
}
@media screen and (max-width: 768px) {
	.servizi-icone-container {
		grid-template-columns: repeat(2, 1fr);
		gap: 0;
	}
 .servizi-icone-container .icon-box:nth-child(2), .servizi-icone-container .icon-box:nth-child(4) {
        border-left: 1px solid #eaeaea;
    }
	.servizi-icone-container .icon-box:nth-child(1), .servizi-icone-container .icon-box:nth-child(2) {
        border-bottom: 1px solid #eaeaea;
    }
	.icon-box {
		padding: 20px;
	}
}

/* Descrizione servizio */
#descrizione-servizio {
	padding: 80px 20px;
}
#descrizione-servizio.corsi {
	background: #f3f6fb;
}
.descrizione-servizio-container {
	max-width: 1400px;
	margin: 0 auto;
	text-align: justify;
}
@media screen and (min-width: 769px) {
	.descrizione-servizio-container {
		column-count: 2;
		column-gap: 50px;
  	column-rule: 1px solid #e7e7e7;
	}
}
.container-pulsante {
	text-align: center;
	padding-top: 50px;
}
@media screen and (max-width: 768px) {
	#descrizione-servizio .pulsante {
		padding: 10px 15px !Important;
	}
}

/* Griglia immagini */
#griglia-immagini {
	padding: 20px 20px 10px 20px;
}
#griglia-immagini .row {
    display: flex;
    margin-bottom: 10px; /* Spazio tra le righe */
}
.immagine {
    height: 400px;
    flex-grow: 1; /* Consente alle immagini di espandersi per riempire lo spazio disponibile */
    background-size: cover;
    background-position: center;
    margin-right: 10px; /* Spazio tra le immagini */
}
@media screen and (min-width: 769px) and (max-width: 992px) {
	.immagine {
		height: 200px;
	}
}
.immagine:last-child {
    margin-right: 0; 
}
.immagine.due-terzi {
    flex-basis: 40%; /* L'immagine cresce di questa percentuale */
}
/* Griglia immagini mobile */
@media screen and (max-width: 768px) {
    .row {
        flex-direction: column; 
    }
    .immagine {
        margin-bottom: 10px;
        margin-right: 0;
        flex-basis: auto !Important; /* Qui l'immagine prenderà la larghezza disponibile */
    }
    .immagine:last-child {
        margin-bottom: 0;
    }
}

/* Apparati, corsi e descrizioni */
#apparati, #agenzia-recupero {
	background: #f3f6fb;
}
.blocco-testo {
	padding: 50px 20px;
}
.contenitore-testo-sn p, .contenitore-testo-ds p {
	text-align: justify;
}
.blocco-immagine {
	background-size: cover; 
	background-position: center;
	min-height: 400px;
}
@media screen and (min-width: 993px) {
	.riga-apparati, .riga-corsi, .riga-agenzia {
		display: flex;
		align-items: center;  /* Allinea i contenuti al centro verticalmente */
		overflow: hidden;
		width: 100%;
	}
	.blocco-testo {
		padding: 0;
   		width: 50%; 
	}
	.contenitore-testo-sn {
		max-width: 650px;
		float: right;
		margin-right: 50px;
		padding-left: 20px;
	}
	.contenitore-testo-ds {
		max-width: 650px;
		float: left;
		margin-left: 50px;
		padding-right: 20px;
	}
	.blocco-immagine {
		width: 50%;
		min-height: 600px; 
	}
	.riga-agenzia .blocco-immagine {
		min-height: 1000px !Important;
	}
	.riga-corsi .blocco-testo, .riga-corsi .blocco-immagine {
        order: 0;  /* reimposto l'ordine a valori di default, quindi si baserà sulla posizione nel codice HTML */
    }
}
.contenitore-testo-sn h2, .contenitore-testo-ds h2 {
	padding-bottom: 20px;
}
@media screen and (max-width: 992px) {
	.riga-apparati, .riga-corsi, .riga-agenzia {
		display: flex;
		flex-direction: column;
	}
	.blocco-testo, .blocco-immagine {
		order: 2;  /* imposto l'ordine del testo dopo l'immagine */
	}
	.blocco-immagine {
		order: 1;  /* imposto l'ordine dell'immagine prima del testo */
	}
}

/* FAQ */
#sezione-faq {
	padding: 50px 20px;
}
.titolo-sezione-faq {
	text-align: center;
	padding-bottom: 40px;
}
.sezione-faq-container {
	max-width: 1400px;
	margin: auto;
	display: flex;
	gap: 20px;
}
.faq-recupero-container {
	max-width: 900px;
	margin: auto;
}
@media screen and (max-width: 768px) {
    .sezione-faq-container {
        flex-direction: column;
    }
}

/* Accordion */
.container-accordion {
	width: 100%;
	flex: 1 1 0px;
}
.video-yt {
	flex: 1 1 0px;
}
.accordion-item:first-child {
		border-top: 1px solid #ebebeb;
	}
.accordion-item {
	border-bottom: 1px solid #ebebeb;
	border-right: 0;
	border-top: 0;
	border-left: 0;
	border-radius: 0 !Important;
	background-color: transparent;
}
.accordion-header {
	cursor: pointer;
	padding-top: 15px;
	padding-bottom: 20px;
	background-color: transparent !Important;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.accordion-header h2 {
	font-size: 16px;
	font-weight: 700;
}
.accordion-panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease;
}
.accordion-content {
	padding-top: 15px;
	padding-bottom: 15px;
	background-color: transparent;
}
.accordion-content p {
	text-align: justify;
}
.toggle-icon {
	font-size: 35px;
	cursor: pointer;
	padding-right: 20px;
	padding-left: 20px;
}

/* Form contatti */
#form-contatti {
	background: #3675b6;
	padding: 80px 20px;
	position: relative;
}
.form-container {
	max-width: 900px;
	margin: 0 auto;
	z-index: 9;
	position: relative;
}
.form-container h2, .form-container p {
	text-align: center;
	color: #ffffff;
}
.form-container h2 {
	position: relative;
	margin-bottom: 10px;
}
#form-contatti div.wpforms-container-full .wpforms-form input[type=email], #form-contatti div.wpforms-container-full .wpforms-form input[type=tel], #form-contatti div.wpforms-container-full .wpforms-form input[type=text], #form-contatti div.wpforms-container-full .wpforms-form select, #form-contatti div.wpforms-container-full .wpforms-form textarea {
	background: transparent;
	border-top: 0;
	border-left: 0;
	border-right: 0;
	color: #ffffff;
}
#form-contatti .wpforms-container ::-webkit-input-placeholder { /* Chrome and Safari */
   color: #ffffff !important;
}
#form-contatti.wpforms-container :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color: #ffffff !important;
   opacity: 1 !important;
}
#form-contatti .wpforms-container ::-moz-placeholder { /* Mozilla Firefox 19+ */
   color: #ffffff !important;
   opacity: 1 !important;
}
#form-contatti .wpforms-container :-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: #ffffff !important;
}
#form-contatti .wpforms-container ::-ms-input-placeholder { /* Microsoft Edge */
   color: #ffffff !important;
}
#form-contatti .wpforms-container ::placeholder {
   color: #ffffff !important;
}
#form-contatti div.wpforms-container-full .wpforms-form .wpforms-field-label-inline, #form-contatti div.wpforms-container-full .wpforms-form .wpforms-field-description {
	color: #ffffff;
}
.wpforms-field-description a {
	color: #ffffff !Important;
	border-bottom: 1px solid #ffffff !Important;
}
div.wpforms-container-full .wpforms-form .wpforms-submit-container {
	text-align: center;
}
div.wpforms-container-full .wpforms-form button[type=submit] {
	border-radius: 50px;
	color: #ffffff !Important;
	background: #DB3800 !Important;
	border-color: #DB3800 !Important;
	padding: 15px 40px !Important;
}
img.decoration1 {
	position: absolute;
	top: 0;
	left: 0;
}
img.decoration2 {
	position: absolute;
	bottom: 0;
	right: 0;
}