/**
 * ANMIC Bergamo — grafica "editoriale".
 * Impianto da giornale civico: titoli con grazie (Source Serif 4), testo in Public Sans,
 * filetti d'inchiostro, blocchi di colore pieni (blu ANMIC, giallo), nessuna ombra o sfumatura.
 * I selettori dei contenuti condivisi sono preceduti da "html body" per prevalere sugli
 * stili della grafica classica.
 */

:root {
	--ed-blu: #0068b9;
	--ed-blu-2: #0a4f8a;
	--ed-ink: #14181f;
	--ed-carta: #f6f3ec;
	--ed-carta-2: #ece7dc;
	--ed-grigino: #eef0f3;
	--ed-notte: #0b2240;
	--ed-giallo: #f5b800;
	--ed-grigio: #4f5660;
	--ed-serif: "Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif; /* titoli: stesso carattere del testo, il più leggibile */
	--ed-sans: "Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--ed-rule: 2px solid var(--ed-ink);
	--ed-hair: 1px solid rgba(20, 24, 31, .22);
}

/* Base ---------------------------------------------------------------------- */
html { font-size: 100%; }
html[data-text-size="1"] { font-size: 112.5%; }
html[data-text-size="2"] { font-size: 125%; }
html[data-text-size="3"] { font-size: 140%; }
html body { font-family: var(--ed-sans); color: var(--ed-ink); background: #fff; font-feature-settings: "kern", "liga"; }
html body :where(h1, h2, h3, h4, h5, h6) { font-family: var(--ed-serif); color: var(--ed-ink); font-weight: 600; letter-spacing: -.01em; text-transform: none; }
html body :where(h1, h2, h3, h4) em, .ed-brand__name em, .ed-footer__name em, .ed-mag__title em { font-style: italic; font-weight: 500; color: var(--ed-blu); }
html body a { color: var(--ed-blu-2); text-decoration-thickness: 1px; text-underline-offset: .18em; }
html body a:hover { color: var(--ed-ink); text-decoration-thickness: 2px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
html body :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--ed-giallo) !important; outline-offset: 2px; box-shadow: 0 0 0 6px var(--ed-ink) !important; border-radius: 0 !important;
}
.skip-link.screen-reader-text:focus { z-index: 100000; padding: 1rem 1.5rem; background: var(--ed-giallo); color: var(--ed-ink); font-weight: 700; clip: auto !important; clip-path: none; }
.screen-reader-text:not(:focus) { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
::selection { background: var(--ed-giallo); color: var(--ed-ink); }
.wp-site-blocks > * + * { margin-block-start: 0 !important; }

/* Elementi tipografici ricorrenti ----------------------------------------- */
.ed-kicker, html body .ed-kicker a {
	margin: 0 0 1.25rem !important; padding: 0; background: none !important; border-radius: 0 !important;
	color: var(--ed-blu-2) !important; font-family: var(--ed-sans); font-size: .82rem !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
}
.ed-kicker::before { content: ""; display: inline-block; width: 2.25rem; height: 3px; margin-right: .75rem; background: currentColor; vertical-align: middle; }
.ed-kicker--light, .ed-kicker--light::before { color: var(--ed-giallo) !important; }
.ed-kicker--dark { color: var(--ed-ink) !important; }
.ed-label { margin: 0 0 1rem !important; padding-top: .7rem; border-top: var(--ed-rule); font-family: var(--ed-sans) !important; font-size: .82rem !important; font-weight: 700 !important; letter-spacing: .14em; text-transform: uppercase !important; }
.ed-label--light { border-color: rgba(255, 255, 255, .7); color: #fff !important; }
.ed-standfirst { max-width: 36em; font-size: clamp(1.15rem, 1.6vw, 1.35rem); line-height: 1.55; color: var(--ed-ink); }
.ed-small { font-size: .9rem; color: var(--ed-grigio); }
.ed-date { margin: 0 0 .35rem !important; color: var(--ed-grigio); font-size: .85rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ed-more { margin: 1.25rem 0 0 !important; font-weight: 700; }
.ed-more a, .ed-more--static { color: var(--ed-ink) !important; text-decoration: none; border-bottom: 2px solid var(--ed-giallo); padding-bottom: 2px; }
.ed-more a:hover { border-bottom-color: var(--ed-ink); }
.ed-section-head { gap: 1rem 2rem !important; margin-bottom: clamp(1.75rem, 3vw, 2.5rem) !important; padding-top: 1rem; border-top: 4px solid var(--ed-ink); }
.ed-section-head--stack { display: block; }
.ed-section-title { margin: 0 !important; font-size: clamp(2rem, 3.6vw, 3rem) !important; line-height: 1.08 !important; max-width: 20em; }
.ed-section-sub { margin: 0 !important; color: var(--ed-grigio); }
.ed-sec { padding-top: clamp(3.5rem, 7vw, 6.5rem) !important; padding-bottom: clamp(3.5rem, 7vw, 6.5rem) !important; }

/* Pulsanti (link in stile tipografico) ------------------------------------- */
.ed-actions { gap: 1rem 2rem !important; margin-top: 2.25rem !important; }
.ed-btn { margin: 0 !important; }
.ed-btn a {
	display: inline-flex; align-items: center; gap: .6rem; min-height: 52px; padding: 0 1.6rem; box-sizing: border-box;
	background: var(--ed-blu); color: #fff !important; font-weight: 700; font-size: 1.05rem; text-decoration: none; border: 2px solid var(--ed-blu);
	transition: background .15s, color .15s;
}
.ed-btn a:hover { background: var(--ed-ink); border-color: var(--ed-ink); color: #fff !important; }
.ed-btn--ink a { background: var(--ed-ink); border-color: var(--ed-ink); }
.ed-btn--ink a:hover { background: #fff; color: var(--ed-ink) !important; }
.ed-link { margin: 0 !important; font-weight: 700; }
.ed-link a { color: var(--ed-ink) !important; text-decoration: none; border-bottom: 2px solid var(--ed-ink); }
html body .wp-block-button__link { border-radius: 0 !important; box-shadow: none !important; transform: none !important; font-family: var(--ed-sans) !important; font-weight: 700 !important; text-transform: none !important; }

/* Barra di servizio ---------------------------------------------------------- */
.ed-util { padding-top: .5rem; padding-bottom: .5rem; background: var(--ed-carta); font-size: .9rem; border-bottom: var(--ed-hair); }
.ed-util p { margin: 0; color: var(--ed-grigio); }
.ed-a11y { display: flex; align-items: center; gap: .35rem; }
.ed-a11y__label { margin-right: .35rem; color: var(--ed-grigio); }
.ed-a11y button {
	min-width: 36px; min-height: 32px; padding: 0 .6rem; border: 1px solid var(--ed-ink); border-radius: 0;
	background: transparent; color: var(--ed-ink); font: inherit; font-weight: 700; line-height: 1; cursor: pointer;
}
.ed-a11y button:hover, .ed-a11y button[aria-pressed="true"] { background: var(--ed-ink); color: #fff; }

/* Testata ------------------------------------------------------------------- */
.ed-masthead { padding-top: 1.25rem; padding-bottom: 1.25rem; background: #fff; }
.ed-masthead__row { gap: 1rem 2rem !important; }
.ed-brand { gap: 1rem !important; }
.ed-brand__logo { margin: 0 !important; }
.ed-brand__logo img { display: block; border-radius: 0 !important; }
.ed-brand__text { gap: .1rem !important; }
.ed-brand__name { margin: 0 !important; font-family: var(--ed-serif); font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 700; line-height: 1; letter-spacing: -.02em; }
.ed-brand__name a { color: var(--ed-ink) !important; text-decoration: none; }
.ed-brand__tag { margin: 0 !important; color: var(--ed-grigio); font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ed-masthead__contact { gap: 1.5rem !important; }
.ed-phone { margin: 0 !important; font-family: var(--ed-serif); font-size: 1.45rem; font-weight: 600; line-height: 1.1; }
.ed-phone span { display: block; font-family: var(--ed-sans); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ed-grigio); }
.ed-phone a { color: var(--ed-ink) !important; text-decoration: none; }
.ed-cta { margin: 0 !important; }
.ed-cta a { display: inline-flex; align-items: center; gap: .5rem; min-height: 52px; padding: 0 1.4rem; background: var(--ed-giallo); color: var(--ed-ink) !important; font-weight: 700; text-decoration: none; border: 2px solid var(--ed-ink); box-shadow: 4px 4px 0 var(--ed-ink); transition: transform .12s, box-shadow .12s; }
.ed-cta a:hover { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--ed-ink); }

/* Barra di navigazione ------------------------------------------------------- */
.ed-navbar { border-top: var(--ed-rule); border-bottom: var(--ed-rule); background: #fff; position: sticky; top: 0; z-index: 90; }
.admin-bar .ed-navbar { top: 32px; }
.ed-menu { width: 100%; font-family: var(--ed-sans) !important; font-size: .95rem !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase; }
.ed-menu .wp-block-navigation__container { width: 100%; justify-content: space-between; gap: 0 !important; }
.ed-menu .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding: 1rem .25rem !important; color: var(--ed-ink) !important; text-decoration: none; border-radius: 0 !important; background: none !important;
	box-shadow: inset 0 -4px 0 transparent; transition: box-shadow .15s;
}
.ed-menu .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.ed-menu .wp-block-navigation__container > .wp-block-navigation-item:focus-within > .wp-block-navigation-item__content,
.ed-menu .wp-block-navigation__container > .current-menu-item > .wp-block-navigation-item__content,
.ed-menu .wp-block-navigation__container > .current-menu-ancestor > .wp-block-navigation-item__content { box-shadow: inset 0 -4px 0 var(--ed-blu); color: var(--ed-blu-2) !important; }
.ed-menu .wp-block-navigation-submenu { align-items: center; }
.ed-menu .wp-block-navigation__submenu-icon { width: .7em; height: .7em; margin: 0 0 0 .3rem !important; padding: 0; }
.ed-menu .wp-block-navigation__submenu-container {
	min-width: 280px !important; padding: .4rem 0 !important; border: var(--ed-rule) !important; border-radius: 0 !important; background: #fff !important;
	box-shadow: 6px 6px 0 var(--ed-ink) !important; text-transform: none; letter-spacing: 0; font-size: 1rem;
	top: calc(100% + 2px) !important; left: -1rem !important;
}
.ed-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .65rem 1.1rem !important; color: var(--ed-ink) !important; border-radius: 0 !important; width: 100%; box-sizing: border-box; }
.ed-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.ed-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus { background: var(--ed-giallo) !important; color: var(--ed-ink) !important; }
.ed-menu .wp-block-navigation__responsive-container-open { min-height: 48px; padding: 0 .25rem; color: var(--ed-ink); }
.ed-menu .wp-block-navigation__responsive-container-open::after { content: "Menu"; margin-left: .5rem; font-weight: 700; }
.ed-menu .wp-block-navigation__responsive-container.is-menu-open { padding: 2rem 1.5rem; background: var(--ed-carta) !important; }
.ed-menu .is-menu-open .wp-block-navigation__container { gap: 0 !important; }
.ed-menu .is-menu-open .wp-block-navigation-item__content { font-family: var(--ed-serif); font-size: 1.6rem !important; text-transform: none; letter-spacing: 0; padding: .4rem 0 !important; box-shadow: none !important; }
.ed-menu .is-menu-open .wp-block-navigation__submenu-container { border: 0 !important; box-shadow: none !important; background: transparent !important; padding-left: 1rem !important; }
.ed-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-family: var(--ed-sans); font-size: 1.1rem !important; }

/* Home: apertura ---------------------------------------------------------- */
.ed-apertura { padding-top: clamp(2.5rem, 6vw, 5rem) !important; padding-bottom: clamp(3rem, 7vw, 6rem) !important; }
.ed-apertura__cols { gap: clamp(2rem, 5vw, 5rem) !important; align-items: center !important; }
.ed-headline { margin: 0 0 1.5rem !important; font-size: clamp(2.8rem, 6.2vw, 5.4rem) !important; font-weight: 600 !important; line-height: 1.02 !important; letter-spacing: -.03em !important; }
.ed-photo { position: relative; margin: 0 !important; }
.ed-photo::before { content: ""; position: absolute; inset: 1.5rem -1.5rem -1.5rem 1.5rem; z-index: 0; background: var(--ed-giallo); }
.ed-photo img { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 0 !important; filter: saturate(.92); }
.ed-photo figcaption { position: relative; z-index: 1; margin: 2.25rem 0 0 !important; font-family: var(--ed-serif); font-style: italic; font-size: .95rem; color: var(--ed-grigio); text-align: left; }

/* Home: indice -------------------------------------------------------------- */
.ed-sec--indice { background: var(--ed-carta); }
.ed-index { border-top: var(--ed-rule); }
.ed-index__row {
	position: relative; display: grid !important; grid-template-columns: 5rem 1fr 1.3fr 3rem; align-items: center; gap: 1.5rem;
	padding: 1.6rem .75rem; border-bottom: var(--ed-rule); transition: background .15s, color .15s;
}
.ed-index__row > * { margin: 0 !important; }
.ed-index__n { font-family: var(--ed-serif); font-size: 2.6rem; font-weight: 500; line-height: 1; color: var(--ed-blu); font-variant-numeric: lining-nums; }
.ed-index__title { font-size: clamp(1.35rem, 2.2vw, 1.8rem) !important; line-height: 1.15 !important; }
.ed-index__title a { color: var(--ed-ink) !important; text-decoration: none; }
.ed-index__title a::after { content: ""; position: absolute; inset: 0; }
.ed-index__text { color: var(--ed-grigio); }
.ed-index__arrow { justify-self: end; font-size: 1.8rem; font-weight: 400; transition: transform .15s; }
.ed-index__row:hover, .ed-index__row:focus-within { background: var(--ed-blu); }
.ed-index__row:hover *, .ed-index__row:focus-within * { color: #fff !important; }
.ed-index__row:hover .ed-index__arrow { transform: translateX(6px); }

/* Home: cifre --------------------------------------------------------------- */
.ed-cifre { background: var(--ed-blu); color: #fff; }
.ed-nums { gap: 0 !important; }
.ed-num { padding: .5rem 1.5rem 0 0; }
.ed-nums .wp-block-column + .wp-block-column .ed-num { padding-left: 1.5rem; border-left: 1px solid rgba(255, 255, 255, .45); }
.ed-num__n { margin: 0 !important; font-family: var(--ed-serif); font-size: clamp(3rem, 6vw, 5rem); font-weight: 500; line-height: 1; letter-spacing: -.03em; color: #fff; }
.ed-num__l { margin: .75rem 0 0 !important; max-width: 14em; color: #e4eef8; }

/* Home: servizi --------------------------------------------------------------- */
.ed-cols3 { gap: clamp(1.5rem, 3vw, 3rem) !important; }
.ed-col { padding-top: 1rem; border-top: 4px solid var(--ed-blu); }
.ed-col__title { margin: 0 0 1rem !important; font-size: 1.6rem !important; }
.ed-dash, html body .ed-sections .wp-block-list, html body .ed-content .wp-block-list { list-style: none !important; padding-left: 0 !important; margin-left: 0 !important; }
.ed-dash li, html body .ed-sections .wp-block-list:not(.is-style-icone) li, html body .ed-content .wp-block-list:not(.is-style-icone) li {
	position: relative; padding: .55rem 0 .55rem 1.6rem !important; border-bottom: var(--ed-hair); text-transform: none !important; font-size: 1.05rem !important; color: var(--ed-ink) !important;
}
.ed-dash li::before, html body .ed-sections .wp-block-list:not(.is-style-icone) li::before, html body .ed-content .wp-block-list:not(.is-style-icone) li::before {
	content: "—" !important; position: absolute; left: 0; top: .55rem; width: auto !important; height: auto !important; border: 0 !important; border-radius: 0 !important;
	background: none !important; transform: none !important; color: var(--ed-blu); font-weight: 700;
}

/* Home: rivista --------------------------------------------------------------- */
.ed-rivista { background: var(--ed-grigino); color: var(--ed-ink); border-top: var(--ed-hair); border-bottom: var(--ed-hair); }
.ed-rivista a { color: var(--ed-ink); }
.ed-mag__cols { gap: clamp(2rem, 6vw, 6rem) !important; }
.ed-mag__title { margin: 0 0 1.5rem !important; font-family: var(--ed-serif); font-size: clamp(3.4rem, 8vw, 6.5rem); font-weight: 700; line-height: .92; letter-spacing: -.04em; }
.ed-mag__title em { color: var(--ed-blu) !important; font-weight: 400 !important; }
.ed-mag__text { max-width: 30em; font-size: 1.15rem; }
.ed-rivista .ed-label { border-color: var(--ed-ink); }
.ed-issues { border-top: var(--ed-rule); }
.ed-issue { padding: 1.1rem 0; border-bottom: var(--ed-rule); align-items: baseline !important; }
.ed-issue p { margin: 0 !important; }
.ed-issue__n { font-weight: 700; letter-spacing: .04em; }
.ed-issue__d { font-family: var(--ed-serif); font-size: 1.5rem; font-style: italic; }
.ed-issue__d a { text-decoration: none; }
.ed-issue__d a:hover { text-decoration: underline; }

/* Home: notizie ------------------------------------------------------------- */
.ed-news__cols { gap: clamp(2rem, 4vw, 4rem) !important; }
.ed-lead-story__img { margin: 0 0 1.25rem !important; }
.ed-lead-story__img img { border-radius: 0 !important; }
.ed-lead-story__title { margin: 0 0 .75rem !important; font-size: clamp(1.7rem, 3vw, 2.4rem) !important; line-height: 1.1 !important; }
.ed-lead-story__title a, .ed-brief__title a, .ed-list__title a { color: var(--ed-ink) !important; text-decoration: none; }
.ed-lead-story__title a:hover, .ed-brief__title a:hover, .ed-list__title a:hover { text-decoration: underline; text-decoration-color: var(--ed-blu); }
.ed-excerpt { color: var(--ed-grigio); font-size: 1.05rem; }
.ed-excerpt .wp-block-post-excerpt__more-text { display: none; }
.ed-briefs .wp-block-post-template { margin: 0; padding: 0; border-top: var(--ed-rule); }
.ed-briefs .wp-block-post { padding: 1.1rem 0; border-bottom: var(--ed-hair); }
.ed-brief__title { margin: 0 !important; font-size: 1.3rem !important; line-height: 1.2 !important; }

/* Home: chi siamo -------------------------------------------------------------- */
.ed-sec--chi { background: var(--ed-carta); }
.ed-feat { position: relative; }
.ed-feat__img { margin: 0 0 1.25rem !important; overflow: hidden; }
.ed-feat__img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 0 !important; filter: grayscale(1) contrast(1.05); transition: filter .3s, transform .3s; }
.ed-feat:hover .ed-feat__img img, .ed-feat:focus-within .ed-feat__img img { filter: none; transform: scale(1.03); }
.ed-feat__title { margin: 0 0 .5rem !important; font-size: 1.6rem !important; }
.ed-feat__title a { color: var(--ed-ink) !important; text-decoration: none; }
.ed-feat__title a::after { content: ""; position: absolute; inset: 0; }
.ed-feat p { color: var(--ed-grigio); }

/* Home: 5 per mille ----------------------------------------------------------- */
.ed-five { background: var(--ed-notte); color: #fff; }
.ed-five__cols { gap: clamp(2rem, 5vw, 5rem) !important; align-items: end !important; }
.ed-five__title { margin: 0 0 1.25rem !important; color: #fff !important; font-size: clamp(2rem, 3.8vw, 3.2rem) !important; line-height: 1.08 !important; }
.ed-five__text { color: #dce6f2; max-width: 34em; }
.ed-five__text a { color: #fff !important; }
.ed-five__box { border-top: 4px solid var(--ed-giallo); padding-top: 1rem; }
.ed-five__cf { margin: 0 !important; font-family: var(--ed-serif); font-size: clamp(2.4rem, 5vw, 4.2rem); font-weight: 500; letter-spacing: .02em; color: var(--ed-giallo); font-variant-numeric: lining-nums tabular-nums; }

/* Piè di pagina --------------------------------------------------------------- */
.ed-footer { padding-top: clamp(3rem, 6vw, 5rem) !important; padding-bottom: 2rem !important; background: var(--ed-carta); border-top: 4px solid var(--ed-ink); }
.ed-footer__top { gap: 1rem 3rem !important; padding-bottom: 2rem; border-bottom: var(--ed-rule); }
.ed-footer__name { margin: 0 !important; font-family: var(--ed-serif); font-size: clamp(2.6rem, 6vw, 4.5rem); font-weight: 700; line-height: 1; letter-spacing: -.03em; }
.ed-footer__motto { margin: 0 !important; max-width: 24em; font-family: var(--ed-serif); font-style: italic; font-size: 1.2rem; color: var(--ed-grigio); }
.ed-footer__cols { gap: 2rem !important; margin-top: 2rem !important; }
.ed-footer__cols .ed-label { border-top-width: 0; padding-top: 0; }
.ed-footer__cf { font-family: var(--ed-serif); font-size: 1.5rem; letter-spacing: .02em; }
.ed-footer__bottom { gap: .5rem 2rem !important; margin-top: 2.5rem !important; padding-top: 1.25rem; border-top: var(--ed-hair); font-size: .9rem; color: var(--ed-grigio); }
.ed-footer__bottom p { margin: 0; }

/* Testata pagine interne -------------------------------------------------------- */
.ed-pagehead { padding-top: clamp(2.5rem, 6vw, 4.5rem) !important; padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important; }
.ed-pagehead > * { position: relative; }
.ed-title { margin: .75rem 0 0 !important; padding-bottom: 1.5rem; border-bottom: 4px solid var(--ed-ink); font-size: clamp(2.6rem, 6vw, 4.8rem) !important; font-weight: 600 !important; line-height: 1.02 !important; letter-spacing: -.03em !important; }
.ed-title--article { font-size: clamp(2.2rem, 4.6vw, 3.6rem) !important; }
.ed-crumbs { font-size: .82rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ed-grigio); }
.ed-crumbs a { color: var(--ed-blu-2); text-decoration: none; }
.ed-meta { gap: 1rem !important; align-items: center; margin-top: 1rem !important; }
.ed-meta .ed-kicker { margin: 0 !important; }
.ed-meta .ed-date { margin: 0 !important; }
.ed-cats { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin: 1.25rem 0 0; padding: 0; list-style: none; font-weight: 700; }
.ed-cats a { color: var(--ed-ink); }
.ed-content { padding-top: clamp(2rem, 4vw, 3rem) !important; padding-bottom: clamp(3.5rem, 7vw, 6rem) !important; }
.ed-content--page .wp-block-post-content > :not(.alignfull):not(.alignwide):not(.anmic-docs):not(.wp-block-shortcode):not(.anmic-albums) { max-width: 760px; }
.ed-content--article p { font-size: 1.15rem; line-height: 1.75; }
.ed-article__img { margin: 0 0 2.5rem !important; }
.ed-article__img img { width: 100%; max-height: 540px; object-fit: cover; border-radius: 0 !important; }
.ed-back { margin-top: 3rem !important; }
.ed-list .wp-block-post-template { margin: 0; padding: 0; border-top: var(--ed-rule); }
.ed-list .wp-block-post { padding: 1.75rem 0; border-bottom: var(--ed-hair); }
.ed-list__row { gap: 2rem !important; margin: 0 !important; }
.ed-list__img { margin: 0 !important; }
.ed-list__img img { border-radius: 0 !important; }
.ed-list__title { margin: .2rem 0 .6rem !important; font-size: clamp(1.4rem, 2.4vw, 1.9rem) !important; line-height: 1.15 !important; }
.ed-pagination { margin-top: 2.5rem; font-weight: 700; }
.ed-pagination a, .ed-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 44px; min-height: 44px; color: var(--ed-ink); }
.ed-pagination .current { background: var(--ed-ink); color: #fff; }
.ed-search .wp-block-search__input { min-height: 52px; padding: 0 1rem; border: var(--ed-rule); border-radius: 0; font: inherit; }
.ed-search .wp-block-search__button { min-height: 52px; padding: 0 1.5rem; border: 2px solid var(--ed-ink); border-radius: 0; background: var(--ed-ink); color: #fff; font-weight: 700; }

/* Contenuti condivisi (pagine a sezioni create per la grafica classica) ------- */
html body .ed-sections > .anmic-section, html body .ed-sections > .anmic-hero-img { margin-top: 0 !important; }
html body .anmic-section { padding-top: clamp(3rem, 6vw, 5.5rem) !important; padding-bottom: clamp(3rem, 6vw, 5.5rem) !important; }
html body .anmic-section.has-sfondo-grigio-background-color { background-color: var(--ed-carta) !important; }
html body .anmic-section + .anmic-section:not(.has-sfondo-grigio-background-color) { border-top: var(--ed-hair); }
html body .anmic-section p, html body .anmic-section li { font-size: 1.1rem !important; line-height: 1.7; color: var(--ed-ink) !important; }
html body .anmic-hero-img img { width: 100%; height: clamp(220px, 30vw, 420px) !important; object-fit: cover; border-radius: 0 !important; filter: grayscale(.15); }
html body .wp-block-heading.is-style-doppio, html body .wp-block-heading.is-style-doppio-inverso {
	color: var(--ed-ink) !important; font-family: var(--ed-serif) !important; font-size: clamp(2rem, 3.8vw, 3rem) !important; font-weight: 600 !important; line-height: 1.08 !important;
	text-transform: none !important; letter-spacing: -.02em; padding-bottom: 1rem; border-bottom: 4px solid var(--ed-ink);
}
html body .wp-block-heading.is-style-doppio strong, html body .wp-block-heading.is-style-doppio-inverso strong {
	display: inline !important; margin: 0 !important; color: var(--ed-blu) !important; font-style: italic; font-weight: 500 !important;
}
html body h1.wp-block-heading.is-style-doppio { font-size: clamp(2.6rem, 6vw, 4.6rem) !important; letter-spacing: -.03em; }
html body .wp-block-heading.has-text-align-right.is-style-doppio { text-align: left !important; }
html body .anmic-section .has-text-align-right { text-align: left !important; }
html body .anmic-section-title, html body .anmic-card-title, html body .anmic-contact-title, html body .anmic-list-title {
	color: var(--ed-ink) !important; font-family: var(--ed-serif) !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: -.01em;
}
html body .anmic-section-title { margin: 2.25rem 0 .6rem !important; padding-top: .6rem; border-top: var(--ed-rule); font-size: 1.55rem !important; }
html body .anmic-section-title:first-child { margin-top: 0 !important; }
html body .anmic-card-title { margin: 0 0 .35rem !important; font-size: 1.25rem !important; }
html body .anmic-list-title { font-size: clamp(2.6rem, 6vw, 4.6rem) !important; text-align: left !important; padding-bottom: 1.25rem; border-bottom: 4px solid var(--ed-ink); }
html body .anmic-contact-title { font-size: 1.35rem !important; padding-top: .6rem; border-top: var(--ed-rule); }
html body .anmic-section .wp-block-image img { border-radius: 0 !important; }
html body .anmic-section .wp-block-button__link { background: var(--ed-blu) !important; color: #fff !important; }
html body .anmic-section .wp-block-button__link:hover { background: var(--ed-ink) !important; }

html body .anmic-grid { gap: 2rem 1.5rem !important; }
html body .anmic-grid-item { padding: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; overflow: visible; border-top: var(--ed-rule); padding-top: 1rem !important; }
html body .anmic-grid-item > * { margin-left: 0 !important; margin-right: 0 !important; }
html body .anmic-grid-item .wp-block-image { margin: 0 0 1rem !important; }
html body .anmic-grid-item .wp-block-image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 0 !important; filter: grayscale(.2); }
html body .anmic-grid-item p { font-size: 1rem !important; color: var(--ed-grigio) !important; }
html body .anmic-grid--persone .anmic-grid-item { text-align: left; border-top: var(--ed-hair); background: none !important; }
html body .anmic-grid--persone .wp-block-image img { width: 96px !important; height: 96px; aspect-ratio: 1; margin: 0; border-radius: 0 !important; border: 0; box-shadow: none !important; filter: grayscale(1); }
html body .anmic-grid--persone p.has-text-align-center, html body .anmic-grid--persone .has-text-align-center { text-align: left !important; }
html body .anmic-grid--persone .wp-block-image.aligncenter { margin-left: 0 !important; }
html body .anmic-grid-item .wp-block-embed figcaption { margin: .6rem 0 0; font-family: var(--ed-serif); font-style: italic; color: var(--ed-ink); }

html body .wp-block-list.is-style-icone li { color: var(--ed-ink) !important; font-weight: 700; border-bottom: var(--ed-hair); padding: .5rem 0 !important; margin: 0 !important; }
html body .wp-block-list.is-style-icone li img { padding: 0; border-radius: 0 !important; background: var(--ed-blu); }

html body .wp-block-details.anmic-timeline { margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: var(--ed-rule) !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
html body .wp-block-details.anmic-timeline:first-of-type { border-top: var(--ed-rule) !important; }
html body .wp-block-details.anmic-timeline summary {
	display: grid; grid-template-columns: 9rem 1fr 2rem; align-items: baseline; gap: 1.5rem; padding: 1.1rem 0; cursor: pointer; list-style: none;
	font-family: var(--ed-serif) !important; font-size: 1.3rem !important; color: var(--ed-ink) !important;
}
html body .wp-block-details.anmic-timeline summary::-webkit-details-marker { display: none; }
html body .wp-block-details.anmic-timeline summary strong { color: var(--ed-blu) !important; font-size: 2rem !important; font-weight: 500 !important; text-align: left !important; font-variant-numeric: lining-nums; }
html body .wp-block-details.anmic-timeline summary::after {
	content: "+" !important; display: block; width: auto; height: auto; border: 0 !important; border-radius: 0 !important; background: none !important;
	color: var(--ed-ink) !important; font-family: var(--ed-sans); font-size: 1.8rem; font-weight: 400; line-height: 1; transform: none !important; justify-self: end;
}
html body .wp-block-details.anmic-timeline[open] summary::after { content: "–" !important; }
html body .wp-block-details.anmic-timeline > :not(summary) { margin-left: 10.5rem !important; max-width: 46em; }
html body .wp-block-details.anmic-timeline[open] { padding-bottom: 1.25rem !important; }
@media (max-width: 640px) {
	html body .wp-block-details.anmic-timeline summary { grid-template-columns: 1fr 2rem; }
	html body .wp-block-details.anmic-timeline summary strong { grid-column: 1 / -1; }
	html body .wp-block-details.anmic-timeline > :not(summary) { margin-left: 0 !important; }
}

html body .anmic-articolo { gap: 2rem !important; padding: 1.25rem 0 !important; margin: 0 !important; border: 0 !important; border-bottom: var(--ed-hair) !important; border-radius: 0 !important; background: none !important; }
html body .anmic-articolo__n { flex: 0 0 6rem; color: var(--ed-blu) !important; font-family: var(--ed-serif) !important; font-size: 1.4rem !important; font-weight: 500 !important; }

html body .anmic-cinquepermille { color: var(--ed-ink) !important; font-family: var(--ed-serif) !important; font-size: clamp(1.5rem, 2.8vw, 2.1rem) !important; font-weight: 500 !important; line-height: 1.3 !important; text-transform: none !important; text-align: left !important; }
html body .anmic-cinquepermille strong { color: var(--ed-blu) !important; font-style: italic; }

html body .wp-block-table table { border-collapse: collapse !important; border: 0 !important; border-radius: 0 !important; border-top: var(--ed-rule) !important; }
html body .wp-block-table th { background: none !important; color: var(--ed-ink) !important; font-family: var(--ed-sans) !important; font-size: .82rem; letter-spacing: .12em; text-transform: uppercase; border-bottom: var(--ed-rule) !important; }
html body .wp-block-table td, html body .wp-block-table th { padding: .9rem .75rem .9rem 0 !important; border-left: 0 !important; border-right: 0 !important; }
html body .wp-block-table td { border-bottom: var(--ed-hair) !important; }

html body .anmic-map { border-radius: 0 !important; background: var(--ed-carta) !important; border: var(--ed-rule); }

/* Plugin: archivio documenti ---------------------------------------------- */
html body .anmic-docs { --a-primary: #0068b9; --a-primary-dark: #0a4f8a; --a-radius: 0; }
html body .anmic-docs__search { max-width: none !important; padding: 1.5rem 0 !important; border-radius: 0 !important; background: none !important; border-top: var(--ed-rule); border-bottom: var(--ed-rule); gap: 1rem 2rem !important; }
html body .anmic-docs__search > label, html body .anmic-docs__year label { font-family: var(--ed-sans) !important; font-size: .82rem !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase !important; color: var(--ed-ink) !important; }
html body .anmic-docs__search input, html body .anmic-docs__year select { min-height: 52px !important; border: var(--ed-rule) !important; border-radius: 0 !important; padding: 0 1rem !important; background: #fff !important; }
html body .anmic-docs__title { margin-top: 0 !important; padding-bottom: .75rem; border-bottom: 4px solid var(--ed-ink) !important; color: var(--ed-ink) !important; font-family: var(--ed-serif) !important; font-size: 2.2rem !important; font-weight: 600 !important; text-transform: none !important; }
html body .anmic-docs__group + .anmic-docs__group { margin-top: 3.5rem !important; }
html body .anmic-docs__table { border-collapse: collapse !important; border-spacing: 0 !important; }
html body .anmic-docs__table thead th { background: none !important; color: var(--ed-grigio) !important; font-size: .78rem !important; letter-spacing: .12em; border-bottom: var(--ed-rule) !important; }
html body .anmic-docs__table tbody tr { background: none !important; box-shadow: none !important; }
html body .anmic-docs__table tbody tr:nth-child(even) { background: none !important; }
html body .anmic-docs__table tbody td, html body .anmic-docs__table tbody th { padding: 1.1rem .5rem 1.1rem 0 !important; border-bottom: var(--ed-hair) !important; border-radius: 0 !important; }
html body .anmic-docs__table tbody th { font-family: var(--ed-serif); font-size: 1.2rem; }
html body .anmic-docs__icon { border-radius: 0 !important; background: var(--ed-ink) !important; }
html body .anmic-btn { border-radius: 0 !important; text-transform: none !important; font-family: var(--ed-sans) !important; font-weight: 700 !important; }
html body .anmic-btn--ghost { border-color: var(--ed-ink) !important; color: var(--ed-ink) !important; }

/* Plugin: gallery ----------------------------------------------------------- */
html body .anmic-albums { gap: 2.5rem 1.5rem !important; }
html body .anmic-album { border: 0 !important; border-top: var(--ed-rule) !important; border-radius: 0 !important; box-shadow: none !important; padding-top: 1rem; }
html body .anmic-album:hover, html body .anmic-album:focus-within { transform: none !important; box-shadow: none !important; }
html body .anmic-album__img { margin-bottom: .25rem; }
html body .anmic-album__img img { filter: grayscale(.3); transition: filter .3s; }
html body .anmic-album:hover .anmic-album__img img { filter: none; }
html body .anmic-album__body { padding: .75rem 0 0 !important; }
html body .anmic-album__title { font-family: var(--ed-serif) !important; font-size: 1.35rem !important; }
html body .anmic-gallery a { border-radius: 0 !important; }

/* Responsive ------------------------------------------------------------------ */
@media (max-width: 1000px) {
	.ed-index__row { grid-template-columns: 3.5rem 1fr 2rem; }
	.ed-index__text { grid-column: 2 / 3; }
	.ed-index__arrow { grid-row: 1; grid-column: 3; }
	.ed-index__n { font-size: 2rem; }
}
@media (max-width: 781px) {
	.ed-util__left, .ed-a11y__label { display: none; }
	.ed-util .wp-block-group { justify-content: flex-end !important; }
	.ed-brand__logo img { width: 48px !important; height: 48px !important; }
	.ed-brand__tag { font-size: .7rem; }
	.ed-masthead__contact { width: 100%; justify-content: space-between; }
	.ed-phone { font-size: 1.2rem; }
	.ed-navbar { padding-top: .25rem; padding-bottom: .25rem; }
	.ed-photo::before { inset: 1rem -.75rem -.75rem 1rem; }
	.ed-nums .wp-block-column + .wp-block-column .ed-num { padding-left: 0; border-left: 0; padding-top: 1.5rem; border-top: 1px solid rgba(255, 255, 255, .45); }
	html body .wp-block-details.anmic-timeline summary strong { font-size: 1.6rem !important; }
	html body .anmic-articolo { flex-direction: column; gap: .25rem !important; }
}

/* ALTO CONTRASTO ------------------------------------------------------------------ */
html[data-contrast="alto"] .wp-site-blocks, html[data-contrast="alto"] .wp-site-blocks * { background-image: none !important; box-shadow: none !important; text-shadow: none !important; filter: none !important; }
html[data-contrast="alto"] body,
html[data-contrast="alto"] .wp-site-blocks :where(div, section, header, footer, main, nav, aside, article, li, ul, figure, table, tr, td, th, p, span, h1, h2, h3, h4, h5, h6, strong, em, details, summary) {
	background-color: #000 !important; color: #fff !important; border-color: #fff !important;
}
html[data-contrast="alto"] .wp-site-blocks a, html[data-contrast="alto"] .wp-site-blocks a * { color: #ffeb3b !important; text-decoration: underline !important; background: transparent !important; }
html[data-contrast="alto"] .wp-site-blocks button, html[data-contrast="alto"] .ed-btn a, html[data-contrast="alto"] .ed-cta a, html[data-contrast="alto"] .anmic-btn { background: #ffeb3b !important; color: #000 !important; border-color: #ffeb3b !important; }
html[data-contrast="alto"] .wp-site-blocks button *, html[data-contrast="alto"] .ed-btn a *, html[data-contrast="alto"] .ed-cta a * { color: #000 !important; }
html[data-contrast="alto"] .ed-photo::before { display: none; }
.ed-five__box .ed-label { border-top: 0; padding-top: 0; }
.ed-content--page .wp-block-post-content > :not(.alignfull):not(.alignwide):not(.anmic-docs):not(.wp-block-shortcode):not(.anmic-albums) { margin-left: 0 !important; }


/* Leggibilità massima: titoli senza grazie, niente corsivi, pesi più decisi ------ */
html body :where(h1, h2, h3, h4, h5, h6), .ed-headline, .ed-title, .ed-section-title, .ed-brand__name, .ed-footer__name, .ed-mag__title { font-weight: 800 !important; letter-spacing: -.02em !important; }
html body :where(h1, h2, h3, h4) em, .ed-brand__name em, .ed-footer__name em, .ed-mag__title em,
html body .wp-block-heading.is-style-doppio strong, html body .wp-block-heading.is-style-doppio-inverso strong, html body .anmic-cinquepermille strong { font-style: normal !important; font-weight: 800 !important; }
.ed-headline { line-height: 1.08 !important; }
.ed-mag__title { line-height: 1 !important; }
.ed-index__title, .ed-col__title, .ed-feat__title, .ed-lead-story__title, .ed-brief__title, .ed-list__title, html body .anmic-section-title, html body .anmic-card-title, html body .anmic-contact-title { font-weight: 700 !important; letter-spacing: -.01em !important; }
.ed-index__n, .ed-num__n, .ed-five__cf, .ed-footer__cf, .ed-phone, html body .wp-block-details.anmic-timeline summary strong, html body .anmic-articolo__n { font-weight: 700 !important; letter-spacing: -.01em; }
html body .wp-block-details.anmic-timeline summary { font-weight: 600; }
.ed-photo figcaption, .ed-footer__motto, .ed-issue__d, html body .anmic-grid-item .wp-block-embed figcaption { font-style: normal !important; }
.ed-issue__d { font-weight: 600; }
html body .anmic-docs__table tbody th { font-size: 1.1rem; font-weight: 600; }

/* Foto d'apertura: ombra piena nera sfalsata, didascalia sotto */
.ed-photo::before { content: none !important; display: none !important; }
.ed-photo img { box-shadow: 24px 24px 0 var(--ed-ink); width: calc(100% - 24px) !important; }
.ed-photo figcaption { margin: calc(24px + 1.25rem) 0 0 !important; color: var(--ed-grigio); font-size: 1rem; }
@media (max-width: 781px) { .ed-photo img { box-shadow: 12px 12px 0 var(--ed-ink); width: calc(100% - 12px) !important; } .ed-photo figcaption { margin-top: calc(12px + 1rem) !important; } }

/* Sezioni della home attaccate una all'altra, senza strisce bianche */
.ed-home > *, .ed-main > *, .ed-sections > * { margin-top: 0 !important; margin-bottom: 0 !important; }
