/**
 * MP Cookie Consent - override personalizzati (separati dalla libreria, così
 * restano dopo eventuali aggiornamenti di cookieconsent.css).
 *
 * UNITÀ: tutto in px. La libreria fissa il testo del banner a 16px su #cc-main,
 * ma usa "rem" per larghezza e padding del banner: su temi con font-size radice
 * diverso da 16px il box si gonfia o si restringe (visto su radioicaro). Con i
 * px il banner è identico su qualsiasi sito/tema.
 *
 * IMPORTANTE: le dimensioni maggiorate sono limitate al layout "box" (.cm--box).
 * I layout "cloud" e "bar" hanno larghezza e disposizione pulsanti diverse,
 * quindi restano con lo stile nativo della libreria per non romperne il rendering.
 */

/* --- Neutralizza i "rem" della libreria (valori default espressi in px) --- */
#cc-main .cm {
	max-width: 384px;        /* libreria: 24rem */
}
#cc-main .cm__btns,
#cc-main .cm__links {
	padding: 16px 21px;      /* libreria: 1rem 1.3rem */
}
#cc-main .cm__desc,
#cc-main .cm__title {
	padding: 0 21px;         /* libreria: 0 1.3rem */
}
#cc-main .cm__texts {
	padding: 16px 0 0;       /* libreria: 1rem 0 0 */
}
#cc-main .cm__btn--close + .cm__texts .cm__title {
	padding-right: 48px;     /* libreria: 3rem (spazio per la X) */
}
@media screen and (max-width: 640px) {
	/* la libreria qui usa 1.1rem !important: serve !important per vincere */
	#cc-main .cm__btns,
	#cc-main .cm__desc,
	#cc-main .cm__links,
	#cc-main .cm__title {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}
}

/* --- Banner di consenso (solo box, desktop) --- */
#cc-main .cm--box {
	max-width: 480px;        /* default libreria: 384px */
}
#cc-main .cm--box .cm__desc {
	font-size: 14px;
	line-height: 1.55;
}

/* --- Titolo --- */
#cc-main .cm--box .cm__title {
	font-size: 1.15em;
}
/* Logo piccolo in TUTTI i layout (box, cloud, bar) */
#cc-main .mpcc-logo {
	display: block;
	max-width: 80px;         /* prima: 120px */
	height: auto;
}

/* --- Padding interno più ampio (solo box) --- */
#cc-main .cm--box .cm__body {
	padding-top: 18px;       /* default: .5em */
	padding-bottom: 21px;    /* default: .9em */
}
#cc-main .cm--box .cm__texts {
	padding-top: 21px;
}
/* Stesso padding orizzontale per testo e pulsanti → tutto allineato.
   (in v3 box non esiste .cm__footer: i pulsanti stanno in .cm__btns) */
#cc-main .cm--box .cm__title,
#cc-main .cm--box .cm__desc,
#cc-main .cm--box .cm__btns {
	padding-left: 32px;      /* default: title/desc/btns 21px */
	padding-right: 32px;
}
/* La X occupa 42px a destra (34px + 8px di stacco): il titolo non deve finirci sotto */
#cc-main .cm--box .cm__btn--close + .cm__texts .cm__title {
	padding-right: 48px;
}

/* --- X di chiusura del banner: cerchio come nelle modal ---
   La libreria la ancora 42×42 all'angolo del box (arrotondando solo l'angolo
   in basso a sinistra): la si stacca dall'angolo e la si rende un cerchio,
   mantenendo lo sfondo/hover nativi dei pulsanti. */
#cc-main .cm__btn.cm__btn--close {
	top: 8px;
	right: 8px;
	box-sizing: border-box;
	width: 34px;
	height: 34px;
	/* .cm__btn ha min-height:42px: senza questo la X resta 34×42 (ellisse) */
	min-width: 34px;
	min-height: 34px;
	border: none;
	border-radius: 50%;
	box-shadow: none;
}
/* Stessa cosa per la X del pannello preferenze (Gestione Cookie):
   la libreria la fa 40×40 con gli angoli di --cc-btn-border-radius. */
#cc-main .pm__close-btn {
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	min-width: 40px;
	min-height: 40px;
	border: none;
	border-radius: 50%;
}

/* --- Pulsanti meno larghi (solo cloud) ---
   .cm__btn-group è una grid con grid-auto-flow:column: con 3 pulsanti e
   min-width:19em ciascuno servirebbero ~57em in orizzontale, da cui
   l'overflow fuori dal box. Si forza lo stack verticale (1 colonna) e si
   toglie il min-width così i pulsanti restano dentro .cm__btns. */
#cc-main .cm--cloud .cm__btn-group {
	grid-auto-flow: row;
}
#cc-main .cm--cloud .cm__btn {
	min-width: 0;
	width: 100%;
}
#cc-main .cm--cloud .cm__btns {
	max-width: 240px;        /* default libreria: 23em, ridotto in proporzione */
}

/* --- Contenuto delle informative ---
   Stampato da [mpcc_policy] nelle pagine "Gestione Cookie" / "Privacy Policy".
   Solo tipografia e tabelle: colori e sfondo restano quelli del tema. */
.mpcc-policy-content h2 {
	font-size: 22px;
	line-height: 1.3;
	margin: 0 0 12px;
}
.mpcc-policy-content h3 {
	font-size: 17px;
	line-height: 1.35;
	margin: 24px 0 8px;
}
.mpcc-policy-content h4 {
	font-size: 15px;
	margin: 18px 0 6px;
}
.mpcc-policy-content p,
.mpcc-policy-content li {
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 10px;
}
.mpcc-policy-content ul {
	padding-left: 22px;
	margin: 0 0 10px;
}
.mpcc-table-wrap {
	overflow-x: auto;
	margin: 0 0 14px;
}
.mpcc-cookie-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}
.mpcc-cookie-table th,
.mpcc-cookie-table td {
	border: 1px solid #dfe4e8;
	padding: 6px 10px;
	text-align: left;
	vertical-align: top;
}
.mpcc-cookie-table th {
	background: #f4f6f8;
}

/* --- Embed YouTube bloccati fino al consenso (class-mpcc-embeds.php) --- */
.mpcc-embed {
	position: relative;
	display: block;
	width: fit-content;
	max-width: 100%;
}
.mpcc-embed > iframe {
	display: block;
	max-width: 100%;
}
/* embed responsive di WordPress: l'iframe è assoluto dentro il wrapper con
   l'aspect ratio, quindi anche il nostro contenitore deve riempirlo */
.wp-has-aspect-ratio .mpcc-embed,
.video-embed > .mpcc-embed {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
}
.mpcc-embed__notice {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 20px;
	overflow: auto;
	background: #1f2328;
	color: #fff;
	text-align: center;
	font-size: 14px;
	line-height: 1.5;
}
.mpcc-embed--loaded .mpcc-embed__notice {
	display: none;
}
.mpcc-embed__notice p {
	margin: 0;
	max-width: 520px;
	color: inherit;
	font-size: 14px;         /* i temi spesso fissano la dimensione dei <p> */
	line-height: 1.5;
}
/* centratura verticale con i margini auto invece di justify-content: center,
   che con overflow taglierebbe la parte alta del testo sui box piccoli */
.mpcc-embed__notice > :first-child {
	margin-top: auto;
}
.mpcc-embed__notice > :last-child {
	margin-bottom: auto;
}
.mpcc-embed__notice .mpcc-embed__title {
	font-size: 16px;
	font-weight: 700;
}
.mpcc-embed__notice a {
	color: inherit;
	text-decoration: underline;
}
.mpcc-embed__btn {
	padding: 10px 20px;
	border: 0;
	border-radius: 4px;
	background: #fff;
	color: #1f2328;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}
@media (max-width: 600px) {
	.mpcc-embed__notice {
		gap: 6px;
		padding: 12px;
	}
	.mpcc-embed__notice p,
	.mpcc-embed__notice .mpcc-embed__title,
	.mpcc-embed__notice .mpcc-embed__link {
		font-size: 12px;
	}
	.mpcc-embed__btn {
		padding: 6px 14px;
		font-size: 13px;
	}
}
.mpcc-embed__link {
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	font-size: 13px;
	text-decoration: underline;
	cursor: pointer;
}
