body {
	--fontL: 20px;
	--wp--preset--font-size--medium: 24px;
}

.has-medium-font-size {
	line-height: 1.7em;
}

.is-style-iconleft .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 100px 1fr;
	grid-gap: 1em;
	color: var(--wp--preset--color--navy);
	position: relative;
	z-index: 2;
}

.is-style-iconleft .wp-block-font-awesome-icon {
	width: 50px;
	height: 50px;
	grid-row: span 3;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto auto;
	background: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--white);
	position: relative;
}

.is-style-iconleft .wp-block-font-awesome-icon svg {
	width: 28px;
	height: auto;
}

.is-style-iconleft .wp-block-font-awesome-icon:before {
	content: "";
	position: absolute;
	top: 20px;
	left: -50%;
	width: 200%;
	height: 50px;
	background: var(--wp--preset--color--sage);
	transform: skewY(-10deg);
	z-index: -1;
}

.is-style-circleicon {
	display: flex;
	align-items: center;
	font-size: 1.3em;
}

.is-style-circleicon .wp-font-awesome-icon {
	background: var(--wp--preset--color--frost);
	color: inherit;
	font-size: 1.5em;
	width: 80px;
	height: 80px;
	border-radius: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 1rem;
}

.is-style-iconleft strong {
	font-size: 1.2em;
}

.is-style-iconleft p {
	line-height: 1.4em;
	font-size: var(--fontL);
	margin-bottom: 0 !important;
}

h2.has-x-large-font-size {
	--wp--preset--font-size--x-large: 4.5em;
}

body .is-layout-grid.is-style-gapXL {
	grid-gap: 100px 50px;
}

:is(#editor, #content) section.is-style-bottomOverlap {
	--overlap: 100px;
	margin-bottom: calc(-1 * var(--overlap));
	padding-bottom: calc(1.5 * var(--overlap));
}

.is-style-bottomOverlap + .wp-block-image figure img {
	border-radius: 1em;
	box-shadow: var(--shadow);
}

.is-style-bottomOverlap + .wp-block-image {
	position: relative;
	z-index: 2;
}

.wp-block-image.is-style-bottomOverlap {
	margin-bottom: -200px;
}

.is-style-offleft {
	position: relative;
	height: 300px;
	margin-right: var(--gap);
}

.is-style-offleft img {
	width: 60vw;
	max-width: 60vw;
	position: absolute;
	right: 0;
	max-height: 300px;
	object-fit: cover;
	object-position: center center;
	border-radius: 0 1em 1em 0;
}

.is-style-logos {
	margin-top: var(--gap);
	justify-content: center;
	gap: var(--gap) !important;
}

.is-style-logos :is(figure, .wp-block-image) {
	background: var(--bg);
	border: var(--border);
	border-radius: 4px;
	box-shadow: var(--shadow);
	padding: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto !important;
	width: unset !important;
}

.is-style-logos .wp-block-image img {
	max-height: 60px;
	width: auto;
}

.is-style-pricing {
	display: flex;
	flex-direction: column;
}

:is(#editor, #content) .is-style-pricing {
	border-radius: 4px;
	margin-top: var(--spacing);
	padding: var(--gap);
}

.is-style-pricing ul {
	margin-top: var(--gap);
	padding-block: var(--gap);
	border-top: var(--border);
	flex-grow: 2;
}

:is(#editor, #content) .is-style-pricing li {
	font-size: 16px;
}

:is(#editor, #content) .is-style-pricing h3 {
	font-size: 2.5em;
	margin-bottom: 5px;
}

.is-style-pricing .wp-block-buttons {
	margin-top: auto;
}