/* SRM Motori — stile delle pagine di contenuto native.
   Tutto è confinato dentro .srm-page: le pagine costruite in Elementor non vengono toccate.
   Palette presa dal tema: indigo #1c147f, blu #154fc1, azzurro #E7F6FF. */

.srm-page {
	--srm-indigo: #1c147f;
	--srm-blue:   #154fc1;
	--srm-soft:   #e7f6ff;
	--srm-line:   #d1dae5;
	--srm-ink:    #0f172a;
	--srm-mute:   #364151;

	color: var(--srm-ink);
	font-size: 17px;
	line-height: 1.75;
}

/* Il tema capitalizza ogni parola dei titoli: qui serve la frase normale. */
.page .entry-title,
.single .entry-title,
.srm-page h2,
.srm-page h3,
.srm-page h4 {
	text-transform: none !important;
}

.srm-page h2 {
	margin: 2.2em 0 .7em;
	padding-bottom: .35em;
	border-bottom: 2px solid var(--srm-soft);
	color: var(--srm-indigo);
	font-size: clamp(23px, 2.6vw, 30px);
	font-weight: 700;
	line-height: 1.25;
}

.srm-page h3 {
	margin: 1.9em 0 .5em;
	color: var(--srm-indigo);
	font-size: clamp(19px, 2vw, 22px);
	font-weight: 600;
	line-height: 1.3;
}

.srm-page p { margin: 0 0 1.15em; }

/* Paragrafo di apertura: è la risposta diretta, e si distingue da sola
   con corpo e interlinea, senza bisogno di decorazioni. */
.srm-page .srm-lead {
	margin-bottom: 1.6em;
	padding-bottom: 1.2em;
	border-bottom: 1px solid var(--srm-line);
	color: var(--srm-ink);
	font-size: 1.2em;
	font-weight: 400;
	line-height: 1.68;
}

/* Rimandi interni in fondo alle sezioni. */
.srm-page .srm-link { margin-bottom: 1.6em; font-weight: 600; }
.srm-page .srm-link a { color: var(--srm-blue); text-decoration: none; border-bottom: 1px solid currentColor; }
.srm-page .srm-link a::after { content: " →"; border: 0; }
.srm-page .srm-link a:hover { color: var(--srm-indigo); }

.srm-page a { color: var(--srm-blue); }
.srm-page a:hover { color: var(--srm-indigo); }

/* Elenchi puntati: quadratino ruotato invece del pallino. */
.srm-page ul.wp-block-list { margin: 0 0 1.5em; padding-left: 0; list-style: none; }
.srm-page ul.wp-block-list > li { position: relative; margin-bottom: .55em; padding-left: 1.7em; }
.srm-page ul.wp-block-list > li::before {
	content: "";
	position: absolute;
	left: .3em;
	top: .68em;
	width: 7px;
	height: 7px;
	background: var(--srm-blue);
	transform: rotate(45deg);
}

/* Elenchi numerati: i passaggi di una lavorazione. */
.srm-page ol.wp-block-list { margin: 0 0 1.6em; padding-left: 0; list-style: none; counter-reset: srm; }
.srm-page ol.wp-block-list > li { position: relative; margin-bottom: .8em; padding-left: 2.8em; counter-increment: srm; }
.srm-page ol.wp-block-list > li::before {
	content: counter(srm);
	position: absolute;
	left: 0;
	top: .1em;
	width: 1.9em;
	height: 1.9em;
	border-radius: 50%;
	background: var(--srm-indigo);
	color: #fff;
	font-size: .82em;
	font-weight: 700;
	line-height: 1.9em;
	text-align: center;
}

/* Tabelle di confronto. */
.srm-page .wp-block-table { margin: 1.6em 0 2em; overflow-x: auto; }
.srm-page .wp-block-table table { width: 100%; border-collapse: collapse; font-size: .96em; }
.srm-page .wp-block-table th {
	padding: .85em 1em;
	background: var(--srm-indigo);
	color: #fff;
	font-weight: 600;
	text-align: left;
}
.srm-page .wp-block-table td {
	padding: .8em 1em;
	border-bottom: 1px solid var(--srm-line);
	vertical-align: top;
}
.srm-page .wp-block-table tbody tr:nth-child(even) { background: #f7fafd; }
.srm-page .wp-block-table td:first-child { font-weight: 600; }

/* Recensioni e citazioni: sfondo appena accennato, nessun bordo. */
.srm-page .wp-block-quote {
	margin: 1.4em 0;
	padding: 1.2em 1.4em;
	border: 0;
	border-radius: 4px;
	background: #f7fafd;
}
.srm-page .wp-block-quote p { margin: 0; color: var(--srm-mute); }
.srm-page .wp-block-quote cite {
	display: block;
	margin-top: .6em;
	color: var(--srm-mute);
	font-size: .92em;
	font-style: normal;
}

/* Pulsanti: stesso trattamento del «Richiedi preventivo» in testata. */
.srm-page .wp-block-button__link {
	padding: .95em 2.1em;
	border-radius: 4px;
	background: var(--srm-indigo);
	color: #fff;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	font-size: .92em;
}
.srm-page .wp-block-button__link:hover { background: var(--srm-blue); color: #fff; }

/* Blocco finale di contatto. */
.srm-page .srm-cta {
	margin-top: 2.8em;
	padding: 2em 2.2em 1.8em;
	border: 1px solid #cfe6f5;
	border-radius: 6px;
	background: var(--srm-soft);
}
.srm-page .srm-cta h2 {
	margin-top: 0;
	padding-bottom: 0;
	border-bottom: 0;
}
.srm-page .srm-cta .wp-block-buttons { margin-top: 1.2em; }

@media (max-width: 782px) {
	.srm-page { font-size: 16px; }
	.srm-page .srm-cta { padding: 1.5em 1.3em 1.2em; }
}
