/* X-PURA Nuovo sito — base della nuova home.
   Annulla gli stili generali di Avada dentro .xpv2-home, prima degli stili della bozza (xpv2-home.css). */

/* Avada dà a #main 30 px di margine interno con un selettore molto specifico (html:not(...) #main). */
html body #main.xpv2-home { padding: 0; margin: 0; }

.xpv2-home :is(h1, h2, h3, h4, p, span, a, li, summary, strong, small) {
	color: inherit;
	text-transform: none;
	text-shadow: none;
}
.xpv2-home :is(h1, h2, h3, h4) {
	margin: 0;
	padding: 0;
	font-weight: 800;
}
.xpv2-home p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
}
.xpv2-home a:hover { color: inherit; }
/* Avada aggiunge ::before/::after a ogni .container (clearfix): nelle griglie occuperebbero una cella. */
.xpv2-home .container::before,
.xpv2-home .container::after { content: none; display: none; }
/* I nomi dei prodotti non si spezzano mai sul trattino a fine riga. */
.xpv2-home .marchio { white-space: nowrap; }
.xpv2-home img { height: auto; }
.xpv2-home details > summary { list-style: none; }
.xpv2-home details > summary::-webkit-details-marker { display: none; }
/* Nelle FAQ lo stile "icona +" della bozza vale per ogni span: il testo della domanda ne resta fuori. */
.xpv2-home .faq-list summary .faq-q,
.xpv2-home .faq-list summary .faq-q span,
.xpv2-home .faq-list details[open] summary .faq-q,
.xpv2-home .faq-list details[open] summary .faq-q span {
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	transform: none;
	transition: none;
}

/* Fascia "prove di laboratorio": aggiunta dopo la bozza, quindi non è in xpv2-home.css. */
.xpv2-home .cert-band {
	padding: 80px 0;
	background: linear-gradient(120deg, var(--navy) 0%, #0d3553 100%);
	color: #fff;
}
.xpv2-home .cert-band .container {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 64px;
	align-items: center;
}
.xpv2-home .cert-band .eyebrow { color: var(--bright); }
.xpv2-home .cert-band h2 { font-size: clamp(30px, 3.4vw, 44px); font-weight: 800; }
.xpv2-home .cert-band p {
	max-width: 560px;
	margin-top: 20px;
	color: #c9d6df;
	font-size: 16px;
	line-height: 1.65;
}
.xpv2-home .cert-band p.cert-note {
	margin-top: 22px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
}
/* Tabella dei risultati: Avada dà ai table bordi e sfondi propri, qui tutto è dichiarato. */
.xpv2-home .cert-table {
	width: 100%;
	margin: 0;
	border: 1px solid rgba(255, 255, 255, .14);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--radius);
	background: rgba(255, 255, 255, .04);
	overflow: hidden;
}
.xpv2-home .cert-table th,
.xpv2-home .cert-table td {
	padding: 15px 24px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	background: transparent;
	text-align: left;
	vertical-align: middle;
}
.xpv2-home .cert-table tr:last-child td { border-bottom: 0; }
.xpv2-home .cert-table th {
	color: var(--bright);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.xpv2-home .cert-table td { color: #dfe8ee; font-size: 15px; font-style: italic; }
.xpv2-home .cert-table th:last-child,
.xpv2-home .cert-table td:last-child { width: 1%; text-align: right; white-space: nowrap; }
.xpv2-home .cert-table td:last-child {
	color: #fff;
	font-family: var(--display);
	font-size: 22px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: -.02em;
}

/* Riga del kit nella scheda "X-PURA + X-TANK": aggiunta dopo la bozza. */
.xpv2-home .configuration-card p.kit-offer {
	margin-top: 14px;
	padding: 10px 14px;
	border-radius: 8px;
	background: var(--blue-wash);
	font-size: 14px;
	line-height: 1.5;
}
.xpv2-home .kit-offer a { color: var(--ink); font-weight: 650; text-decoration: none; }
.xpv2-home .kit-offer a:hover { color: var(--blue); }
.xpv2-home .kit-offer strong { color: var(--blue); }
.xpv2-home .kit-offer__nota { display: block; color: var(--muted); font-size: 13px; }
@media (max-width: 900px) {
	.xpv2-home .cert-band { padding: 64px 0; }
	.xpv2-home .cert-band .container { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 600px) {
	.xpv2-home .cert-band { padding: 55px 0; }
	.xpv2-home .cert-band h2 { font-size: 32px; }
	.xpv2-home .cert-band p { font-size: 15px; }
	.xpv2-home .cert-table th,
	.xpv2-home .cert-table td { padding: 13px 16px; }
	.xpv2-home .cert-table td { font-size: 14px; }
	.xpv2-home .cert-table td:last-child { font-size: 19px; }
}

/* Video: si apre solo su richiesta, in una finestra sopra la pagina. */
.xpv2 .xpv2-video {
	width: min(960px, calc(100% - 32px));
	padding: 0;
	border: 0;
	border-radius: 16px;
	background: #000;
	overflow: visible;
}
.xpv2 .xpv2-video::backdrop { background: rgba(7, 30, 50, .82); }
.xpv2 .xpv2-video__box { position: relative; }
.xpv2 .xpv2-video__frame { position: relative; aspect-ratio: 16 / 9; }
.xpv2 .xpv2-video__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 16px; }
.xpv2-video__frame video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 16px; background: #000; }
.xpv2 .xpv2-video__chiudi {
	position: absolute;
	top: -48px;
	right: 0;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: #071e32;
	font: 600 24px/40px var(--xpv2-body);
	cursor: pointer;
}
