:root {
	--beacon-white: #FFFFFF;
	--beacon-green-black: #242424;
	--beacon-bright-blue: #0096FF;
	--beacon-dark-blue-1: #1F6F97;
	--beacon-dark-blue-2: #0F4560;
	--beacon-dark-blue-3: #0B3145;
	--beacon-light-blue: #C0CEE0;
	--beacon-steel-blue: #5A7887;
	--beacon-cream: #E0C7AF;
	--beacon-dark-cream: #C3A382;
	--beacon-dark-green-1: #02514B;
	--beacon-dark-green-2: #002B28;
	--beacon-light-green-1: #A1B49E;
	--beacon-light-green-2: #E2E8E1;
	--beacon-light-green-3: #F0F3EF;
	--beacon-grey-1: #737373;
	--beacon-grey-2: #A19D9D;

	--beacon-font-sans: "IBM Plex Sans", sans-serif;
	--beacon-font-arya: "Arya", sans-serif;
	--beacon-font-display: "Newsreader", serif;

	--beacon-gutter: 1rem;
}
@media (min-width: 640px)  { :root { --beacon-gutter: 2rem; } }
@media (min-width: 768px)  { :root { --beacon-gutter: 3rem; } }
@media (min-width: 1024px) { :root { --beacon-gutter: 6rem; } }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	background: var(--beacon-white);
	color: var(--beacon-green-black);
	font-family: var(--beacon-font-sans);
	font-size: 1rem;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	display: flex;
	flex-direction: column;
	min-height: 100svh;
}

img { max-width: 100%; height: auto; }

.beacon-font-arya, .font-arya { font-family: var(--beacon-font-arya); font-weight: 400; }
.beacon-font-display { font-family: var(--beacon-font-display); }

.beacon-container {
	width: 100%;
	max-width: 120rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--beacon-gutter);
	padding-right: var(--beacon-gutter);
	box-sizing: border-box;
}
.beacon-container--flush { padding-left: 0; padding-right: 0; }

.beacon-balance { text-wrap: balance; }

.has-global-padding { padding-left: var(--beacon-gutter); padding-right: var(--beacon-gutter); }
.has-global-padding > .alignfull { margin-left: calc(var(--beacon-gutter) * -1); margin-right: calc(var(--beacon-gutter) * -1); }

.beacon-btn,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--beacon-font-sans);
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1;
	height: 3rem;
	padding: 0.5rem 0.875rem;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	text-decoration: none;
	transition: background-color .3s, color .3s;
	user-select: none;
	white-space: nowrap;
	box-sizing: border-box;
}
.beacon-btn--blue,
.wp-block-button__link {
	background: var(--beacon-bright-blue);
	color: var(--beacon-white);
}
.beacon-btn--blue:hover,
.wp-block-button__link:hover {
	background: var(--beacon-dark-blue-1);
	color: var(--beacon-white);
}
.beacon-btn--cream,
.is-style-beacon-cream .wp-block-button__link {
	background: var(--beacon-cream);
	color: var(--beacon-green-black);
}
.beacon-btn--cream:hover,
.is-style-beacon-cream .wp-block-button__link:hover {
	background: var(--beacon-dark-cream);
	color: var(--beacon-green-black);
}
.beacon-btn:focus-visible,
.wp-block-button__link:focus-visible {
	outline: none;
	box-shadow: inset 0 0 0 2px var(--beacon-dark-blue-2);
}
.beacon-btn--full { width: 100%; }

.beacon-nav {

	--beacon-menu-bg: var(--beacon-dark-blue-3);
	--beacon-menu-accent: var(--beacon-light-blue);
	--beacon-menu-rule: rgba(255, 255, 255, .3);
	position: fixed;
	inset-inline: 0;
	top: 0;
	width: 100%;
	z-index: 50;
	transition: background-color .3s, color .3s;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	background: var(--beacon-white);
	box-sizing: border-box;
}
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) { background: transparent; }
.beacon-nav__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	position: relative;
}

.beacon-nav__logo { display: block; line-height: 0; }
.beacon-nav__logo svg, .beacon-nav__logo img { height: 2.375rem; width: auto; display: block; }
.beacon-nav__logo-light { display: none; }
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .beacon-nav__logo-light { display: block; }
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .beacon-nav__logo-dark { display: none; }

.beacon-nav .beacon-nav__actions { display: none; }
@media (min-width: 1024px) { .beacon-nav .beacon-nav__actions { display: flex; } }

.beacon-nav .wp-block-navigation { font-family: var(--beacon-font-sans); font-size: 0.875rem; }
.beacon-nav .wp-block-navigation .wp-block-navigation-item__content { color: var(--beacon-green-black); text-decoration: none; }
.beacon-nav .wp-block-navigation .has-child { position: relative; }
.beacon-nav .wp-block-navigation .wp-block-navigation__submenu-icon { color: var(--beacon-green-black); width: 1rem; height: 1rem; margin-left: 0.25rem; }
.beacon-nav .wp-block-navigation .wp-block-navigation__submenu-icon svg { width: 1rem; height: 1rem; margin: 0; transition: transform .2s; }
.beacon-nav .wp-block-navigation .has-child:hover > .wp-block-navigation__submenu-icon svg,
.beacon-nav .wp-block-navigation .wp-block-navigation-submenu__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container-open { color: var(--beacon-green-black); }
.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container-open svg { width: 2rem; height: 2rem; }
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .wp-block-navigation .wp-block-navigation-item__content,
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .wp-block-navigation .wp-block-navigation__submenu-icon,
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .wp-block-navigation .wp-block-navigation__responsive-container-open { color: var(--beacon-white); }

.beacon-nav .wp-block-navigation .beacon-nav__cta-mobile { display: none; }

@media (min-width: 1024px) {
	.beacon-nav .wp-block-navigation .wp-block-navigation__container { gap: 4.25rem; align-items: center; flex-wrap: nowrap; }

	.beacon-nav .wp-block-navigation .wp-block-navigation__container .has-child { padding-bottom: 0.5rem; margin-bottom: -0.5rem; }
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .has-child > .wp-block-navigation__submenu-container {
		left: 0;
		top: 100%;
		margin-top: 0;
		background: var(--beacon-menu-bg);
		color: var(--beacon-white);
		border: 1px solid rgba(255, 255, 255, .05);
		box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);
		box-sizing: border-box;
		padding: 1.5rem;
		gap: 0.625rem;
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .has-child:hover > .wp-block-navigation__submenu-container,
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .has-child:focus-within > .wp-block-navigation__submenu-container,
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .has-child > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		min-width: 12.5rem;
		width: max-content;
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
		padding: 0;
		color: var(--beacon-white);
		font-weight: 500;
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover { color: var(--beacon-menu-accent); }

	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide > .wp-block-navigation__submenu-container {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide:hover > .wp-block-navigation__submenu-container,
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide:focus-within > .wp-block-navigation__submenu-container,
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		width: 37.5rem;
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide > .wp-block-navigation__submenu-container::before {
		content: attr(data-label);
		grid-column: 1 / -1;
		font-family: var(--beacon-font-arya);
		color: var(--beacon-menu-accent);
		font-size: 1.125rem;
		padding-bottom: 0.5rem;
		margin-bottom: 0.5rem;
		border-bottom: 1px solid var(--beacon-menu-rule);
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .beacon-mega--wide > .wp-block-navigation__submenu-container > .wp-block-navigation-item { padding: 0.5rem 0; }

	.beacon-nav .wp-block-navigation .wp-block-navigation__container .wp-block-navigation__submenu-container > .beacon-mega__all {
		grid-column: 1 / -1;
		margin-top: 0.5rem;
		padding-top: 1rem;
		border-top: 1px solid var(--beacon-menu-rule);
	}
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .wp-block-navigation__submenu-container > .beacon-mega__all > .wp-block-navigation-item__content { font-weight: 400; }
	.beacon-nav .wp-block-navigation .wp-block-navigation__container .wp-block-navigation__submenu-container > .beacon-mega__all > .wp-block-navigation-item__content:hover { color: var(--beacon-menu-accent); }
}

@media (min-width: 600px) and (max-width: 1023px) {
	.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
}

.beacon-nav { --beacon-nav-height: calc(2.375rem + 1.5rem + 1px); }
.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open.is-menu-open {
	display: block;
	top: var(--beacon-nav-height);
	bottom: auto;
	max-height: calc(100vh - var(--beacon-nav-height));
	overflow: auto;

	animation: beacon-menu-fade .2s ease-out;
	transform: none;
	background: transparent !important;
	color: var(--beacon-white);
	padding: 2rem;
}
.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	padding: 2rem;
	background: var(--beacon-menu-bg);
	box-shadow: 0 12px 32px rgba(36, 36, 36, .16);
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { width: 100%; }

.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	position: fixed;
	top: calc((var(--beacon-nav-height) - 1px - 2rem) / 2);
	right: var(--beacon-gutter);
	width: 2rem;
	height: 2rem;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--beacon-green-black);
	z-index: 1;
}
.beacon-has-transparent-header .beacon-nav:not(.nav-scrolled) .wp-block-navigation .wp-block-navigation__responsive-container-close { color: var(--beacon-white); }
.beacon-nav .wp-block-navigation .wp-block-navigation__responsive-container-close svg { width: 2rem; height: 2rem; fill: currentColor; }
.beacon-nav .wp-block-navigation:has(.wp-block-navigation__responsive-container.is-menu-open) .wp-block-navigation__responsive-container-open { visibility: hidden; }
@keyframes beacon-menu-fade {
	from { opacity: 0; }
	to   { opacity: 1; }
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { gap: 1rem; align-items: stretch; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation-item {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation-item__content { color: var(--beacon-white); padding: 0; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child { min-height: 1.5rem; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child > .wp-block-navigation-item__content { flex-grow: 1; line-height: 1.5rem; }

.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child > .wp-block-navigation-item__content { cursor: pointer; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation-submenu__toggle {
	display: flex;
	position: static;
	width: 1rem;
	height: 1.5rem;
	margin: 0 0 0 auto;
	padding: 0;
	justify-content: center;
	align-items: center;
	background: none;
	border: 0;
	color: var(--beacon-white);
	cursor: pointer;
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation-submenu__toggle svg { transform: none; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child.beacon-open > .wp-block-navigation-submenu__toggle svg { transform: rotate(180deg); }

.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child > .wp-block-navigation__submenu-container {
	display: none;
	flex-basis: 100%;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 1rem 0 0 1.5rem;
	gap: 1rem;
	box-sizing: border-box;
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .has-child.beacon-open > .wp-block-navigation__submenu-container {
	display: flex;
	flex-direction: column;
}
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: rgba(255, 255, 255, .8); }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--beacon-white); }

.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .beacon-nav__cta-mobile { display: flex; width: 100%; margin-top: 1.5rem; }
.beacon-nav .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container .beacon-nav__cta-mobile > .wp-block-navigation-item__content {
	display: flex;
	width: 100%;
	height: 3rem;
	align-items: center;
	justify-content: center;
	background: var(--beacon-bright-blue);
	color: var(--beacon-white);
	font-weight: 600;
}

.beacon-main { flex-grow: 1; }

.beacon-hero { position: relative; overflow: hidden; }
.beacon-hero__img {
	object-fit: cover;
	object-position: top;
	width: 100%;
	min-height: 20rem;
	display: block;
}
.beacon-hero__img--center { object-position: center; }
.beacon-hero__overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(36, 36, 36, .7);
}
.beacon-hero__overlay--40 { background: rgba(36, 36, 36, .4); }
.beacon-hero__content {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 3.75rem 1.5rem 0;
	text-align: center;
}
@media (min-width: 640px)  { .beacon-hero__content { padding: 0 3rem; } }
@media (min-width: 768px)  { .beacon-hero__content { padding: 0 6rem; } }
@media (min-width: 1024px) { .beacon-hero__content { padding: 0 12rem; } }
.beacon-hero__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-white);
	text-wrap: balance;
	text-align: center;
	font-size: 2.25rem;
	line-height: 1.2;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-hero__title { font-size: 3rem; } }
@media (min-width: 1024px) { .beacon-hero__title { font-size: 3.75rem; line-height: 4.375rem; } }

.beacon-hero--service .beacon-hero__img { min-height: 30rem; max-height: 30rem; background: var(--beacon-light-green-3); }
@media (min-width: 640px) { .beacon-hero--service .beacon-hero__img { min-height: 20rem; } }
.beacon-hero--service .beacon-hero__content { gap: 1.5rem; padding: 1rem; }
.beacon-hero--service .beacon-hero__title { font-size: 1.875rem; }
@media (min-width: 768px)  { .beacon-hero--service .beacon-hero__title { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-hero--service .beacon-hero__title { font-size: 3rem; } }
.beacon-hero__lede {
	color: var(--beacon-light-green-2);
	font-size: 0.875rem;
	max-width: 48rem;
	text-align: center;
	margin: 0.25rem 0 0;
}
@media (min-width: 640px) { .beacon-hero__lede { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-hero__lede { font-size: 1.125rem; } }

.beacon-intro { display: flex; flex-direction: column; align-items: center; gap: 2rem; padding: 3rem 0; }
.beacon-intro p {
	color: var(--beacon-grey-1);
	line-height: 1.625;
	margin: 0;
	font-size: 0.875rem;
}
@media (min-width: 640px) { .beacon-intro p { font-size: 1rem; max-width: 50%; } }
@media (min-width: 768px) { .beacon-intro p { font-size: 1.125rem; } }
.beacon-intro__buttons { display: flex; gap: 0.625rem; flex-wrap: wrap; justify-content: center; }

.beacon-carousel { position: relative; width: 100%; overflow: hidden; }
.beacon-carousel__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	text-align: center;
	font-size: 1.875rem;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-carousel__title { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-carousel__title { font-size: 3rem; } }
.beacon-carousel__logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 2rem 3rem; padding-top: 1.5rem; padding-bottom: 1.5rem; }
@media (min-width: 1024px) { .beacon-carousel__logos { gap: 2.5rem 5rem; padding-top: 2.5rem; padding-bottom: 2.5rem; } }
.beacon-carousel__logos svg, .beacon-carousel__logos img { display: block; flex-shrink: 0; max-width: 100%; }

.beacon-split { display: grid; grid-template-columns: 1fr; }
@media (min-width: 1024px) { .beacon-split { grid-template-columns: 1fr 1fr; } }
.beacon-split__media { position: relative; width: 100%; }
@media (min-width: 1024px) {
	.beacon-split__media { position: sticky; top: 4rem; height: 100vh; }
}
.beacon-split__media > img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
	background: var(--beacon-light-green-3);
	display: block;
	position: absolute;
	inset: 0;
}
.beacon-split__media-overlay {
	position: relative;
	z-index: 10;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	background: var(--beacon-green-black);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 6rem 2rem;
}
@media (min-width: 768px)  { .beacon-split__media-overlay { padding: 6rem 3rem; } }
@media (min-width: 1024px) {
	.beacon-split__media-overlay { position: absolute; inset: 0; background: rgba(36, 36, 36, .7); padding: 6rem; }
}
.beacon-split__media-overlay--plain { background: transparent !important; }
.beacon-split__heading {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-white);
	text-wrap: balance;
	font-size: 1.875rem;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-split__heading { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-split__heading { font-size: 3rem; } }
.beacon-split__sub {
	color: var(--beacon-grey-2);
	margin: 2.5rem 0 0;
	font-size: 0.875rem;
}
@media (min-width: 640px) { .beacon-split__sub { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-split__sub { font-size: 1.125rem; } }
.beacon-split__cards {
	padding: 2rem;
	background: var(--beacon-light-green-3);
}
@media (min-width: 1024px) { .beacon-split__cards { padding: 5rem; } }
.beacon-split__cards--flush { background: transparent; padding: 1rem; }
@media (min-width: 1024px) { .beacon-split__cards--flush { padding: 3.125rem; } }

.beacon-split-bg {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}
.beacon-split-bg__shade { position: absolute; inset: 0; background: rgba(0, 0, 0, .5); }
.beacon-split-bg .beacon-container { position: relative; }
.beacon-split-bg .beacon-split__media-overlay { background: transparent; padding: 1rem; }
@media (min-width: 640px)  { .beacon-split-bg .beacon-split__media-overlay { padding: 2rem; } }
@media (min-width: 1024px) { .beacon-split-bg .beacon-split__media-overlay { padding: 3.125rem 6rem; } }
.beacon-split__kicker {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	color: var(--beacon-cream);
	font-size: 0.875rem;
	margin: 0 0 1.25rem;
}
@media (min-width: 640px) { .beacon-split__kicker { font-size: 1rem; margin-bottom: 2.5rem; } }
@media (min-width: 768px) { .beacon-split__kicker { font-size: 1.125rem; } }
.beacon-split__heading--dark { color: var(--beacon-green-black); }
.beacon-split__sub--cream { color: var(--beacon-cream); }
.beacon-split__sub--grey1 { color: var(--beacon-grey-1); }

.beacon-sticky-cards {
	display: flex;
	flex-direction: column;
	gap: 1.375rem;
	margin: 0;
}
.beacon-sticky-card {
	background: var(--beacon-white);
	padding: 1rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: sticky;
	top: 2rem;
}
@media (min-width: 640px)  { .beacon-sticky-card { padding: 2rem; } }
@media (min-width: 1024px) { .beacon-sticky-card { top: 5rem; } }
.beacon-sticky-card__number {
	font-family: var(--beacon-font-arya);
	color: var(--beacon-green-black);
	font-size: 3rem;
	line-height: 1;
	margin: 0;
}
@media (min-width: 640px)  { .beacon-sticky-card__number { font-size: 3.75rem; } }
@media (min-width: 768px)  { .beacon-sticky-card__number { font-size: 4.5rem; } }
@media (min-width: 1024px) { .beacon-sticky-card__number { font-size: 6rem; } }
.beacon-sticky-card__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	font-size: 1.125rem;
	margin: 0;
}
@media (min-width: 640px)  { .beacon-sticky-card__title { font-size: 1.25rem; } }
@media (min-width: 768px)  { .beacon-sticky-card__title { font-size: 1.5rem; } }
@media (min-width: 1024px) { .beacon-sticky-card__title { font-size: 1.875rem; } }
.beacon-sticky-card__number + .beacon-sticky-card__title { margin-top: 2rem; }
@media (min-width: 640px) { .beacon-sticky-card__number + .beacon-sticky-card__title { margin-top: 3.75rem; } }
.beacon-sticky-card__number--gap { margin-bottom: 2rem; }
@media (min-width: 640px) { .beacon-sticky-card__number--gap { margin-bottom: 3.75rem; } }
.beacon-sticky-card__text {
	color: var(--beacon-green-black);
	text-wrap: balance;
	margin: 1rem 0 0;
	font-size: 0.875rem;
}
@media (min-width: 640px) { .beacon-sticky-card__text { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-sticky-card__text { font-size: 1.125rem; } }
.beacon-sticky-card__text--grey { color: var(--beacon-grey-1); }
.beacon-sticky-card__link {
	color: var(--beacon-green-black);
	font-size: 0.875rem;
	margin-top: 1rem;
	text-decoration: underline;
	transition: color .2s;
}
@media (min-width: 640px) { .beacon-sticky-card__link { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-sticky-card__link { font-size: 1.125rem; } }
.beacon-sticky-card__link:hover { color: var(--beacon-grey-1); }

.beacon-cards { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 1024px) { .beacon-cards { grid-template-columns: repeat(3, 1fr); } }
.beacon-cards--tight { gap: 1rem; }
@media (min-width: 640px) { .beacon-cards--tight { gap: 2rem; } }
.beacon-cards--4 { gap: 1rem; }
@media (min-width: 640px)  { .beacon-cards--4 { gap: 2rem; } }
@media (min-width: 1024px) { .beacon-cards--4 { grid-template-columns: repeat(4, 1fr); } }
.beacon-card {
	background: var(--beacon-light-green-3);
	padding: 1rem;
	display: flex;
	flex-direction: column;
}
@media (min-width: 640px) { .beacon-card { padding: 2rem; } }
.beacon-card--p7 { padding: 1rem; }
@media (min-width: 640px) { .beacon-card--p7 { padding: 1.75rem; } }
.beacon-card--dark { background: var(--beacon-dark-blue-3); }
.beacon-card--gap { gap: 1rem; }
.beacon-card__icon svg { width: 3.75rem; height: 3.75rem; color: var(--beacon-light-green-1); }
@media (min-width: 640px) { .beacon-card__icon svg { width: 5rem; height: 5rem; } }
.beacon-card__icon--cream svg { color: var(--beacon-dark-cream); }
.beacon-card__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	font-size: 1rem;
	margin: 1.5rem 0 0;
}
@media (min-width: 640px)  { .beacon-card__title { font-size: 1.125rem; margin-top: 3rem; } }
@media (min-width: 768px)  { .beacon-card__title { font-size: 1.25rem; } }
@media (min-width: 1024px) { .beacon-card__title { font-size: 1.5rem; } }
.beacon-card--gap .beacon-card__title { margin-top: 0; }
.beacon-card--dark .beacon-card__title { color: var(--beacon-white); }
.beacon-card__text {
	color: var(--beacon-grey-1);
	font-size: 0.75rem;
	margin: 0.5rem 0 0;
}
@media (min-width: 640px) { .beacon-card__text { font-size: 0.875rem; } }
@media (min-width: 768px) { .beacon-card__text { font-size: 1rem; } }
.beacon-card--gap .beacon-card__text { margin-top: 0; }
.beacon-card--dark .beacon-card__text { color: var(--beacon-light-green-2); }
.beacon-card__title--2xl { font-size: 1.5rem; margin-top: 0; }

.beacon-heading-xl {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	text-wrap: balance;
	font-size: 1.875rem;
	line-height: 1.15;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-heading-xl { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-heading-xl { font-size: 3rem; } }
.beacon-heading-xl--white { color: var(--beacon-white); }
.beacon-heading-xl--light { color: var(--beacon-light-green-3); }
.beacon-heading-xl--center { text-align: center; }

.beacon-statement { display: grid; grid-template-columns: 1fr; row-gap: 1rem; align-items: start; }
@media (min-width: 640px)  { .beacon-statement { row-gap: 2rem; } }
@media (min-width: 1024px) { .beacon-statement { grid-template-columns: repeat(4, 1fr); } }
.beacon-statement__body { grid-column: span 1; }
@media (min-width: 1024px) { .beacon-statement__body { grid-column: span 3; } }
.beacon-statement__sub {
	color: var(--beacon-green-black);
	font-weight: 400;
	font-size: 0.875rem;
	margin: 1rem 0 0;
}
@media (min-width: 640px) { .beacon-statement__sub { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-statement__sub { font-size: 1.125rem; } }

.beacon-cta:not(.beacon-cta--blue) {
	position: relative;
	overflow: hidden;
	border-top: 1px solid rgba(36, 36, 36, .18);
	border-bottom: 1px solid rgba(36, 36, 36, .18);
	padding: 3rem 0;
}

.beacon-cta:not(.beacon-cta--blue)::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 58%;
	background: url(../images/cta-bg.webp) 65% center / cover no-repeat;
	opacity: .2;

	-webkit-mask-image: linear-gradient(to right, transparent 0%, #000 38%, #000 72%, transparent 100%);
	mask-image: linear-gradient(to right, transparent 0%, #000 38%, #000 72%, transparent 100%);
	pointer-events: none;
}
.beacon-cta:not(.beacon-cta--blue) > * { position: relative; }
@media (min-width: 768px) { .beacon-cta:not(.beacon-cta--blue) { padding: 4.5rem 0; } }
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner,
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner--service,
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner--team {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
	padding: 0;
	min-height: 0;
	align-items: end;
}
@media (min-width: 900px) {
	.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner,
	.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner--service,
	.beacon-cta:not(.beacon-cta--blue) .beacon-cta__inner--team { grid-template-columns: minmax(0, 1fr) auto; gap: 4rem; }
}
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__copy { gap: 0; }
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__title,
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__title--lg {
	font-family: var(--beacon-font-display);
	font-weight: 400;
	font-size: clamp(2rem, 4.4vw, 3.5rem);
	line-height: 1.06;
	letter-spacing: -.02em;
	color: var(--beacon-green-black);
	max-width: 22ch;
	text-wrap: pretty;
}
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__sub { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.7; max-width: 44rem; margin-top: 1.25rem; }
.beacon-cta:not(.beacon-cta--blue) .beacon-cta__buttons { padding-bottom: .35rem; }
@media (min-width: 900px) { .beacon-cta:not(.beacon-cta--blue) .beacon-cta__buttons { padding-right: 3rem; } }
.beacon-cta--blue {
	background-color: #0096FF;
	background-image: linear-gradient(265deg, #0F4560 1.04%, #5FB7F5 51.95%, #0F4560 98.1%);
}
.beacon-cta__inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	row-gap: 1rem;
	gap: 1rem;
	padding: 2.5rem 1.5rem;
	margin: 0 auto;
}
@media (min-width: 640px) {
	.beacon-cta__inner { flex-direction: row; padding: 5rem; flex-wrap: wrap; }
}
@media (min-width: 768px) { .beacon-cta__inner { flex-wrap: nowrap; } }
.beacon-cta__inner--tall { min-height: 12.5rem; }
.beacon-cta__copy { display: flex; flex-direction: column; gap: 0.75rem; }
.beacon-cta__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-light-green-3);
	text-wrap: balance;
	font-size: 1.5rem;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-cta__title { font-size: 1.875rem; } }
@media (min-width: 1024px) { .beacon-cta__title { font-size: 2.25rem; } }
.beacon-cta__title--lg { font-size: 1.875rem; }
@media (min-width: 768px)  { .beacon-cta__title--lg { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-cta__title--lg { font-size: 3rem; } }
.beacon-cta__sub {
	color: var(--beacon-light-green-2);
	text-wrap: balance;
	font-size: 0.875rem;
	margin: 0;
}
@media (min-width: 640px) { .beacon-cta__sub { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-cta__sub { font-size: 1.125rem; } }
.beacon-cta__buttons { display: flex; gap: 0.625rem; flex-wrap: wrap; }
@media (min-width: 768px) { .beacon-cta__buttons { flex-wrap: nowrap; } }

.beacon-popup-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(36, 36, 36, .7);
	z-index: 9999;
	justify-content: center;
	align-items: center;
}
.beacon-popup-overlay.active { display: flex; }
.beacon-popup {
	position: relative;
	width: 95%;
	max-width: 56.25rem;
	height: 90vh;
	border-radius: 0.75rem;
	box-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);
	background: var(--beacon-white);
}
@media (min-width: 768px) { .beacon-popup { width: 90%; height: 80vh; } }
.beacon-popup--team { background: var(--beacon-light-green-2); }
.beacon-popup__close {
	position: absolute;
	top: -0.75rem;
	right: -0.75rem;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	background: var(--beacon-white);
	border: none;
	font-size: 1.25rem;
	cursor: pointer;
	border-radius: 9999px;
	box-shadow: 0 10px 15px -3px rgb(0 0 0 / .1);
	color: var(--beacon-green-black);
	transition: all .2s;
}
@media (min-width: 768px) {
	.beacon-popup__close { top: -0.9375rem; width: 2.5rem; height: 2.5rem; font-size: 1.5rem; }
}
.beacon-popup__close:hover { background: var(--beacon-light-blue); transform: scale(1.1); }
.beacon-popup__iframe { width: 100%; height: 100%; border: 0; border-radius: 0.75rem; }
.beacon-popup__scroll { height: 100%; overflow-y: auto; }
.beacon-popup__grid { display: grid; grid-template-columns: 1fr; height: 100%; }
@media (min-width: 768px) { .beacon-popup__grid { grid-template-columns: 1fr 1fr; } }
.beacon-popup__photo { position: relative; }
.beacon-popup__photo img { object-fit: cover; width: 100%; height: 100%; max-height: 500px; display: block; }
@media (min-width: 768px) { .beacon-popup__photo img { max-height: none; } }
.beacon-popup__bio { padding: 1.5rem; background: var(--beacon-light-green-2); }
@media (min-width: 768px) { .beacon-popup__bio { padding: 2rem; } }
.beacon-popup__bio-role {
	color: var(--beacon-dark-green-1);
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	font-size: 1.125rem;
	margin: 0;
}
.beacon-popup__bio-name {
	color: var(--beacon-green-black);
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: 2.25rem;
	margin: 1rem 0;
}
.beacon-popup__bio p:not(.beacon-popup__bio-role) {
	color: var(--beacon-grey-1);
	font-size: 1.125rem;
	line-height: 1.625;
	margin: 1rem 0 0;
}

.beacon-team-grid { display: grid; grid-template-columns: 1fr; gap: 3.5rem; }
@media (min-width: 1024px) { .beacon-team-grid { grid-template-columns: 1fr 1fr; } }
.beacon-team-member {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: 1fr;
}
@media (min-width: 1024px) { .beacon-team-member { grid-template-columns: 1fr 1fr; } }
.beacon-team-member__photo {
	object-fit: cover;
	width: 100%;
	height: 100%;
	aspect-ratio: 1;
	object-position: top;
	transition: transform .3s;
	display: block;
}
.beacon-team-member:hover .beacon-team-member__photo { transform: scale(1.02); }
.beacon-team-member__body {
	padding: 1.75rem;
	background: var(--beacon-light-green-3);
	display: flex;
	flex-direction: column;
	height: 100%;
	gap: 0.75rem;
	box-sizing: border-box;
}
.beacon-team-member__role { font-size: 0.875rem; color: var(--beacon-grey-1); margin: 0; }
.beacon-team-member__name {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-dark-green-2);
	font-size: 1rem;
	margin: 0;
}
@media (min-width: 640px)  { .beacon-team-member__name { font-size: 1.125rem; } }
@media (min-width: 768px)  { .beacon-team-member__name { font-size: 1.25rem; } }
@media (min-width: 1024px) { .beacon-team-member__name { font-size: 1.5rem; } }
.beacon-team-member__btn { width: fit-content; }

.beacon-service-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 1024px) { .beacon-service-grid { grid-template-columns: 1fr 1fr; } }
.beacon-service-card {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	max-height: 22rem;
}
.beacon-service-card__link { position: absolute; inset: 0; z-index: 20; }
.beacon-service-card__img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	aspect-ratio: 1;
	transition: transform .3s;
	display: block;
}
.beacon-service-card:hover .beacon-service-card__img { transform: scale(1.02); }
.beacon-service-card__body {
	position: absolute;
	inset: 0;
	padding: 1rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
@media (min-width: 768px) { .beacon-service-card__body { padding: 1.25rem 1.25rem 1.25rem 2.5rem; } }
.beacon-service-card__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-white);
	font-size: 1.125rem;
	margin: 0;
}
@media (min-width: 640px)  { .beacon-service-card__title { font-size: 1.25rem; } }
@media (min-width: 768px)  { .beacon-service-card__title { font-size: 1.5rem; } }
@media (min-width: 1024px) { .beacon-service-card__title { font-size: 1.875rem; } }
.beacon-service-card__list { color: var(--beacon-light-green-2); margin: 0.25rem; font-size: 0.875rem; }
@media (min-width: 640px) { .beacon-service-card__list { margin: 0.75rem; font-size: 1rem; } }
@media (min-width: 768px) { .beacon-service-card__list { font-size: 1.125rem; } }
.beacon-service-card__list ul { list-style: disc; margin: 0; padding-left: 1.25rem; }

.beacon-band {
	padding: 3.5rem 0;
	border-top: 1px solid var(--beacon-dark-cream);
	border-bottom: 1px solid var(--beacon-dark-cream);
}
.beacon-band p {
	font-family: var(--beacon-font-arya);
	color: var(--beacon-green-black);
	text-align: center;
	font-size: 1rem;
	margin: 0 3rem;
}
@media (min-width: 640px)  { .beacon-band p { font-size: 1.125rem; margin: 0 6rem; } }
@media (min-width: 768px)  { .beacon-band p { font-size: 1.25rem; } }
@media (min-width: 1024px) { .beacon-band p { font-size: 1.5rem; } }

.beacon-post-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; margin-top: 2rem; }
@media (min-width: 1024px) { .beacon-post-grid { grid-template-columns: repeat(3, 1fr); } }
.beacon-post-card { position: relative; }
.beacon-post-card__link { position: absolute; inset: 0; z-index: 10; }
.beacon-post-card__img { object-fit: cover; object-position: top; width: 100%; height: 15rem; display: block; }
.beacon-post-card__body { padding: 1rem; background: var(--beacon-light-green-3); }
@media (min-width: 640px) { .beacon-post-card__body { padding: 2rem; } }
.beacon-post-card__meta,
.beacon-post-kicker {
	font-size: 0.75rem;
	color: var(--beacon-dark-cream);
	text-transform: uppercase;
	font-weight: 500;
	font-family: var(--beacon-font-arya);
	margin: 0;
}
.beacon-post-card__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	font-size: 1rem;
	margin: 1.5rem 0 0;
}
@media (min-width: 640px)  { .beacon-post-card__title { font-size: 1.125rem; margin-top: 3rem; } }
@media (min-width: 768px)  { .beacon-post-card__title { font-size: 1.25rem; } }
@media (min-width: 1024px) { .beacon-post-card__title { font-size: 1.5rem; } }
.beacon-post-card__title a { color: inherit; text-decoration: none; }

.beacon-prose { color: var(--beacon-grey-1); max-width: none; width: 100%; }
.beacon-prose h1, .beacon-prose h2, .beacon-prose h3, .beacon-prose h4, .beacon-prose h5, .beacon-prose h6 {
	font-family: var(--beacon-font-sans);
	font-weight: 500;
	color: var(--beacon-green-black);
	line-height: 1.3;
	margin: 2em 0 1em;
}
.beacon-prose h2 { font-size: 1.5rem; }
.beacon-prose h3 { font-size: 1.25rem; }
.beacon-prose p { margin: 1.25em 0; }
.beacon-prose a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid var(--beacon-grey-2);
	transition: color .2s, border-color .2s;
}
.beacon-prose a:hover { color: var(--beacon-dark-blue-1); }
.beacon-prose ul { list-style-type: '—'; padding-left: 1.5rem; }
.beacon-prose ul li { padding-left: 0.75rem; margin: 0.5em 0; }
.beacon-prose li::marker { color: var(--beacon-dark-blue-1); }
.beacon-prose blockquote {
	border-left: 3px solid var(--beacon-cream);
	color: var(--beacon-grey-1);
	margin: 1.5em 0;
	padding-left: 1.25rem;
	font-style: italic;
}
.beacon-prose pre {
	border: 1px solid var(--beacon-grey-2);
	border-radius: 0.75rem;
	padding: 1rem;
	overflow-x: auto;
}
.beacon-prose img { margin: 1.5em 0; }
.beacon-prose strong { color: var(--beacon-green-black); }

.beacon-infopage { display: grid; gap: 3rem; }
@media (min-width: 1024px) { .beacon-infopage { grid-template-columns: repeat(3, 1fr); } }
.beacon-infopage__aside .beacon-infopage__sticky { position: static; }
@media (min-width: 1024px) { .beacon-infopage__aside .beacon-infopage__sticky { position: sticky; top: 12rem; } }
.beacon-infopage__kicker {
	font-size: 0.75rem;
	color: var(--beacon-dark-cream);
	text-transform: uppercase;
	font-weight: 500;
	margin: 0;
}
.beacon-infopage__title {
	font-family: var(--beacon-font-display);
	color: var(--beacon-green-black);
	text-wrap: balance;
	font-weight: 500;
	font-size: 1.125rem;
	margin: 3rem 0 0;
}
@media (min-width: 640px)  { .beacon-infopage__title { font-size: 1.25rem; } }
@media (min-width: 768px)  { .beacon-infopage__title { font-size: 1.5rem; } }
@media (min-width: 1024px) { .beacon-infopage__title { font-size: 1.875rem; } }
.beacon-infopage__content { grid-column: span 1; }
@media (min-width: 1024px) { .beacon-infopage__content { grid-column: span 2; } }

.beacon-footer { background: var(--beacon-light-green-3); }
.beacon-footer__inner { padding-top: 2rem; padding-bottom: 2rem; }
@media (min-width: 640px) { .beacon-footer__inner { padding-top: 4rem; padding-bottom: 4rem; } }
.beacon-footer__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
	margin-bottom: 2rem;
}
@media (min-width: 768px)  { .beacon-footer__grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .beacon-footer__grid { grid-template-columns: repeat(4, 1fr); } }
.beacon-footer__brand { grid-column: 1 / -1; }
@media (min-width: 768px) { .beacon-footer__brand { grid-column: span 1; } }
.beacon-footer__brand svg { max-height: 2.875rem; width: auto; padding-right: 1rem; }
.beacon-footer__brand .beacon-btn { margin-top: 2rem; }
.beacon-footer__heading {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-dark-cream);
	font-size: 0.875rem;
	margin: 0;
}
@media (min-width: 640px) { .beacon-footer__heading { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-footer__heading { font-size: 1.125rem; } }
.beacon-footer__links { list-style: none; margin: 1rem 0 0; padding: 0; display: flex; flex-direction: column; gap: 1.25rem; }
.beacon-footer__links a { color: var(--beacon-grey-1); font-size: 0.875rem; text-decoration: none; transition: color .2s; }
.beacon-footer__links a:hover { color: var(--beacon-green-black); }
.beacon-footer__contact { grid-column: 1 / -1; }
@media (min-width: 768px) { .beacon-footer__contact { grid-column: span 1; } }
.beacon-footer__contact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem 0; margin-top: 1rem; }
@media (min-width: 768px) { .beacon-footer__contact-grid { grid-template-columns: 1fr; } }
.beacon-footer__contact-grid p { font-size: 0.875rem; margin: 0.25rem 0 0; color: var(--beacon-grey-1); }
.beacon-footer__contact-grid p.strong { color: var(--beacon-green-black); font-weight: 500; margin: 0; }
.beacon-footer__badges { display: flex; align-items: center; }
.beacon-footer__badges img { height: auto; }
.beacon-footer__badges img:first-child { width: 4.375rem; }
.beacon-footer__badges img:last-child { width: 6.25rem; }
.beacon-footer__bottom { border-top: 1px solid var(--beacon-light-green-2); padding-top: 2rem; }
.beacon-footer__bottom-row {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 1rem;
	color: var(--beacon-grey-1);
	font-size: 0.875rem;
}
@media (min-width: 768px) { .beacon-footer__bottom-row { flex-direction: row; align-items: center; } }
.beacon-footer__bottom-row p { margin: 0; }
.beacon-footer__legal { display: flex; flex-direction: column; gap: 1rem; }
@media (min-width: 768px) { .beacon-footer__legal { flex-direction: row; } }
.beacon-footer__legal a { color: var(--beacon-grey-1); text-decoration: none; transition: color .2s; }
.beacon-footer__legal a:hover { color: var(--beacon-green-black); }

.beacon-careers-intro { padding: 1.5rem 1rem; }
@media (min-width: 640px)  { .beacon-careers-intro { padding: 3rem 2rem; } }
@media (min-width: 1024px) { .beacon-careers-intro { padding: 3rem 4rem; } }
.beacon-careers-grid { display: grid; grid-template-columns: 1fr; row-gap: 1rem; }
@media (min-width: 1024px) { .beacon-careers-grid { grid-template-columns: repeat(3, 1fr); align-items: start; } }
.beacon-careers-grid__cols { display: grid; grid-template-columns: 1fr; }
@media (min-width: 640px)  { .beacon-careers-grid__cols { grid-template-columns: 1fr 1fr; gap: 4rem; } }
@media (min-width: 1024px) { .beacon-careers-grid__cols { grid-column: span 2; } }
.beacon-careers-band { background: var(--beacon-light-green-3); padding: 1rem; }
@media (min-width: 640px)  { .beacon-careers-band { padding: 2rem; } }
@media (min-width: 1024px) { .beacon-careers-band { padding: 3rem; } }
.beacon-careers-band__row {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
	padding: 0 2.5rem;
}
@media (min-width: 640px)  { .beacon-careers-band__row { padding: 0 5rem; } }
@media (min-width: 1024px) { .beacon-careers-band__row { flex-direction: row; } }
.beacon-careers-band__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	font-size: 1.125rem;
	margin: 0;
	min-width: min(36rem, 100%);
}
@media (min-width: 640px)  { .beacon-careers-band__title { font-size: 1.25rem; } }
@media (min-width: 768px)  { .beacon-careers-band__title { font-size: 1.5rem; } }
@media (min-width: 1024px) { .beacon-careers-band__title { font-size: 1.875rem; } }
.beacon-careers-band__copy { display: flex; flex-direction: column; gap: 1rem; }
.beacon-careers-band__copy p { color: var(--beacon-grey-1); margin: 0.25rem 0 0; font-size: 0.875rem; }
@media (min-width: 640px) { .beacon-careers-band__copy p { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-careers-band__copy p { font-size: 1.125rem; } }
.beacon-kicker {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	color: var(--beacon-cream);
	font-size: 0.875rem;
	margin: 0;
}
@media (min-width: 640px) { .beacon-kicker { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-kicker { font-size: 1.125rem; } }

.beacon-contact {
	overflow: hidden;
	display: grid;
	grid-template-columns: 1fr;
	min-height: 45rem;
	background: var(--beacon-light-green-3);
}
@media (min-width: 1024px) { .beacon-contact { grid-template-columns: 1fr 1fr; } }
.beacon-contact__info {
	padding: 2.5rem;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
	gap: 2.5rem;
}
.beacon-contact__rows { margin-top: 2rem; display: flex; flex-direction: column; gap: 0.25rem; }
.beacon-contact__row { display: flex; align-items: flex-start; gap: 0.75rem; }
.beacon-contact__row p, .beacon-contact__row a { font-size: 0.875rem; margin: 0; }
@media (min-width: 640px) { .beacon-contact__row p, .beacon-contact__row a { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-contact__row p, .beacon-contact__row a { font-size: 1.125rem; } }
.beacon-contact__row .label { color: var(--beacon-green-black); }
.beacon-contact__row .value, .beacon-contact__row a { color: var(--beacon-dark-cream); text-decoration: none; transition: color .2s; }
.beacon-contact__row a:hover { color: var(--beacon-green-black); }
.beacon-contact__book { display: flex; flex-direction: column; gap: 2.5rem; }
.beacon-contact__book h2 {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	font-size: 1.25rem;
	margin: 0;
}
@media (min-width: 1024px) { .beacon-contact__book h2 { font-size: 1.5rem; } }
.beacon-contact__book p { color: var(--beacon-grey-1); margin: 0; font-size: 0.875rem; }
@media (min-width: 640px) { .beacon-contact__book p { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-contact__book p { font-size: 1.125rem; } }
.beacon-contact__form { padding: 1.5rem; }

.beacon-section-pad { padding-top: 1.25rem; padding-bottom: 1.25rem; }
@media (min-width: 640px) { .beacon-section-pad { padding-top: 2.5rem; padding-bottom: 2.5rem; } }
.beacon-dark-panel { background: var(--beacon-dark-blue-2); }
.beacon-center-col { display: flex; flex-direction: column; align-items: center; row-gap: 1rem; }
@media (min-width: 640px) { .beacon-center-col { row-gap: 2rem; } }

.beacon-text-grey { color: var(--beacon-grey-1); }
.beacon-text-white { color: var(--beacon-white); }
.beacon-text-light-green { color: var(--beacon-light-green-2); }
.beacon-lede { font-size: 0.875rem; }
@media (min-width: 640px) { .beacon-lede { font-size: 1rem; } }
@media (min-width: 768px) { .beacon-lede { font-size: 1.125rem; } }

.wp-block-image img { display: block; }
.wp-block-cover, .wp-block-cover-image { border-radius: 0; }
.wp-block-pullquote { border: 0; padding: 2rem 0; }
.wp-block-pullquote blockquote { border: 0; }
.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table td, .wp-block-table th { border: 1px solid var(--beacon-light-green-2); padding: 0.5rem 0.75rem; }
.wp-block-code { border: 1px solid var(--beacon-grey-2); border-radius: 0.75rem; padding: 1rem; }
.wp-block-search__button { border-radius: 0; }
.wp-block-post-title a { text-decoration: none; }
.wp-block-navigation a { text-decoration: none; }
.wp-block-file .wp-block-file__button { border-radius: 0; }
.wp-element-caption { color: var(--beacon-grey-1); font-size: 0.875rem; }

.beacon-share { display: flex; flex-direction: column; gap: 1rem; }
.beacon-share__btn {
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
	text-align: left;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
	font-family: var(--beacon-font-sans);
	text-transform: uppercase;
	color: var(--beacon-green-black);
	transition: color .3s;
}
.beacon-share__btn:hover { color: var(--beacon-dark-cream); }

.beacon-page-title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	color: var(--beacon-green-black);
	text-align: center;
	text-wrap: balance;
	font-size: 2.25rem;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-page-title { font-size: 3rem; } }
@media (min-width: 1024px) { .beacon-page-title { font-size: 3.75rem; } }

.beacon-page-header { padding-top: 6rem; padding-bottom: 1.5rem; }
@media (min-width: 640px) { .beacon-page-header { padding-top: 12rem; padding-bottom: 3rem; } }

.wp-block-cover.beacon-hero-cover {
	min-height: 20rem;
	aspect-ratio: 1920 / 536;
	padding: 3.75rem 1.5rem 0;
}
@media (min-width: 640px)  { .wp-block-cover.beacon-hero-cover { padding: 0 3rem; } }
@media (min-width: 768px)  { .wp-block-cover.beacon-hero-cover { padding: 0 6rem; } }
@media (min-width: 1024px) { .wp-block-cover.beacon-hero-cover { padding: 0 12rem; } }
.beacon-hero-cover .wp-block-cover__image-background { object-position: top; }
.beacon-hero-cover .wp-block-cover__inner-container { width: 100%; }

.wp-block-columns.beacon-split-native { display: grid; grid-template-columns: 1fr; gap: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-split-native { grid-template-columns: 1fr 1fr; align-items: start; } }
.beacon-split-native > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-cover.beacon-split__cover {
	min-height: 0;
	height: 100%;
	box-sizing: border-box;
	padding: 6rem 2rem;
}
@media (min-width: 768px)  { .wp-block-cover.beacon-split__cover { padding: 6rem 3rem; } }
@media (min-width: 1024px) { .wp-block-cover.beacon-split__cover { padding: 6rem; } }
@media (max-width: 1023px) {

	.wp-block-cover.beacon-split__cover .wp-block-cover__background.has-background-dim { opacity: 1 !important; }
}
.beacon-split__cover .wp-block-cover__inner-container { width: 100%; }
.beacon-split__cards .wp-block-buttons { margin-top: 3rem; }
.beacon-split__cards .wp-block-button,
.beacon-split__cards .wp-block-button__link { width: 100%; }
@media (min-width: 1024px) {
	.beacon-split__cards .wp-block-button,
	.beacon-split__cards .wp-block-button__link { width: auto; }
}

.beacon-statement__sub { font-family: var(--beacon-font-sans); }

.wp-block-columns.beacon-cards-native { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 1024px) { .wp-block-columns.beacon-cards-native { grid-template-columns: repeat(3, 1fr); } }
.beacon-cards-native > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-image.beacon-card__icon { margin: 0; }
.beacon-card__icon img { width: 3.75rem; height: 3.75rem; }
@media (min-width: 640px) { .beacon-card__icon img { width: 5rem; height: 5rem; } }

.wp-block-cover.beacon-page-hero { padding: 0; }
.beacon-page-hero .wp-block-cover__image-background { object-position: top; }

.wp-block-columns.beacon-cards-native--4 { gap: 1rem; }
@media (min-width: 640px)  { .wp-block-columns.beacon-cards-native--4 { gap: 2rem; } }
@media (min-width: 1024px) { .wp-block-columns.beacon-cards-native--4 { grid-template-columns: repeat(4, 1fr); } }
.beacon-cards-native .beacon-card--gap > .beacon-card__title { margin-top: 0; }

.beacon-team-grid > .beacon-team-member { margin-block-start: 0; }

.beacon-cta__copy > * { margin-block-start: 0; }

.beacon-approach-cards { padding-top: 1.5rem; }
@media (min-width: 1024px) { .beacon-approach-cards { padding-top: 3rem; } }
.beacon-cards-native--4 > .beacon-card { padding: 1.875rem; gap: 0.625rem; }
.beacon-team-grid { padding-top: 1.5rem; }
@media (min-width: 1024px) { .beacon-team-grid { padding-top: 3rem; } }
.beacon-cta__inner--team { padding: 2.5rem 1.5rem; gap: 2rem; }
@media (min-width: 768px) { .beacon-cta__inner--team { padding: 5rem 3rem; } }

.beacon-narrow { max-width: 48rem; }

.wp-site-blocks > main.beacon-main { margin-block-start: 0; }

.is-style-beacon-dark-blue .wp-block-button__link { background: var(--beacon-dark-blue-1); color: var(--beacon-white); }
.is-style-beacon-dark-blue .wp-block-button__link:hover { background: var(--beacon-dark-blue-2); color: var(--beacon-white); }
.wp-block-columns.beacon-contact { display: grid; gap: 0; }
.beacon-contact > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-contact__info > * { margin-block-start: 0; }
.beacon-contact__rows.wp-block-group { margin-top: 2rem; }
.beacon-contact__row > p { margin: 0; }
.beacon-hubspot-form--editor { padding: 2rem; border: 1px dashed var(--beacon-grey-2, #A19D9D); background: var(--beacon-white); text-align: center; }
.beacon-contact__row > .label { flex-shrink: 0; white-space: nowrap; }

.beacon-page-services .beacon-band { margin-top: 3rem; }
@media (min-width: 640px) { .beacon-page-services .beacon-band { margin-top: 6rem; } }
.beacon-page-services .beacon-service-grid { margin-top: 3rem; }
@media (min-width: 1024px) { .beacon-page-services .beacon-service-grid { margin-top: 6rem; } }

@media (max-width: 1023px) { .beacon-service-grid.is-layout-grid { grid-template-columns: 1fr; } }

.wp-block-cover.beacon-service-card {
	min-height: 0;

	height: min(22rem, calc(100vw - 2 * var(--beacon-gutter)));
	max-height: none;
	flex-direction: row;
	padding: 1rem;
	overflow: hidden;
}
@media (min-width: 768px) { .wp-block-cover.beacon-service-card { padding: 1.25rem 1.25rem 1.25rem 2.5rem; } }
.beacon-service-card .wp-block-cover__image-background { transition: transform .3s; }
.beacon-service-card:hover .wp-block-cover__image-background { transform: scale(1.02); }
.beacon-service-card .wp-block-cover__inner-container { width: 100%; }
.beacon-service-card__title a { color: inherit; text-decoration: none; }
.beacon-service-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 20; }
ul.beacon-service-card__list {
	list-style: disc;
	color: var(--beacon-light-green-2);
	margin: 0.25rem;
	padding-left: 1.25rem;
	font-size: 0.875rem;
}
@media (min-width: 640px) { ul.beacon-service-card__list { margin: 0.75rem; font-size: 1rem; } }
@media (min-width: 768px) { ul.beacon-service-card__list { font-size: 1.125rem; } }
ul.beacon-service-card__list li { margin: 0; }

.wp-block-group.beacon-cta-section--blue { margin-bottom: 1.5rem; }
@media (min-width: 640px) { .wp-block-group.beacon-cta-section--blue { margin-bottom: 3rem; } }
.beacon-cta__inner--services { padding: 2.5rem 1.5rem; gap: 1rem; }
@media (min-width: 640px) { .beacon-cta__inner--services { padding: 5rem 3rem; } }

.beacon-footer__badges { display: flex; align-items: center; gap: 0.5rem; }
.beacon-footer__badges img { height: auto; display: block; }

.wp-block-group.beacon-cta.has-background { padding: 0; }

.wp-block-cover.beacon-hero-cover--service { aspect-ratio: auto; height: 30rem; padding: 1rem; }
@media (min-width: 640px) { .wp-block-cover.beacon-hero-cover--service { height: clamp(20rem, 56.25vw, 30rem); } }
@media (min-width: 768px) { .wp-block-cover.beacon-hero-cover--service { padding: 1.25rem; } }
@media (max-width: 1279px) { .beacon-hero-cover--service .wp-block-cover__inner-container { margin-top: 4rem; } }
.beacon-hero-cover--service .wp-block-cover__image-background { object-position: center; }
.beacon-hero-cover--service .beacon-hero__title { font-size: 1.875rem; line-height: 1.2; }
@media (min-width: 768px)  { .beacon-hero-cover--service .beacon-hero__title { font-size: 2.25rem; } }
@media (min-width: 1024px) { .beacon-hero-cover--service .beacon-hero__title { font-size: 3rem; line-height: 1.2; } }
.beacon-hero-cover--service .beacon-hero__lede { margin: 1.75rem auto 0; }
.beacon-hero-cover--service .wp-block-buttons { margin-top: 1.5rem; }

.wp-block-group.beacon-service-split.has-background { padding: 0; }
.beacon-split__text { padding: 1rem; }
@media (min-width: 640px)  { .beacon-split__text { padding: 2rem; } }
@media (min-width: 768px)  { .beacon-split__text { padding: 2rem 3rem; } }
@media (min-width: 1024px) { .beacon-split__text { padding: 3.125rem 6rem; } }
.beacon-split__text > .beacon-split__heading { margin-bottom: 1.25rem; }
@media (min-width: 640px) { .beacon-split__text > .beacon-split__heading { margin-bottom: 2.5rem; } }
.beacon-split__sub--light { color: var(--beacon-light-green-2); margin: 1.5rem 0; line-height: 1.3125; }
.beacon-sticky-cards--dark .beacon-sticky-card { background: var(--beacon-dark-blue-3); }
.beacon-sticky-cards--dark .beacon-sticky-card__title { color: var(--beacon-white); }
.beacon-sticky-cards--dark .beacon-sticky-card__text { color: var(--beacon-light-green-2); }

.beacon-section-heading { padding-top: 3rem; padding-bottom: 0.5rem; }
@media (min-width: 640px) { .beacon-section-heading { padding-top: 6.25rem; padding-bottom: 1.25rem; } }

.beacon-card-grid.is-layout-grid { gap: 1rem; }
@media (min-width: 640px) { .beacon-card-grid.is-layout-grid { gap: 2rem; } }
@media (max-width: 1023px) { .beacon-card-grid.is-layout-grid { grid-template-columns: 1fr; } }
.beacon-page-service .beacon-card-grid { margin-top: 1.5rem; margin-bottom: 3rem; }
@media (min-width: 640px) { .beacon-page-service .beacon-card-grid { margin-top: 3rem; margin-bottom: 6.25rem; } }
.beacon-card.wp-block-group > * { margin-block-start: 0; }

.beacon-page-service .beacon-carousel-wrap { margin-top: 3rem; margin-bottom: 3rem; }
@media (min-width: 640px) { .beacon-page-service .beacon-carousel-wrap { margin-top: 6.25rem; margin-bottom: 6.25rem; } }

.beacon-page-service .beacon-download-band { margin-top: 5rem; margin-bottom: 5rem; }
.wp-block-group.beacon-download-band__panel.has-background { padding: 2rem 2.5rem; }
@media (min-width: 640px) { .wp-block-group.beacon-download-band__panel.has-background { padding: 3.75rem 5rem; } }
.beacon-download-band__panel { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; row-gap: 1rem; }
.beacon-download-band__title { font-family: var(--beacon-font-arya); font-weight: 400; color: var(--beacon-white); text-wrap: balance; font-size: 1rem; margin: 0; }
@media (min-width: 640px)  { .beacon-download-band__title { font-size: 1.125rem; } }
@media (min-width: 768px)  { .beacon-download-band__title { font-size: 1.25rem; } }
@media (min-width: 1024px) { .beacon-download-band__title { font-size: 1.5rem; } }
.beacon-download-band__text { color: var(--beacon-white); max-width: 48rem; margin: 0; }

.wp-block-group.beacon-bidders.has-background { padding: 5rem; }
@media (min-width: 768px) { .wp-block-group.beacon-bidders.has-background { padding: 3.75rem; } }
.beacon-bidders .beacon-heading-xl { text-align: center; }
.wp-block-columns.beacon-bidders__grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; padding: 1.5rem; margin-top: 2.5rem; }
@media (min-width: 640px)  { .wp-block-columns.beacon-bidders__grid { gap: 3rem; padding: 3.125rem; } }
@media (min-width: 768px)  { .wp-block-columns.beacon-bidders__grid { gap: 6rem; } }
@media (min-width: 1024px) { .wp-block-columns.beacon-bidders__grid { grid-template-columns: 1fr 1fr; } }
.beacon-bidders__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-bidders__box { background: var(--beacon-dark-blue-3); padding: 1.25rem 2.5rem; display: flex; flex-direction: column; gap: 1rem; }
@media (min-width: 640px) { .wp-block-column.beacon-bidders__box { padding: 2.5rem; } }
.beacon-bidders__box > * { margin-block-start: 0; }
.beacon-bidders__title { font-family: var(--beacon-font-arya); font-weight: 400; color: var(--beacon-white); font-size: 1.5rem; text-wrap: balance; margin: 0; }
ul.beacon-bidders__list { display: grid; grid-template-columns: 1fr; column-gap: 2rem; list-style: disc; color: var(--beacon-white); margin: 0; padding-left: 1rem; font-size: 0.875rem; }
ul.beacon-bidders__list--2col { grid-template-columns: 1fr 1fr; }
@media (min-width: 640px) { ul.beacon-bidders__list { font-size: 1rem; } }
@media (min-width: 768px) { ul.beacon-bidders__list { font-size: 1.125rem; } }
ul.beacon-bidders__list li { text-wrap: balance; margin: 0; }

.wp-block-cover.beacon-quote-band { min-height: 0; padding: 2rem 3rem; }
@media (min-width: 640px) { .wp-block-cover.beacon-quote-band { padding: 3.75rem 6rem; } }
.beacon-quote-band .wp-block-cover__inner-container { width: 100%; text-align: center; }
.beacon-quote-band .wp-block-cover__inner-container > * + * { margin-block-start: 1.875rem; }
.beacon-quote-band__text { color: var(--beacon-white); text-align: center; }
.beacon-quote-band__by { color: var(--beacon-dark-cream); margin: 0; }

.beacon-cta__inner--service { min-height: 12.5rem; padding: 2.5rem 2rem; row-gap: 1rem; }
@media (min-width: 640px) { .beacon-cta__inner--service { padding: 3rem; } }
@media (min-width: 768px) { .beacon-cta__inner--service { padding: 3.5rem 4rem; } }

.beacon-popup--download { height: auto; max-height: 90vh; border-radius: 0; padding: 1.5rem; overflow: auto; box-sizing: border-box; }
@media (min-width: 768px) { .beacon-popup--download { height: auto; padding: 2rem; } }
.beacon-download-popup__title { font-family: var(--beacon-font-arya); font-weight: 400; color: var(--beacon-green-black); font-size: 1.5rem; margin: 0; }

.beacon-download-band__panel .beacon-cta__copy { display: flex; flex-direction: column; gap: 0.75rem; }
.beacon-download-band__panel .wp-block-buttons { flex-shrink: 0; }

.beacon-cta__inner--service { flex-wrap: wrap; }
.beacon-card-grid .beacon-card__icon img { width: 3.75rem; height: 3.75rem; }
@media (min-width: 640px) { .beacon-card-grid .beacon-card__icon img { width: 5rem; height: 5rem; } }

.wp-block-columns.beacon-footer__grid { display: grid; gap: 2rem; }
.beacon-footer__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-footer__brand .beacon-nav__logo svg, .beacon-footer__brand .beacon-nav__logo img { height: 2.875rem; padding-right: 1rem; }
.beacon-footer__brand .wp-block-buttons { margin-top: 2rem; }
ul.beacon-footer__links li { margin: 0; }
.beacon-footer__contact-grid > * { margin-block-start: 0; }
.beacon-footer__badges .wp-block-image { margin: 0; }
.beacon-footer__badges > :first-child img { width: 4.375rem; }
.beacon-footer__badges > :last-child img { width: 6.25rem; }
ul.beacon-footer__legal { list-style: none; margin: 0; padding: 0; }
ul.beacon-footer__legal li { margin: 0; }

.wp-block-group.beacon-service-split--light.has-background { padding: 0; }
.beacon-split__kicker--dark-cream { color: var(--beacon-dark-cream); }

.wp-block-cover.beacon-service-bg { min-height: 0; padding: 0; }
.beacon-service-bg .wp-block-cover__inner-container { width: 100%; }

.wp-block-group.beacon-dark-section.has-background { padding: 3rem var(--beacon-gutter) 1.5rem; }
@media (min-width: 640px) { .wp-block-group.beacon-dark-section.has-background { padding: 6rem var(--beacon-gutter) 3rem; } }
.beacon-dark-section__lede { margin: 1rem 0 0; }
.beacon-card.beacon-card--dark { padding: 1.75rem; }

.wp-block-group.beacon-eco-critical.has-background { padding: 0; }
.wp-block-columns.beacon-eco-critical__grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; padding: 1.5rem; }
@media (min-width: 640px) { .wp-block-columns.beacon-eco-critical__grid { gap: 3rem; padding: 3.125rem; } }
@media (min-width: 768px) { .wp-block-columns.beacon-eco-critical__grid { gap: 6rem; grid-template-columns: 1fr 1fr; } }
.beacon-eco-critical__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-eco-critical__copy { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 2.5rem; }
.beacon-eco-critical__copy > * { margin-block-start: 0; }
.beacon-eco-critical__copy .beacon-lede { text-wrap: balance; }
.wp-block-column.beacon-eco-critical__stats { display: flex; justify-content: center; align-items: center; background: var(--beacon-white); padding: 1.25rem 2.5rem; }
@media (min-width: 640px) { .wp-block-column.beacon-eco-critical__stats { padding: 2.5rem; } }
ul.beacon-stats-list { list-style: disc; margin: 0; padding-left: 1.25rem; line-height: 3rem; }
ul.beacon-stats-list li { font-family: var(--beacon-font-arya); color: var(--beacon-green-black); font-size: 1.125rem; text-wrap: balance; margin: 0; }
@media (min-width: 640px)  { ul.beacon-stats-list li { font-size: 1.25rem; } }
@media (min-width: 768px)  { ul.beacon-stats-list li { font-size: 1.5rem; } }
@media (min-width: 1024px) { ul.beacon-stats-list li { font-size: 1.875rem; } }

.beacon-split__sub--light.beacon-split__sub--grey1 { color: var(--beacon-grey-1); }
.beacon-split__sub--light.beacon-split__sub--cream { color: var(--beacon-cream); }

.wp-block-cover.beacon-page-hero--careers { min-height: 0; height: max(12.5rem, 15.625vw); padding: 0; }

.wp-block-columns.beacon-careers-grid { display: grid; grid-template-columns: 1fr; gap: 1rem 0; align-items: start; }
@media (min-width: 1024px) { .wp-block-columns.beacon-careers-grid { grid-template-columns: repeat(3, 1fr); } }
.beacon-careers-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .beacon-careers-grid > .beacon-careers-grid__span2 { grid-column: span 2; } }
.wp-block-columns.beacon-careers-grid__cols { display: grid; grid-template-columns: 1fr; gap: 0; }
@media (min-width: 640px) { .wp-block-columns.beacon-careers-grid__cols { grid-template-columns: 1fr 1fr; gap: 4rem; } }
.beacon-careers-grid__cols > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-lede--relaxed { line-height: 1.625; }

.beacon-careers-positions { padding-top: 3rem; padding-bottom: 3rem; }
@media (min-width: 1024px) { .beacon-careers-positions { padding-top: 6rem; padding-bottom: 6rem; } }
.wp-block-columns.beacon-careers-grid--gap { column-gap: 3rem; row-gap: 1rem; }
@media (min-width: 640px) { .wp-block-columns.beacon-careers-grid--gap { row-gap: 2rem; } }
.beacon-careers-positions__title { font-family: var(--beacon-font-arya); font-weight: 400; color: var(--beacon-green-black); text-wrap: balance; font-size: 1.5rem; margin: 0; }
@media (min-width: 768px)  { .beacon-careers-positions__title { font-size: 1.875rem; } }
@media (min-width: 1024px) { .beacon-careers-positions__title { font-size: 2.25rem; position: sticky; top: 12rem; } }
.beacon-careers-positions__list > * + * { margin-block-start: 3rem; }
@media (min-width: 1024px) { .beacon-careers-positions__list > * + * { margin-block-start: 6rem; } }

.beacon-post-kicker a { color: inherit; text-decoration: none; }
.beacon-post-grid { margin-top: 2rem; padding: 0; list-style: none; }
.beacon-post-grid > * { margin-block-start: 0; }
.wp-block-post-featured-image.beacon-post-card__img { margin: 0; height: 15rem; overflow: hidden; }
.beacon-post-card__img img { object-fit: cover; object-position: top; width: 100%; height: 100%; display: block; }
.beacon-post-card__img a { display: block; height: 100%; }
.beacon-post-card__body > * { margin-block-start: 0; }
.beacon-pagination { margin-top: 3rem; }

.beacon-share__icon { width: 1rem; height: 1rem; flex-shrink: 0; }

.beacon-info { padding-top: 3rem; padding-bottom: 3rem; }
@media (min-width: 640px)  { .beacon-info { padding-top: 6rem; padding-bottom: 6rem; } }
@media (min-width: 1024px) { .beacon-info { padding-top: 12rem; } }
.wp-block-columns.beacon-infopage { display: grid; grid-template-columns: 1fr; gap: 3rem; }
@media (min-width: 1024px) { .wp-block-columns.beacon-infopage { grid-template-columns: repeat(3, 1fr); } }
.beacon-infopage > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .beacon-infopage > .beacon-infopage__content { grid-column: span 2; } }
.beacon-infopage__sticky > * { margin-block-start: 0; }
.beacon-infopage__title { font-weight: 400; }
.beacon-prose table { width: 100%; border-collapse: collapse; font-size: 0.875rem; }
.beacon-prose th, .beacon-prose td { border: 1px solid var(--beacon-light-green-2); padding: 0.5rem 0.75rem; text-align: left; vertical-align: top; }
.beacon-prose th { color: var(--beacon-green-black); font-weight: 500; }

.beacon-home-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: clamp(32rem, 78vh, 50rem);
	overflow: hidden;
	background: var(--beacon-green-black);
	margin: 0;
}
.beacon-home-hero__bg { position: absolute; inset: 0; }
.beacon-home-hero__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.beacon-home-hero__scrim {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(15, 26, 25, .92) 0%, rgba(15, 26, 25, .86) 52%, rgba(15, 26, 25, .55) 78%, rgba(15, 26, 25, .25) 100%);
}

.beacon-home-hero__in { position: relative; width: 100%; padding-top: 7.5rem; padding-bottom: 4.5rem; }
.beacon-home-hero__panel { max-width: min(42rem, 100%); }
@media (min-width: 1024px) { .beacon-home-hero__panel { max-width: 50%; } }
.beacon-home-hero__kicker {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: .8125rem;
	line-height: 1.4;
	color: var(--beacon-dark-cream);
	margin: 0;
}
.beacon-home-hero__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(2.25rem, 5.2vw, 4.5rem);
	line-height: 1.04;
	letter-spacing: -.02em;
	text-align: left;
	text-wrap: balance;
	color: var(--beacon-white);
	margin: 1.25rem 0 0;
}
.beacon-home-hero__rule { height: 1px; margin-top: 2.25rem; background: rgba(224, 199, 175, .4); transform-origin: left; }
.beacon-home-hero__body {
	color: var(--beacon-light-green-2);
	font-size: 1.0625rem;
	line-height: 1.7;
	margin: 2rem 0 0;
}
.beacon-home-hero__body a { color: var(--beacon-cream); }
.beacon-home-hero__btns { margin-top: 2.25rem; }
.beacon-home-hero__btns .wp-block-buttons { display: flex; flex-wrap: wrap; gap: .625rem; }

.beacon-reveal { animation: beacon-reveal .8s cubic-bezier(.2, .7, .3, 1) both; animation-delay: calc(var(--i, 0) * 90ms); }
.beacon-reveal--rule { animation-name: beacon-reveal-rule; animation-duration: 1.2s; }
@keyframes beacon-reveal {
	from { opacity: 0; transform: translateY(22px); }
	to   { opacity: 1; transform: none; }
}
@keyframes beacon-reveal-rule {
	from { transform: scaleX(0); }
	to   { transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
	.beacon-reveal { animation: none; }
}

.beacon-home-hero--center { min-height: clamp(28rem, 66vh, 40rem); }
.beacon-home-hero--center .beacon-home-hero__scrim { background: linear-gradient(180deg, rgba(15, 26, 25, .72) 0%, rgba(15, 26, 25, .8) 100%); }
.beacon-home-hero--center .beacon-home-hero__in { padding-top: 8rem; padding-bottom: 5rem; text-align: center; }
.beacon-home-hero--center .beacon-home-hero__panel { max-width: none; margin: 0 auto; }
.beacon-home-hero--center .beacon-home-hero__title { text-align: center; font-size: clamp(2.25rem, 5.6vw, 4.25rem); }
.beacon-home-hero--center .beacon-home-hero__body { font-size: clamp(1rem, 1.5vw, 1.125rem); line-height: 1.75; margin: 1.75rem auto 0; max-width: 52rem; }
.beacon-home-hero--center .beacon-home-hero__rule { max-width: 40rem; margin-left: auto; margin-right: auto; transform-origin: center; }
.beacon-home-hero--center .beacon-home-hero__btns .wp-block-buttons { justify-content: center; }

.beacon-secthead {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.4vw, 2.75rem);
	line-height: 1.08;
	text-align: left;
	color: var(--beacon-green-black);
	max-width: 34ch;
	margin: 0;
}
hr.wp-block-separator.beacon-rule {
	border: 0;
	height: 1px;
	width: 100%;
	max-width: none;
	margin: 0;
	opacity: 1;
	background: rgba(36, 36, 36, .18);
}

.beacon-statband { padding-top: 4.5rem; padding-bottom: 4rem; }
.wp-block-columns.beacon-statband__grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: end; margin: 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-statband__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4rem; } }
.beacon-statband__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-statband__fig {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(3rem, 8vw, 7rem);
	line-height: .85;
	letter-spacing: -.03em;
	color: var(--beacon-dark-blue-2);
	margin: 1rem 0 0;
}
.beacon-statband__text { color: var(--beacon-grey-1); font-size: clamp(1.0625rem, 1.7vw, 1.375rem); line-height: 1.6; margin: 0 0 .5rem; }

.beacon-split__text.beacon-split__text--fluid { padding: clamp(2rem, 5vw, 5rem); }
.beacon-sticky-cards--dark .beacon-sticky-card__link { color: var(--beacon-cream); }
.beacon-sticky-cards--dark .beacon-sticky-card__link:hover { color: var(--beacon-white); }

.beacon-why { padding-top: 4.5rem; padding-bottom: 4.5rem; }
.beacon-why__rows { margin-top: 2rem; }
.wp-block-columns.beacon-why__row { display: grid; grid-template-columns: 1fr; gap: 1rem; padding: 2rem 0; margin: 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-why__row { grid-template-columns: auto minmax(0, 4fr) minmax(0, 6fr); gap: 2.5rem; align-items: start; } }
.beacon-why__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
figure.wp-block-image.beacon-why__icon {
	width: 3.25rem;
	height: 3.25rem;
	padding: .85rem;
	box-sizing: content-box;
	background: var(--beacon-light-green-3);
	margin: 0;
}
@media (min-width: 640px) { figure.wp-block-image.beacon-why__icon { width: 4rem; height: 4rem; } }
.beacon-why__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-why__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.1vw, 1.75rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-why__text { color: var(--beacon-grey-1); font-size: 1rem; line-height: 1.7; margin: 0; }

.beacon-dlband { padding-top: 1rem; padding-bottom: 4.5rem; }
.wp-block-group.beacon-dlband__panel.has-background { padding: clamp(2rem, 4vw, 3.5rem); }
.beacon-dlband__panel { display: grid; gap: 2rem; }
@media (min-width: 900px) { .beacon-dlband__panel { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; } }
.beacon-dlband__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.5rem, 2.8vw, 2.25rem);
	line-height: 1.14;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-dlband__text { color: var(--beacon-light-blue); font-size: 1.0625rem; line-height: 1.7; margin: 1rem 0 0; }
.beacon-dlband__panel .wp-block-buttons { display: flex; flex-wrap: wrap; gap: .625rem; }
@media (min-width: 900px) { .beacon-dlband__panel .wp-block-buttons { justify-content: flex-end; } }

.beacon-bidders-dir { padding-top: 5rem; padding-bottom: 5rem; }
hr.wp-block-separator.beacon-rule--gap { margin-top: 2rem; }
.wp-block-columns.beacon-bidders-dir__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3rem 0 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-bidders-dir__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4.5rem; align-items: start; } }
.beacon-bidders-dir__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-group.beacon-bidders-dir__panel.has-background { padding: clamp(1.75rem, 3.5vw, 2.75rem); }
.beacon-bidders-dir__label {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: .8125rem;
	color: var(--beacon-dark-blue-1);
	margin: 0;
}
ul.beacon-orgs { list-style: none; display: grid; margin: 1.75rem 0 0; padding: 0; }
ul.beacon-orgs li {
	display: grid;
	grid-template-columns: 2.75rem 1fr;
	gap: 1rem;
	align-items: start;
	padding: 1.35rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
	color: var(--beacon-green-black);
	font-size: 1.0625rem;
	line-height: 1.5;
}
ul.beacon-orgs li:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
ul.beacon-orgs li > strong { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.5rem; line-height: 1; color: var(--beacon-dark-blue-2); }
ul.beacon-sectors { list-style: none; display: grid; grid-template-columns: 1fr; margin: 1.75rem 0 0; padding: 0; }
@media (min-width: 640px) { ul.beacon-sectors { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; } }
ul.beacon-sectors li {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	padding: 1.1rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.125rem, 1.9vw, 1.5rem);
	line-height: 1.2;
	color: var(--beacon-green-black);
}
ul.beacon-sectors li::before { content: ""; width: .4rem; height: .4rem; flex-shrink: 0; background: var(--beacon-dark-cream); transform: translateY(-.2rem); }
ul.beacon-sectors li:nth-last-child(-n+2) { border-bottom: 1px solid rgba(36, 36, 36, .16); }
@media (max-width: 639px) {
	ul.beacon-sectors li:nth-last-child(-n+2) { border-bottom: 0; }
	ul.beacon-sectors li:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
}

.wp-block-cover.beacon-quote-band.beacon-quote-band--deep { padding: 5.5rem var(--beacon-gutter); background: var(--beacon-dark-green-1); }
.beacon-quote-band--deep .wp-block-cover__image-background { opacity: .35; }
.beacon-quote-band--deep .wp-block-cover__inner-container > * + * { margin-block-start: 1.75rem; }
.beacon-quote-band--deep .beacon-quote-band__text {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.5rem, 3.4vw, 2.75rem);
	line-height: 1.2;
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
}
.beacon-quote-band--deep .beacon-quote-band__by { color: var(--beacon-cream); font-size: 1.0625rem; }

.beacon-home-hero--bottom { min-height: clamp(28rem, 66vh, 40rem); align-items: flex-end; }
.beacon-home-hero--bottom .beacon-home-hero__scrim { background: linear-gradient(160deg, rgba(15, 26, 25, .55) 0%, rgba(15, 26, 25, .72) 55%, rgba(15, 26, 25, .9) 100%); }
.beacon-home-hero--bottom .beacon-home-hero__in { padding-top: 9rem; padding-bottom: 3.5rem; }
.beacon-home-hero--bottom .beacon-home-hero__panel { max-width: none; }
.beacon-home-hero--bottom .beacon-home-hero__title { font-size: clamp(2.5rem, 7vw, 5.5rem); line-height: 1; letter-spacing: -.025em; }

.beacon-secthead--white { color: var(--beacon-white); }

.beacon-about-intro { padding-top: 4.5rem; padding-bottom: 4.5rem; }
.beacon-about-intro__lead {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.5rem, 3.2vw, 2.5rem);
	line-height: 1.16;
	letter-spacing: -.01em;
	color: var(--beacon-green-black);
	max-width: 44ch;
	margin: 2rem 0 0;
}
.wp-block-columns.beacon-about-intro__cols { display: grid; grid-template-columns: 1fr; gap: 2rem; margin: 3rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-about-intro__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4.5rem; } }
.beacon-about-intro__cols > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-about-intro__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }

.wp-block-group.beacon-approach.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-approach__head { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-approach__head { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4.5rem; align-items: end; } }
.beacon-approach__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-approach__lede { color: var(--beacon-light-blue); font-size: 1.0625rem; line-height: 1.75; max-width: 46rem; margin: 0; }
.wp-block-columns.beacon-approach__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 640px)  { .wp-block-columns.beacon-approach__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 2.5rem; } }
@media (min-width: 1100px) { .wp-block-columns.beacon-approach__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2.5rem; } }
.beacon-approach__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-approach__item {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(224, 199, 175, .32);
}
.beacon-approach__item > * { margin: 0; }
figure.wp-block-image.beacon-approach__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
.beacon-approach__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-approach__n { font-family: var(--beacon-font-arya); font-size: .8125rem; letter-spacing: .16em; color: var(--beacon-dark-cream); margin: 0; }
.beacon-approach__t {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 1.9vw, 1.5rem);
	line-height: 1.2;
	color: var(--beacon-white);
	margin: 0;
}

.beacon-lead { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-lead__lede { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.beacon-team-grid.beacon-lead__grid { grid-template-columns: 1fr; gap: 2rem; padding-top: 0; margin-top: 3rem; }
@media (min-width: 560px)  { .beacon-team-grid.beacon-lead__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px)  { .beacon-team-grid.beacon-lead__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1240px) { .beacon-team-grid.beacon-lead__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.5rem; } }
.beacon-lead__grid .beacon-team-member { display: flex; flex-direction: column; overflow: visible; }
.beacon-lead__grid .beacon-team-member__photo { width: 100%; height: auto; aspect-ratio: 1; }
.beacon-lead__grid .beacon-team-member:hover .beacon-team-member__photo { transform: none; }
.beacon-lead__grid .beacon-team-member__body { flex: 1; display: flex; flex-direction: column; gap: 0; padding: 0; background: transparent; }
.beacon-lead__grid .beacon-team-member__role {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	letter-spacing: .14em;
	font-size: .75rem;
	line-height: 1.5;
	color: var(--beacon-dark-blue-1);
	min-height: 2.25rem;
	min-height: 2lh;
	margin: 1.25rem 0 0;
}
.beacon-lead__grid .beacon-team-member__name {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: 1.375rem;
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: .5rem 0 1.25rem;
}
.beacon-lead__grid .beacon-team-member__btn { margin-top: auto; align-self: flex-start; }

.beacon-home-hero--bottom.beacon-home-hero--compact .beacon-home-hero__title { font-size: clamp(2.25rem, 5.6vw, 4.25rem); line-height: 1.02; max-width: 26ch; }
@media (min-width: 900px) { .wp-block-columns.beacon-about-intro__cols.beacon-about-intro__cols--tight { gap: 4rem; } }
hr.wp-block-separator.beacon-rule--gap-sm { margin-top: 1.75rem; }

.wp-block-group.beacon-workband.has-background { padding: 5rem 0; }
.beacon-workband__rows { margin-top: 3rem; }
.wp-block-columns.beacon-workband__row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	padding: 2rem 0;
	margin: 0;
	border-top: 1px solid rgba(224, 199, 175, .28);
}
@media (min-width: 768px) { .wp-block-columns.beacon-workband__row { grid-template-columns: 3.5rem minmax(0, 4fr) minmax(0, 7fr); gap: 2.5rem; align-items: start; } }
.wp-block-columns.beacon-workband__row:last-child { border-bottom: 1px solid rgba(224, 199, 175, .28); }
.beacon-workband__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-workband__n { font-family: var(--beacon-font-arya); font-size: 1.25rem; line-height: 1.2; color: var(--beacon-dark-cream); margin: 0; }
.beacon-workband__t {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.4vw, 1.875rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-workband__c { display: flex; flex-direction: column; gap: 1rem; }
.beacon-workband__c p { color: var(--beacon-light-blue); font-size: 1.0625rem; line-height: 1.75; margin: 0; }

.beacon-pos { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-pos__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 2rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-pos__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 4.5rem; align-items: start; } }
.beacon-pos__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-pos__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.6vw, 2rem);
	line-height: 1.22;
	color: var(--beacon-green-black);
	margin: 0;
}
.wp-block-group.beacon-pos__panel.has-background { padding: clamp(1.75rem, 3.5vw, 2.5rem); }
.beacon-pos__panel { display: flex; flex-direction: column; gap: 1.25rem; }
.beacon-pos__panel > * { margin: 0; }
.beacon-pos__label {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: .8125rem;
	color: var(--beacon-dark-blue-1);
	margin: 0;
}
.beacon-pos__text { color: var(--beacon-grey-1); line-height: 1.7; margin: 0; }
.beacon-pos__panel .wp-block-buttons { display: flex; }

.wp-block-columns.beacon-contact { align-items: stretch; }
.beacon-contact__info { position: relative; overflow: hidden; background: var(--beacon-dark-blue-2); }
.beacon-contact__info > * { position: relative; z-index: 1; }

.beacon-contact__info::before {
	content: "";
	position: absolute;
	z-index: 0;
	right: -9rem;
	top: -9rem;
	width: 34rem;
	height: 34rem;
	pointer-events: none;
	opacity: .3;
	background: radial-gradient(circle at center,
		transparent calc(5rem - 1px), var(--beacon-steel-blue) 5rem, transparent calc(5rem + 1px),
		transparent calc(9rem - 1px), var(--beacon-steel-blue) 9rem, transparent calc(9rem + 1px),
		transparent calc(13rem - 1px), var(--beacon-steel-blue) 13rem, transparent calc(13rem + 1px),
		transparent calc(17rem - 1px), var(--beacon-steel-blue) 17rem, transparent calc(17rem + 1px));
	animation: beacon-rings 6s ease-out infinite;
}
@keyframes beacon-rings {
	0%   { opacity: .15; transform: scale(.94); }
	50%  { opacity: .3; }
	100% { opacity: .15; transform: scale(1.02); }
}
.beacon-contact__info .beacon-heading-xl { color: var(--beacon-white); }
.beacon-contact__promise {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	font-family: var(--beacon-font-arya);
	font-size: .8125rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--beacon-cream);
	margin: 0 0 1rem;
}
.beacon-contact__promise::before {
	content: "";
	display: block;
	width: .5rem;
	height: .5rem;
	background: var(--beacon-bright-blue);
	box-shadow: 0 0 0 0 rgba(0, 150, 255, .7);
	animation: beacon-blip 2.4s ease-out infinite;
}
@keyframes beacon-blip {
	0%   { box-shadow: 0 0 0 0 rgba(0, 150, 255, .7); }
	70%  { box-shadow: 0 0 0 .7rem rgba(0, 150, 255, 0); }
	100% { box-shadow: 0 0 0 0 rgba(0, 150, 255, 0); }
}
.beacon-contact__info .beacon-contact__rows.wp-block-group { border-top: 1px solid rgba(224, 199, 175, .35); }
.beacon-contact__info .beacon-contact__row { padding: .9rem 0; border-bottom: 1px solid rgba(224, 199, 175, .2); gap: 1.5rem; justify-content: space-between; }
.beacon-contact__info .beacon-contact__row .label { color: var(--beacon-white); }
.beacon-contact__info .beacon-contact__row .value { text-align: right; }
.beacon-contact__info .beacon-contact__row .value, .beacon-contact__info .beacon-contact__row a { color: var(--beacon-cream); }
.beacon-contact__info .beacon-contact__row a:hover { color: var(--beacon-white); }
.wp-block-group.beacon-contact__book { gap: 1.25rem; padding: 1.75rem; background: rgba(255, 255, 255, .06); border-left: 3px solid var(--beacon-dark-cream); }
.beacon-contact__info .beacon-contact__book h2 { color: var(--beacon-white); }
.beacon-contact__info .beacon-contact__book p { color: var(--beacon-light-blue); }
.beacon-contact__form { padding: 2.5rem; }
@media (max-width: 640px) { .beacon-contact__form, .beacon-contact__info { padding: 1.5rem; } }
.beacon-contact__formhead { margin: 0 0 1.75rem; }
.beacon-contact__formhead-title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.5rem; color: var(--beacon-green-black); margin: 0; }
.beacon-contact__formhead-text { color: var(--beacon-grey-1); font-size: .9375rem; margin: .35rem 0 0; }
.beacon-contact__note { font-size: .8125rem; color: var(--beacon-grey-1); margin: 1.25rem 0 0; }
.beacon-contact__note a { color: var(--beacon-dark-blue-1); }
@media (prefers-reduced-motion: reduce) {
	.beacon-contact__info::before, .beacon-contact__promise::before { animation: none; }
}

.beacon-404__title {
	font-family: var(--beacon-font-display);
	font-weight: 400;
	font-size: 2.25rem;
	line-height: 1.1;
	color: var(--beacon-green-black);
	text-wrap: balance;
	margin: 0;
}
@media (min-width: 768px)  { .beacon-404__title { font-size: 3rem; line-height: 1; } }
@media (min-width: 1024px) { .beacon-404__title { font-size: 3.75rem; } }
.beacon-404__text { color: var(--beacon-grey-1); font-size: .75rem; line-height: 1.625; margin: 0 0 1.5rem; }
@media (min-width: 640px) { .beacon-404__text { font-size: .875rem; } }
@media (min-width: 768px) { .beacon-404__text { font-size: 1rem; } }
.beacon-404__home.wp-block-buttons { display: flex; }
.beacon-404__home .wp-block-button { width: 100%; }
.beacon-404__home .wp-block-button__link { width: 100%; height: 2.5rem; font-size: .75rem; }
@media (min-width: 1024px) { .beacon-404__home .wp-block-button, .beacon-404__home .wp-block-button__link { width: auto; } }

.wp-block-columns.beacon-404__grid { display: grid; grid-template-columns: 1fr; row-gap: 1rem; column-gap: 0; margin: 3rem 0 0; }
@media (min-width: 640px)  { .wp-block-columns.beacon-404__grid { row-gap: 2rem; } }
@media (min-width: 768px)  { .wp-block-columns.beacon-404__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) {
	.wp-block-columns.beacon-404__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 6rem; border-left: 1px solid var(--beacon-light-green-2); border-right: 1px solid var(--beacon-light-green-2); }
	.beacon-404__grid > .beacon-404__col { padding: 0 1rem; }
	.beacon-404__grid > .beacon-404__col + .beacon-404__col { border-left: 1px solid var(--beacon-light-green-2); }
}
.beacon-404__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-404__col-title { font-family: var(--beacon-font-sans); font-weight: 500; font-size: .875rem; color: var(--beacon-green-black); margin: 0; }
ul.beacon-404__list { list-style: none; display: flex; flex-direction: column; gap: .25rem; margin: 2rem 0 0; padding: 0; }
ul.beacon-404__list li { margin: 0; }
ul.beacon-404__list a, .beacon-404__post a { font-size: .75rem; color: var(--beacon-grey-1); text-decoration: none; transition: color .2s; }
ul.beacon-404__list a:hover, .beacon-404__post a:hover { color: var(--beacon-green-black); }
.beacon-404__posts .wp-block-post-template { list-style: none; display: flex; flex-direction: column; gap: .25rem; margin: 2rem 0 0; padding: 0; }
.beacon-404__posts .wp-block-post-template > li { margin: 0; }
.beacon-404__post { font-family: var(--beacon-font-sans); font-weight: 400; font-size: .75rem; line-height: 1.5; margin: 0; }

.wp-block-group.beacon-404__band.has-background { padding: 1rem; }
@media (min-width: 640px)  { .wp-block-group.beacon-404__band.has-background { padding: 2rem; } }
@media (min-width: 1024px) { .wp-block-group.beacon-404__band.has-background { padding: 3rem; } }
.beacon-404__band { display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 1.5rem; margin-top: 3rem; }
@media (min-width: 1024px) { .beacon-404__band { flex-direction: row; align-items: center; margin-top: 6rem; } }
.beacon-404__band-title {
	font-family: var(--beacon-font-display);
	font-weight: 400;
	font-size: 1.125rem;
	color: var(--beacon-green-black);
	margin: 0;
}
@media (min-width: 640px)  { .beacon-404__band-title { font-size: 1.25rem; } }
@media (min-width: 768px)  { .beacon-404__band-title { font-size: 1.5rem; } }
@media (min-width: 1024px) { .beacon-404__band-title { font-size: 1.875rem; } }
.beacon-404__band-buttons.wp-block-buttons { display: flex; width: 100%; flex-shrink: 0; }
.beacon-404__band-buttons .wp-block-button { width: 100%; }
.beacon-404__band-buttons .wp-block-button__link { width: 100%; }
@media (min-width: 1024px) { .beacon-404__band-buttons.wp-block-buttons, .beacon-404__band-buttons .wp-block-button, .beacon-404__band-buttons .wp-block-button__link { width: auto; } }

.beacon-home-hero__badge { display: inline-flex; margin: 0 0 1.75rem; }
.beacon-home-hero__badge img { display: block; height: 1.75rem; width: auto; filter: brightness(0) invert(1); }
@media (min-width: 640px) { .beacon-home-hero__badge img { height: 2.25rem; } }
.beacon-home-hero--split { min-height: clamp(28rem, 66vh, 40rem); align-items: flex-end; }
.beacon-home-hero--split .beacon-home-hero__scrim { background: linear-gradient(180deg, rgba(15, 26, 25, .72) 0%, rgba(15, 26, 25, .8) 100%); }
.beacon-home-hero--split .beacon-home-hero__in { padding-top: 9rem; padding-bottom: 3.5rem; }
.beacon-home-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
@media (min-width: 1024px) { .beacon-home-hero__grid { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 4.5rem; align-items: end; } }
.beacon-home-hero--split .beacon-home-hero__panel { max-width: none; }
.beacon-home-hero--split .beacon-home-hero__title { font-size: clamp(2.25rem, 5.6vw, 4.25rem); }
.beacon-home-hero--split .beacon-home-hero__body { font-size: clamp(1rem, 1.5vw, 1.125rem); line-height: 1.75; margin: 0; }

.wp-block-group.beacon-crit.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-crit__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-crit__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 4.5rem; align-items: start; } }
.beacon-crit__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-crit__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.4vw, 2.75rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-crit__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 1.75rem 0 0; }
ul.beacon-stats { list-style: none; display: grid; gap: 0; margin: 0; padding: 0; }
ul.beacon-stats li {
	padding: 1.5rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .2);
	font-size: .875rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--beacon-grey-1);
}
ul.beacon-stats li:last-child { border-bottom: 1px solid rgba(36, 36, 36, .2); }
ul.beacon-stats li > strong {
	display: block;
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(2.5rem, 5.5vw, 3.75rem);
	line-height: .92;
	letter-spacing: -.02em;
	text-transform: none;
	color: var(--beacon-dark-blue-2);
	margin: 0 0 .6rem;
}

.wp-block-group.beacon-journey.has-background { padding: 5rem 0; }
.beacon-journey__lede { color: var(--beacon-light-blue); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-journey__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-journey__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 4rem; } }
.beacon-journey__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-journey__item { padding-top: 1.5rem; border-top: 1px solid rgba(224, 199, 175, .32); }
.beacon-journey__item-title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-journey__item-text { color: var(--beacon-light-blue); font-size: .9375rem; line-height: 1.7; margin: 1rem 0 0; }

.beacon-wpart { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-wpart__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 2.5rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-wpart__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; } }
.beacon-wpart__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-wpart__col { display: flex; flex-direction: column; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(36, 36, 36, .2); }
@media (min-width: 900px) {
	.wp-block-column.beacon-wpart__col { border-top: 0; border-left: 1px solid rgba(36, 36, 36, .16); padding: 0 2.5rem; }
	.wp-block-column.beacon-wpart__col:first-child { border-left: 0; padding-left: 0; }
	.wp-block-column.beacon-wpart__col:last-child { padding-right: 0; }
}
.beacon-wpart__col > * { margin: 0; }
figure.wp-block-image.beacon-wpart__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 640px) { figure.wp-block-image.beacon-wpart__icon { width: 4.5rem; height: 4.5rem; } }
.beacon-wpart__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-wpart__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.4vw, 1.875rem);
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-wpart__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: 0; }

.wp-block-cover.beacon-appr { min-height: 0; padding: 5.5rem 0; background: var(--beacon-green-black); }
.beacon-appr .wp-block-cover__image-background { opacity: .32; }
.beacon-appr .wp-block-cover__inner-container { width: 100%; }
.beacon-appr .beacon-secthead { max-width: 26ch; }
.beacon-appr__lede { color: var(--beacon-cream); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.beacon-stair { margin-top: 3.5rem; }
.wp-block-columns.beacon-stair__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: .75rem;
	padding: 1.75rem 0;
	margin: 0;
	border-top: 1px solid rgba(224, 199, 175, .3);
}
@media (min-width: 900px) {
	.wp-block-columns.beacon-stair__row { grid-template-columns: 3rem minmax(0, 4fr) minmax(0, 6fr); gap: 2.5rem; align-items: baseline; }
	.wp-block-columns.beacon-stair__row:nth-child(2) { margin-left: 3%; }
	.wp-block-columns.beacon-stair__row:nth-child(3) { margin-left: 6%; }
	.wp-block-columns.beacon-stair__row:nth-child(4) { margin-left: 9%; }
	.wp-block-columns.beacon-stair__row:nth-child(5) { margin-left: 12%; }
}
.wp-block-columns.beacon-stair__row:last-child { border-bottom: 1px solid rgba(224, 199, 175, .3); }
.beacon-stair__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-stair__n { font-family: var(--beacon-font-arya); font-size: 1.25rem; color: var(--beacon-dark-cream); margin: 0; }
.beacon-stair__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.75rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-stair__text { color: var(--beacon-light-green-2); font-size: .9375rem; line-height: 1.7; margin: 0; }

.beacon-kick {
	font-family: var(--beacon-font-arya);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: .8125rem;
	color: var(--beacon-dark-blue-1);
	margin: 0;
}
.beacon-kick--cream { color: var(--beacon-dark-cream); }

.beacon-home-hero--split.beacon-home-hero--compact .beacon-home-hero__title { font-size: clamp(2.25rem, 5.2vw, 4rem); }

.beacon-struct { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-struct__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-struct__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4.5rem; align-items: start; } }
.beacon-struct__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-struct__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.4vw, 2.5rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 1rem 0 0;
}
.beacon-struct__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 1.75rem 0 0; }
.beacon-scope__item { padding: 1.75rem 0; border-top: 1px solid rgba(36, 36, 36, .16); }
.beacon-scope__item:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-scope__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-scope__text { color: var(--beacon-grey-1); font-size: 1rem; line-height: 1.7; margin: .75rem 0 0; }

.wp-block-cover.beacon-phase { min-height: 0; padding: 5.5rem 0; background: var(--beacon-green-black); }
.beacon-phase .wp-block-cover__image-background { opacity: .3; }
.beacon-phase .wp-block-cover__inner-container { width: 100%; }
.beacon-phase__title { margin-top: 1rem; }
.beacon-phase__lede { color: var(--beacon-cream); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-phase__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 3.5rem 0 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-phase__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; } }
.beacon-phase__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-phase__col { display: flex; flex-direction: column; gap: 1rem; padding: 1.5rem 0; border-top: 1px solid rgba(224, 199, 175, .32); }
@media (min-width: 1024px) { .wp-block-column.beacon-phase__col { padding: 1.5rem 0 0; } }
.beacon-phase__col > * { margin: 0; }
.beacon-phase__n { font-family: var(--beacon-font-arya); font-size: clamp(2.25rem, 3.6vw, 3rem); line-height: .9; color: var(--beacon-dark-cream); margin: 0; }
.beacon-phase__col-title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.125rem, 1.9vw, 1.375rem);
	line-height: 1.2;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-phase__col-text { color: var(--beacon-light-green-2); font-size: .9375rem; line-height: 1.7; margin: 0; }

.beacon-wrows { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-wrows__list { margin-top: 2.5rem; }
.wp-block-columns.beacon-wrows__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	padding: 2.5rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
}
@media (min-width: 768px) { .wp-block-columns.beacon-wrows__row { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) 5rem; gap: 3rem; align-items: center; } }
.wp-block-columns.beacon-wrows__row:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-wrows__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-wrows__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.4vw, 1.875rem);
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-wrows__text { color: var(--beacon-grey-1); line-height: 1.7; margin: 0; }
figure.wp-block-image.beacon-wrows__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 768px) { figure.wp-block-image.beacon-wrows__icon { width: 5rem; height: 5rem; margin-left: auto; } }
.beacon-wrows__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }

.beacon-bstruct { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-bstruct__kick { margin-top: 2rem; }
.beacon-bstruct__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(2rem, 4.6vw, 3.5rem);
	line-height: 1.02;
	letter-spacing: -.02em;
	color: var(--beacon-green-black);
	max-width: 26ch;
	margin: 1.25rem 0 0;
}

.beacon-bstruct__foot { margin-top: 2.5rem; max-width: 52rem; }
.beacon-bstruct__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }
.wp-block-columns.beacon-bpanels { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1px; margin: 3.5rem 0 0; background: rgba(36, 36, 36, .16); }
@media (min-width: 768px) { .wp-block-columns.beacon-bpanels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.beacon-bpanels > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-bpanel { display: flex; flex-direction: column; gap: 1rem; padding: clamp(1.75rem, 3.5vw, 2.75rem); background: var(--beacon-light-green-3); }
.beacon-bpanel > * { margin: 0; }
.beacon-bpanel__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-bpanel__text { color: var(--beacon-grey-1); font-size: 1rem; line-height: 1.7; margin: 0; }

.wp-block-group.beacon-bphase.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-bphase__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-bphase__grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 4.5rem; align-items: start; } }
.beacon-bphase__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-bphase__title { margin-top: 1rem; }
.beacon-bphase__lede { color: var(--beacon-cream); font-size: 1.0625rem; line-height: 1.75; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-brow {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: .75rem;
	padding: 1.75rem 0;
	margin: 0;
	border-top: 1px solid rgba(224, 199, 175, .3);
}
@media (min-width: 768px) { .wp-block-columns.beacon-brow { grid-template-columns: 2.5rem minmax(0, 4fr) minmax(0, 6fr); gap: 2.5rem; align-items: baseline; } }
.wp-block-columns.beacon-brow:last-child { border-bottom: 1px solid rgba(224, 199, 175, .3); }
.beacon-brow > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-brow__n { font-family: var(--beacon-font-arya); font-size: 1.25rem; line-height: 1.2; color: var(--beacon-dark-cream); margin: 0; }
.beacon-brow__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.125rem, 2vw, 1.5rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-brow__text { color: var(--beacon-light-blue); font-size: .9375rem; line-height: 1.7; margin: 0; }

.wp-block-group.beacon-bwhy.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-bwhy__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 3rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-bwhy__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; } }
.beacon-bwhy__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-bwcol { display: flex; flex-direction: column; gap: 1.25rem; }
.beacon-bwcol > * { margin: 0; }
figure.wp-block-image.beacon-bwcol__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 768px) { figure.wp-block-image.beacon-bwcol__icon { width: 5rem; height: 5rem; } }
.beacon-bwcol__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-bwcol__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-bwcol__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: 0; }

.beacon-meth { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-meth__head { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-meth__head { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 4.5rem; align-items: end; } }
.beacon-meth__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-meth__kick { margin-top: 2rem; }
.beacon-meth__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.6vw, 2.75rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 1rem 0 0;
}
.beacon-meth__lede { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }
.beacon-spine { margin-top: 3.5rem; }
.wp-block-columns.beacon-spine__item { display: grid; grid-template-columns: 1fr; gap: .85rem; position: relative; padding-bottom: 2.5rem; margin: 0; }
@media (min-width: 768px) {
	.wp-block-columns.beacon-spine__item { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 3rem; padding-left: 4.5rem; }
	.wp-block-columns.beacon-spine__item::before { content: ""; position: absolute; left: 1.05rem; top: .65rem; bottom: 0; width: 1px; background: rgba(36, 36, 36, .18); }
	.wp-block-columns.beacon-spine__item:last-child::before { display: none; }
	.wp-block-columns.beacon-spine__item::after { content: ""; position: absolute; left: .55rem; top: .5rem; width: 1rem; height: 1rem; border: 1px solid var(--beacon-dark-blue-1); background: var(--beacon-white); }
}
.beacon-spine__item > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-spine__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.75rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-spine__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.7; margin: 0; }

.wp-block-group.beacon-sawhy.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-sawhy__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 2.5rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-sawhy__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; } }
.beacon-sawhy__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-sawhy__col { display: flex; flex-direction: column; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(36, 36, 36, .2); }
.beacon-sawhy__col > * { margin: 0; }
figure.wp-block-image.beacon-sawhy__icon { width: 3.75rem; height: 3.75rem; margin: 0; }
@media (min-width: 640px) { figure.wp-block-image.beacon-sawhy__icon { width: 5rem; height: 5rem; } }
.beacon-sawhy__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-sawhy__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.4vw, 1.875rem);
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-sawhy__text { color: var(--beacon-grey-1); line-height: 1.7; margin: 0; }

.wp-block-cover.beacon-sappr { min-height: 0; padding: 5.5rem 0; background: var(--beacon-green-black); }
.beacon-sappr .wp-block-cover__image-background { opacity: .35; }
.beacon-sappr .wp-block-cover__inner-container { width: 100%; }
.beacon-sappr__lede { color: var(--beacon-cream); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-sappr__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-sappr__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 4rem; } }
.beacon-sappr__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-astep { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 1.5rem; row-gap: 0; align-items: start; }
.beacon-astep > * { margin: 0; }
.beacon-astep__n { grid-column: 1; grid-row: 1 / span 2; font-family: var(--beacon-font-arya); font-size: clamp(2rem, 3.4vw, 2.75rem); line-height: .9; color: var(--beacon-dark-cream); margin: 0; }
.beacon-astep__title {
	grid-column: 2;
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-astep__text { grid-column: 2; color: var(--beacon-light-green-2); font-size: .9375rem; line-height: 1.7; margin: .85rem 0 0; }

.wp-block-group.beacon-lever.has-background { padding: 5rem 0; }
.beacon-lever__lede { color: var(--beacon-light-green-2); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-lever__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-lever__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; } }
.beacon-lever__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-lever__col { display: flex; flex-direction: column; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(224, 199, 175, .32); }
.beacon-lever__col > * { margin: 0; }
figure.wp-block-image.beacon-lever__icon { width: 3.75rem; height: 3.75rem; margin: 0; }
@media (min-width: 640px) { figure.wp-block-image.beacon-lever__icon { width: 5rem; height: 5rem; } }
.beacon-lever__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-lever__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.4vw, 1.75rem);
	line-height: 1.14;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-lever__text { color: var(--beacon-light-blue); font-size: .9375rem; line-height: 1.7; margin: 0; }

.beacon-shead { padding-top: 8rem; padding-bottom: 3.5rem; }
.beacon-shead__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(2.5rem, 7vw, 5.5rem);
	line-height: .98;
	letter-spacing: -.03em;
	color: var(--beacon-green-black);
	margin: 1.25rem 0 0;
}
hr.wp-block-separator.beacon-rule--gap-lg { margin-top: 2.5rem; }
.beacon-shead__lede {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.8vw, 2.125rem);
	line-height: 1.22;
	color: var(--beacon-green-black);
	max-width: 34ch;
	margin: 2rem 0 0;
}

.beacon-pull { padding-top: 4.5rem; padding-bottom: 4.5rem; }
.wp-block-columns.beacon-pull__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; margin: 2.25rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-pull__grid { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 4.5rem; align-items: start; } }
.beacon-pull__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-pull__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.6vw, 2.75rem);
	line-height: 1.08;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-pull__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }
.beacon-ledger { margin-top: 3rem; }
.wp-block-columns.beacon-ledger__row {
	display: grid;
	grid-template-columns: 1fr;
	gap: .75rem;
	padding: 2rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
}
@media (min-width: 900px) { .wp-block-columns.beacon-ledger__row { grid-template-columns: 3rem minmax(0, 4fr) minmax(0, 7fr); gap: 2.5rem; align-items: baseline; } }
.wp-block-columns.beacon-ledger__row:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-ledger__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-ledger__n { font-family: var(--beacon-font-arya); font-size: 1.125rem; letter-spacing: .06em; color: var(--beacon-steel-blue); margin: 0; }
.beacon-ledger__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.75rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-ledger__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.7; margin: 0; }

.wp-block-group.beacon-steps.has-background { padding: 5rem 0; }
.beacon-steps__title { margin-top: 1rem; }
.beacon-steps__lede { color: var(--beacon-cream); font-size: 1.0625rem; line-height: 1.75; max-width: 52rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-steps__row { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 768px)  { .wp-block-columns.beacon-steps__row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 2.5rem; } }
@media (min-width: 1200px) { .wp-block-columns.beacon-steps__row { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; } }
.beacon-steps__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-step { position: relative; padding-top: 2.75rem; border-top: 1px solid rgba(224, 199, 175, .34); }
.beacon-step > * { margin: 0; }
.beacon-step__n {
	position: absolute;
	top: -1px;
	left: 0;
	transform: translateY(-50%);
	background: var(--beacon-dark-blue-2);
	padding-right: .75rem;
	font-family: var(--beacon-font-arya);
	font-size: 2.25rem;
	line-height: 1;
	color: var(--beacon-dark-cream);
	margin: 0;
}
.beacon-step__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.25rem; line-height: 1.2; color: var(--beacon-white); margin: 0; }
.beacon-step__text { color: var(--beacon-light-blue); font-size: .9375rem; line-height: 1.7; margin: 1rem 0 0; }

.wp-block-group.beacon-matters.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-matters__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 3rem 0 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-matters__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; } }
.beacon-matters__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-mcol { display: flex; flex-direction: column; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(224, 199, 175, .32); }
.beacon-mcol > * { margin: 0; }
.beacon-mcol__head { display: flex; align-items: center; gap: 1.25rem; }
.beacon-mcol__head > * { margin: 0; }
figure.wp-block-image.beacon-mcol__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 640px) { figure.wp-block-image.beacon-mcol__icon { width: 4.5rem; height: 4.5rem; } }
.beacon-mcol__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-mcol__n { font-family: var(--beacon-font-arya); font-size: clamp(2.5rem, 4.4vw, 3.5rem); line-height: .9; color: var(--beacon-dark-cream); margin: 0; }
.beacon-mcol__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-white);
	margin: 0;
}
.beacon-mcol__text { color: var(--beacon-light-blue); font-size: .9375rem; line-height: 1.7; margin: 0; }

.beacon-exp { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-exp__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-exp__grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 4.5rem; align-items: start; } }
.beacon-exp__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-columns.beacon-exprow { display: grid; grid-template-columns: 1fr; gap: 1rem; padding: 2rem 0; margin: 0; border-top: 1px solid rgba(36, 36, 36, .16); }
@media (min-width: 640px) { .wp-block-columns.beacon-exprow { grid-template-columns: 4.5rem minmax(0, 1fr); gap: 2rem; align-items: start; } }
.wp-block-columns.beacon-exprow:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-exprow > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
figure.wp-block-image.beacon-exprow__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 640px) { figure.wp-block-image.beacon-exprow__icon { width: 4.5rem; height: 4.5rem; } }
.beacon-exprow__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-exprow__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.1875rem, 2vw, 1.5rem);
	line-height: 1.18;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-exprow__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: .75rem 0 0; }

.wp-block-group.beacon-proof.has-background { padding: 0; }
ul.beacon-proof__list { list-style: none; display: grid; grid-template-columns: minmax(0, 1fr); margin: 0; padding: 0; }
@media (min-width: 900px) { ul.beacon-proof__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
ul.beacon-proof__list li {
	font-family: var(--beacon-font-arya);
	font-size: clamp(1.125rem, 1.9vw, 1.5rem);
	line-height: 1.2;
	color: var(--beacon-white);
	padding: 2rem 0;
	margin: 0;
	border-top: 1px solid rgba(224, 199, 175, .28);
}
@media (min-width: 900px) {
	ul.beacon-proof__list li { border-top: 0; border-left: 1px solid rgba(224, 199, 175, .28); padding: 2.75rem 2.5rem; }
	ul.beacon-proof__list li:first-child { border-left: 0; padding-left: 0; }
}
.beacon-ctx { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-ctx__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.6vw, 2.75rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	max-width: 30ch;
	margin: 0;
}
.beacon-ctx__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.8; margin: 2.25rem 0 0; }
@media (min-width: 1100px) { .beacon-ctx__text { columns: 2; column-gap: 4.5rem; } }
.wp-block-group.beacon-offer.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-offer__head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-offer__head { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4.5rem; align-items: end; } }
.beacon-offer__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-offer__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.75rem, 3.4vw, 2.5rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-offer__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }
.beacon-offer__text + .beacon-offer__text { margin-top: 1rem; }
.wp-block-columns.beacon-offer__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 3.5rem 0 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-offer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 4rem; } }
.beacon-offer__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.wp-block-column.beacon-ocard { padding-top: 1.5rem; border-top: 1px solid rgba(36, 36, 36, .2); }
.beacon-ocard__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.25rem, 2.2vw, 1.625rem);
	line-height: 1.16;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-ocard__text { color: var(--beacon-grey-1); font-size: 1rem; line-height: 1.7; margin: 1rem 0 0; }
.beacon-ssrows { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-ssrows__list { margin-top: 2.5rem; }
.wp-block-columns.beacon-ssrows__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	padding: 2.5rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
}
@media (min-width: 768px) { .wp-block-columns.beacon-ssrows__row { grid-template-columns: 5rem minmax(0, 5fr) minmax(0, 6fr); gap: 2.5rem; align-items: center; } }
.wp-block-columns.beacon-ssrows__row:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-ssrows__row > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
figure.wp-block-image.beacon-ssrows__icon { width: 3.5rem; height: 3.5rem; margin: 0; }
@media (min-width: 768px) { figure.wp-block-image.beacon-ssrows__icon { width: 5rem; height: 5rem; } }
.beacon-ssrows__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.beacon-ssrows__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.375rem, 2.4vw, 1.75rem);
	line-height: 1.14;
	color: var(--beacon-green-black);
	margin: 0;
}
.beacon-ssrows__text { color: var(--beacon-grey-1); line-height: 1.7; margin: 0; }

.wp-block-group.beacon-svc2.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-svc2__head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-svc2__head { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 4.5rem; align-items: end; } }
.beacon-svc2__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-svc2__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.875rem, 4vw, 3rem);
	line-height: 1.04;
	letter-spacing: -.02em;
	color: var(--beacon-white);
	margin: 1rem 0 0;
}
.beacon-svc2__sub { color: var(--beacon-light-green-2); font-size: 1.0625rem; line-height: 1.75; margin: 0; }
.beacon-svc2__rows { margin-top: 3.5rem; }
.wp-block-columns.beacon-svcrow {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1rem;
	padding: 2.25rem 0;
	margin: 0;
	border-top: 1px solid rgba(224, 199, 175, .28);
	transition: padding-left .35s ease;
}
@media (min-width: 1024px) {
	.wp-block-columns.beacon-svcrow { grid-template-columns: 3rem minmax(0, 4fr) minmax(0, 6fr) auto; gap: 2.5rem; align-items: start; }
	.wp-block-columns.beacon-svcrow:hover { padding-left: 1rem; }
}
.wp-block-columns.beacon-svcrow:last-child { border-bottom: 1px solid rgba(224, 199, 175, .28); }
.beacon-svcrow > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-svcrow__n { font-family: var(--beacon-font-arya); font-size: 1.25rem; line-height: 1.3; color: var(--beacon-dark-cream); margin: 0; }
.beacon-svcrow__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.375rem, 2.6vw, 2rem); line-height: 1.12; margin: 0; }
.beacon-svcrow__title a { color: var(--beacon-white); text-decoration: none; transition: color .2s; }
.beacon-svcrow__title a:hover { color: var(--beacon-dark-cream); }
.beacon-svcrow__text { color: var(--beacon-light-green-2); font-size: .9375rem; line-height: 1.7; margin: 0; }
.beacon-svcrow__link { margin: 0; white-space: nowrap; }
.beacon-svcrow__link a { font-family: var(--beacon-font-sans); font-size: .875rem; font-weight: 600; color: var(--beacon-dark-cream); text-decoration: none; transition: color .2s; }
.beacon-svcrow__link a:hover { color: var(--beacon-white); }
.beacon-svc2__cta.wp-block-buttons { margin-top: 2.5rem; }

.beacon-stmtc { padding-top: 5rem; padding-bottom: 1rem; }
.wp-block-columns.beacon-stmtc__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; margin: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-stmtc__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4.5rem; align-items: start; } }
.beacon-stmtc__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-stmtc__title {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.875rem, 4vw, 3rem);
	line-height: 1.06;
	letter-spacing: -.015em;
	color: var(--beacon-green-black);
	margin: 1.25rem 0 0;
}
.beacon-stmtc__sub {
	font-family: var(--beacon-font-sans);
	font-weight: 400;
	font-size: clamp(1.0625rem, 1.6vw, 1.375rem);
	line-height: 1.65;
	color: var(--beacon-green-black);
	margin: 2rem 0 0;
}

.wp-block-columns.beacon-cardsa { display: grid; grid-template-columns: 1fr; gap: 2.75rem; padding: 3rem 0 4.5rem; margin: 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-cardsa { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; align-items: start; } }
@media (min-width: 1024px) {
	.beacon-cardsa > .beacon-carda:nth-child(2) { margin-top: 3.5rem; }
	.beacon-cardsa > .beacon-carda:nth-child(3) { margin-top: 7rem; }
}
.beacon-cardsa > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-carda__n { font-family: var(--beacon-font-arya); font-size: clamp(2.75rem, 5vw, 4rem); line-height: 1; color: var(--beacon-steel-blue); margin: 1.25rem 0 0; }
.beacon-carda__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.5rem; line-height: 1.15; color: var(--beacon-green-black); margin: .75rem 0 .85rem; }
.beacon-carda__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: 0; }

.wp-block-group.beacon-mdq.has-background { padding: 5.5rem 0; }
.wp-block-columns.beacon-mdq__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 0; }
.beacon-mdq__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 900px) {
	.wp-block-columns.beacon-mdq__grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 4.5rem; align-items: start; }
}
.wp-block-image.beacon-mdq__portrait { margin: 0; width: clamp(9rem, 40vw, 12rem); aspect-ratio: 1 / 1; }
.beacon-mdq__portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
@media (min-width: 900px) { .wp-block-image.beacon-mdq__portrait { width: 100%; max-width: 20rem; } }
.beacon-mdq__name { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.5rem; line-height: 1.1; color: var(--beacon-white); margin: 1.5rem 0 0; }
.beacon-mdq__role { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .16em; font-size: .8125rem; color: var(--beacon-dark-cream); margin: .6rem 0 0; }
hr.wp-block-separator.beacon-rule.beacon-rule--light { background: rgba(224, 199, 175, .4); }
.beacon-mdq__text {
	font-family: var(--beacon-font-arya);
	font-weight: 400;
	font-size: clamp(1.625rem, 4vw, 3.25rem);
	line-height: 1.1;
	letter-spacing: -.02em;
	color: var(--beacon-white);
	text-wrap: pretty;
	margin: 2.25rem 0 0;
}
.beacon-mdq__text em { font-style: normal; color: var(--beacon-dark-cream); }

.beacon-ihead { padding-top: 8rem; padding-bottom: 3rem; }
.beacon-ihead__title {
	font-family: var(--beacon-font-display);
	font-weight: 400;
	font-size: clamp(2rem, 5vw, 3.75rem);
	line-height: 1.06;
	letter-spacing: -.02em;
	color: var(--beacon-green-black);
	max-width: 30ch;
	text-wrap: pretty;
	margin: 1.25rem 0 0;
}

.beacon-feat__list, .beacon-idx__list { list-style: none; padding: 0; margin: 0; }
.beacon-feat__list > li, .beacon-idx__list > li { margin: 0; }

.beacon-feat { padding-top: 1rem; padding-bottom: 4.5rem; }
.wp-block-columns.beacon-feat__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; margin: 0; }
.beacon-feat__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) {
	.wp-block-columns.beacon-feat__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 4rem; align-items: center; }
}
.wp-block-post-featured-image.beacon-feat__media { margin: 0; width: 100%; height: clamp(14rem, 44vw, 18rem); overflow: hidden; }
@media (min-width: 1024px) { .wp-block-post-featured-image.beacon-feat__media { height: auto; aspect-ratio: 3 / 2; max-height: 30rem; } }
.beacon-feat__media a { display: block; height: 100%; }
.beacon-feat__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.beacon-feat__cat { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; line-height: 1.5; color: var(--beacon-dark-blue-1); margin: 0; }
.beacon-feat__cat a { color: inherit; text-decoration: none; }
.beacon-feat__title { font-family: var(--beacon-font-display); font-weight: 400; font-size: clamp(1.5rem, 3.2vw, 2.5rem); line-height: 1.14; letter-spacing: -.015em; text-wrap: pretty; margin: 1rem 0 0; }
.beacon-feat__title a { color: var(--beacon-green-black); text-decoration: none; }
.beacon-feat__title a:hover { color: var(--beacon-dark-blue-1); }
.beacon-feat__date { font-size: .875rem; color: var(--beacon-grey-1); margin: 1.25rem 0 0; }

.wp-block-read-more.beacon-feat__btn {
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--beacon-font-sans); font-weight: 600; font-size: .875rem; line-height: 1;
	height: 3rem; padding: .5rem .875rem; box-sizing: border-box; white-space: nowrap;
	background: var(--beacon-cream); color: var(--beacon-green-black); text-decoration: none;
	margin-top: 1.75rem; transition: background-color .3s, color .3s;
}
.wp-block-read-more.beacon-feat__btn:hover { background: var(--beacon-dark-cream); color: var(--beacon-green-black); }

.beacon-idx { padding-top: 0; padding-bottom: 6rem; }
.beacon-idx__label { margin: 0 0 1.5rem; }
.wp-block-columns.beacon-prow {
	display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin: 0;
	padding: 1.75rem 0; border-top: 1px solid rgba(36, 36, 36, .16);
	transition: padding-left .35s ease;
}
.beacon-prow > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 768px) {
	.wp-block-columns.beacon-prow { grid-template-columns: 9rem minmax(0, 1fr) 8rem; gap: 2.5rem; align-items: center; }
	.wp-block-columns.beacon-prow:hover { padding-left: 1rem; }
}
.beacon-idx__list > li:last-child .beacon-prow { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.wp-block-post-featured-image.beacon-prow__media { margin: 0; width: 100%; height: clamp(9rem, 34vw, 11rem); overflow: hidden; }
@media (min-width: 768px) { .wp-block-post-featured-image.beacon-prow__media { height: 6rem; } }
.beacon-prow__media a { display: block; height: 100%; }
.beacon-prow__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.beacon-prow__title { font-family: var(--beacon-font-display); font-weight: 400; font-size: clamp(1.125rem, 2.2vw, 1.5rem); line-height: 1.22; text-wrap: pretty; margin: 0; }
.beacon-prow__title a { color: var(--beacon-green-black); text-decoration: none; }
.beacon-prow__title a:hover { color: var(--beacon-dark-blue-1); }
.beacon-prow__date { font-size: .8125rem; color: var(--beacon-grey-1); margin: 0; }
@media (min-width: 768px) { .beacon-prow__date { text-align: right; } }
.beacon-idx .beacon-pagination { margin-top: 3rem; }

.beacon-ahead { padding-top: 7.5rem; padding-bottom: 2.5rem; }
.beacon-ahead__back { margin: 0; font-family: var(--beacon-font-sans); font-size: .875rem; font-weight: 600; }
.beacon-ahead__back a { color: var(--beacon-dark-blue-1); text-decoration: none; }
.beacon-ahead__back a:hover { color: var(--beacon-bright-blue); }
.beacon-ahead__title {
	font-family: var(--beacon-font-display);
	font-weight: 400;
	font-size: clamp(2rem, 5.4vw, 4rem);
	line-height: 1.04;
	letter-spacing: -.025em;
	color: var(--beacon-green-black);
	max-width: 26ch;
	text-wrap: pretty;
	margin: 1.5rem 0 0;
}
.beacon-ahead__date { font-size: .875rem; color: var(--beacon-grey-1); margin: 1.25rem 0 0; }
.wp-block-post-featured-image.beacon-ahero { margin: 0 0 4rem; width: 100%; height: clamp(14rem, 48vw, 26rem); overflow: hidden; }
.beacon-ahero img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }

.beacon-abody { padding-bottom: 5rem; }
.wp-block-columns.beacon-abody__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3rem; margin: 0; }
.beacon-abody__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1100px) {
	.wp-block-columns.beacon-abody__grid { grid-template-columns: minmax(0, 16rem) minmax(0, 1fr); gap: 5rem; }
	.beacon-abody__grid > .wp-block-column.beacon-arail { position: sticky; top: 6rem; align-self: start; max-height: calc(100vh - 7rem); overflow-y: auto; }
}
.beacon-arail__label { font-size: .75rem; margin: 0 0 1rem; }

.beacon-toc { margin: 0 0 2.5rem; }
.beacon-toc__label { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .16em; font-size: .75rem; color: var(--beacon-dark-blue-1); margin: 0 0 1rem; }
.beacon-toc__list { list-style: none; margin: 0; padding: 0; counter-reset: beacon-toc; }
.beacon-toc__list li { counter-increment: beacon-toc; margin: 0; border-top: 1px solid rgba(36, 36, 36, .14); }
.beacon-toc__list li:last-child { border-bottom: 1px solid rgba(36, 36, 36, .14); }
.beacon-toc__list a {
	display: grid; grid-template-columns: 1.75rem 1fr; gap: .5rem;
	padding: .7rem 0; font-size: .875rem; line-height: 1.45;
	color: var(--beacon-grey-1); text-decoration: none;
}
.beacon-toc__list a::before { content: "0" counter(beacon-toc); font-family: var(--beacon-font-arya); color: var(--beacon-steel-blue); }
.beacon-toc__list a:hover { color: var(--beacon-green-black); }
.beacon-toc__list a[aria-current="true"] { color: var(--beacon-green-black); font-weight: 600; }

.beacon-share.beacon-share--icons { flex-direction: row; flex-wrap: wrap; gap: .5rem; }
.beacon-share--icons .beacon-share__btn {
	position: relative; width: 2.75rem; height: 2.75rem; justify-content: center; gap: 0;
	background: var(--beacon-light-green-3); border: 1px solid var(--beacon-light-green-2); color: var(--beacon-green-black);
	transition: background-color .2s, border-color .2s, color .2s;
}
.beacon-share--icons .beacon-share__btn:hover,
.beacon-share--icons .beacon-share__btn.is-copied { background: var(--beacon-dark-blue-2); border-color: var(--beacon-dark-blue-2); color: var(--beacon-white); }
.beacon-share--icons .beacon-share__icon { width: 1.125rem; height: 1.125rem; }
.beacon-share--icons .beacon-share__btn span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.beacon-prose--post { max-width: 44rem; color: var(--beacon-green-black); }
.beacon-prose--post p { color: var(--beacon-green-black); font-size: 1.0625rem; line-height: 1.8; margin: 0 0 1.5rem; text-wrap: pretty; }
.beacon-prose--post .wp-block-post-content > p:first-child,
.beacon-prose--post p.is-style-beacon-lead { font-family: var(--beacon-font-display); font-size: clamp(1.25rem, 2.4vw, 1.625rem); line-height: 1.4; margin-bottom: 2rem; }
.beacon-prose--post h2 {
	font-family: var(--beacon-font-display); font-weight: 400;
	font-size: clamp(1.5rem, 3vw, 2.125rem); line-height: 1.14; letter-spacing: -.015em;
	color: var(--beacon-green-black); margin: 3.5rem 0 1.5rem; padding-top: 1.5rem;
	border-top: 1px solid rgba(36, 36, 36, .16); scroll-margin-top: 6rem;
}
.beacon-prose--post h3 { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.125rem, 2vw, 1.375rem); line-height: 1.2; color: var(--beacon-green-black); margin: 2.5rem 0 1rem; scroll-margin-top: 6rem; }
.beacon-prose--post h2 + h3 { margin-top: 0; }
.beacon-prose--post ul { list-style: none; margin: 0 0 1.5rem; padding: 0; display: grid; gap: .85rem; }
.beacon-prose--post ul ul { margin: .85rem 0 0; }
.beacon-prose--post ol { margin: 0 0 1.5rem; padding-left: 1.5rem; display: grid; gap: .85rem; }
.beacon-prose--post ul li, .beacon-prose--post ol li { position: relative; padding-left: 1.5rem; margin: 0; color: var(--beacon-green-black); font-size: 1.0625rem; line-height: 1.65; }
.beacon-prose--post ol li { padding-left: .25rem; }
.beacon-prose--post ul > li::before { content: ""; position: absolute; left: 0; top: .7em; width: .45rem; height: 1px; background: var(--beacon-dark-cream); }
.beacon-prose--post li::marker { color: var(--beacon-dark-blue-1); }
.beacon-prose--post strong { font-weight: 600; color: var(--beacon-green-black); }
.beacon-prose--post a { color: var(--beacon-dark-blue-1); text-decoration: underline; border: 0; }
.beacon-prose--post a:hover { color: var(--beacon-bright-blue); }
.beacon-prose--post hr.wp-block-separator { border: 0; height: 1px; width: 100%; max-width: none; opacity: 1; background: rgba(36, 36, 36, .16); margin: 2.5rem 0; }
.beacon-prose--post img { margin: 1.5em 0; }

.beacon-prose--post p.is-style-beacon-quote {
	margin: 0 0 1.5rem; padding: 1.5rem 0 1.5rem 2rem; border-left: 2px solid var(--beacon-dark-cream);
	font-family: var(--beacon-font-display); font-size: 1.0625rem; line-height: 1.8;
}
.beacon-prose--post p.is-style-beacon-note { background: var(--beacon-light-green-3); padding: 1.25rem 1.5rem; margin: 0 0 1.5rem; font-size: 1rem; line-height: 1.7; }
.beacon-prose--post p.is-style-beacon-note > strong:first-child {
	display: block; font-family: var(--beacon-font-arya); font-weight: 400; font-size: .8125rem;
	letter-spacing: .14em; text-transform: uppercase; color: var(--beacon-dark-blue-1); margin-bottom: .4rem;
}
.beacon-prose--post p.is-style-beacon-note > strong:first-child + br { display: none; }
.beacon-prose--post p.is-style-beacon-close {
	margin: 2.5rem 0 0; padding-top: 1.75rem; border-top: 1px solid rgba(36, 36, 36, .16);
	font-family: var(--beacon-font-display); font-size: 1.0625rem; line-height: 1.8;
}

.wp-block-group.beacon-pnav { margin-top: 3.5rem; padding-top: 1.5rem; border-top: 1px solid rgba(36, 36, 36, .16); }
.beacon-pnav .wp-block-post-navigation-link { display: inline-flex; align-items: center; gap: .35rem; margin: 0; font-family: var(--beacon-font-sans); font-size: .9375rem; font-weight: 600; color: var(--beacon-dark-blue-1); }
.beacon-pnav .wp-block-post-navigation-link a { color: inherit; text-decoration: none; }
.beacon-pnav .wp-block-post-navigation-link:hover { color: var(--beacon-bright-blue); }
.beacon-pnav .wp-block-post-navigation-link__arrow-previous,
.beacon-pnav .wp-block-post-navigation-link__arrow-next { margin: 0; }
.beacon-pnav .beacon-pnav__next { margin-left: auto; }

.wp-block-group.beacon-rel.has-background { padding: 4.5rem 0; }
.beacon-rel__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.5rem, 2.8vw, 2rem); line-height: 1.1; color: var(--beacon-green-black); margin: 0; }
.beacon-rel__query { margin-top: 2.5rem; }
.beacon-rel__grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
@media (min-width: 768px) { .beacon-rel__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; } }
.beacon-rel__grid > li { margin: 0; }
.wp-block-post-featured-image.beacon-relcard__img { margin: 0; width: 100%; height: clamp(10rem, 24vw, 11rem); overflow: hidden; }
.beacon-relcard__img a { display: block; height: 100%; }
.beacon-relcard__img img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.beacon-relcard__meta { font-size: .8125rem; color: var(--beacon-grey-1); margin: 1rem 0 0; }
.beacon-relcard__title { font-family: var(--beacon-font-display); font-weight: 400; font-size: 1.125rem; line-height: 1.26; text-wrap: pretty; margin: 1rem 0 0; }
.beacon-relcard__title a { color: var(--beacon-green-black); text-decoration: none; }
.beacon-relcard__title a:hover { color: var(--beacon-dark-blue-1); }

.beacon-sgrid { padding-top: 1rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-svc {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	margin: 0;
	padding: 2.5rem 0;
	border-top: 1px solid rgba(36, 36, 36, .16);
}
.beacon-sgrid > .beacon-svc:last-child { border-bottom: 1px solid rgba(36, 36, 36, .16); }
.beacon-svc > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) {
	.wp-block-columns.beacon-svc { grid-template-columns: 4.5rem minmax(0, 5fr) minmax(0, 7fr); gap: 3rem; padding: 3rem 0; }
}
figure.wp-block-image.beacon-svc__icon {
	margin: 0;
	width: 4.5rem;
	height: 4.5rem;
	background: var(--beacon-light-green-3);
	display: flex;
	align-items: center;
	justify-content: center;
}
.beacon-svc__icon img { display: block; width: 2.25rem; height: 2.25rem; }
.beacon-svc__n { font-family: var(--beacon-font-arya); font-size: .8125rem; letter-spacing: .18em; color: var(--beacon-dark-blue-1); margin: 0; }
.beacon-svc__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.5rem, 2.4vw, 2rem); line-height: 1.12; margin: .35rem 0 0; text-wrap: pretty; }
.beacon-svc__title a { color: var(--beacon-green-black); text-decoration: none; transition: color .2s; }
.beacon-svc__title a:hover { color: var(--beacon-dark-blue-1); }
.beacon-svc__link { margin: 1.25rem 0 0; font-family: var(--beacon-font-sans); font-size: .875rem; font-weight: 600; }
.beacon-svc__link a { color: var(--beacon-dark-blue-1); text-decoration: none; }
.beacon-svc__link a::after { content: " \2192"; }
.beacon-svc__link a:hover { color: var(--beacon-bright-blue); }
ul.beacon-svc__list { list-style: none; margin: 0; padding: 0; }
@media (min-width: 1024px) { ul.beacon-svc__list { columns: 2; column-gap: 2.5rem; } }
ul.beacon-svc__list li {
	break-inside: avoid;
	padding: .65rem 0;
	margin: 0;
	border-top: 1px solid rgba(36, 36, 36, .12);
	color: var(--beacon-grey-1);
	font-size: .9375rem;
	line-height: 1.5;
}

.wp-block-group.beacon-split__logos { margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid rgba(255, 255, 255, .2); }
.beacon-split__logos .wp-block-image { margin: 0; }
.beacon-split__logos .wp-block-image img { display: block; width: auto; opacity: .92; }
.beacon-split__logos .beacon-split__logo--ccs img { height: 5.5rem; }
.beacon-split__logos .beacon-split__logo--svp img { height: 2.75rem; }

.wp-block-group.beacon-crit__medals { margin-top: 2.25rem; gap: 1.25rem; }
.beacon-crit__medals .wp-block-image { margin: 0; }
.beacon-crit__medals .wp-block-image img { display: block; width: 5.5rem; height: 5.5rem; object-fit: contain; }
@media (min-width: 640px) { .beacon-crit__medals .wp-block-image img { width: 6.5rem; height: 6.5rem; } }
.wp-block-columns.beacon-journey__head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 0; }
.beacon-journey__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-journey__head { grid-template-columns: minmax(0, 1fr) 14rem; gap: 4rem; } }
.beacon-journey__badge .wp-block-image { margin: 0; }
.beacon-journey__badge .wp-block-image img { display: block; width: 11rem; height: auto; }
@media (min-width: 900px) { .beacon-journey__badge .wp-block-image img { width: 100%; max-width: 14rem; margin-left: auto; } }

.beacon-csf { margin-top: 2.5rem; }

.beacon-csf__bar { display: grid; grid-template-columns: minmax(0, 1fr); gap: .75rem; }
@media (min-width: 768px) { .beacon-csf__bar { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); max-width: 60rem; } }
.beacon-csf__search, .beacon-csf__select { display: block; position: relative; margin: 0; }
.beacon-csf__search input, .beacon-csf__select select {
	width: 100%; box-sizing: border-box; height: 3rem; padding: 0 1rem; margin: 0;
	font-family: var(--beacon-font-sans); font-size: .9375rem; color: var(--beacon-green-black);
	background: var(--beacon-white); border: 1px solid rgba(36, 36, 36, .22); border-radius: 0;
}
.beacon-csf__select select { appearance: none; -webkit-appearance: none; padding-right: 2.5rem; cursor: pointer; text-overflow: ellipsis; }
.beacon-csf__select::after {
	content: ""; position: absolute; right: 1rem; top: 50%; width: .5rem; height: .5rem; margin-top: -.35rem;
	border-right: 1.5px solid var(--beacon-green-black); border-bottom: 1.5px solid var(--beacon-green-black);
	transform: rotate(45deg); pointer-events: none;
}
.beacon-csf__select select.is-active { border-color: var(--beacon-dark-blue-2); box-shadow: inset 0 0 0 1px var(--beacon-dark-blue-2); }
.beacon-csf__search input:focus, .beacon-csf__select select:focus { outline: 2px solid var(--beacon-bright-blue); outline-offset: 0; border-color: var(--beacon-bright-blue); }
.beacon-csf__status { font-size: .8125rem; color: var(--beacon-grey-1); margin: 1.25rem 0 0; min-height: 1.2em; }
.beacon-csf__empty { color: var(--beacon-grey-1); margin: 1rem 0 0; }

.beacon-cs-list { padding-top: .5rem; padding-bottom: 5rem; }
.beacon-cs-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem 2rem; }
@media (min-width: 640px) { .beacon-cs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .beacon-cs-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.beacon-cs-grid > li { margin: 0; }
.beacon-cs-grid > li[hidden] { display: none; }
.beacon-cs-card { display: flex; flex-direction: column; height: 100%; background: var(--beacon-white); border: 1px solid rgba(36, 36, 36, .12); transition: border-color .2s, box-shadow .2s; }
.beacon-cs-card:hover { border-color: rgba(36, 36, 36, .3); box-shadow: 0 14px 30px rgba(36, 36, 36, .08); }
.wp-block-post-featured-image.beacon-cs-card__img { margin: 0; width: 100%; height: 13rem; overflow: hidden; background: var(--beacon-light-green-3); }
.beacon-cs-card__img a { display: block; height: 100%; }
.beacon-cs-card__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.beacon-cs-card:hover .beacon-cs-card__img img { transform: scale(1.03); }
.beacon-cs-card__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 1.5rem 1.5rem 1.75rem; }
.beacon-cs-card__body > * { margin: 0; }
.beacon-cs-card__sector { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; color: var(--beacon-dark-blue-1); }
.beacon-cs-card__sector a { color: inherit; text-decoration: none; }
.beacon-cs-card__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.375rem; line-height: 1.2; margin-top: .75rem; text-wrap: pretty; }
.beacon-cs-card__title a { color: var(--beacon-green-black); text-decoration: none; }
.beacon-cs-card__title a:hover { color: var(--beacon-dark-blue-1); }
.beacon-cs-card__excerpt { margin-top: .85rem; }
.beacon-cs-card__excerpt p { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.6; margin: 0; }
.beacon-cs-card__excerpt .wp-block-post-excerpt__more-text { display: none; }
.beacon-cs-card__tags { margin-top: auto; padding-top: 1.25rem; font-size: .75rem; line-height: 1.8; }
.beacon-cs-card__tags a { display: inline-block; margin: 0 .35rem .35rem 0; padding: .15rem .55rem; border: 1px solid rgba(36, 36, 36, .14); border-radius: 999px; color: var(--beacon-grey-1); text-decoration: none; }
.beacon-cs-card__tags .wp-block-post-terms__separator { display: none; }
.beacon-cs-none { color: var(--beacon-grey-1); }

.beacon-cs-single__sector { margin: 1.5rem 0 0; }
.beacon-cs-single__sector a { color: inherit; text-decoration: none; }
.beacon-cs-single__head .beacon-ahead__title { margin-top: .75rem; }
.beacon-cs-single__tags { margin: 1.25rem 0 0; font-size: .8125rem; line-height: 1.9; }
.beacon-cs-single__tags a { display: inline-block; margin: 0 .4rem .4rem 0; padding: .2rem .65rem; border: 1px solid rgba(36, 36, 36, .16); border-radius: 999px; color: var(--beacon-grey-1); text-decoration: none; }
.beacon-cs-single__tags .wp-block-post-terms__separator { display: none; }
.beacon-cs-single__body .beacon-prose--case { max-width: 48rem; }

.beacon-prose--case ul.beacon-cs-facts { list-style: none; margin: 0 0 2.5rem; padding: 0; display: grid; gap: 0; border-top: 1px solid rgba(36, 36, 36, .16); }
.beacon-prose--case ul.beacon-cs-facts li { padding: .8rem 0; margin: 0; border-bottom: 1px solid rgba(36, 36, 36, .16); font-size: 1rem; line-height: 1.5; display: grid; grid-template-columns: minmax(0, 1fr); gap: .15rem 1.5rem; }
.beacon-prose--case ul.beacon-cs-facts li::before { display: none; }
@media (min-width: 640px) { .beacon-prose--case ul.beacon-cs-facts li { grid-template-columns: 12rem minmax(0, 1fr); } }
.beacon-prose--case ul.beacon-cs-facts li strong { font-family: var(--beacon-font-arya); font-weight: 400; text-transform: uppercase; letter-spacing: .12em; font-size: .75rem; color: var(--beacon-dark-blue-1); padding-top: .2rem; }
.beacon-prose--case .wp-block-post-content > p:first-of-type { font-family: var(--beacon-font-sans); font-size: 1.0625rem; line-height: 1.8; }
.beacon-cs-more .beacon-relcard__meta { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; color: var(--beacon-dark-blue-1); }
.beacon-cs-more .beacon-relcard__meta a { color: inherit; text-decoration: none; }

.beacon-csrow { padding-top: 5rem; padding-bottom: 5rem; }
.wp-block-columns.beacon-csrow__head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin: 0; }
.beacon-csrow__head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 768px) { .wp-block-columns.beacon-csrow__head { grid-template-columns: minmax(0, 1fr) auto; align-items: end; } }
.beacon-csrow__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.5rem, 2.8vw, 2rem); line-height: 1.1; color: var(--beacon-green-black); margin: .5rem 0 0; }
.beacon-csrow__all { margin: 0; font-family: var(--beacon-font-sans); font-size: .875rem; font-weight: 600; }
.beacon-csrow__all a { color: var(--beacon-dark-blue-1); text-decoration: none; }
.beacon-csrow__all a::after { content: " \2192"; }
.beacon-csrow__all a:hover { color: var(--beacon-bright-blue); }
.beacon-csrow__track {
	list-style: none; padding: 0 0 1rem; margin: 2rem 0 0;
	display: grid; grid-auto-flow: column; grid-auto-columns: min(80%, 20rem); gap: 1.5rem;
	overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
	scrollbar-width: thin; scrollbar-color: rgba(36, 36, 36, .3) transparent;
}
@media (min-width: 1024px) { .beacon-csrow__track { grid-auto-columns: calc((100% - 3rem) / 3); } }
.beacon-csrow__track .beacon-cs-card { height: 100%; }
.beacon-csrow__track > li { margin: 0; scroll-snap-align: start; }
.beacon-csrow .wp-block-query.beacon-csrow__query { margin-top: 2rem; }
.beacon-csrow .beacon-csrow__track { margin-top: 0; }

.beacon-csrow__nav { display: flex; gap: .5rem; margin-top: 1rem; }
.beacon-csrow__btn {
	display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem;
	background: var(--beacon-white); border: 1px solid rgba(36, 36, 36, .2); color: var(--beacon-green-black);
	font-size: 1.125rem; line-height: 1; cursor: pointer; transition: background-color .2s, border-color .2s, color .2s;
}
.beacon-csrow__btn:hover:not([disabled]) { background: var(--beacon-dark-blue-2); border-color: var(--beacon-dark-blue-2); color: var(--beacon-white); }
.beacon-csrow__btn[disabled] { opacity: .35; cursor: default; }

.beacon-carousel.beacon-carousel--strip { background: var(--beacon-light-green-3); border-bottom: 1px solid rgba(36, 36, 36, .08); overflow: visible; margin: 0; }
.beacon-carousel--strip .beacon-carousel__inner { display: flex; align-items: center; gap: 1.25rem; padding-top: .75rem; padding-bottom: .75rem; }
@media (min-width: 768px) { .beacon-carousel--strip .beacon-carousel__inner { gap: 2.5rem; } }
.beacon-carousel__label {
	flex: 0 0 auto; margin: 0; padding-right: 1.25rem; border-right: 1px solid rgba(36, 36, 36, .14);
	font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .16em; font-size: .6875rem; line-height: 2.5rem;
	color: var(--beacon-grey-1); white-space: nowrap;
}
@media (min-width: 768px) { .beacon-carousel__label { padding-right: 2.5rem; } }
.beacon-carousel--strip .beacon-carousel__logos { flex: 1 1 auto; min-width: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; justify-items: center; gap: 1.25rem 1.5rem; padding: 0; }
@media (min-width: 1400px) { .beacon-carousel--strip .beacon-carousel__logos { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 2rem; } }
.beacon-carousel--strip .beacon-carousel__logos svg,
.beacon-carousel--strip .beacon-carousel__logos img { height: 2.25rem; width: auto; max-width: 100%; }
@media (max-width: 767px) {
	.beacon-carousel--strip .beacon-carousel__inner { flex-direction: column; align-items: stretch; gap: .75rem; padding-top: 1rem; padding-bottom: 1.25rem; }
	.beacon-carousel--strip .beacon-carousel__label { border-right: 0; padding-right: 0; line-height: 1.5; }
	.beacon-carousel--strip .beacon-carousel__logos svg,
	.beacon-carousel--strip .beacon-carousel__logos img { height: 1.5rem; }
}

@media (max-width: 899px) {
	ul.beacon-proof__list li { padding: 1.1rem 0; font-size: 1.0625rem; }
	ul.beacon-proof__list li:first-child { border-top: 0; }
}

.wp-block-cover.beacon-lp-hero { min-height: 0; padding: 8.5rem 0 4.5rem; align-items: stretch; }
.beacon-lp-hero .wp-block-cover__inner-container { width: 100%; }
.wp-block-columns.beacon-lp-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3rem; margin: 0; }
.beacon-lp-hero__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-lp-hero__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 4.5rem; align-items: center; } }
.beacon-lp-hero__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(2.25rem, 4.6vw, 3.75rem); line-height: 1.05; color: var(--beacon-white); margin: 1.25rem 0 0; text-wrap: balance; }
.beacon-lp-hero__body { color: var(--beacon-light-green-2); font-size: clamp(1rem, 1.4vw, 1.125rem); line-height: 1.75; max-width: 36rem; margin: 1.5rem 0 0; }
.wp-block-columns.beacon-lp-points { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; margin: 2.5rem 0 0; }
.beacon-lp-points > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; display: flex; align-items: center; gap: 1rem; }
@media (min-width: 640px) {
	.wp-block-columns.beacon-lp-points { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
	.beacon-lp-points > .wp-block-column { flex-direction: column; align-items: flex-start; gap: .85rem; padding: 0 1.5rem; border-left: 1px solid rgba(224, 199, 175, .28); }
	.beacon-lp-points > .wp-block-column:first-child { padding-left: 0; border-left: 0; }
}
.beacon-lp-points__icon.wp-block-image { margin: 0; flex: 0 0 auto; }
.beacon-lp-points__icon img { display: block; width: 3rem; height: 3rem; }
.beacon-lp-points__text { color: var(--beacon-white); font-size: .9375rem; line-height: 1.45; margin: 0; }

.wp-block-group.beacon-lp-form.has-background { padding: 2rem 1.5rem; border-top: 3px solid var(--beacon-dark-cream); box-shadow: 0 24px 48px rgba(0, 0, 0, .28); }
@media (min-width: 640px) { .wp-block-group.beacon-lp-form.has-background { padding: 2.5rem 2.25rem; } }
.beacon-lp-form__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.5rem, 2.2vw, 1.875rem); line-height: 1.15; color: var(--beacon-green-black); margin: 0; }
.beacon-lp-form__intro { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: 1rem 0 0; }
.beacon-lp-form__embed { margin-top: 1.5rem; min-height: 12rem; }
.beacon-lp-form__note { color: var(--beacon-grey-1); font-size: .8125rem; text-align: center; margin: 1.25rem 0 0; }

.beacon-lp-reasons { padding-top: 4.5rem; padding-bottom: 4.5rem; }
.wp-block-columns.beacon-lp-reasons__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin: 0; }
.beacon-lp-reasons__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 900px) {
	.wp-block-columns.beacon-lp-reasons__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
	.beacon-lp-reasons__grid > .wp-block-column { padding: 0 2.5rem; border-left: 1px solid rgba(36, 36, 36, .14); }
	.beacon-lp-reasons__grid > .wp-block-column:first-child { padding-left: 0; border-left: 0; }
}
figure.wp-block-image.beacon-lp-reason__icon { margin: 0; width: 4rem; height: 4rem; background: var(--beacon-light-green-3); display: flex; align-items: center; justify-content: center; }
.beacon-lp-reason__icon img { display: block; width: 2rem; height: 2rem; }
.beacon-lp-reason__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.5rem; line-height: 1.2; color: var(--beacon-green-black); margin: 1.5rem 0 0; }
.beacon-lp-reason__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: .75rem 0 0; }

.wp-block-group.beacon-lp-proof.has-background { padding: 5rem 0; }
.wp-block-columns.beacon-lp-proof__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3rem; margin: 0; }
.beacon-lp-proof__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-lp-proof__grid { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 4.5rem; align-items: center; } }
.beacon-lp-proof__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.75rem, 3.2vw, 2.75rem); line-height: 1.1; color: var(--beacon-green-black); margin: 1rem 0 0; text-wrap: balance; }
.beacon-lp-proof__text { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 1.25rem 0 0; max-width: 36rem; }
.wp-block-columns.beacon-lp-stats { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; margin: 2.5rem 0 0; padding-top: 2rem; border-top: 1px solid rgba(36, 36, 36, .16); }
.beacon-lp-stats > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 640px) {
	.wp-block-columns.beacon-lp-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
	.beacon-lp-stats > .wp-block-column { padding: 0 1.5rem; border-left: 1px solid rgba(36, 36, 36, .14); }
	.beacon-lp-stats > .wp-block-column:first-child { padding-left: 0; border-left: 0; }
}
.beacon-lp-stats__fig { font-family: var(--beacon-font-arya); font-size: clamp(1.75rem, 2.6vw, 2.25rem); line-height: 1; color: var(--beacon-dark-blue-1); margin: 0; }
.beacon-lp-stats__label { color: var(--beacon-grey-1); font-size: .875rem; line-height: 1.5; margin: .6rem 0 0; }
figure.wp-block-image.beacon-lp-proof__img { margin: 0; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; }
.beacon-lp-proof__img img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 52% 35%; }

.beacon-lp-topics { padding-top: 5rem; padding-bottom: 5rem; }
.beacon-lp-topics__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.75rem, 3.2vw, 2.5rem); line-height: 1.1; color: var(--beacon-green-black); margin: 1rem 0 0; }
ul.beacon-lp-checks { list-style: none; margin: 2.5rem 0 0; padding: 0; display: grid; gap: 1.1rem 4rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) { ul.beacon-lp-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: column; grid-template-rows: repeat(3, auto); } }
ul.beacon-lp-checks li {
	position: relative; margin: 0; padding: 0 0 1.1rem 2.5rem; border-bottom: 1px solid rgba(36, 36, 36, .1);
	color: var(--beacon-green-black); font-size: 1rem; line-height: 1.6;
}
ul.beacon-lp-checks li::before {
	content: ""; position: absolute; left: 0; top: .05rem; width: 1.5rem; height: 1.5rem; border-radius: 50%;
	background: var(--beacon-dark-cream) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center / .9rem no-repeat;
}
@media (min-width: 1024px) { .beacon-lp-hero__grid > .wp-block-column.beacon-lp-hero__copy { align-self: start; padding-top: 1.5rem; } .beacon-lp-hero__grid > .wp-block-column.beacon-lp-hero__aside { align-self: center; } }

.beacon-service-split--light .beacon-split__heading { color: var(--beacon-green-black); }
.beacon-service-split--light .beacon-split__sub,
.beacon-service-split--light .beacon-split__sub--light { color: var(--beacon-grey-1); }
.beacon-service-split--light .wp-block-group.beacon-split__logos { border-top-color: rgba(36, 36, 36, .14); }
.beacon-service-split--light .beacon-split__logos .wp-block-image img { opacity: .85; }
.beacon-service-split--light .beacon-sticky-card { border: 1px solid rgba(36, 36, 36, .08); }

.beacon-journey--icons .beacon-journey__icon.wp-block-image { margin: 0 0 1rem; }
.beacon-journey--icons .beacon-journey__icon img { display: block; width: 2.5rem; height: 2.5rem; }
.beacon-journey--icons .beacon-journey__item-title { margin-top: 0; }

.wp-block-group.beacon-bidders2.has-background { padding: 5rem 0; }
.beacon-bidders2__label { margin: 2.75rem 0 0; }
.wp-block-columns.beacon-bidders2__orgs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin: 1.25rem 0 0; }
.beacon-bidders2__orgs > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 640px) { .wp-block-columns.beacon-bidders2__orgs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .wp-block-columns.beacon-bidders2__orgs { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; } }
.wp-block-column.beacon-bidcard { background: var(--beacon-white); padding: 1.75rem 1.5rem; border-top: 3px solid var(--beacon-dark-blue-1); }
.beacon-bidcard__n { font-family: var(--beacon-font-arya); font-size: 2.5rem; line-height: 1; color: var(--beacon-steel-blue); margin: 0; }
.beacon-bidcard__text { color: var(--beacon-green-black); font-size: 1.0625rem; line-height: 1.5; margin: 1.25rem 0 0; }
ul.beacon-bidders2__sectors { list-style: none; margin: 1.25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .75rem; }
ul.beacon-bidders2__sectors li {
	margin: 0; padding: .7rem 1.25rem; background: var(--beacon-white); border: 1px solid rgba(36, 36, 36, .12);
	font-family: var(--beacon-font-arya); font-size: 1.0625rem; line-height: 1.2; color: var(--beacon-green-black);
}

@media (min-width: 900px) { .beacon-steps--five .wp-block-columns.beacon-steps__row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem 2rem; } }
@media (min-width: 1280px) { .beacon-steps--five .wp-block-columns.beacon-steps__row { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.75rem; } }

.beacon-home-hero.beacon-home-hero--short { min-height: clamp(22rem, 50vh, 30rem); }

.wp-block-cover.beacon-sbs-hero { min-height: clamp(26rem, 62vh, 36rem); padding: 0; align-items: flex-end; }
.wp-block-cover.beacon-sbs-hero .wp-block-cover__inner-container { width: 100%; max-width: none; color: var(--beacon-white); }
.beacon-sbs-hero .beacon-container { padding-top: 8rem; padding-bottom: 3.25rem; }
.wp-block-columns.beacon-sbs-hero__grid { display: grid; grid-template-columns: 1fr; gap: 1.75rem; margin: 0; }
.beacon-sbs-hero__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-hero__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 5rem; align-items: end; } }
.beacon-sbs-hero__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(2.25rem, 5.2vw, 4rem); line-height: 1.02; color: var(--beacon-white); margin: 0; }
.beacon-sbs-hero__tag { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.25rem, 2vw, 1.625rem); line-height: 1.3; color: var(--beacon-cream); max-width: 30ch; margin: 1.25rem 0 0; }
.beacon-sbs-hero__body { font-size: clamp(1rem, 1.5vw, 1.125rem); line-height: 1.75; color: rgba(255, 255, 255, .88); margin: 0 0 1.75rem; }
.beacon-sbs-hero .wp-block-buttons { margin: 0; }

.wp-block-group.beacon-sbs-proof.has-background { padding: 2.25rem 0; }
.wp-block-columns.beacon-sbs-proof__grid { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .875rem 1.75rem; margin: 0; }
.beacon-sbs-proof__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; align-self: center; }
.beacon-sbs-proof__grid > .wp-block-column:first-child { grid-column: 1 / -1; }
.beacon-sbs-proof__grid > .wp-block-column:nth-child(3) { padding-left: 1.75rem; border-left: 1px solid rgba(224, 199, 175, .34); }
.beacon-sbs-proof__num { font-family: var(--beacon-font-arya); font-size: clamp(2.5rem, 5vw, 3.5rem); line-height: 1; color: var(--beacon-cream); margin: 0; }
.beacon-sbs-proof__text { font-size: 1.0625rem; line-height: 1.5; color: var(--beacon-white); max-width: 30ch; margin: 0; }

.wp-block-columns.beacon-sbs-head { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 0; }
.beacon-sbs-head > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-head { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 5rem; } }
.beacon-sbs-head .beacon-secthead { margin-top: 1rem; }
.beacon-sbs-head__lede { color: var(--beacon-grey-1); font-size: 1.0625rem; line-height: 1.75; margin: 0; }

.beacon-sbs-how { padding-top: 5.5rem; padding-bottom: 5.5rem; }
.wp-block-columns.beacon-sbs-route { display: grid; grid-template-columns: 1fr; gap: 1.25rem; margin: 3.5rem 0 0; }
.beacon-sbs-route > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-sbs-route { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3.5rem; } }
.wp-block-column.beacon-sbs-route__step { position: relative; padding: 2rem 2rem 2.25rem; background: var(--beacon-white); border-bottom: 3px solid var(--beacon-dark-blue-1); }
.beacon-sbs-route__step > * { margin: 0; }
@media (min-width: 900px) {
	.wp-block-column.beacon-sbs-route__step:not(:last-child)::after { content: "\2192"; position: absolute; top: 2.25rem; right: -2.5rem; font-size: 1.5rem; line-height: 1; color: var(--beacon-dark-cream); }
}
.beacon-sbs-route__n { font-family: var(--beacon-font-display); font-size: 4rem; line-height: .9; color: transparent; -webkit-text-stroke: 1px var(--beacon-dark-blue-1); margin: 0; }
.beacon-sbs-route__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.375rem; line-height: 1.2; color: var(--beacon-green-black); margin: 1.5rem 0 0; }
.beacon-sbs-route__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: .875rem 0 0; }

.wp-block-group.beacon-sbs-case.has-background { padding: 0; }
.wp-block-columns.beacon-sbs-case__grid { display: grid; grid-template-columns: 1fr; gap: 0; margin: 0; }
.beacon-sbs-case__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-case__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.beacon-sbs-case__img { margin: 0; height: 100%; }
.beacon-sbs-case__img img { display: block; width: 100%; height: 100%; min-height: 18rem; object-fit: cover; }
.wp-block-column.beacon-sbs-case__copy { padding: 3.5rem var(--beacon-gutter); align-self: center; }
@media (min-width: 1024px) { .wp-block-column.beacon-sbs-case__copy { padding: 5rem var(--beacon-gutter) 5rem 4.5rem; } }
.beacon-sbs-case__title { margin-top: 1rem; max-width: 22ch; }
.beacon-sbs-case__text { color: var(--beacon-light-green-2); font-size: 1.0625rem; line-height: 1.75; max-width: 40rem; margin: 1.25rem 0 0; }
.beacon-sbs-case__btns { margin-top: 2rem; }

.wp-block-group.beacon-sbs-support { padding: 5.5rem 0; }
.beacon-sbs-support__title { margin-top: 1rem; }
.wp-block-columns.beacon-sbs-support__grid { display: grid; grid-template-columns: 1fr; gap: 1.25rem; margin: 3rem 0 0; }
.beacon-sbs-support__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 700px)  { .wp-block-columns.beacon-sbs-support__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .wp-block-columns.beacon-sbs-support__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.wp-block-column.beacon-sbs-card { background: var(--beacon-light-green-3); padding: 2rem 1.75rem 2.25rem; border-top: 3px solid var(--beacon-dark-cream); }
.beacon-sbs-card > * { margin: 0; }
.beacon-sbs-card__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.25rem; line-height: 1.25; color: var(--beacon-green-black); margin: 0; }
.beacon-sbs-card__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: 1rem 0 0; }

.wp-block-group.beacon-sbs-areas.has-background { padding: 5.5rem 0; }
.wp-block-columns.beacon-sbs-areas__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 0; }
.beacon-sbs-areas__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-areas__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 5rem; } }
.beacon-sbs-areas__title { margin-top: 1rem; }
ul.beacon-sbs-areas__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; column-gap: 2.5rem; }
@media (min-width: 700px) { ul.beacon-sbs-areas__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
ul.beacon-sbs-areas__list li { position: relative; padding: 1rem 0 1rem 2rem; border-top: 1px solid rgba(192, 206, 224, .22); color: var(--beacon-white); font-size: .9375rem; line-height: 1.55; margin: 0; }
ul.beacon-sbs-areas__list li::before { content: ""; position: absolute; left: 0; top: 1.3rem; width: .75rem; height: .4rem; border-left: 2px solid var(--beacon-cream); border-bottom: 2px solid var(--beacon-cream); transform: rotate(-45deg); }
.wp-block-columns.beacon-sbs-approach { display: grid; grid-template-columns: 1fr; gap: 1rem; margin: 4rem 0 0; padding: 2.5rem 0 0; border-top: 1px solid rgba(224, 199, 175, .45); }
.beacon-sbs-approach > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-approach { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 5rem; } }
.beacon-sbs-approach__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(1.75rem, 3vw, 2.375rem); line-height: 1.15; color: var(--beacon-cream); margin: .75rem 0 0; }
.beacon-sbs-approach__text { color: var(--beacon-light-blue); font-size: 1.125rem; line-height: 1.75; margin: 0; }

.beacon-sbs-why { padding-top: 5.5rem; padding-bottom: 5.5rem; }
.wp-block-columns.beacon-sbs-why__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; margin: 0; }
.beacon-sbs-why__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 1024px) { .wp-block-columns.beacon-sbs-why__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 5rem; } }
.beacon-sbs-why__title { max-width: 22ch; }
.wp-block-columns.beacon-sbs-why__items { display: grid; grid-template-columns: 1fr; gap: 2.5rem 3rem; margin: 0; }
.beacon-sbs-why__items > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
@media (min-width: 700px) { .wp-block-columns.beacon-sbs-why__items { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.wp-block-column.beacon-sbs-why__item { padding-top: 1.5rem; border-top: 1px solid var(--beacon-green-black); }
.beacon-sbs-why__item > * { margin: 0; }
.beacon-sbs-why__name { font-family: var(--beacon-font-arya); font-weight: 400; font-size: 1.25rem; line-height: 1.25; color: var(--beacon-green-black); margin: 0; }
.beacon-sbs-why__text { color: var(--beacon-grey-1); font-size: .9375rem; line-height: 1.7; margin: .875rem 0 0; }

.beacon-team-member { scroll-margin-top: 6rem; }

.wp-block-cover.beacon-shero { min-height: clamp(38rem, 82vh, 50rem); padding: 0; align-items: center; }
.wp-block-cover.beacon-shero .wp-block-cover__inner-container { width: 100%; max-width: none; color: var(--beacon-white); }
.wp-block-cover.beacon-shero .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(90deg, rgba(13, 33, 31, .97) 0%, rgba(13, 33, 31, .9) 45%, rgba(17, 48, 44, .6) 100%) !important; }
.beacon-shero .beacon-container { padding-top: 8.5rem; padding-bottom: 4.5rem; }
@media (min-width: 1024px) { .beacon-shero .beacon-container { padding-top: 9.5rem; padding-bottom: 5.5rem; } }
.wp-block-columns.beacon-shero__grid { display: grid; grid-template-columns: 1fr; gap: 3rem; margin: 0; }
.beacon-shero__grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; align-self: center; }
@media (min-width: 1100px) { .wp-block-columns.beacon-shero__grid { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 4.5rem; } }
.beacon-shero__copy > * { margin: 0; }
.beacon-shero__kick { font-family: var(--beacon-font-arya); text-transform: uppercase; letter-spacing: .16em; font-size: .8125rem; line-height: 1.5; color: var(--beacon-dark-cream); margin: 0; }
.beacon-shero__title { font-family: var(--beacon-font-arya); font-weight: 400; font-size: clamp(2.375rem, 4.4vw, 4.125rem); line-height: 1.08; color: var(--beacon-white); max-width: 22ch; margin: 1.25rem 0 0; }
.beacon-shero__lede { font-size: clamp(1.0625rem, 1.35vw, 1.25rem); line-height: 1.65; color: rgba(255, 255, 255, .82); max-width: 42rem; margin: 1.5rem 0 0; }
.wp-block-buttons.beacon-shero__btns { margin: 2.25rem 0 0; gap: .875rem; }
.beacon-shero__btns .wp-block-button__link { display: inline-flex; align-items: center; gap: .625rem; padding: 1rem 1.625rem; font-size: 1rem; }
.beacon-btn-arrow .wp-block-button__link::after { content: ""; width: 1.125rem; height: 1.125rem; background: currentColor; -webkit-mask: var(--beacon-icon-arrow) center / contain no-repeat; mask: var(--beacon-icon-arrow) center / contain no-repeat; transition: transform .2s; }
.beacon-btn-arrow .wp-block-button__link:hover::after { transform: translateX(3px); }
.beacon-btn-download .wp-block-button__link::before { content: ""; width: 1.125rem; height: 1.125rem; background: currentColor; -webkit-mask: var(--beacon-icon-download) center / contain no-repeat; mask: var(--beacon-icon-download) center / contain no-repeat; }
ul.beacon-shero__assure { list-style: none; padding: 0; margin: 1.5rem 0 0; display: flex; flex-wrap: wrap; gap: .75rem 1.75rem; }
ul.beacon-shero__assure li { display: inline-flex; align-items: center; gap: .5rem; margin: 0; font-size: .9375rem; color: rgba(255, 255, 255, .72); }
ul.beacon-shero__assure li::before { content: ""; flex: 0 0 auto; width: 1.0625rem; height: 1.0625rem; background: currentColor; -webkit-mask: var(--beacon-icon-check) center / contain no-repeat; mask: var(--beacon-icon-check) center / contain no-repeat; }
ul.beacon-shero__assure li:nth-child(1)::before { -webkit-mask-image: var(--beacon-icon-clock); mask-image: var(--beacon-icon-clock); }
ul.beacon-shero__assure li:nth-child(3)::before { -webkit-mask-image: var(--beacon-icon-calendar); mask-image: var(--beacon-icon-calendar); }
.wp-block-group.beacon-shero__card { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); padding: 2rem 1.75rem; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
@media (min-width: 640px) { .wp-block-group.beacon-shero__card { padding: 2.5rem 2.5rem 2.25rem; } }
.beacon-shero__card > * { margin: 0; }
.beacon-shero__stat { font-family: var(--beacon-font-arya); font-size: clamp(3.5rem, 6vw, 5rem); line-height: 1; color: var(--beacon-cream); margin: 0; }
.beacon-shero__statcap { font-size: 1.0625rem; line-height: 1.55; color: rgba(255, 255, 255, .9); max-width: 26ch; margin: .875rem 0 0; }
.wp-block-columns.beacon-shero__badge { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: 1.25rem; align-items: center; margin: 0; }
.beacon-shero__badge > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
.beacon-shero__badge-img { margin: 0; }
.beacon-shero__badge-img img { display: block; width: 100%; height: auto; }
.beacon-shero__badge-title { font-family: var(--beacon-font-arya); font-size: clamp(1.375rem, 2vw, 1.75rem); line-height: 1.2; color: var(--beacon-cream); margin: 0; }
.beacon-shero__badge-text { font-size: 1rem; line-height: 1.55; color: rgba(255, 255, 255, .88); margin: .5rem 0 0; }
hr.wp-block-separator.beacon-shero__rule { border: 0; height: 1px; background: rgba(255, 255, 255, .16); margin: 1.75rem 0; max-width: none; width: 100%; opacity: 1; }
ul.beacon-shero__checks { list-style: none; padding: 0; margin: 0; }
ul.beacon-shero__checks li { position: relative; padding-left: 2rem; margin: 0; font-size: 1rem; line-height: 1.6; color: rgba(255, 255, 255, .72); }
ul.beacon-shero__checks li + li { margin-top: 1rem; }
ul.beacon-shero__checks li::before { content: ""; position: absolute; left: 0; top: .25rem; width: 1.0625rem; height: 1.0625rem; background: var(--beacon-light-green-1); -webkit-mask: var(--beacon-icon-check) center / contain no-repeat; mask: var(--beacon-icon-check) center / contain no-repeat; }
ul.beacon-shero__checks strong { color: var(--beacon-white); font-weight: 600; }
@media (max-width: 639px) {
	.beacon-shero__btns .wp-block-button { width: 100%; }
	.beacon-shero__btns .wp-block-button__link { width: 100%; justify-content: center; }
}
:root {
	--beacon-icon-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--beacon-icon-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E");
	--beacon-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5l5 5 10-11'/%3E%3C/svg%3E");
	--beacon-icon-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	--beacon-icon-calendar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='1'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
@media (max-width: 1099px) { .wp-block-cover.beacon-shero .wp-block-cover__background { background: linear-gradient(180deg, rgba(13, 33, 31, .93) 0%, rgba(13, 33, 31, .88) 100%) !important; } }
.beacon-shero__copy > *, .beacon-shero__card, .beacon-sbs-hero__grid > .wp-block-column > * { animation: beacon-reveal .8s cubic-bezier(.2, .7, .3, 1) both; }
.beacon-shero__copy > :nth-child(2) { animation-delay: 90ms; }
.beacon-shero__copy > :nth-child(3) { animation-delay: 180ms; }
.beacon-shero__copy > :nth-child(4) { animation-delay: 270ms; }
.beacon-shero__copy > :nth-child(5) { animation-delay: 360ms; }
.beacon-shero__card { animation-delay: 270ms; }
.beacon-sbs-hero__grid > .wp-block-column > :nth-child(2) { animation-delay: 90ms; }
.beacon-sbs-hero__grid > .wp-block-column:nth-child(2) > :nth-child(1) { animation-delay: 180ms; }
.beacon-sbs-hero__grid > .wp-block-column:nth-child(2) > :nth-child(2) { animation-delay: 270ms; }
@media (prefers-reduced-motion: reduce) {
	.beacon-shero__copy > *, .beacon-shero__card, .beacon-sbs-hero__grid > .wp-block-column > * { animation: none; }
}
@media (min-width: 1100px) { .wp-block-cover.beacon-shero .wp-block-cover__background { background: linear-gradient(90deg, rgba(12, 30, 28, .97) 0%, rgba(12, 30, 28, .93) 38%, rgba(12, 32, 29, .7) 62%, rgba(12, 32, 29, .55) 100%) !important; } }
body:not(.editor-styles-wrapper) .beacon-modal:not(.is-in-popup) { display: none; }
.beacon-popup--modal { width: min(36rem, calc(100% - 2rem)); }
.beacon-popup--modal .beacon-modal > .beacon-lp-form__title { padding-right: 2.5rem; }
.wp-block-buttons.beacon-lp-form__btns { margin: 1.75rem 0 0; }
.beacon-lp-form__btns .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; gap: .625rem; width: 100%; padding: 1rem 1.5rem; font-size: 1rem; }
.wp-block-group.beacon-offer.beacon-offer--plain { padding: 5rem 0; }
@media (min-width: 900px) { .wp-block-columns.beacon-journey__head.beacon-journey__head--logos { grid-template-columns: minmax(0, 1fr) auto; } }
.beacon-journey__lede.beacon-journey__lede--lead { color: var(--beacon-white); font-size: clamp(1.125rem, 1.6vw, 1.375rem); line-height: 1.6; max-width: 46rem; margin: 0; }
.wp-block-group.beacon-journey__logos { gap: 2.5rem; margin: 0; }
.beacon-journey__logo.wp-block-image { margin: 0; }
.beacon-journey__logo img { display: block; height: 3rem; width: auto; }
.beacon-journey__link { margin: 1.25rem 0 0; font-size: .9375rem; font-weight: 600; }
.beacon-journey__link a { color: var(--beacon-cream); text-decoration: none; }
.beacon-journey__link a::after { content: " \2192"; }
.beacon-journey__link a:hover { text-decoration: underline; }
.wp-block-group.beacon-sbs-how-band.has-background, .wp-block-group.beacon-ssrows-band.has-background { padding: 0; }
