/**
 * Single informe-socioeconomi: sidemenú 20vw (20% viewport) a l’esquerra de la pàgina + contingut principal.
 * Fons de pàgina blanc per defecte; sidemenú gris #F5F5F5 (sense sidebar Bridge).   
 */

/* Fons blanc per la pàgina (per defecte) sota el title area.
 * Les variables --pe-informe-* es declaren aquí (no només a .pe-informe-single) perquè el
 * shell del drawer es porta a <body> en mòbil (portal) i necessita heretar-les igualment. */  
body.single-informe-socioeconomi {
	background-color: var(--pe-child-bg);
	--pe-informe-accent: var(--pe-child-accent);
	--pe-informe-accent-dark: var(--pe-child-accent-dark);
	--pe-informe-text: var(--pe-child-text);
	--pe-informe-sidebar-bg: var(--pe-child-sidebar-bg);
	--pe-informe-sidebar-height: calc(100vh - var(--pe-informe-sticky-top, 1.25rem));
}

body.single-informe-socioeconomi .wrapper,
body.single-informe-socioeconomi .wrapper_inner,
body.single-informe-socioeconomi .content,
body.single-informe-socioeconomi .content .content_inner,
body.single-informe-socioeconomi .full_width,
body.single-informe-socioeconomi .full_width_inner {
	background-color: var(--pe-child-bg) !important;
}

body.single-informe-socioeconomi .title_outer,
body.single-informe-socioeconomi .title_outer .title {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.single-informe-socioeconomi .title_outer .title h1,
body.single-informe-socioeconomi .title_outer .title h1 * {
	color: var(--pe-child-on-accent) !important;
}

body.single-informe-socioeconomi .full_width_inner {
	box-sizing: border-box;
}

/* Bridge: .wrapper_inner té overflow:hidden i trenca position:sticky */ 
body.single-informe-socioeconomi .wrapper_inner {
	overflow: visible !important;
}

/*
 * Escriptori: tokens (overflow-x:hidden a html/body) trenca position:sticky del sidemenú. 
 * Al mòbil el menú és drawer (no cal sticky) i cal mantenir overflow-x dels tokens per evitar scroll horitzontal.
 * Aliniat amb @media (max-width: 900px) del drawer.
 */
@media (min-width: 901px) {
	html:has(body.single-informe-socioeconomi) {
		overflow-x: visible;
	}

	body.single-informe-socioeconomi {
		overflow-x: visible;
	}

	/* Bridge boxed: body.boxed .content { overflow: hidden } — mateix efecte sobre sticky */
	body.single-informe-socioeconomi .content,
	body.single-informe-socioeconomi .content .content_inner,
	body.single-informe-socioeconomi .full_width,
	body.single-informe-socioeconomi .full_width_inner {
		overflow: visible;
	}
}

/**
 * Sortida a amplada de viewport: el sidemenú compta el 20% de la finestra (20vw), no del bloc de contingut centrat.
 */
.pe-informe-single {
	--pe-informe-accent: var(--pe-child-accent);
	--pe-informe-accent-dark: var(--pe-child-accent-dark);
	--pe-informe-text: var(--pe-child-text);
	--pe-informe-sidebar-bg: var(--pe-child-sidebar-bg);
	/* Alçada del sidemenú = finestra fins a sota (sense marge inferior extra) */
	--pe-informe-sidebar-height: calc(100vh - var(--pe-informe-sticky-top, 1.25rem));
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	/* Sense padding inferior aquí: el fons gris del sidemenú ha d’arribar fins al footer;
 * l’aire sota el contingut va al .pe-informe-single__main. */
	padding: 0;
	box-sizing: border-box;
	position: relative;
	background-color: var(--pe-child-bg);
}

.pe-informe-single__outer {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 0;
	width: 100%;
	box-sizing: border-box;
}

/* Columna esquerra: fons gris a tota l’alçada de la fila (fins on arriba el main / footer). */
.pe-informe-single__sidebar-shell {
	flex: 0 0 20vw;
	width: 20vw;
	max-width: 20vw;
	min-width: 0;
	box-sizing: border-box;
	align-self: stretch;
	background: var(--pe-informe-sidebar-bg);
	display: flex;
	flex-direction: column;
}

/* Sidemenú: sticky dins la columna; scroll intern si el TOC és llarg (alçada màx. viewport). */
.pe-informe-single__sidebar {
	flex: 0 1 auto;
	align-self: flex-start;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin-top: 0;
	margin-bottom: 0;
	background: transparent;
	border: none;
	padding: clamp(1.65rem, 2.8vw, 2.25rem) clamp(1.35rem, 2.4vw, 1.85rem) clamp(1.85rem, 3vw, 2.5rem);
	border-radius: 0;
	position: sticky;
	top: var(--pe-informe-sticky-top, 1.25rem);
	z-index: 150;
	max-height: var(--pe-informe-sidebar-height);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/* Vista de descàrrega: sidemenú només amb selector d’any */
.pe-informe-single__sidebar--minimal {
	padding-bottom: clamp(1.35rem, 2.4vw, 1.85rem);
}

.pe-informe-single__sidebar--minimal .pe-informe-single__year-wrap {
	margin-bottom: 0;
}

/* Enllaç cap a l’informe de 1r nivell (demarcació / any complet) des de 2n o 3r nivell */
.pe-informe-single__parent-l1 {
	margin-bottom: 0.9rem;
}

.pe-informe-single__parent-l1-link {
	display: flex;
	align-items: flex-start;
	gap: 0.35rem;
	padding: 0.45rem 0.5rem;
	margin: 0 -0.25rem;
	border-radius: 2px;
	box-sizing: border-box;
	font-size: 0.9rem;
	line-height: 1.35;
	font-weight: 600;
	color: var(--pe-informe-accent);
	text-decoration: none;
	transition: color 0.15s ease, background-color 0.15s ease;
}

.pe-informe-single__parent-l1-link:hover,
.pe-informe-single__parent-l1-link:focus-visible {
	color: var(--pe-informe-accent-dark);
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.pe-informe-single__parent-l1-link:focus-visible {
	outline: 2px solid var(--pe-informe-accent);
	outline-offset: 2px;
}

.pe-informe-single__parent-l1-icon {
	flex-shrink: 0;
	margin-top: 0.12rem;
	color: currentColor;
}

.pe-informe-single__parent-l1-text {
	min-width: 0;
}

.pe-informe-single__year-wrap {
	margin-bottom: 1.25rem;
}

.pe-informe-single__year-select {
	width: 100%;
	padding: 0.6rem 2rem;
	font-size: 1rem;
	font-family: inherit;
	border: none;
	border-radius: 0;
	background-color: var(--pe-child-bg);
	box-sizing: border-box;
	cursor: pointer;
	appearance: none;
	color: var(--pe-informe-text);
	text-align: center;
	text-align-last: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23191919' d='M0 0h10L5 6z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.65rem center;
}

.pe-informe-single__year-select:focus-visible {
	outline: 2px solid var(--pe-informe-accent);
	outline-offset: 2px;
}

.pe-informe-single__year-fallback {
	margin: 0;
	font-size: 0.9rem;
	color: var(--pe-child-text-soft);
}

/* TOC */
.pe-informe-single__toc-nav {
	margin-bottom: 1.5rem;
	padding-top: 0.25rem;
	border-top: 1px solid var(--pe-child-border);
}

.pe-informe-single__toc-heading { 
	margin: 0 0 1rem;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	color: var(--pe-informe-accent);
	line-height: 18px;
}
 
.pe-informe-single__toc {
	list-style: none;
	margin: 0.35rem 0 0;
	padding: 0;
}

.pe-informe-single__toc-item {
	margin: 0 0 0.4rem;
	padding: 0;
}
 
/* Sumari del sidemenú: pes lleuger (300). !important per damunt d’estils del tema. */ 
.pe-informe-single__toc-nav .pe-informe-single__toc-link {
	font-weight: 300 !important;
}

/* Fila H2 amb plegador (només si hi ha H3 fills al contingut) */  
.pe-informe-single__toc-item--expandable > .pe-informe-single__toc-h2-row {
	display: flex;
	align-items: flex-start;
	gap: 0.25rem;
}

.pe-informe-single__toc-toggle {
	flex-shrink: 0;
	margin: 0;
	padding: 0.15rem 0.2rem 0.15rem 0;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--pe-informe-accent);
	line-height: 1;
	border-radius: 2px;
}

.pe-informe-single__toc-toggle:focus-visible {
	outline: 2px solid var(--pe-informe-accent);
	outline-offset: 2px;
}

.pe-informe-single__toc-caret {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.1rem;
	height: 1.1rem;
	margin-top: 0.2rem;
}

.pe-informe-single__toc-caret::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 7px solid currentColor;
	transform: rotate(0deg);
	transform-origin: 35% 50%;
	transition: transform 0.2s ease; 
} 

.pe-informe-single__toc-toggle[aria-expanded="true"] .pe-informe-single__toc-caret::before {
	transform: rotate(90deg);
}

.pe-informe-single__toc-item--expandable > .pe-informe-single__toc-h2-row > .pe-informe-single__toc-link {
	flex: 1 1 auto;
	min-width: 0;
	color: var(--pe-informe-text);
	text-decoration: none;
	font-size: 0.95rem;
	line-height: 1.35;
}

.pe-informe-single__toc-link--solo {
	display: block;
	color: var(--pe-informe-text);
	text-decoration: none;
	font-size: 0.95rem;
	line-height: 1.35;
}

.pe-informe-single__toc-sublist {
	list-style: none;
	margin: 0.35rem 0 0.15rem;
	padding: 0 0 0 0.35rem;
	border-left: 2px solid var(--pe-child-accent-line-soft);
}

.pe-informe-single__toc-sublist[hidden] {
	display: none;
}

.pe-informe-single__toc-sublist .pe-informe-single__toc-item--h3 {
	margin: 0 0 0.3rem;
	padding-left: 0.5rem;
}

.pe-informe-single__toc-item--orphan.pe-informe-single__toc-item--h3 {
	padding-left: 0.15rem;
}
 
.pe-informe-single__toc-item--h3 > .pe-informe-single__toc-link {
	font-weight: 300 !important;
	color: var(--pe-child-text-muted);
	font-size: 0.9rem;
	line-height: 1.4;
	text-decoration: none;
	display: block; 
}

.pe-informe-single__toc-link:hover,
.pe-informe-single__toc-link:focus-visible {
	color: var(--pe-informe-accent);
	text-decoration: underline;
}

.pe-informe-single__toc-toggle:hover .pe-informe-single__toc-caret::before,
.pe-informe-single__toc-toggle:focus-visible .pe-informe-single__toc-caret::before {
	border-left-color: var(--pe-informe-accent-dark);
	color: var(--pe-informe-accent-dark);
}

/* Apartats: pestanyes L2 al sidemenu (sync amb el cos) */        
.pe-informe-single__grafics-tabs-nav {
	margin-bottom: 1.5rem;
	padding-top: 0.35rem;
	border-top: 1px solid var(--pe-child-border);
}

.pe-informe-single__grafics-tabs-heading {
	margin: 0 0 0.5rem;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--pe-child-text-muted);
}

.pe-informe-single__grafics-tabs-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pe-informe-single__grafics-tab-item {
	margin: 0 0 0.35rem;
	padding: 0;
}

.pe-informe-single__grafics-tabs-nav .pe-informe-single__grafics-tab-btn,
.pe-informe-single__grafics-tab-btn {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0 !important;
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	border: none;
	background: transparent;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
	font-size: 0.95rem;
	line-height: 1.35;
	font-weight: 300 !important;
	color: var(--pe-informe-text);
	text-decoration: none;
	-webkit-appearance: none;
	appearance: none;
	min-height: 0;
}

.pe-informe-single__grafics-tab-btn:hover,
.pe-informe-single__grafics-tab-btn:focus-visible {
	color: var(--pe-informe-accent);
	text-decoration: underline;
}

.pe-informe-single__grafics-tab-btn:focus-visible {
	outline: 2px solid var(--pe-informe-accent);
	outline-offset: 2px;
} 
  
.pe-informe-single__grafics-tab-item--current .pe-informe-single__grafics-tab-btn {
	font-weight: 600 !important;
	margin-left: -0.15rem;
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0.5rem !important;
	border-left: 3px solid var(--pe-informe-accent);
	border-radius: 2px;
}

.pe-informe-single__grafics-tab-item--current .pe-informe-single__grafics-tab-btn:hover,
.pe-informe-single__grafics-tab-item--current .pe-informe-single__grafics-tab-btn:focus-visible {
	color: var(--pe-informe-accent-dark); 
}
 
.pe-informe-single__grafics-tab-item--demarcacio-h2 .pe-informe-single__grafics-tab-btn {
	font-size: 0.9rem;
}

.pe-informe-grafics[hidden],
.pe-informe-single__demarcacio-content[hidden] {
	display: none !important;
}

.pe-informe-single__demarcacio-content {
	margin-top: 0;
}

/* Comarques (sidemenu, sota el TOC) */   
.pe-informe-single__comarques-nav {
	margin-bottom: 1.5rem;
	padding-top: 0.35rem;
	border-top: 1px solid var(--pe-child-border);
}

.pe-informe-single__comarques-heading {
	margin: 0 0 1rem;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--pe-child-text-muted);
}

.pe-informe-single__comarques-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pe-informe-single__comarca-item {
	margin: 0 0 0.35rem;
	padding: 0;
}

.pe-informe-single__comarca-link {
	display: block;
	font-size: 0.95rem;
	line-height: 1.35;
	font-weight: 300 !important;
	color: var(--pe-informe-text);
	text-decoration: none;
}

.pe-informe-single__comarca-link:hover,
.pe-informe-single__comarca-link:focus-visible {
	color: var(--pe-informe-accent);
	text-decoration: underline;
}

.pe-informe-single__comarca-item--current .pe-informe-single__comarca-link {
	font-weight: 600 !important;
	padding-left: 0.5rem;
	margin-left: -0.15rem;
	border-left: 3px solid var(--pe-informe-accent);
	border-radius: 2px;
}

.pe-informe-single__comarca-item--current .pe-informe-single__comarca-link:hover,
.pe-informe-single__comarca-item--current .pe-informe-single__comarca-link:focus-visible {
	color: var(--pe-informe-accent-dark);
}

/* Contingut principal: la resta de l’amplada de pàgina (més aire top / left / right) */ 
.pe-informe-single__main {
	flex: 1 1 0;
	min-width: 0;
	width: auto;
	max-width: none;
	box-sizing: border-box;
	font-size: 1rem;
	line-height: 1.6;
	color: var(--pe-informe-text);
	padding: clamp(2.75rem, 5.5vw, 4.5rem) clamp(2.25rem, 5.5vw, 4.75rem) calc(clamp(2.5rem, 4.5vw, 3.75rem) + clamp(3rem, 5vw, 4rem)) clamp(2.25rem, 5.5vw, 4.75rem);
	background-color: var(--pe-child-bg);
}

/* Fila pretítols (esquerra) + icona ACF enllaçable (dreta) */
.pe-informe-single__intro-row {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: clamp(0.75rem, 2vw, 1.5rem);
	margin: 0 0 1.75rem;
	padding: 0;
	min-width: 0;
	box-sizing: border-box;
	overflow: visible;
}

/* Titulars inicials — mateixa escala que un H2 de contingut Gutenberg */ 
.pe-informe-single__intro-headings {
	margin: 0;
	padding: 0;
	flex: 1 1 auto;
	min-width: 0;
	text-align: left;
}

/* Subtítol sobre l’H2 intro (text fix; no és capçalera per no trencar la jerarquia SEO). */    
.pe-informe-single__intro-subtitle {
	margin: 0 0 0.4rem 1px;
	padding: 0;
	font-size: clamp(0.72rem, 1.35vw, 0.9rem);
	line-height: 1.35;
	font-weight: 400;
	color: #333;
}
 
.pe-informe-single__intro-icon-link {
	flex-shrink: 0;
	position: relative;
	display: inline-block;
	line-height: 0;
	text-decoration: none;
	color: inherit;
	border-radius: 2px;
	overflow: visible;
	transition: opacity 0.15s ease;
}

@media (hover: hover) and (pointer: fine) {
	.pe-informe-single__intro-icon-link:hover {
		opacity: 0.92;
	}
}

.pe-informe-single__intro-icon-link:focus-visible {
	outline: 2px solid var(--pe-informe-accent);
	outline-offset: 3px;
}

.pe-informe-single__intro-icon-img {
	display: block;
	max-height: clamp(3.35rem, 9vw, 6.25rem);
	width: auto;
	max-width: min(240px, 46vw);
	height: auto;
	object-fit: contain;
} 
   
.pe-informe-single__intro-h2 {
	margin: 0;
	padding: 0;
	font-size: clamp(1.25rem, 2.5vw, 1.75rem);
	line-height: 1.25;
	margin-bottom: 0.5rem;
	font-weight: 400;
	letter-spacing: 0.02em;  
	color: var(--pe-informe-accent);
}

@media (min-width: 992px) {
	.pe-informe-single__intro-h2 {
		font-size: 40px;
	}
}

/* Pestanyes de gràfics (iframe) — mateix ample que el main */
.pe-informe-grafics {
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 clamp(1.35rem, 3.2vw, 2.15rem);
}

.pe-informe-grafics__tablist {
	display: flex;
	flex-wrap: nowrap;
	gap: 2px;
	width: 100%;
	box-sizing: border-box;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

/* Carrusel mòbil (fletxes + capçalera); a escriptori no canvia el layout. */
.pe-informe-grafics__mobile-slider {
	display: block;
	width: 100%;
	box-sizing: border-box;
}

.pe-informe-grafics__mobile-head {
	display: none;
}

.pe-informe-grafics__mobile-column {
	display: block;
	width: 100%;
	box-sizing: border-box;
}

/* Fletxes del carrusel mòbil: fora del panell només a viewport estret. */ 
.pe-informe-grafics__arrow--beside-panel {
	display: none;
}

/* Escriptori: cap fletxa visible (evita sobreescriptura del tema pare). */
@media (min-width: 768px) {
	.pe-informe-grafics .pe-informe-grafics__arrow--beside-panel {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
		position: absolute !important;
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		clip: rect(0, 0, 0, 0) !important;
		clip-path: inset(50%) !important;
		border: 0 !important;
	}
}

@media (max-width: 767.98px) {
	.pe-informe-grafics__tablist {
		display: none !important;
	}

	.pe-informe-grafics__mobile-slider {
		display: block;
		width: 100%;
		max-width: 100%;
		margin: 0;
	}

	.pe-informe-grafics__mobile-column {
		width: 100%;
		min-width: 0;
		display: flex;
		flex-direction: column;
		align-items: stretch;
	}

	.pe-informe-grafics__mobile-head {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto auto;
		grid-template-rows: auto;
		align-items: center;
		column-gap: 0.35rem;
		width: 100%;
		box-sizing: border-box;
		padding: 0.5rem 0.45rem 0.5rem 0.75rem;
		min-height: 2.65rem;
		font-family: "Work Sans", sans-serif;
		font-size: clamp(0.95rem, 3.2vw, 1.1rem);
		font-weight: 600;
		line-height: 1.25;
		color: var(--pe-child-on-accent);
		background-color: var(--pe-child-accent);
		border: 1px solid var(--pe-child-accent);
		border-bottom: 0;
	}

	.pe-informe-grafics__mobile-head-main {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		gap: 0.5rem;
		grid-column: 1;
		grid-row: 1;
		min-width: 0;
	}

	.pe-informe-grafics__panels {
		min-width: 0;
		width: 100%;
	}

	/* Sense dependre del body: el display:none global només es pot anul·lar si el selector coincideix sempre dins de la secció. */
	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel {
		display: inline-flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		align-items: center;
		justify-content: center;
		grid-row: 1;
		width: 2.35rem !important;
		min-width: 2.35rem !important;
		max-width: 2.35rem !important;
		height: 2.35rem !important;
		padding: 0 !important;
		margin: 0 !important;
		border: none !important;
		border-radius: 3px;
		box-sizing: border-box;
		background-color: transparent !important;
		color: #ffffff !important;
		cursor: pointer;
		transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel.pe-informe-grafics__arrow--prev {
		grid-column: 2;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel.pe-informe-grafics__arrow--next {
		grid-column: 3;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel:hover,
	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel:focus-visible {
		background-color: rgba(255, 255, 255, 0.18) !important;
		color: #ffffff !important;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel:focus-visible {
		outline: 2px solid #ffffff !important;
		outline-offset: 1px;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel:focus:not(:focus-visible) {
		outline: none;
	}

	.pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel .pe-informe-grafics__arrow-shape {
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel.pe-informe-grafics__arrow--prev .pe-informe-grafics__arrow-shape {
		border-width: 7px 10px 7px 0;
		border-color: transparent #ffffff transparent transparent !important;
	}

	.pe-informe-grafics .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel.pe-informe-grafics__arrow--next .pe-informe-grafics__arrow-shape {
		border-width: 7px 0 7px 10px;
		border-color: transparent transparent transparent #ffffff !important;
	}

	/* Una pestanya: més específic que la regla general de fletxes al head. */
	.pe-informe-grafics__mobile-slider.pe-informe-grafics__mobile-slider--single .pe-informe-grafics__mobile-head > .pe-informe-grafics__arrow--beside-panel {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	.pe-informe-grafics__mobile-head-label {
		flex: 1 1 auto;
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.pe-informe-grafics__mobile-head-main .pe-informe-grafics__tab-icon-wrap {
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		line-height: 0;
		color: var(--pe-child-on-accent);
	}

	.pe-informe-grafics__mobile-head-main .pe-informe-grafics__tab-icon.material-symbols-outlined,
	.pe-informe-grafics__mobile-head-main .pe-informe-grafics__tab-icon.material-symbols-sharp {
		font-size: 1.65rem;
		color: inherit;
	}

	.pe-informe-grafics__mobile-head-main .pe-informe-grafics__tab-icon--img {
		filter: brightness(0) invert(1);
	}
}

.pe-informe-grafics__tab {
	flex: 1 1 0;
	min-width: min(100px, 100%);
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	margin: 0;
	padding: 0.85rem 0.65rem;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	font-family: "Work Sans", sans-serif;
	font-size: clamp(0.75rem, 1.65vw, 0.9rem);
	font-weight: 300;
	line-height: 1.25;
	text-align: left;
	color: var(--pe-child-on-accent);
	background-color: var(--pe-child-tab-inactive);
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.pe-informe-grafics__tab:hover,
.pe-informe-grafics__tab:focus-visible {
	background-color: var(--pe-child-accent);
}

.pe-informe-grafics__tab[aria-selected="true"] {
	background-color: var(--pe-child-accent);
}

.pe-informe-grafics__tab:focus-visible {
	outline: 2px solid var(--pe-child-accent);
	outline-offset: 2px;
}

.pe-informe-grafics__tab:focus:not(:focus-visible) {
	outline: none;
}

.pe-informe-grafics__tab-icon-wrap {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.pe-informe-grafics__tab-icon.material-symbols-outlined,
.pe-informe-grafics__tab-icon.material-symbols-sharp {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(1.35rem, 3.2vw, 2rem);
	line-height: 1;
	width: 1em;
	height: 1em;
	overflow: hidden;
	font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
	color: inherit;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.pe-informe-grafics__tab-icon--img {
	display: block;
	width: clamp(1.35rem, 3.2vw, 2rem);
	height: clamp(1.35rem, 3.2vw, 2rem);
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.pe-informe-grafics__tab-label {
	min-width: 0;
	flex: 0 1 auto;
	max-width: calc(100% - 3.25rem);
	text-align: left;
	align-self: center;
	overflow-wrap: break-word;
	word-wrap: break-word;
	hyphens: auto;
}

.pe-informe-grafics__tab > .pe-informe-grafics__tab-label:only-child {
	max-width: 100%;
}

.pe-informe-grafics__panels {
	width: 100%;
	box-sizing: border-box;
}

.pe-informe-grafics__panel {
	margin: 0;
	padding: clamp(2.25rem, 2.5vw, 3rem) clamp(2rem, 2.8vw, 2.75rem);
	box-sizing: border-box;
	background-color: var(--pe-child-bg);
	/* Vora #347BBF suau: sense vora superior (encaixa amb les pestanyes), 10px als altres costats */
	border-style: solid;
	border-color: rgba(52, 123, 191, 0.10);
	border-width: 0 10px 10px 10px;
}
 
.pe-informe-grafics__iframe-shell {
	margin: 0;
	padding: clamp(0.1rem, 2.2vw, 0.1rem);
	box-sizing: border-box;
	background-color: var(--pe-child-bg);
	overflow: hidden;
	min-height: 280px;
}

.pe-informe-grafics__iframe {
	display: block;
	width: 100%;
	min-height: 420px;
	border: 0;
}

/* Embeds enganxats sencers (Infogram, Datawrapper amb scripts, etc.) */
.pe-informe-grafics__embed {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.pe-informe-grafics__embed iframe {
	width: 100%;
	max-width: 100%;
	border: 0;
	box-sizing: border-box;
}

.pe-informe-grafics__empty {
	margin: 0;
	padding: 1.25rem 1rem;
	font-size: 0.95rem;
	color: var(--pe-informe-text);
	text-align: center;
}

/* Gràfic principal com a imatge (3r nivell) + contingut Gutenberg sota el gràfic dins la mateixa pestanya */    
.pe-informe-grafics__image-wrap {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	text-align: center;
}

.pe-informe-grafics__image {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

.pe-informe-grafics__child-content {
	margin: 0;
	margin-top: clamp(0.85rem, 2vw, 1.35rem);
	padding: clamp(0.85rem, 2vw, 1.25rem) 0 0;
	border-top: 1px solid var(--pe-child-border);
	box-sizing: border-box;
}

@media (max-width: 767.98px) {
	.pe-informe-grafics__panel {
		border-style: solid;
		border-color: var(--pe-child-accent);
		border-width: 0 1px 1px 1px;
		padding: clamp(1rem, 3.5vw, 1.5rem) clamp(0.85rem, 3vw, 1.25rem);
	}

	/* Ancestre + !important: el tema pare o fulls posteriors podenn reimposar 280px / 420px al shell o iframe. */
	.pe-informe-grafics .pe-informe-grafics__iframe-shell {
		min-height: 0 !important;
		padding: clamp(0.45rem, 1.5vw, 0.75rem);
	}

	.pe-informe-grafics .pe-informe-grafics__iframe {
		min-height: 0 !important;
		height: auto !important;
		max-height: none;
	}

	.pe-informe-grafics .pe-informe-grafics__embed iframe {
		min-height: 0 !important;
		max-height: none !important;
		height: auto !important;
	}
}

/* Descàrregues — alineades amb el blau del contingut */
.pe-informe-single__downloads {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	padding-top: 0.5rem;
	border-top: 1px solid var(--pe-child-border);
}

.pe-informe-single__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.65rem 0.85rem;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
	border-radius: 0;
	box-sizing: border-box;
	text-align: center;
	line-height: 1.25;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.pe-informe-single__btn--outline {
	background: var(--pe-child-bg);
	color: var(--pe-informe-accent);
	border: 2px solid var(--pe-informe-accent);
}

.pe-informe-single__btn--outline:hover,
.pe-informe-single__btn--outline:focus-visible {
	background: var(--pe-child-accent-fill-soft);
	color: var(--pe-informe-accent-dark);
	border-color: var(--pe-informe-accent-dark);
}

.pe-informe-single__btn--solid {
	background: var(--pe-informe-accent);
	color: var(--pe-child-on-accent);
	border: 2px solid var(--pe-informe-accent);
}

.pe-informe-single__btn--solid:hover,
.pe-informe-single__btn--solid:focus-visible {
	background: var(--pe-informe-accent-dark);
	border-color: var(--pe-informe-accent-dark);
	color: var(--pe-child-on-accent);
}

.pe-informe-single__btn--missing {
	opacity: 0.55;
	cursor: not-allowed;
	pointer-events: none;
}

.pe-informe-single__dl-icon {
	flex-shrink: 0;
}

.pe-informe-single__btn--solid .pe-informe-single__dl-icon {
	color: var(--pe-child-on-accent);
}

.pe-informe-single__btn--outline .pe-informe-single__dl-icon {
	color: var(--pe-informe-accent);
}

/* Vista "no abrible": una mica més d’aire abans del botó de descàrrega */ 
.pe-informe-single__download-only-actions {
	margin-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* Botó fix mòbil (overlay del sidemenú): amagat a escriptori */
.pe-informe-single__nav-toggle {
	display: none;
}

@media (max-width: 900px) {
	/*
	 * Bridge / layout: si un avantpassat té transform, position:fixed es mesura al bloc estret.
	 * Neutralitzem transform al single perquè overlay + FAB siguin al viewport sencer.
	 */
	body.single-informe-socioeconomi .wrapper,
	body.single-informe-socioeconomi .wrapper_inner,
	body.single-informe-socioeconomi .content,
	body.single-informe-socioeconomi .content .content_inner,
	body.single-informe-socioeconomi .full_width,
	body.single-informe-socioeconomi .full_width_inner,
	body.single-informe-socioeconomi .pe-informe-single {
		transform: none !important;
		filter: none !important;
		perspective: none !important;
	}

	.pe-informe-single {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.pe-informe-single__outer {
		flex-direction: row;
		flex-wrap: nowrap;
	}

	/* FAB inferior esquerra (estil "botó de trucar"): floating, sticky amb position:fixed.
	 * Tancat vermell, obert negre. Safe-area per evitar la home indicator de l’iPhone. */  
	.pe-informe-single__nav-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		top: auto;
		left: max(1rem, env(safe-area-inset-left, 0px));
		bottom: max(1rem, env(safe-area-inset-bottom, 0px));
		/* Per damunt del header Bridge i del drawer (2000000) */ 
		z-index: 2000010;
		width: 3rem;
		height: 3rem;
		margin: 0;
		padding: 0;
		border: none;
		border-radius: 50%;
		box-sizing: border-box;
		cursor: pointer;
		background-color: #d12c24;
		color: #fff;
		box-shadow: 0 6px 16px rgba(0, 0, 0, 0.22), 0 2px 4px rgba(0, 0, 0, 0.18);
		transition: background-color 0.2s ease, box-shadow 0.2s ease;
	}

	html.pe-informe-nav-drawer-open .pe-informe-single__nav-toggle {
		background-color: #000;
	}

	.pe-informe-single__nav-toggle:focus-visible {
		outline: 2px solid var(--pe-informe-accent);
		outline-offset: 2px;
	}

	.pe-informe-single__nav-toggle-icons {
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 0;
	}

	.pe-informe-single__nav-toggle-icon {
		display: block;
		width: 1.5rem;
		height: 1.5rem;
	}

	.pe-informe-single__nav-toggle-icon--close-menu {
		display: none;
	}

	html.pe-informe-nav-drawer-open .pe-informe-single__nav-toggle-icon--open-menu {
		display: none;
	}

	html.pe-informe-nav-drawer-open .pe-informe-single__nav-toggle-icon--close-menu {
		display: block;
	}

	/*
	 * Overlay a pantalla completa (viewport): no usar width/height 0 — fixen la caixa a 0px.
	 * Fora del flux flex; el contingut principal pot ocupar el 100% d’amplada.
	 */
	.pe-informe-single__sidebar-shell {
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		width: auto;
		min-width: 0;
		max-width: none;
		height: 100vh;
		height: 100dvh;
		min-height: 100vh;
		min-height: 100dvh;
		bottom: 0;
		/* Per damunt del header Bridge (z-index alt) per cobrir tota la pantalla; el FAB (2000010) queda per davant. */
		z-index: 2000000;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		overflow: visible;
		align-self: flex-start;
		flex: 0 0 auto;
		background: var(--pe-informe-sidebar-bg);
		transform: translateX(-100%);
		pointer-events: none;
		visibility: hidden;
		transition: transform 0.28s ease, visibility 0.28s ease;
	}

	html.pe-informe-nav-drawer-open .pe-informe-single__sidebar-shell {
		transform: translateX(0);
		pointer-events: auto;
		visibility: visible;
	}

	.pe-informe-single__sidebar {
		position: relative;
		top: auto;
		width: 100%;
		max-width: 100%;
		min-height: 100%;
		max-height: none;
		height: auto;
		box-sizing: border-box;
		margin: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		border: none;
		box-shadow: none;
		padding: clamp(1.35rem, 3.5vw, 1.85rem) clamp(1.15rem, 3vw, 1.65rem) clamp(1.5rem, 3.5vw, 2rem);
		padding-left: max(clamp(1.15rem, 3vw, 1.65rem), env(safe-area-inset-left, 0px));
		padding-top: max(
			clamp(1.35rem, 3.5vw, 1.85rem),
			calc(env(safe-area-inset-top, 0px) + 0.5rem)
		);
		/* Reserva espai inferior perquè el FAB (3rem + 1rem + safe-area) no tapi les descàrregues */
		padding-bottom: calc(3rem + 2rem + env(safe-area-inset-bottom, 0px));
	}

	html.pe-informe-nav-drawer-open .pe-informe-single__sidebar {
		min-height: 100%;
	}

	.pe-informe-single__main {
		flex: 1 1 auto;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		padding: clamp(2rem, 5vw, 3.25rem) clamp(1.5rem, 4.5vw, 2.5rem) calc(clamp(2rem, 4vw, 3rem) + clamp(3rem, 5vw, 4rem))
			clamp(1.5rem, 4.5vw, 2.5rem);
	}
}

/* Bloqueig de scroll del document quan el drawer mòbil està obert (classe al html) */ 
html.pe-informe-nav-drawer-open {
	overflow: hidden;
}

html.pe-informe-single-smooth {
	scroll-behavior: auto;
}

/* Aire entre seccions: tots els títols del contingut Gutenberg */ 
#pe-informe-single-gutenberg h1,
#pe-informe-single-demarcacio-content h1,
#pe-informe-single-gutenberg h2,
#pe-informe-single-demarcacio-content h2,
#pe-informe-single-gutenberg h3,
#pe-informe-single-demarcacio-content h3,
#pe-informe-single-gutenberg h4,
#pe-informe-single-demarcacio-content h4,
#pe-informe-single-gutenberg h5,
#pe-informe-single-demarcacio-content h5,
#pe-informe-single-gutenberg h6,
#pe-informe-single-demarcacio-content h6,
.pe-informe-grafics__child-content h1,
.pe-informe-grafics__child-content h2,
.pe-informe-grafics__child-content h3,
.pe-informe-grafics__child-content h4,
.pe-informe-grafics__child-content h5,
.pe-informe-grafics__child-content h6 {
	margin-top: var(--pe-child-space-section);
	margin-bottom: clamp(0.55rem, 1.35vw, 0.95rem);
}

/* El primer bloc del Gutenberg no duplica marge respecte als pre-títols */
#pe-informe-single-gutenberg > :first-child:is(h1, h2, h3, h4, h5, h6),
#pe-informe-single-demarcacio-content > :first-child:is(h1, h2, h3, h4, h5, h6),
.pe-informe-grafics__child-content > :first-child:is(h1, h2, h3, h4, h5, h6) {
	margin-top: 0;
}

#pe-informe-single-gutenberg h2,
#pe-informe-single-demarcacio-content h2,
#pe-informe-single-gutenberg h3,
#pe-informe-single-demarcacio-content h3,
.pe-informe-grafics__child-content h2,
.pe-informe-grafics__child-content h3 {
	/* Sticky + marge extra per enllaços del sidemenú (scroll no tapa el títol) */
	scroll-margin-top: calc(var(--pe-informe-sticky-top, 5.5rem) + 3rem);
}

/*
 * Mòbil: scroll-padding a html i body (sovetja el scrollport real del tema / Bridge).
 * Reforç scroll-margin als h2/h3 per salts # natius; el TOC també usa JS amb offset. 
 * No usem scroll-snap-type al document: trencaria el scroll de lectura.
 */
@media (max-width: 900px) {
	html,
	body {
		scroll-padding-top: calc(var(--pe-informe-sticky-top, 5.5rem) + 2.85rem + env(safe-area-inset-top, 0px));
	}

	body.single-informe-socioeconomi #pe-informe-single-gutenberg h2,
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content h2,
	body.single-informe-socioeconomi #pe-informe-single-gutenberg h3,
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content h3,
	body.single-informe-socioeconomi .pe-informe-grafics__child-content h2,
	body.single-informe-socioeconomi .pe-informe-grafics__child-content h3 {
		scroll-margin-top: calc(var(--pe-informe-sticky-top, 5.5rem) + 2rem + 2.65rem + env(safe-area-inset-top, 0px)) !important;
	}

	/* Tipografia mòbil: jerarquia clara h2 vs h3 al cos Gutenberg */
	body.single-informe-socioeconomi #pe-informe-single-gutenberg h2,
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content h2 {
		font-size: clamp(1.32rem, 4.1vw, 1.58rem);
		font-weight: 700;
		line-height: 1.28;
		color: var(--pe-informe-text);
		border-bottom: 2px solid var(--pe-informe-accent);
		padding-bottom: 0.4rem;
	}

	body.single-informe-socioeconomi .pe-informe-grafics__child-content h2 {
		font-size: clamp(1.32rem, 4.1vw, 1.58rem);
		font-weight: 700;
		line-height: 1.28;
		color: var(--pe-informe-text);
		border-bottom: 2px solid var(--pe-informe-accent);
		padding-bottom: 0.4rem;
	}

	body.single-informe-socioeconomi #pe-informe-single-gutenberg h3,
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content h3 {
		font-size: clamp(1.08rem, 3.25vw, 1.28rem);
		font-weight: 600;
		line-height: 1.34;
		letter-spacing: 0.025em;
		color: var(--pe-informe-text);
		border-left: 3px solid var(--pe-informe-accent);
		padding-left: 0.65rem;
		border-bottom: none;
		padding-bottom: 0;
	}

	body.single-informe-socioeconomi .pe-informe-grafics__child-content h3 {
		font-size: clamp(1.08rem, 3.25vw, 1.28rem);
		font-weight: 600;
		line-height: 1.34;
		letter-spacing: 0.025em;
		color: var(--pe-informe-text);
		border-left: 3px solid var(--pe-informe-accent);
		padding-left: 0.65rem;
		border-bottom: none;
		padding-bottom: 0;
	}

	/* Intro: títol principal del single — més gran que els H2 del cos a mòbil */ 
	body.single-informe-socioeconomi .pe-informe-single__intro-h2 {
		font-size: clamp(1.45rem, 5.5vw, 2.00rem);
		line-height: 1.22;
	}
}

/*
 * Bloc HTML personalitzat (iframes enganxats, etc.): aire vertical al cos del contingut.
 * !important + margin-block: el tema / layout de blocs (is-layout-*) pot posar margin a 0. 
 */ 
body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-html,
body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-html {
	margin-top: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
	margin-bottom: var(--pe-child-space-section) !important;
	margin-block-start: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
	margin-block-end: var(--pe-child-space-section) !important;
	box-sizing: border-box;
}

body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-html {
	margin-top: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
	margin-bottom: var(--pe-child-space-section) !important;
	margin-block-start: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
	margin-block-end: var(--pe-child-space-section) !important;
	box-sizing: border-box;
}

body.single-informe-socioeconomi #pe-informe-single-gutenberg > .wp-block-html:first-child,
body.single-informe-socioeconomi #pe-informe-single-demarcacio-content > .wp-block-html:first-child,
body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-post-content > .wp-block-html:first-child,
body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-post-content > .wp-block-html:first-child {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

body.single-informe-socioeconomi .pe-informe-grafics__child-content > .wp-block-html:first-child,
body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-post-content > .wp-block-html:first-child {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

body.single-informe-socioeconomi #pe-informe-single-gutenberg > .wp-block-html:last-child,
body.single-informe-socioeconomi #pe-informe-single-demarcacio-content > .wp-block-html:last-child,
body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-post-content > .wp-block-html:last-child,
body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-post-content > .wp-block-html:last-child {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}

body.single-informe-socioeconomi .pe-informe-grafics__child-content > .wp-block-html:last-child,
body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-post-content > .wp-block-html:last-child {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}

/*
 * Dins columnes Gutenberg: 100% de l’ample de la columna (el 70% global queda massa petit en 50/50).
 * Es manté --pe-child-gutenberg-embed-max-width (cap global en px).   
 */
body.single-informe-socioeconomi .pe-child-gutenberg .wp-block-column {
	--pe-child-gutenberg-embed-width: 100%;
}

/*
 * Iframes al contingut: Datawrapper usa width:0 + min-width:100% !important inline.  
 * El JS limita el contenidor (figure, :has); min(70%, cap token). Cap única: 700px (--pe-child-gutenberg-embed-max-width). width + max-width perquè Datawrapper min-width:100% !important no trenqui el límit a l’iframe.
 * Per sota de 992px (layout mòbil del informe) s’amplia al 100% perquè els embeds ocupin tot l’ample útil. 
 *   
 */ 
#pe-informe-single-gutenberg figure.wp-block-embed,
#pe-informe-single-gutenberg .wp-block-embed,
#pe-informe-single-demarcacio-content figure.wp-block-embed,
#pe-informe-single-demarcacio-content .wp-block-embed,
.pe-informe-grafics__child-content figure.wp-block-embed,
.pe-informe-grafics__child-content .wp-block-embed {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
	max-width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
	margin-inline: auto;
	margin-block: 0;
	box-sizing: border-box;
}

#pe-informe-single-gutenberg .wp-block-embed__wrapper,
#pe-informe-single-demarcacio-content .wp-block-embed__wrapper,
.pe-informe-grafics__child-content .wp-block-embed__wrapper {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/*
 * Datawrapper embed script: fill al 100% dins el bloc pare ja limitat (mateix patró que iframe).
 * El límit min(70%, 700px) el posa el pare via :has() + JS; no es repeteix aquí.
 */
#pe-informe-single-gutenberg div[id^="datawrapper-vis-"],
#pe-informe-single-demarcacio-content div[id^="datawrapper-vis-"],
.pe-informe-grafics__child-content div[id^="datawrapper-vis-"] {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin-inline: auto;
	margin-block: var(--pe-child-space-media);
	box-sizing: border-box;
	overflow-x: auto;
}

#pe-informe-single-gutenberg div[id^="datawrapper-vis-"] > :not(script):not(noscript),
#pe-informe-single-demarcacio-content div[id^="datawrapper-vis-"] > :not(script):not(noscript),
.pe-informe-grafics__child-content div[id^="datawrapper-vis-"] > :not(script):not(noscript) {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

/* Iframes Gutenberg: marge vertical lleuger (només l’element iframe). */
#pe-informe-single-gutenberg iframe,
#pe-informe-single-demarcacio-content iframe,
.pe-informe-grafics__child-content iframe {
	display: block;
	margin-top: var(--pe-child-space-media);
	margin-bottom: var(--pe-child-space-media);
	margin-block: var(--pe-child-space-media);
	box-sizing: border-box;
}

#pe-informe-single-gutenberg .wp-block-embed iframe,
#pe-informe-single-demarcacio-content .wp-block-embed iframe,
.pe-informe-grafics__child-content .wp-block-embed iframe {
	width: 100%;
	max-width: 100%;
	height: 100%;
	border: 0;
}

@supports selector(:has(*)) {
	body.single-informe-socioeconomi #pe-informe-single-gutenberg p:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-gutenberg p:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content p:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content p:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-html:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-html:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-html:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-html:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-freeform:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-freeform:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-freeform:has(iframe),
	body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]) {
		width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
		max-width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
		margin-inline: auto;
		margin-top: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
		margin-bottom: var(--pe-child-space-section) !important;
		margin-block-start: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
		margin-block-end: var(--pe-child-space-section) !important;
		box-sizing: border-box;
	}

	body.single-informe-socioeconomi .pe-informe-grafics__child-content p:has(iframe),
	body.single-informe-socioeconomi .pe-informe-grafics__child-content p:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-html:has(iframe),
	body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-html:has(div[id^="datawrapper-vis-"]),
	body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-freeform:has(iframe),
	body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]) {
		width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
		max-width: min(var(--pe-child-gutenberg-embed-width), var(--pe-child-gutenberg-embed-max-width));
		margin-inline: auto;
		margin-top: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
		margin-bottom: var(--pe-child-space-section) !important;
		margin-block-start: calc(var(--pe-child-space-section) + var(--pe-child-space-media)) !important;
		margin-block-end: var(--pe-child-space-section) !important;
		box-sizing: border-box;
	}

	/* Caixa amb ratio (Infogram, etc.): ocupar tot l’ample del bloc ja limitat pel token d’embed. */
	#pe-informe-single-gutenberg .wp-block-html:has(iframe) > div:has(> iframe),
	#pe-informe-single-demarcacio-content .wp-block-html:has(iframe) > div:has(> iframe),
	#pe-informe-single-gutenberg .wp-block-freeform:has(iframe) > div:has(> iframe),
	#pe-informe-single-demarcacio-content .wp-block-freeform:has(iframe) > div:has(> iframe) {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	.pe-informe-grafics__child-content .wp-block-html:has(iframe) > div:has(> iframe),
	.pe-informe-grafics__child-content .wp-block-freeform:has(iframe) > div:has(> iframe) {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	#pe-informe-single-gutenberg .wp-block-html:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]),
	#pe-informe-single-demarcacio-content .wp-block-html:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]),
	#pe-informe-single-gutenberg .wp-block-freeform:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]),
	#pe-informe-single-demarcacio-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]),
	.pe-informe-grafics__child-content .wp-block-html:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]),
	.pe-informe-grafics__child-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]) > div:has(> div[id^="datawrapper-vis-"]) {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}
}

@media (max-width: 991.98px) {
	#pe-informe-single-gutenberg figure.wp-block-embed,
	#pe-informe-single-gutenberg .wp-block-embed,
	#pe-informe-single-demarcacio-content figure.wp-block-embed,
	#pe-informe-single-demarcacio-content .wp-block-embed,
	.pe-informe-grafics__child-content figure.wp-block-embed,
	.pe-informe-grafics__child-content .wp-block-embed {
		width: 100%;
		max-width: 100%;
	}
}

@supports selector(:has(*)) {
	@media (max-width: 991.98px) {
		body.single-informe-socioeconomi #pe-informe-single-gutenberg p:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-gutenberg p:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content p:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content p:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-html:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-html:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-html:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-html:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-freeform:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-gutenberg .wp-block-freeform:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-freeform:has(iframe),
		body.single-informe-socioeconomi #pe-informe-single-demarcacio-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content p:has(iframe),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content p:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-html:has(iframe),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-html:has(div[id^="datawrapper-vis-"]),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-freeform:has(iframe),
		body.single-informe-socioeconomi .pe-informe-grafics__child-content .wp-block-freeform:has(div[id^="datawrapper-vis-"]) {
			width: 100%;
			max-width: 100%;
		}
	}
}

/* Espaiatge de textos i blocs de cos (més lleuger que el margin-top dels títols) */
#pe-informe-single-gutenberg p,
#pe-informe-single-demarcacio-content p,
.pe-informe-grafics__child-content p {
	margin-top: 0;
	margin-bottom: var(--pe-child-space-flow);
}

#pe-informe-single-gutenberg p:last-child,
#pe-informe-single-demarcacio-content p:last-child,
.pe-informe-grafics__child-content p:last-child {
	margin-bottom: 0;
}

#pe-informe-single-gutenberg ul,
#pe-informe-single-demarcacio-content ul,
#pe-informe-single-gutenberg ol,
#pe-informe-single-demarcacio-content ol,
.pe-informe-grafics__child-content ul,
.pe-informe-grafics__child-content ol {
	margin-top: 0;
	margin-bottom: var(--pe-child-space-flow);
}

#pe-informe-single-gutenberg li + li,
#pe-informe-single-demarcacio-content li + li,
.pe-informe-grafics__child-content li + li {
	margin-top: 0.35rem;
}

/* Imatges: aire vertical respecte al text adjacent */
#pe-informe-single-gutenberg .wp-block-image,
#pe-informe-single-demarcacio-content .wp-block-image,
#pe-informe-single-gutenberg figure.wp-block-image,
#pe-informe-single-demarcacio-content figure.wp-block-image,
.pe-informe-grafics__child-content .wp-block-image,
.pe-informe-grafics__child-content figure.wp-block-image {
	margin-top: var(--pe-child-space-media);
	margin-bottom: var(--pe-child-space-media);
}

#pe-informe-single-gutenberg .wp-block-image:first-child,
#pe-informe-single-demarcacio-content .wp-block-image:first-child,
#pe-informe-single-gutenberg figure.wp-block-image:first-child,
#pe-informe-single-demarcacio-content figure.wp-block-image:first-child,
.pe-informe-grafics__child-content .wp-block-image:first-child,
.pe-informe-grafics__child-content figure.wp-block-image:first-child {
	margin-top: 0;
}

#pe-informe-single-gutenberg .wp-block-gallery,
#pe-informe-single-demarcacio-content .wp-block-gallery,
.pe-informe-grafics__child-content .wp-block-gallery {
	margin-top: var(--pe-child-space-media);
	margin-bottom: var(--pe-child-space-media);
}

#pe-informe-single-gutenberg .wp-block-gallery:first-child,
#pe-informe-single-demarcacio-content .wp-block-gallery:first-child,
.pe-informe-grafics__child-content .wp-block-gallery:first-child {
	margin-top: 0;
}

/* Cites Gutenberg: línies horitzontals fines, text blau (accent), cos destacat i marge vertical generós */  
#pe-informe-single-gutenberg .wp-block-quote,
#pe-informe-single-demarcacio-content .wp-block-quote,
#pe-informe-single-gutenberg .wp-block-pullquote,
#pe-informe-single-demarcacio-content .wp-block-pullquote,
.pe-informe-grafics__child-content .wp-block-quote,
.pe-informe-grafics__child-content .wp-block-pullquote {
	border-left: none;
	border-right: none;
	border-top: var(--pe-child-quote-border-width) solid var(--pe-informe-accent);
	border-bottom: var(--pe-child-quote-border-width) solid var(--pe-informe-accent);
	padding: var(--pe-child-space-quote-pad) 0 !important;
	margin-block: var(--pe-child-space-quote) !important;
	margin-inline: 0;
	color: var(--pe-informe-accent);
	font-size: var(--pe-child-quote-font-size) !important;
	line-height: 1.55;
	background: transparent;
	box-shadow: none;
}

#pe-informe-single-gutenberg .wp-block-quote p,
#pe-informe-single-demarcacio-content .wp-block-quote p,
#pe-informe-single-gutenberg .wp-block-pullquote p,
#pe-informe-single-demarcacio-content .wp-block-pullquote p,
.pe-informe-grafics__child-content .wp-block-quote p,
.pe-informe-grafics__child-content .wp-block-pullquote p {
	margin: 0 0 0.65rem;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

#pe-informe-single-gutenberg .wp-block-quote p:last-child,
#pe-informe-single-demarcacio-content .wp-block-quote p:last-child,
#pe-informe-single-gutenberg .wp-block-pullquote p:last-child,
#pe-informe-single-demarcacio-content .wp-block-pullquote p:last-child,
.pe-informe-grafics__child-content .wp-block-quote p:last-child,
.pe-informe-grafics__child-content .wp-block-pullquote p:last-child {
	margin-bottom: 0;
}

#pe-informe-single-gutenberg .wp-block-quote strong,
#pe-informe-single-demarcacio-content .wp-block-quote strong,
#pe-informe-single-gutenberg .wp-block-pullquote strong,
#pe-informe-single-demarcacio-content .wp-block-pullquote strong,
.pe-informe-grafics__child-content .wp-block-quote strong,
.pe-informe-grafics__child-content .wp-block-pullquote strong {
	color: inherit;
}

#pe-informe-single-gutenberg .wp-block-quote cite,
#pe-informe-single-demarcacio-content .wp-block-quote cite,
#pe-informe-single-gutenberg .wp-block-pullquote cite,
#pe-informe-single-demarcacio-content .wp-block-pullquote cite,
#pe-informe-single-gutenberg .wp-block-pullquote .wp-block-pullquote__citation,
#pe-informe-single-demarcacio-content .wp-block-pullquote .wp-block-pullquote__citation,
.pe-informe-grafics__child-content .wp-block-quote cite,
.pe-informe-grafics__child-content .wp-block-pullquote cite,
.pe-informe-grafics__child-content .wp-block-pullquote .wp-block-pullquote__citation {
	font-style: normal;
	color: inherit;
	opacity: 0.92;
	font-size: 0.82em;
	display: block;
	margin-top: 0.5rem;
}

#pe-informe-single-gutenberg .wp-block-pullquote,
#pe-informe-single-demarcacio-content .wp-block-pullquote,
.pe-informe-grafics__child-content .wp-block-pullquote {
	text-align: left;
}

/* El pullquote du un blockquote intern sense .wp-block-quote */
#pe-informe-single-gutenberg .wp-block-pullquote blockquote,
#pe-informe-single-demarcacio-content .wp-block-pullquote blockquote,
.pe-informe-grafics__child-content .wp-block-pullquote blockquote {
	border: none;
	margin: 0;
	padding: 0;
	background: none;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

#pe-informe-single-gutenberg .wp-block-table,
#pe-informe-single-demarcacio-content .wp-block-table,
#pe-informe-single-gutenberg figure.wp-block-table,
#pe-informe-single-demarcacio-content figure.wp-block-table,
.pe-informe-grafics__child-content .wp-block-table,
.pe-informe-grafics__child-content figure.wp-block-table {
	margin-top: 0;
	margin-bottom: var(--pe-child-space-flow);
}

#pe-informe-single-gutenberg pre,
#pe-informe-single-demarcacio-content pre,
#pe-informe-single-gutenberg .wp-block-preformatted,
#pe-informe-single-demarcacio-content .wp-block-preformatted,
.pe-informe-grafics__child-content pre,
.pe-informe-grafics__child-content .wp-block-preformatted {
	margin-top: 0;
	margin-bottom: var(--pe-child-space-flow);
}
