.ar-facts {
	padding: 5rem 0 4rem;
	overflow: hidden;
	background: transparent;
}

/* Homepage-only background: solid white. */
.home .ar-facts {
	background: #fff;
}

.wp-block-annual-report-facts-stats.ar-facts h2,
.ar-facts h2 {
	width: min(1100px, 90vw);
	margin: 0 auto 2rem;
	font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: -0.02em !important;
	color: #19335b !important;
	text-decoration: underline;
	text-decoration-thickness: 4px;
	text-decoration-color: #ffc800;
	text-decoration-skip-ink: none;
	text-underline-offset: 6px;
	text-transform: none;
}

.home .wp-block-annual-report-facts-stats.ar-facts h2,
.home .ar-facts h2 {
	width: min(var(--wp--style--global--content-size), calc(100% - (2 * var(--wp--style--root--padding-left))));
	max-width: var(--wp--style--global--content-size);
	margin: 0 auto 2rem;
	box-sizing: border-box;
}

.ar-facts-marquee-shell {
	position: relative;
	overflow: hidden;
	padding: 0.3rem 0;
	line-height: 1;
}

.ar-facts-marquee {
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	-webkit-overflow-scrolling: touch;
}

.ar-facts-marquee::-webkit-scrollbar {
	display: none;
}

.ar-facts-marquee-shell::before,
.ar-facts-marquee-shell::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: clamp(2rem, 7vw, 7rem);
	z-index: 2;
	pointer-events: none;
}

.ar-facts-marquee-shell::before {
	left: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 100%);
}

.ar-facts-marquee-shell::after {
	right: 0;
	background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 100%);
}

.ar-facts-track {
	display: flex;
	width: max-content;
	will-change: scroll-position;
}

.ar-facts-group {
	display: flex;
	align-items: stretch;
	gap: 1.2rem;
	padding: 0 1.2rem 0 0;
	flex-wrap: nowrap;
}

.ar-fact {
	width: clamp(15rem, 22vw, 22rem);
	background: transparent;
	padding: 1rem 0;
	flex: 0 0 auto;
}

.wp-block-annual-report-facts-stats.ar-facts .ar-fact-value,
.ar-fact-value {
	margin: 0;
	font-size: clamp(1.8rem, 3vw, 3.2rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.02em !important;
	line-height: 1 !important;
	color: #1a335c !important;
	text-transform: none;
}

.wp-block-annual-report-facts-stats.ar-facts .ar-fact-label,
.ar-fact-label {
	margin: 0.55rem 0 0;
	font-size: clamp(0.95rem, 1.2vw, 1.5rem) !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #2a4363 !important;
	padding-bottom: 0.95rem;
	border-bottom: 0.32rem solid var(--fact-line, #2f6eb5);
	letter-spacing: normal;
	text-transform: none;
}

.ar-pie-chart {
	background: linear-gradient(180deg, #fbfdff 0%, #eef4f8 100%);
	border: 1px solid #d5e0ea;
	border-radius: 1.5rem;
	padding: clamp(1.4rem, 2vw, 1.8rem);
	height: 100%;
	box-sizing: border-box;
	box-shadow: 0 22px 44px rgba(22, 43, 67, 0.08);
}

.ar-pie-chart__title {
	margin: 0 0 1.25rem;
	color: #19335b;
}

.ar-pie-chart__layout {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(1.25rem, 2vw, 2rem);
	align-items: center;
}

.ar-pie-chart__visual {
	flex: 0 0 220px;
	width: min(220px, 100%);
	aspect-ratio: 1;
	margin: 0 auto;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, rgba(255, 255, 255, 0) 58%, rgba(25, 51, 91, 0.09) 58.4%, rgba(255, 255, 255, 0) 60%),
		var(--ar-pie-gradient, conic-gradient(#1c304a 0deg 360deg));
	display: grid;
	place-items: center;
	position: relative;
	box-shadow: inset 0 0 0 1px rgba(28, 48, 74, 0.08), 0 12px 30px rgba(28, 48, 74, 0.12);
}

.ar-pie-chart__center {
	width: 58%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(3px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0.75rem;
	box-sizing: border-box;
	box-shadow: 0 0 0 1px rgba(28, 48, 74, 0.08);
}

.ar-pie-chart__total-label {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #667a91;
}

.ar-pie-chart__total-value {
	margin-top: 0.25rem;
	font-size: clamp(1rem, 2vw, 1.35rem);
	font-weight: 800;
	line-height: 1.1;
	color: #1c304a;
}

.ar-pie-chart__legend {
	flex: 1 1 16rem;
	min-width: min(100%, 16rem);
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
}

.ar-pie-chart__legend-item {
	display: grid;
	grid-template-columns: 0.9rem 1fr;
	gap: 0.75rem;
	align-items: start;
	padding: 0.75rem 0.85rem;
	border-radius: 1rem;
	background: rgba(255, 255, 255, 0.66);
	border: 1px solid rgba(28, 48, 74, 0.08);
}

.ar-pie-chart__swatch {
	width: 0.9rem;
	height: 0.9rem;
	border-radius: 999px;
	margin-top: 0.22rem;
	background: var(--ar-pie-swatch, #1c304a);
}

.ar-pie-chart__legend-copy {
	display: grid;
	gap: 0.18rem;
}

.ar-pie-chart__legend-label {
	font-size: 0.96rem;
	font-weight: 700;
	line-height: 1.3;
	color: #1c304a;
}

.ar-pie-chart__legend-metric {
	font-size: 0.92rem;
	line-height: 1.4;
	color: #41566e;
}

.ar-pie-chart__legend-metric em {
	font-style: normal;
	color: #7c8ea3;
}

.ar-financial-table__title {
	margin-bottom: 0;
	color: #19335b;
}

.ar-financial-table__note {
	margin: 0.35rem 0 1rem;
	color: #566c84;
}

.ar-financial-table {
	background: linear-gradient(180deg, #fbfdff 0%, #f3f7fa 100%);
	border: 1px solid #d5e0ea;
	border-radius: 1.5rem;
	padding: clamp(1.3rem, 2vw, 1.8rem);
	box-shadow: 0 22px 44px rgba(22, 43, 67, 0.06);
	box-sizing: border-box;
	overflow: visible;
}

.ar-financial-table .fin26-table-wrap {
	margin-top: 1rem;
	border-radius: 1.15rem;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	background: #fff;
	border: 1px solid #dbe5ee;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.ar-financial-table .fin26-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin: 0;
	background: transparent;
}

.ar-financial-table .fin26-table thead th {
	padding: 1rem 1.1rem;
	background: linear-gradient(180deg, #1f4b7b 0%, #16395d 100%);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border: 0;
}

.ar-financial-table .fin26-table tbody td {
	padding: 0.95rem 1.1rem;
	border: 0;
	border-top: 1px solid #e5edf4;
	font-size: 1rem;
	line-height: 1.45;
	color: #24425f;
	background: transparent;
}

.ar-financial-table .fin26-table tbody tr:first-child td {
	border-top: 0;
}

.ar-financial-table .fin26-col-label {
	width: 52%;
	text-align: left;
	font-weight: 600;
}

.ar-financial-table .fin26-col-value {
	width: 24%;
	text-align: right;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
	white-space: nowrap;
}

.ar-financial-table .fin26-table tbody tr:nth-child(even) td {
	background: rgba(239, 245, 250, 0.48);
}

.ar-financial-table .fin26-row-emphasis td {
	background: linear-gradient(90deg, rgba(213, 228, 240, 0.78) 0%, rgba(232, 240, 247, 0.92) 100%) !important;
	color: #17395d;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-top-color: #d5e0ea;
}

.ar-financial-table .fin26-row-total td {
	background: linear-gradient(90deg, rgba(28, 48, 74, 0.96) 0%, rgba(25, 51, 91, 0.9) 100%) !important;
	color: #fff;
	font-weight: 800;
	border-top-color: rgba(255, 255, 255, 0.12);
}

.ar-financial-table .fin26-row-total .fin26-col-value,
.ar-financial-table .fin26-row-total .fin26-col-label {
	color: #fff;
}

@media (max-width: 720px) {
	.ar-pie-chart__layout {
		justify-content: center;
	}

	.ar-financial-table {
		padding: 1rem;
		overflow: visible;
	}

	.ar-financial-table .fin26-table-wrap {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		touch-action: pan-x;
		border-radius: 0.75rem;
	}

	.ar-financial-table .fin26-table {
		width: max-content;
		max-width: none;
		min-width: 520px;
	}

	.ar-financial-table .fin26-table thead th,
	.ar-financial-table .fin26-table tbody td {
		padding: 0.85rem 0.8rem;
		font-size: 0.92rem;
		white-space: nowrap;
	}

	.ar-financial-table .fin26-table .fin26-col-label {
		white-space: normal;
		min-width: 14rem;
	}

	.ar-financial-table .fin26-col-label,
	.ar-financial-table .fin26-col-value {
		width: auto;
	}
}
