/* Newsletter di ARX News: colori e caratteri di arxdome.com (caratteri ospitati qui, nessun servizio esterno) */
@font-face { font-family: 'Jost'; font-weight: 400; font-display: swap; src: url(/fonts/jost-latin-400-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Jost'; font-weight: 400; font-display: swap; src: url(/fonts/jost-latin-ext-400-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Jost'; font-weight: 500; font-display: swap; src: url(/fonts/jost-latin-500-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Jost'; font-weight: 500; font-display: swap; src: url(/fonts/jost-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Jost'; font-weight: 600; font-display: swap; src: url(/fonts/jost-latin-600-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Jost'; font-weight: 600; font-display: swap; src: url(/fonts/jost-latin-ext-600-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Jost'; font-weight: 700; font-display: swap; src: url(/fonts/jost-latin-700-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Jost'; font-weight: 700; font-display: swap; src: url(/fonts/jost-latin-ext-700-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Space Grotesk'; font-weight: 500; font-display: swap; src: url(/fonts/space-grotesk-latin-500-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Space Grotesk'; font-weight: 500; font-display: swap; src: url(/fonts/space-grotesk-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Space Grotesk'; font-weight: 700; font-display: swap; src: url(/fonts/space-grotesk-latin-700-normal.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Space Grotesk'; font-weight: 700; font-display: swap; src: url(/fonts/space-grotesk-latin-ext-700-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

:root {
	--blu: #0649cd;
	--blu-scuro: #0539a3;
	--logo-verde: #65bda1;
	--logo-blu: #26519f;
	--testo: #3f4652;
	--tenue: #6b7280;
	--sfondo: #f9f9f9;
	--bordo: #e3e6eb;
	--rosso: #b42318;
	--verde-ok: #0f7a55;
	color-scheme: light;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	background: var(--sfondo);
	color: var(--testo);
	font: 400 17px/1.6 'Jost', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
}
a { color: var(--blu); }
a:hover { color: var(--blu-scuro); }

.testa {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.1rem max(16px, calc((100vw - 980px) / 2));
	background: #fff;
	border-bottom: 1px solid #eee;
}
.logo img { display: block; width: 180px; height: auto; }
.lingue { display: flex; gap: 0.15rem; }
.lingue a {
	padding: 0.3rem 0.55rem;
	font-weight: 600;
	font-size: 0.85rem;
	letter-spacing: 0.04em;
	color: var(--tenue);
	text-decoration: none;
}
.lingue a[aria-current] { color: #fff; background: var(--blu); }

.contenuto { flex: 1; width: 100%; max-width: 680px; margin: 0 auto; padding: 2.5rem 16px 3rem; }
.scheda { background: #fff; border: 1px solid var(--bordo); padding: clamp(1.4rem, 4vw, 2.5rem); }
.scheda + .scheda { margin-top: 1.25rem; }
.sopra { margin: 0 0 0.6rem; font: 500 0.95rem/1.2 'Space Grotesk', system-ui, sans-serif; letter-spacing: 0.06em; text-transform: uppercase; color: var(--tenue); }
.sopra .arx { color: var(--logo-verde); font-weight: 700; }
.sopra .news { color: var(--logo-blu); }
h1 { margin: 0 0 0.75rem; font: 700 clamp(1.6rem, 4.5vw, 2.15rem)/1.2 'Space Grotesk', system-ui, sans-serif; color: var(--logo-blu); }
h2 { margin: 1.6rem 0 0.4rem; font: 700 1.2rem/1.3 'Space Grotesk', system-ui, sans-serif; color: var(--logo-verde); }
.scheda > h2:first-child { margin-top: 0; }
.lead { margin: 0 0 1.6rem; font-size: 1.05rem; }
/* Colori del logo nei titoli: ARX verde, il resto nel blu del titolo */
h1 .verde, h1 .arxdome b { color: var(--logo-verde); }
/* ARXDOME con i colori del logo nel testo introduttivo */
.lead .arxdome { color: var(--logo-blu); }
.lead .arxdome b { color: var(--logo-verde); font-weight: 700; }
.scheda--testo p { margin: 0 0 0.6rem; }
.scheda--testo ul { margin: 0 0 0.6rem; padding-left: 1.3rem; }
.scheda--testo li { margin: 0.15rem 0; }
.scheda--testo .versione { margin-top: 1.6rem; font-size: 0.8rem; color: var(--tenue); }

form { display: grid; gap: 1.15rem; }
.campo { display: grid; gap: 0.35rem; }
.campo > span, legend { font-weight: 600; color: var(--logo-verde); }
.obbligatorio { color: var(--rosso); font-weight: 700; text-decoration: none; cursor: help; }
.campo > span small { font-weight: 400; font-size: 0.85rem; color: var(--tenue); }
.coppia { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
fieldset.chi { gap: 1.15rem; }
/* Iscrizione su due colonne: a sinistra i dati, a destra le newsletter (una colonna sotto gli 860 px) */
body[data-pagina=iscrizione] .contenuto { max-width: 1060px; }
body[data-pagina=iscrizione] .testa { padding-inline: max(16px, calc((100vw - 1028px) / 2)); }
.due-colonne { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem 2.75rem; align-items: start; }
.colonna { display: grid; gap: 1.15rem; }
@media (max-width: 860px) { .due-colonne { grid-template-columns: 1fr; } }
/* Pulsanti «Iscriviti» e «Mandami il link» a destra (sul telefono a tutta larghezza, come gli altri) */
#modulo-iscrizione > .bottone, #modulo-accesso > .bottone { justify-self: end; }
@media (max-width: 520px) { #modulo-iscrizione > .bottone, #modulo-accesso > .bottone { justify-self: stretch; } }
input[type=email], input[type=text], select {
	width: 100%;
	padding: 0.75rem 0.85rem;
	font: inherit;
	color: inherit;
	background: #fff;
	border: 1px solid #c9ced6;
	border-radius: 0;
}
input[type=email]:focus, input[type=text]:focus, select:focus { outline: 2px solid var(--blu); outline-offset: -1px; border-color: var(--blu); }
fieldset { margin: 0; padding: 0; border: 0; display: grid; gap: 0.6rem; }
legend { padding: 0; margin-bottom: 0.6rem; }
.scelta {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: start;
	padding: 0.85rem 1rem;
	border: 1px solid var(--bordo);
	cursor: pointer;
	transition: border-color 0.15s, background-color 0.15s;
}
.scelta:hover { border-color: #b8c4dc; }
.scelta:has(input:checked) { border-color: var(--blu); background: #f3f7ff; }
.scelta input, .consenso input { width: 1.15rem; height: 1.15rem; margin: 0.2rem 0 0; accent-color: var(--blu); }
.scelta .nome { display: block; color: var(--logo-blu); font-weight: 600; }
.scelta small { display: block; font-size: 0.92rem; line-height: 1.45; color: var(--tenue); }
.consenso { display: grid; grid-template-columns: auto 1fr; gap: 0.75rem; align-items: start; font-size: 0.95rem; cursor: pointer; }

.bottone {
	justify-self: start;
	padding: 0.85rem 1.6rem;
	font: 600 1rem/1.2 'Jost', system-ui, sans-serif;
	letter-spacing: 0.03em;
	color: #fff;
	background: var(--blu);
	border: 1px solid var(--blu);
	border-radius: 0;
	cursor: pointer;
	text-decoration: none;
	display: inline-block;
}
.bottone:hover { background: var(--blu-scuro); border-color: var(--blu-scuro); color: #fff; }
.bottone:disabled { opacity: 0.6; cursor: wait; }
.bottone--secondario { color: var(--blu); background: #fff; }
.bottone--secondario:hover { color: #fff; }
.bottone--pericolo { color: var(--rosso); background: #fff; border-color: #e7b4ae; }
.bottone--pericolo:hover { color: #fff; background: var(--rosso); border-color: var(--rosso); }
#modulo-preferenze .bottone--secondario { justify-self: start; margin-top: -0.4rem; }
.azioni { display: flex; flex-wrap: wrap; gap: 0.75rem; margin: 1rem 0 0; }

.esito:empty { display: none; }
.esito { margin: 0; padding: 0.7rem 0.9rem; border-left: 4px solid var(--logo-verde); background: #effaf6; color: var(--verde-ok); font-weight: 500; }
.esito.errore { border-color: var(--rosso); background: #fdf1f0; color: var(--rosso); }
.avviso { margin: 0; padding: 0.7rem 0.9rem; border-left: 4px solid #d79a1c; background: #fdf7ea; }
.sotto { margin: 1.4rem 0 0; font-size: 0.95rem; color: var(--tenue); }
/* Informativa breve sotto il pulsante: piccola ma leggibile, sempre visibile */
.breve { margin: 0; font-size: 0.85rem; line-height: 1.55; color: var(--tenue); }
.sotto.informativa { text-align: center; margin-top: 1rem; }
.nascosto { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.piede { padding: 1.4rem 16px 2rem; text-align: center; font-size: 0.85rem; color: var(--tenue); }
.piede p { margin: 0.2rem 0; }
.piede a { color: var(--tenue); }

@media (max-width: 520px) {
	body { font-size: 16px; }
	.coppia { grid-template-columns: 1fr; }
	.logo img { width: 140px; }
	.contenuto { padding-top: 1.25rem; }
	.bottone { justify-self: stretch; text-align: center; }
}
