.ar-annual-title {
	--ar-title-grad-1: #2f6eff;
	--ar-title-grad-2: #00caa8;
	--ar-title-flash-1: #0069ff;
	--ar-title-flash-2: #00b88f;
	position: relative;
	padding: clamp(2rem, 5vw, 4rem) 1.5rem;
	background: transparent;
}

.ar-annual-title-inner {
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}

.wp-block-annual-report-title.ar-annual-title .ar-annual-title-heading,
.ar-annual-title .ar-annual-title-heading {
	margin: 0;
	font-size: clamp(2.2rem, 8vw, 6.8rem) !important;
	line-height: 0.95 !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
	color: #0d1936 !important;
	text-transform: uppercase;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: manual;
}

.ar-annual-title .ar-title-letter,
.ar-annual-title .ar-title-space {
	display: inline-block;
}

@keyframes ar-letter-in {
	from {
		opacity: 0;
		transform: translateY(0.3em) scale(0.9);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@keyframes ar-letter-flash {
	0%   { color: inherit; }
	30%  { color: var(--ar-title-flash-1); }
	60%  { color: var(--ar-title-flash-2); }
	100% { color: inherit; }
}

.ar-annual-title[data-ar-visible] .ar-title-letter {
	animation:
		ar-letter-in  0.55s cubic-bezier(0.22, 1, 0.36, 1) both,
		ar-letter-flash 0.8s ease both;
	animation-delay: calc(var(--ar-letter-index) * 0.045s);
}

.ar-annual-title .ar-title-word {
	display: inline-block;
	white-space: nowrap;
}

.ar-annual-title .ar-title-space {
	width: 0.35em;
}

.wp-block-annual-report-title.ar-annual-title .ar-annual-title-subtitle,
.ar-annual-title .ar-annual-title-subtitle {
	margin: 0.8rem auto 0;
	max-width: 42ch;
	font-size: clamp(0.95rem, 2.1vw, 1.3rem) !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	text-transform: none;
	color: rgba(13, 25, 54, 0.86) !important;
}

@media (min-width: 701px) {
	.wp-block-annual-report-title.ar-annual-title .ar-annual-title-subtitle,
	.ar-annual-title .ar-annual-title-subtitle {
		max-width: none;
		white-space: nowrap;
	}
}

@media (max-width: 700px) {
	.ar-annual-title {
		padding-inline: 1rem;
	}

	.ar-annual-title .ar-title-space {
		width: 0.28em;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ar-annual-title .ar-title-letter {
		animation: none !important;
	}
}
