/* ==========================================================
   Practice Performance Advisory section (Gutenberg core blocks) — .ra-perf
   ========================================================== */
.ra-perf.wp-block-group {
	background: #FEFBEA;
	padding: 70px 24px 80px !important;
	margin-top: 0 !important;
}
.ra-perf__wrap { max-width: 1300px; margin: 0 auto !important; }
.ra-perf .ra-perf__eyebrow {
	color: #1463e6 !important;
	font-size: 15px; font-weight: 600; letter-spacing: .06em;
	text-transform: uppercase; text-align: center; margin: 0 0 8px !important;
}
.ra-perf .ra-perf__title.wp-block-heading {
	color: #0d1b3e !important;
	font-size: 40px; line-height: 1.2; font-weight: 700;
	text-align: center; margin: 0 0 16px !important;
}
.ra-perf .ra-perf__intro {
	color: #3b4659 !important;
	font-size: 18px; line-height: 1.55; text-align: center;
	margin: 0 auto 14px !important;
}
.ra-perf .ra-perf__intro--last { margin-bottom: 40px !important; }
.ra-perf__cols.wp-block-columns { gap: 40px; margin-bottom: 40px !important; align-items: flex-start; }
.ra-perf__photo.wp-block-image { margin: 0 0 18px !important; }
.ra-perf__photo img {
	width: 100%; height: auto; display: block;
	border-radius: 8px; box-shadow: 0 6px 20px rgba(13, 27, 62, .12);
}
.ra-perf .ra-perf__list-title.wp-block-heading {
	color: #0d1b3e !important;
	font-size: 24px; line-height: 1.3; font-weight: 700; margin: 0 0 20px !important;
}
.ra-perf__item.wp-block-group {
	display: flex; gap: 24px; align-items: flex-start !important; margin: 0 0 22px !important;
}
.ra-perf__icon.wp-block-image { flex: 0 0 70px; width: 70px; margin: 0 !important; }
.ra-perf .ra-perf__icon img { width: 70px !important; height: 70px !important; display: block; }
.ra-perf__text { flex: 1; }
.ra-perf .ra-perf__item-title.wp-block-heading {
	color: #0d1b3e !important;
	font-size: 19px; line-height: 1.3; font-weight: 700; margin: 0 0 4px !important;
}
.ra-perf .ra-perf__item-desc {
	color: #4a5568 !important;
	font-size: 15.5px; line-height: 1.55; margin: 0 !important;
}
.ra-perf .ra-perf__sub.wp-block-heading {
	color: #0d1b3e !important;
	font-size: 30px; line-height: 1.25; font-weight: 700;
	text-align: center; margin: 0 0 10px !important;
}
.ra-perf .ra-perf__body {
	color: #3b4659 !important;
	font-size: 17px; line-height: 1.6; text-align: center;
	max-width: 900px; margin: 0 auto 8px !important;
}
.ra-perf__btns { margin-top: 26px !important; justify-content: center; }
.ra-perf .ra-perf__btn .wp-block-button__link {
	background: #1463e6 !important; color: #fff !important;
	border: 0 !important; border-radius: 4px !important;
	padding: 15px 32px !important; font-size: 17px; font-weight: 500;
	transition: background-color .2s ease;
}
.ra-perf .ra-perf__btn .wp-block-button__link::after {
	content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 22px;
	border-right: 2px solid currentColor; border-top: 2px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
}
.ra-perf .ra-perf__btn .wp-block-button__link:hover { background: #0d4fbd !important; }

@media (max-width: 921px) {
	.ra-perf.wp-block-group { padding: 50px 20px 60px !important; }
	.ra-perf .ra-perf__title.wp-block-heading { font-size: 32px; }
	.ra-perf .ra-perf__intro { font-size: 16px; }
	.ra-perf .ra-perf__sub.wp-block-heading { font-size: 26px; }
	.ra-perf__cols.wp-block-columns { flex-wrap: wrap !important; }
	.ra-perf__cols > .wp-block-column { flex-basis: 100% !important; }
}
@media (max-width: 544px) {
	.ra-perf .ra-perf__title.wp-block-heading { font-size: 26px; }
	.ra-perf__item.wp-block-group { gap: 16px; }
	.ra-perf__icon.wp-block-image { flex-basis: 54px; width: 54px; }
	.ra-perf .ra-perf__icon img { width: 54px !important; height: 54px !important; }
	.ra-perf .ra-perf__btn .wp-block-button__link { padding: 14px 22px !important; font-size: 16px; }
}
