/* ==========================================================================
   MREC brand styles
   ========================================================================== */
:root {
	--mrec-navy: var(--wp--preset--color--navy, #10204a);
	--mrec-navy-deep: var(--wp--preset--color--navy-deep, #0c1838);
	--mrec-royal: var(--wp--preset--color--royal, #1d3c86);
	--mrec-sky: var(--wp--preset--color--sky, #45b8e6);
	--mrec-sky-soft: var(--wp--preset--color--sky-soft, #e6f5fc);
	--mrec-ink: var(--wp--preset--color--ink, #1b2440);
	--mrec-muted: var(--wp--preset--color--muted, #5b6680);
	--mrec-line: var(--wp--preset--color--line, #dde3ee);
	--mrec-mist: var(--wp--preset--color--mist, #eef2f8);
	--mrec-radius: 14px;
	--mrec-shadow: 0 10px 30px rgba(16, 32, 74, 0.10);
}
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }
.wp-site-blocks > * + * { margin-block-start: 0; }
.mrec-main > .wp-block-post-content > * + * { margin-block-start: 0; }
.mrec-main--titled { padding-top: 3.5rem; padding-bottom: 4rem; }
a { text-underline-offset: 0.18em; }
:where(.wp-block-group.mrec-section) { margin-block-start: 0; }

/* ---------- Eyebrow label (■ SOUND FAMILIAR?) ---------- */
.mrec-eyebrow {
	display: flex; align-items: center; gap: 0.6rem;
	font-size: 0.8rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase;
	color: var(--mrec-sky); margin: 0 0 1.25rem;
}
.mrec-eyebrow::before { content: ""; width: 9px; height: 9px; background: var(--mrec-sky); flex: none; }
.mrec-eyebrow--plain::before { display: none; }

/* ---------- Header ---------- */
.mrec-header {
	background: #fff; border-bottom: 1px solid var(--mrec-line);
	position: sticky; top: 0; z-index: 50;
}
body.admin-bar .mrec-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .mrec-header { top: 46px; } }
.mrec-header__inner { padding: 0.95rem 0; gap: 1.5rem; }
.mrec-brand { gap: 0.8rem !important; align-items: center; }
.mrec-brand p { margin: 0; }
.mrec-brand__mark a {
	display: grid; place-items: center; width: 46px; height: 46px; border-radius: 9px;
	background: var(--mrec-navy); color: #fff !important; text-decoration: none;
	font-weight: 800; font-size: 1.45rem; line-height: 1;
}
.mrec-brand__text { gap: 0.1rem !important; }
.mrec-brand__name a {
	color: var(--mrec-navy); text-decoration: none; font-weight: 800; letter-spacing: 0.04em;
	text-transform: uppercase; font-size: 1rem; line-height: 1.1;
}
.mrec-brand__sub {
	color: var(--mrec-muted); text-transform: uppercase; letter-spacing: 0.14em;
	font-size: 0.66rem; font-weight: 600; line-height: 1.2;
}
.mrec-nav { font-size: 0.93rem; font-weight: 600; gap: 1.75rem; }
.mrec-nav .wp-block-navigation-item__content { color: var(--mrec-ink); text-decoration: none; padding: 0.3rem 0; }
.mrec-nav .wp-block-navigation-item__content:hover,
.mrec-nav .current-menu-item > .wp-block-navigation-item__content { color: var(--mrec-royal); }
.mrec-nav .mrec-nav-cta > .wp-block-navigation-item__content {
	background: var(--mrec-navy); color: #fff !important; border-radius: 999px; padding: 0.6rem 1.25rem;
}
.mrec-nav .mrec-nav-cta > .wp-block-navigation-item__content:hover { background: var(--mrec-royal); }
.mrec-nav .wp-block-navigation__responsive-container-open { color: var(--mrec-navy); }
.mrec-nav .wp-block-navigation__responsive-container-open svg { width: 30px; height: 30px; }
.mrec-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--mrec-navy) !important; color: #fff !important; padding: 2rem;
}
.mrec-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { color: #fff; font-size: 1.35rem; }
.mrec-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 1.25rem; }
.mrec-nav .is-menu-open .mrec-nav-cta > .wp-block-navigation-item__content { background: var(--mrec-sky); color: var(--mrec-navy) !important; }
@media (max-width: 600px) { .mrec-brand__sub { font-size: 0.6rem; } .mrec-brand__mark a { width: 42px; height: 42px; } }

/* ---------- Hero ---------- */
.mrec-hero {
	position: relative; overflow: hidden; isolation: isolate;
	background:
		radial-gradient(520px 520px at 92% -10%, rgba(69, 184, 230, 0.34), transparent 62%),
		radial-gradient(380px 380px at 66% 130%, rgba(69, 184, 230, 0.20), transparent 64%),
		linear-gradient(120deg, #0f2052 0%, #16306f 60%, #1d3c86 100%);
	color: #fff; padding-top: clamp(2.75rem, 5.5vw, 4.5rem) !important; padding-bottom: clamp(2.75rem, 5.5vw, 4.5rem) !important;
}
.mrec-hero::before, .mrec-hero::after {
	content: ""; position: absolute; border-radius: 50%; z-index: -1;
	background: radial-gradient(circle at 40% 40%, rgba(69, 184, 230, 0.34), rgba(69, 184, 230, 0.10) 55%, transparent 72%);
}
.mrec-hero::before { width: 560px; height: 560px; right: -120px; top: -220px; }
.mrec-hero::after { width: 420px; height: 420px; right: 16%; bottom: -230px; }
.mrec-hero h1 { color: #fff; margin-top: 0; margin-bottom: 1.1rem; font-size: clamp(2.9rem, 5.4vw, 4.4rem); letter-spacing: -0.02em; }
/* Keep hero copy left-aligned to the content column while limiting line length. */
.mrec-hero > h1, .mrec-hero > .mrec-lead, .mrec-hero > .mrec-eyebrow {
	margin-left: max(0px, calc((100% - var(--wp--style--global--content-size)) / 2)) !important; margin-right: auto !important;
}
.mrec-hero > h1 { max-width: 14em !important; }
.mrec-hero > .mrec-lead { max-width: 34em !important; }
.mrec-hero .has-sky-color, .mrec-hero mark { color: #5ecfff !important; background: transparent !important; text-shadow: 0 0 26px rgba(69, 184, 230, 0.45); }
.mrec-hero .mrec-lead { color: rgba(255,255,255,0.86); font-size: clamp(1.08rem, 1.6vw, 1.28rem); margin-top: 0; margin-bottom: 0; line-height: 1.6; }
.mrec-hero .mrec-eyebrow { color: var(--mrec-sky); }
.mrec-hero .wp-block-buttons { margin-top: 1.7rem; gap: 0.9rem; }
.mrec-hero--page { padding-top: clamp(2.5rem, 4.5vw, 3.75rem) !important; padding-bottom: clamp(2.5rem, 4.5vw, 3.75rem) !important; }
.mrec-hero--page h1 { font-size: clamp(2.2rem, 4vw, 3.1rem); }

/* Buttons */
.wp-block-button.is-style-outline > .wp-block-button__link,
.mrec-btn-ghost .wp-block-button__link {
	background: transparent; color: #fff; border: 2px solid rgba(255,255,255,0.55);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: #fff; color: var(--mrec-navy); border-color: #fff; }
.mrec-btn-navy .wp-block-button__link { background: var(--mrec-navy); color: #fff; }
.mrec-btn-navy .wp-block-button__link:hover { background: var(--mrec-royal); color: #fff; }

/* ---------- Generic section spacing ---------- */
.mrec-section { padding-top: clamp(2rem, 3.2vw, 2.75rem) !important; padding-bottom: clamp(2rem, 3.2vw, 2.75rem) !important; }
.mrec-section--tight-top { padding-top: 0 !important; }
/* Deeper blue-grey ground: white cards sit on it with real contrast. */
.mrec-section--mist { background: #e3e9f3; }
/* Soft sky-tinted ground so white cards read as a panel, not empty space. */
.mrec-section--tint { background: linear-gradient(180deg, #eaf4fb 0%, #f4f8fd 100%); }
.mrec-section--tint + .mrec-section--tint, .mrec-section--mist + .mrec-section--mist { padding-top: 0 !important; }
.mrec-section--tint .mrec-eyebrow, .mrec-section--mist .mrec-eyebrow { color: #1f8fc4; }
.mrec-section--tint .mrec-eyebrow::before, .mrec-section--mist .mrec-eyebrow::before { background: #1f8fc4; }
.mrec-section h2 { margin-top: 0; }
.mrec-section-intro { color: var(--mrec-muted); max-width: 40em; margin-top: 0.4rem; }

.mrec-familiar { gap: clamp(1.5rem, 3.5vw, 3rem) !important; align-items: flex-start; margin: 0; }
.mrec-questions { list-style: none; padding: 0; margin: 0; }
.mrec-questions li {
	position: relative; padding-left: 2.6rem; margin: 0 0 1rem; font-size: 1.08rem; color: var(--mrec-ink); line-height: 1.5;
}
.mrec-questions li:last-child { margin-bottom: 0; }
.mrec-questions li::before {
	content: "?"; position: absolute; left: 0; top: 0.05rem;
	width: 1.7rem; height: 1.7rem; border-radius: 50%; display: grid; place-items: center;
	background: #fff; color: var(--mrec-royal); font-size: 0.85rem; font-weight: 800;
	border: 1px solid var(--mrec-line); box-shadow: 0 4px 10px rgba(16, 32, 74, 0.10);
}
.mrec-questions strong { color: var(--mrec-navy); font-weight: 800; }

.mrec-stat-card {
	background: #fff; border: 1px solid #c9d6e8; border-radius: 18px;
	box-shadow: 0 22px 50px rgba(16, 32, 74, 0.18); padding: 1.6rem 1.75rem 1.5rem !important;
}
.mrec-stat-card::before { content: ""; display: block; width: 52px; height: 5px; background: var(--mrec-sky); border-radius: 3px; margin-bottom: 1rem; }
.mrec-stat-card > * { margin-block: 0 !important; }
.mrec-stat-number { font-size: clamp(3.6rem, 6vw, 4.6rem); font-weight: 800; color: var(--mrec-navy); line-height: 0.95; letter-spacing: -0.02em; }
.mrec-stat-label { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mrec-royal); margin: 0.65rem 0 1rem !important; line-height: 1.45; }
.mrec-stat-list { list-style: none; padding: 0; margin: 0; }
.mrec-stat-list li { display: flex; align-items: center; gap: 0.85rem; margin: 0 0 0.6rem; color: var(--mrec-ink); font-weight: 600; }
.mrec-stat-list li:last-child { margin-bottom: 0; }
.mrec-stat-list strong {
	flex: none; min-width: 2.15rem; height: 1.85rem; padding: 0 0.35rem; border-radius: 6px; display: grid; place-items: center;
	background: var(--mrec-navy); color: #fff; font-size: 0.85rem; font-weight: 700;
	box-shadow: 0 3px 8px rgba(16, 32, 74, 0.25);
}

/* ---------- Services grid ---------- */
.mrec-services {
	list-style: none; padding: 0 !important; margin: 0;
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem !important;
	background: transparent; border: 0; border-radius: 0; overflow: visible;
}
.mrec-services li {
	position: relative; padding: 1.05rem 1.25rem 1.05rem 4rem; margin: 0; line-height: 1.45; min-height: 2.5rem; display: flex; align-items: center;
	background: #fff; border: 1px solid #c9d6e8; border-radius: 16px; color: var(--mrec-ink); font-size: 1.02rem; font-weight: 500;
	box-shadow: 0 12px 28px rgba(16, 32, 74, 0.10);
}
.mrec-services li:nth-child(odd) { border-right: 1px solid #c9d6e8; }
.mrec-services li::before {
	/* icon chip */
	content: ""; position: absolute; left: 1.05rem; top: 50%; width: 2.1rem; height: 2.1rem; margin-top: -1.05rem;
	border-radius: 10px; background: linear-gradient(145deg, #e3f4fc, #cdeaf8); border: 1px solid #b7def2;
}
.mrec-services li::after {
	/* diamond inside the chip */
	content: ""; position: absolute; left: calc(1.05rem + 1.05rem - 6px); top: 50%; width: 12px; height: 12px; margin-top: -6px;
	background: #1f9fd6; transform: rotate(45deg); border-radius: 2px;
}
@media (max-width: 720px) {
	.mrec-services { grid-template-columns: 1fr; }
}

/* ---------- Now offering (website) band ---------- */
.mrec-offer {
	position: relative; overflow: hidden; isolation: isolate;
	background:
		radial-gradient(320px 320px at 100% 0%, rgba(69, 184, 230, 0.30), transparent 65%),
		linear-gradient(120deg, #10204a 0%, #17306b 100%);
	color: #fff; border-radius: 20px;
	padding: clamp(1.6rem, 3vw, 2.4rem) clamp(1.5rem, 3.5vw, 2.75rem) !important;
	box-shadow: 0 24px 55px rgba(16, 32, 74, 0.28);
}
.mrec-offer::after {
	content: ""; position: absolute; width: 300px; height: 300px; border-radius: 50%;
	right: -70px; top: -130px; background: radial-gradient(circle, rgba(69, 184, 230, 0.30), transparent 70%); z-index: -1;
}
.mrec-offer .wp-block-columns { gap: clamp(1.5rem, 4vw, 3.5rem) !important; margin: 0; }
.mrec-offer h2 { color: #fff; margin: 0.75rem 0 0.6rem; font-size: clamp(1.6rem, 2.6vw, 2.1rem); }
.mrec-offer p { color: rgba(255,255,255,0.82); }
.mrec-pill {
	display: inline-block; background: var(--mrec-sky); color: var(--mrec-navy) !important;
	font-size: 0.72rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase;
	padding: 0.4rem 0.9rem; border-radius: 999px; margin: 0;
}
.mrec-offer-list { list-style: none; padding: 0; margin: 0; }
.mrec-offer-list li { position: relative; padding-left: 1.35rem; margin: 0 0 0.85rem; color: #fff; font-size: 1rem; }
.mrec-offer-list li::before { content: ""; position: absolute; left: 0; top: 0.6em; width: 7px; height: 7px; border-radius: 50%; background: var(--mrec-sky); }
.mrec-offer .wp-block-buttons { margin-top: 1.1rem; }

.mrec-steps-wrap { background: transparent; border-radius: 0; padding: 0 !important; }
.mrec-steps { gap: clamp(1rem, 2vw, 1.5rem) !important; margin: 0; }
.mrec-step-num { color: var(--mrec-sky); font-size: 2.1rem; font-weight: 700; line-height: 1; margin: 0 0 0.9rem; }
.mrec-steps h3 { font-size: 1.2rem; margin: 0 0 0.55rem; }
.mrec-steps p:not(.mrec-step-num) { color: var(--mrec-muted); margin: 0; font-size: 0.98rem; }
.mrec-steps--cards .wp-block-column, .mrec-steps-wrap .mrec-steps .wp-block-column {
	background: #fff; border: 1px solid #c9d6e8; border-radius: 18px; padding: 1.5rem 1.4rem; box-shadow: 0 14px 34px rgba(16, 32, 74, 0.13);
}

.mrec-tiles { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem !important; margin-top: 1.25rem; }
.mrec-tile {
	background: #fff; border: 1px solid #c9d6e8; border-radius: 18px;
	padding: 1.35rem 1.25rem !important; box-shadow: 0 14px 34px rgba(16, 32, 74, 0.13); margin: 0 !important;
}
.mrec-tile > * { margin: 0 !important; }
.mrec-tile__num { font-size: 2.8rem; font-weight: 800; color: var(--mrec-navy); line-height: 1; }
.mrec-tile__label { margin-top: 0.6rem !important; color: var(--mrec-ink); font-weight: 600; }
.mrec-tile--feature .mrec-tile__label { font-size: 1.12rem; color: var(--mrec-navy); font-weight: 700; margin-top: 0 !important; }
.mrec-tile--feature::before { content: ""; display: block; width: 38px; height: 4px; border-radius: 2px; background: var(--mrec-sky); margin-bottom: 1.1rem; }
@media (max-width: 900px) { .mrec-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .mrec-tiles { grid-template-columns: 1fr; } }
.mrec-big-stat { display: flex; align-items: baseline; gap: 1rem; flex-wrap: wrap; }

/* ---------- CTA band ---------- */
.mrec-cta {
	background:
		radial-gradient(460px 460px at 12% 120%, rgba(69, 184, 230, 0.26), transparent 62%),
		linear-gradient(120deg, #0f2052 0%, #16306f 60%, #1d3c86 100%);
	color: #fff; text-align: center; position: relative; overflow: hidden; isolation: isolate;
}
.mrec-cta::before { content: ""; position: absolute; width: 360px; height: 360px; border-radius: 50%; left: -120px; bottom: -200px; background: rgba(69, 184, 230, 0.16); z-index: -1; }
.mrec-cta h2 { color: #fff; max-width: 22em; margin-left: auto !important; margin-right: auto !important; }
.mrec-cta p { color: rgba(255,255,255,0.82); }
.mrec-cta .mrec-cta__contact a { color: #fff; text-decoration: none; font-weight: 600; }
.mrec-cta .mrec-cta__contact a:hover { color: var(--mrec-sky); }

.mrec-contact-cols { gap: clamp(1.5rem, 4vw, 3rem) !important; align-items: flex-start; margin: 0; }
.mrec-contact-card {
	background: linear-gradient(160deg, #10204a 0%, #17306b 100%); color: #fff; border-radius: 20px; padding: 1.75rem !important; box-shadow: 0 22px 50px rgba(16, 32, 74, 0.24);
}
.mrec-contact-card > * { margin-block: 0 !important; }
.mrec-contact-card h2, .mrec-contact-card h3 { color: #fff; font-size: 1.4rem; }
.mrec-contact-card .mrec-footer__tagline { margin-top: 0.4rem !important; }
.mrec-contact-card .mrec-contact-label { margin-top: 1.6rem !important; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mrec-sky); }
.mrec-contact-card .mrec-contact-value { margin-top: 0.3rem !important; font-size: 1.05rem; word-break: break-word; }
.mrec-contact-card a { color: #fff; text-decoration: none; font-weight: 600; }
.mrec-contact-card a:hover { color: var(--mrec-sky); }

/* Form (rendered by the MREC Contact plugin) */
.mrec-form { display: grid; gap: 1.1rem; }
.mrec-form .mrec-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
@media (max-width: 640px) { .mrec-form .mrec-form__row { grid-template-columns: 1fr; } }
.mrec-form label { display: block; font-weight: 600; font-size: 0.9rem; color: var(--mrec-navy); margin-bottom: 0.4rem; }
.mrec-form label .req { color: var(--mrec-royal); }
.mrec-form input[type=text], .mrec-form input[type=email], .mrec-form input[type=tel], .mrec-form textarea {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 1rem; color: var(--mrec-ink);
	border: 1px solid #c9d2e3; border-radius: 10px; padding: 0.8rem 0.95rem; background: #fff;
	transition: border-color .15s, box-shadow .15s;
}
.mrec-form textarea { min-height: 160px; resize: vertical; }
.mrec-form input:focus, .mrec-form textarea:focus { outline: none; border-color: var(--mrec-sky); box-shadow: 0 0 0 3px rgba(69,184,230,0.25); }
.mrec-form button {
	justify-self: start; font: inherit; font-weight: 700; font-size: 0.98rem; cursor: pointer;
	background: var(--mrec-navy); color: #fff; border: 0; border-radius: 999px; padding: 0.9rem 2rem;
}
.mrec-form button:hover { background: var(--mrec-royal); }
.mrec-form .mrec-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.mrec-form-notice { border-radius: 10px; padding: 1rem 1.2rem; margin-bottom: 1.25rem; font-weight: 600; }
.mrec-form-notice--ok { background: #e7f7ee; color: #145c34; border: 1px solid #b8e4c9; }
.mrec-form-notice--err { background: #fdecec; color: #8a1f1f; border: 1px solid #f3c2c2; }

/* Placeholder note for Janet */
.mrec-placeholder { border: 2px dashed #f0b429; background: #fff8e6; color: #7a5300; border-radius: 10px; padding: 1rem 1.2rem; font-size: 0.95rem; }

.mrec-footer { background: var(--mrec-navy-deep); color: #fff; position: relative; overflow: hidden; isolation: isolate; padding-top: 2rem; padding-bottom: 1rem; }
.mrec-footer::before { content: ""; position: absolute; width: 260px; height: 260px; border-radius: 50%; left: -110px; bottom: -150px; background: rgba(120,160,255,0.08); z-index: -1; }
.mrec-footer p { margin: 0; }
.mrec-footer__inner { gap: 1.25rem; padding-bottom: 1.25rem; }
.mrec-footer__id, .mrec-footer__contact { gap: 0.35rem !important; }
.mrec-footer__name { font-weight: 800; font-size: 1.3rem; letter-spacing: 0.02em; text-transform: uppercase; }
.mrec-footer__tagline { font-family: var(--wp--preset--font-family--serif); font-style: italic; color: var(--mrec-sky); font-size: 1.12rem; }
.mrec-footer__contact { align-items: flex-end !important; text-align: right; }
.mrec-footer__label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.6); margin-bottom: 0.25rem !important; }
.mrec-footer__link a { color: #fff; text-decoration: none; font-size: 1.02rem; }
.mrec-footer__link a:hover { color: var(--mrec-sky); }
.mrec-footer__bottom { border-top: 1px solid rgba(255,255,255,0.12); padding-top: 0.9rem; font-size: 0.85rem; color: rgba(255,255,255,0.6); gap: 0.75rem; }
.mrec-footer__bottom a { color: rgba(255,255,255,0.75); text-decoration: none; }
.mrec-footer__bottom a:hover { color: #fff; }
@media (max-width: 640px) {
	.mrec-footer__contact { align-items: flex-start !important; text-align: left; }
}

/* ---------- Mobile column stacking tweaks ---------- */
@media (max-width: 781px) {
	.mrec-familiar > .wp-block-column, .mrec-offer .wp-block-column, .mrec-contact-cols > .wp-block-column { flex-basis: 100% !important; }
	.mrec-header__inner { padding: 0.75rem 0; }
}

/* Refinements */
.mrec-cta { background: linear-gradient(120deg, #0f2052 0%, #16306f 60%, #1d3c86 100%); }
.mrec-cta .wp-block-buttons { justify-content: center; }
.mrec-questions li, .mrec-services li, .mrec-hero .mrec-lead, .mrec-steps p { text-wrap: pretty; }
.mrec-hero h1, .mrec-cta h2, .mrec-offer h2 { text-wrap: balance; }
.mrec-form p { margin: 0; }
.mrec-form-wrap { margin-top: 1.5rem; }
.mrec-nav .wp-block-navigation__responsive-container.is-menu-open .mrec-nav-cta > .wp-block-navigation-item__content { padding: 0.55rem 1.4rem; margin-top: 0.5rem; }

/* Contact form sits in a white card on the tinted ground. */
.mrec-section--tint .mrec-contact-cols > .wp-block-column:first-child {
	background: #fff; border: 1px solid #c9d6e8; border-radius: 20px; padding: clamp(1.4rem, 3vw, 2rem);
	box-shadow: 0 18px 44px rgba(16, 32, 74, 0.13);
}
.mrec-contact-cols h2 { margin-bottom: 0; }
.mrec-form-wrap { margin-top: 1rem; }
.mrec-form { gap: 0.9rem; }
.mrec-step-num { margin-bottom: 0.6rem; }

/* ---------- How It Works ---------- */
.mrec-prose p { max-width: 46em; color: var(--mrec-ink); margin: 0 0 0.9rem; }
.mrec-prose p:last-child { margin-bottom: 0; }
.mrec-subhead { margin-top: 2.5rem !important; margin-bottom: 1rem !important; font-size: clamp(1.45rem, 2.4vw, 1.9rem) !important; }

/* Onboarding timeline: four numbered steps in one row, stacked on smaller screens. */
.mrec-timeline { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem !important; margin-top: 1.5rem; }
.mrec-timeline > .wp-block-column { flex-basis: auto !important; }
@media (max-width: 1000px) { .mrec-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .mrec-timeline { grid-template-columns: 1fr; } }

/* The two monthly campaigns, side by side. */
.mrec-campaigns { gap: 1rem !important; margin: 0; }
.mrec-campaigns .wp-block-column {
	background: #fff; border: 1px solid #c9d6e8; border-radius: 18px; padding: 1.5rem 1.4rem;
	box-shadow: 0 14px 34px rgba(16, 32, 74, 0.13);
}
.mrec-card-tag { margin: 0 0 0.6rem !important; font-size: 0.75rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: #1f8fc4; }
.mrec-campaigns h3 { margin-top: 0; }

/* Year-at-a-glance bullet list */
.mrec-glance-list { list-style: none; padding: 0; margin: 1.25rem 0 0; }
.mrec-glance-list li { position: relative; padding-left: 1.5rem; margin: 0 0 0.95rem; line-height: 1.5; color: var(--mrec-ink); }
.mrec-glance-list li:last-child { margin-bottom: 0; }
.mrec-glance-list li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 8px; height: 8px; border-radius: 50%; background: var(--mrec-sky); }
.mrec-glance-list strong { color: var(--mrec-navy); }
/* Section intro paragraphs sit left-aligned with the heading. */
.mrec-section > .mrec-section-intro { margin-left: max(0px, calc((100% - var(--wp--style--global--content-size)) / 2)) !important; margin-right: auto !important; max-width: 40em !important; }
.mrec-hero--page > h1 { max-width: 20em !important; }
/* Timeline connectors between onboarding cards (desktop row only). */
.mrec-timeline > .wp-block-column { position: relative; }
@media (min-width: 1001px) {
	.mrec-timeline > .wp-block-column:not(:last-child)::after {
		content: "→"; position: absolute; right: -0.95rem; top: 1.7rem; z-index: 2;
		width: 1.4rem; height: 1.4rem; border-radius: 50%; display: grid; place-items: center;
		background: var(--mrec-sky); color: var(--mrec-navy); font-size: 0.8rem; font-weight: 800;
		box-shadow: 0 3px 8px rgba(69, 184, 230, 0.5);
	}
}
