/* InformaImpresa – Il Periodico 1.0.0 — stessi token dello Stile unificato (navy #0B2A4A, Inter, raggi 24px) */
.iipe {
	--iipe-navy: var(--iiu-navy, #0B2A4A);
	--iipe-navy-hover: var(--iiu-navy-hover, #14395F);
	--iipe-soft: var(--iiu-blue-soft, #E7ECF3);
	--iipe-bg: var(--iiu-bg, #F6F6F4);
	--iipe-text: #171717;
	--iipe-muted: var(--iiu-muted, #596575);
	--iipe-shadow: 0 1px 2px rgba(23, 23, 23, .04), 0 12px 32px rgba(11, 42, 74, .08);
	--iipe-font: var(--iiu-font, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
	font-family: var(--iipe-font);
	color: var(--iipe-text);
	width: 100vw;
	position: relative;
	left: 50%;
	margin-left: -50vw;
	background: var(--iipe-bg);
	padding-bottom: 96px;
}
body:has(.iipe) { overflow-x: hidden; }
body:has(.iipe) .site-main,
body:has(.iipe) .page-content { max-width: none; padding: 0; margin: 0; }
body:has(.iipe) .page-header { display: none; }

.iipe *, .iipe *::before, .iipe *::after { box-sizing: border-box; }
.iipe-wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

/* Hero */
.iipe-hero {
	background: var(--iipe-navy);
	color: #fff;
	text-align: center;
	padding: 176px 0 136px;
}
.iipe .iipe-eyebrow {
	margin: 0 0 16px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .78);
}
.iipe .iipe-title {
	margin: 0;
	font-family: var(--iipe-font);
	font-size: clamp(40px, 6vw, 64px);
	line-height: 1.05;
	font-weight: 700;
	letter-spacing: -.02em;
	color: #fff;
}
.iipe .iipe-lead {
	margin: 18px auto 0;
	max-width: 620px;
	font-size: 19px;
	line-height: 1.55;
	color: rgba(255, 255, 255, .86);
}

/* Ultimo numero */
.iipe-body { position: relative; }
body:not(#iiu) .iipe a.iipe-latest {
	display: flex;
	align-items: center;
	gap: 24px;
	margin: -72px 0 48px;
	padding: 28px 32px;
	background: #fff;
	border-radius: 24px;
	box-shadow: var(--iipe-shadow);
	color: var(--iipe-text);
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease;
}
body:not(#iiu) .iipe a.iipe-latest:hover { transform: translateY(-2px); box-shadow: 0 1px 2px rgba(23,23,23,.05), 0 18px 40px rgba(11,42,74,.14); }
.iipe-latest__icon {
	flex: 0 0 64px;
	height: 64px;
	display: grid;
	place-items: center;
	border-radius: 18px;
	background: var(--iipe-soft);
	color: var(--iipe-navy);
}
.iipe-latest__icon .iipe-ico { width: 32px; height: 32px; }
.iipe-latest__text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.iipe-latest__label { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--iipe-muted); }
.iipe-latest__name { font-size: clamp(20px, 2.4vw, 26px); line-height: 1.25; font-weight: 700; color: var(--iipe-text); }
.iipe-latest__meta { font-size: 15px; color: var(--iipe-muted); }
.iipe-latest__cta {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 48px;
	padding: 0 24px;
	border-radius: 999px;
	background: var(--iipe-navy);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	white-space: nowrap;
}
body:not(#iiu) .iipe a.iipe-latest:hover .iipe-latest__cta { background: var(--iipe-navy-hover); }
.iipe-latest__cta .iipe-arrow { width: 18px; height: 18px; }

/* Anni */
.iipe-years {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0 0 12px;
}
body:not(#iiu) .iipe a.iipe-year {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 44px;
	padding: 0 13px;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(23,23,23,.06), 0 0 0 1px rgba(11,42,74,.08);
	color: var(--iipe-navy);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
body:not(#iiu) .iipe a.iipe-year:hover { background: var(--iipe-soft); color: var(--iipe-navy); }
body:not(#iiu) .iipe a.iipe-year.is-active { background: var(--iipe-navy); color: #fff; box-shadow: none; }
body:not(#iiu) .iipe a.iipe-year:focus-visible,
body:not(#iiu) .iipe a.iipe-latest:focus-visible,
body:not(#iiu) .iipe a.iipe-issue:focus-visible { outline: none; box-shadow: 0 0 0 2px #fff, 0 0 0 5px var(--iipe-navy); }
.iipe-anchor { display: block; position: relative; top: -120px; visibility: hidden; }

/* Pannello anno */
.iipe-panel { padding-top: 28px; }
.iipe-panel[data-hidden] { display: none; }
.iipe-panel__head { display: flex; align-items: baseline; gap: 16px; margin: 0 0 24px; }
.iipe .iipe-panel__title { margin: 0; font-family: var(--iipe-font); font-size: 40px; line-height: 1.1; font-weight: 700; letter-spacing: -.02em; color: var(--iipe-text); }
.iipe .iipe-panel__count { margin: 0; font-size: 16px; color: var(--iipe-muted); }

.iipe-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: start;
}
.iipe-month {
	background: #fff;
	border-radius: 24px;
	box-shadow: var(--iipe-shadow);
	padding: 24px 20px 16px;
	scroll-margin-top: 120px;
}
.iipe-month:target { box-shadow: 0 0 0 3px var(--iipe-navy), var(--iipe-shadow); }
.iipe .iipe-month__title { margin: 0 8px 12px; font-family: var(--iipe-font); font-size: 22px; line-height: 1.2; font-weight: 700; color: var(--iipe-text); }
.iipe .iipe-issues { list-style: none; margin: 0; padding: 0; }
.iipe .iipe-issues li { margin: 0; padding: 0; }
.iipe .iipe-issues li + li { border-top: 1px solid rgba(11, 42, 74, .07); }
body:not(#iiu) .iipe a.iipe-issue {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 8px;
	border-radius: 12px;
	color: var(--iipe-text);
	font-size: 16px;
	line-height: 1.35;
	font-weight: 500;
	text-decoration: none;
	transition: background .15s ease;
}
body:not(#iiu) .iipe a.iipe-issue:hover { background: var(--iipe-soft); color: var(--iipe-navy); }
.iipe-issue .iipe-ico { flex: 0 0 22px; width: 22px; height: 22px; color: var(--iipe-navy); }
.iipe-issue__text { flex: 1 1 auto; min-width: 0; }
.iipe-issue .iipe-arrow { flex: 0 0 18px; width: 18px; height: 18px; color: var(--iipe-muted); opacity: .7; }
body:not(#iiu) .iipe a.iipe-issue:hover .iipe-arrow { color: var(--iipe-navy); opacity: 1; }

@media (max-width: 1024px) {
	.iipe-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.iipe { padding-bottom: 64px; }
	.iipe-wrap { padding: 0 16px; }
	.iipe-hero { padding: 132px 0 112px; }
	.iipe .iipe-lead { font-size: 17px; }
	body:not(#iiu) .iipe a.iipe-latest { flex-wrap: wrap; gap: 16px; padding: 22px 20px; margin-top: -64px; }
	.iipe-latest__icon { flex-basis: 52px; height: 52px; border-radius: 14px; }
	.iipe-latest__text { flex-basis: calc(100% - 68px); }
	.iipe-latest__cta { width: 100%; justify-content: center; }
	.iipe-years { flex-wrap: nowrap; overflow-x: auto; margin: 0 -16px 8px; padding: 4px 16px 8px; scrollbar-width: none; }
	.iipe-years::-webkit-scrollbar { display: none; }
	body:not(#iiu) .iipe a.iipe-year { flex: 0 0 auto; }
	.iipe .iipe-panel__title { font-size: 32px; }
	.iipe-grid { grid-template-columns: 1fr; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
	.iipe * { transition: none !important; }
}

/* 1.1.0 – box di iscrizione alla newsletter in fondo all'archivio */
.iipe-signup {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 32px; align-items: start;
	margin: 56px 0 24px; padding: 32px; background: #fff; border-radius: 24px; box-shadow: var(--iipe-shadow);
}
.iipe .iipe-signup__title { margin: 0 0 8px; font-family: var(--iipe-font); font-size: 26px; font-weight: 700; color: var(--iipe-navy); }
.iipe-signup__lead { margin: 0; color: var(--iipe-muted); font-size: 16px; line-height: 1.5; }
.iipe-signup__form .wpforms-container { margin: 0 !important; }
@media (max-width: 767px) {
	.iipe-signup { grid-template-columns: 1fr; gap: 16px; padding: 22px 20px; }
}
