/******/
/*** SECTIONS ***/
/******/

/* MCF PAGE BUILDER ADDITIONS */

:root {
	--mcf-section-padding-y: 7rem;
	--mcf-section-padding-y-mobile: 4rem;
	--mcf-section-gutter-y: 4rem;
}

.mcf-section-intro p:last-child,
.mcf-card p:last-child,
.legal-intro p:last-child,
.legal-block p:last-child,
.timeline-intro p:last-child,
.timeline-item-content p:last-child,
.industry-detail-card-content p:last-child {
	margin-bottom: 0;
}

.mcf-card,
.legal-block,
.industry-detail-card {
	height: 100%;
	overflow: hidden;
	padding: 1.5rem;
	border: .125rem solid var(--color-yellow);
	border-radius: var(--radius-xl);
	background-color: var(--color-white);
	color: var(--color-navy);
	box-shadow: var(--shadow-sm);
}

.mcf-card h3,
.mcf-card h4,
.mcf-card h5,
.legal-block h3,
.industry-detail-card h5 {
	margin-top: 0;
	color: var(--color-navy);
}

.mcf-card-image,
.column-image,
.industry-detail-card-image {
	margin: -1.5rem -1.5rem 1.5rem;
	overflow: hidden;
	background-color: var(--color-grey);
}

.mcf-card-image img,
.column-image img,
.industry-detail-card-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 405 / 228;
	object-fit: cover;
}

.mcf-feature-icon {
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
}

.mcf-feature-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mcf-card-link {
	display: inline-flex;
	margin-top: 1rem;
	font-weight: var(--font-weight-semibold);
	text-decoration: underline;
	text-underline-offset: .1875rem;
}

.mcf-number-value {
	margin-bottom: .5rem;
	color: var(--color-navy);
	font-size: var(--text-6xl);
	font-weight: var(--font-weight-semibold);
	line-height: var(--leading-tight);
}

.mcf-number-label {
	margin-bottom: 0;
	font-weight: var(--font-weight-semibold);
}

.mcf-bubbles-grid {
	gap: 1.25rem;
}

.mcf-bubble {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 9rem;
	height: 9rem;
	padding: 1.25rem;
	border: .125rem solid var(--color-yellow);
	border-radius: 50%;
	background-color: var(--color-white);
	color: var(--color-navy);
	box-shadow: var(--shadow-sm);
	text-align: center;
}

.mcf-bubble img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.mcf-bubble span {
	font-weight: var(--font-weight-semibold);
	line-height: var(--leading-snug);
}

.legal-block {
	height: auto;
	margin-bottom: 1.5rem;
	padding: 2rem;
}

.industry-detail-card {
	padding: 0;
	display: block;
	text-decoration: none;
}

.industry-detail-card-content {
	padding: 1.5rem;
}

.timeline-section .padding-equalize {
	gap: 0;
}

.timeline-list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.timeline-item {
	gap: 2.5rem;
}

.timeline-item.is-muted {
	opacity: .28;
}

.timeline-marker {
	position: relative;
	display: flex;
	justify-content: center;
	width: 2.25rem;
	align-self: stretch;
	flex: 0 0 2.25rem;
}

.timeline-marker span {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background-color: transparent;
}

.timeline-marker span:before {
	content: '';
	display: block;
	width: 1.125rem;
	height: .625rem;
	border-left: .1875rem solid var(--color-yellow);
	border-bottom: .1875rem solid var(--color-yellow);
	transform: rotate(-45deg) translate(.0625rem, -.125rem);
}

.timeline-marker:after {
	content: '';
	position: absolute;
	top: 3.25rem;
	bottom: 0;
	left: 50%;
	width: .0625rem;
	background-color: var(--color-yellow);
	transform: translateX(-50%);
}

.timeline-item:last-child .timeline-marker:after {
	display: none;
}

.timeline-item-content h5 {
	margin-top: 0;
}

.timeline-list {
	position: sticky;
	top: 6rem;
}

.timeline-item {
	opacity: .28;
	transition: opacity .3s ease;
}

.timeline-item.is-active {
	opacity: 1;
}

.intro-form .gform_wrapper,
.text-form .gform_wrapper,
.form-fallback {
	padding: 2rem;
	border: .125rem solid var(--color-yellow);
	border-radius: var(--radius-xl);
	background-color: var(--color-white);
	color: var(--color-navy);
	box-shadow: var(--shadow-sm);
}

.form-fallback h3 {
	margin-top: 0;
	color: var(--color-navy);
}

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

.step-tabs-shell {
	overflow: hidden;
	border-radius: var(--radius-xl);
	background-color: var(--color-white);
}

.step-tabs-nav {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 0;
	padding: 0;
	background-color: var(--color-white);
}

.step-tab-button {
	appearance: none;
	border: 0;
	border-radius: var(--radius-xl) var(--radius-xl) 0 0;
	background: transparent;
	color: var(--color-navy);
	cursor: pointer;
	flex: 1 1 0;
	font-family: "Volda Sans", sans-serif;
	font-size: var(--text-3xl);
	font-weight: var(--font-weight-semibold);
	letter-spacing: 0;
	line-height: 110%;
	padding: 1.5rem 2rem;
	text-align: center;
	text-transform: none;
	transition: background-color 200ms ease, color 200ms ease;
}

.step-tab-button.is-active {
	background-color: var(--color-grey);
}

.step-tabs-underline .step-tabs-shell {
	border-radius: 0;
	background-color: transparent;
}

.step-tabs-underline .step-tabs-nav {
	gap: 1.5rem;
	padding: 0;
	background-color: transparent;
}

.step-tabs-underline .step-tab-button {
	position: relative;
	flex: 0 0 auto;
	padding: 0 0 1.25rem;
	border-radius: 0;
	font-family: "Volda Sans", sans-serif;
	font-size: var(--text-2xl);
	font-weight: var(--font-weight-semibold);
	letter-spacing: 0;
	line-height: 110%;
	text-transform: none;
}

.step-tabs-underline .step-tab-button:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: .125rem;
	background-color: transparent;
}

.step-tabs-underline .step-tab-button.is-active {
	background-color: transparent;
}

.step-tabs-underline .step-tab-button.is-active:after {
	background-color: var(--color-navy);
}

.step-tabs-panels {
	padding: 3rem;
	border-radius: 0 0 var(--radius-xl) var(--radius-xl);
	background-color: var(--color-grey);
}

.step-tab-card {
	gap: 5rem;
	padding: 2.25rem;
	border-radius: var(--radius-xl);
	background-color: var(--color-white);
	color: var(--color-navy);
}

.step-tab-image {
	width: 48%;
	flex: 0 0 48%;
	overflow: hidden;
	border-radius: var(--radius-xl);
	background-color: var(--color-grey);
}

.step-tab-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 516 / 492;
	object-fit: cover;
}

.step-tab-content {
	width: 52%;
	flex: 1 1 auto;
}

.step-tab-content h3 {
	margin-top: 0;
	font-size: var(--text-5xl);
	line-height: 110%;
}

.step-tab-content p:last-child,
.step-tab-content ul:last-child,
.solutions-tile-text p:last-child,
.faq-drawer__content p:last-child,
.team-card-bio p:last-child,
.legal-content-block p:last-child {
	margin-bottom: 0;
}

.solutions-tiles-figma {
	background-color: var(--color-green);
	padding-top: var(--mcf-section-padding-y);
	padding-bottom: var(--mcf-section-padding-y);
}

.solutions-tiles-figma .solutions-tiles-inner {
	position: relative;
	z-index: 2;
}

.solutions-tiles-figma .padding-equalize {
	row-gap: 4rem;
}

.solutions-tiles-figma .solutions-tiles-bg {
	position: absolute;
	inset: 0 auto 0 0;
	width: min(42vw, 44rem);
	z-index: 1;
	opacity: .7;
	pointer-events: none;
}

.solutions-tiles-figma .solutions-tiles-bg:after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(3, 38, 32, .1) 0%, rgba(3, 38, 32, .72) 64%, var(--color-green) 100%);
}

.solutions-tiles-figma .solutions-tiles-bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.solutions-tiles-figma .solutions-tiles-intro,
.solutions-tiles-figma .solutions-tiles-intro p {
	color: var(--color-white);
}

.solutions-tiles-figma .solutions-tiles-intro h2 {
	color: var(--color-white);
}

.solutions-tiles-figma .solutions-tiles-grid {
	row-gap: 0;
	align-items: stretch;
}

.solutions-tiles-figma .solutions-tile-cell {
	display: flex;
	padding: .75rem;
}

.solutions-tiles-figma .solutions-tile {
	display: flex;
	align-items: flex-start;
	width: 100%;
	padding: 3rem;
	border-radius: var(--radius-xl);
	color: var(--color-white);
}

.solutions-tiles-centered_grid.solutions-tiles-count-5 .solutions-tile-cell:nth-child(n+4) {
	max-width: 26.3125rem;
}

.solutions-tile-content {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	justify-content: flex-start;
	width: 100%;
}

.solutions-tiles-figma .solutions-tile-title,
.solutions-tiles-figma .solutions-tile-text,
.solutions-tiles-figma .solutions-tile-text p {
	color: var(--color-white);
}

.solutions-tiles-figma .solutions-tile-title {
	margin-top: 0;
	margin-bottom: 0;
}

.solutions-tiles-figma .solutions-tile-icon {
	width: 2.6875rem;
	height: 2.6875rem;
	margin-bottom: 0;
	flex: 0 0 auto;
}

.solutions-tiles-figma .solutions-tile-text {
	margin-top: 0;
}

.solutions-tiles-figma .solutions-tile-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.solutions-tiles-right_grid.solutions-tiles-count-4 .solutions-tiles-bg {
	width: min(52vw, 52rem);
	opacity: .82;
}

.solutions-tiles-right_grid.solutions-tiles-count-4 .solutions-tiles-bg:after {
	background: linear-gradient(90deg, rgba(3, 38, 32, .04) 0%, rgba(3, 38, 32, .7) 58%, var(--color-green) 100%);
}

.solutions-tiles-right_grid.solutions-tiles-count-4 .solutions-tiles-intro {
	max-width: 64rem;
}

.solutions-tiles-visual-wide .solutions-tiles-bg {
	width: min(56vw, 56rem);
}

.solutions-tiles-visual-tall .solutions-tiles-bg {
	width: min(48vw, 48rem);
}

.solutions-tiles-visual-compact .solutions-tiles-bg {
	width: min(36vw, 34rem);
}

.solutions-tiles-centered_grid .solutions-tiles-bg {
	opacity: .64;
}

.solutions-tiles-centered_grid .solutions-tiles-bg:after {
	background: linear-gradient(90deg, rgba(3, 38, 32, .08) 0%, rgba(3, 38, 32, .72) 52%, var(--color-green) 100%);
}

.solutions-tiles-centered_grid .solutions-tiles-intro {
	max-width: 38.125rem;
	margin-right: auto;
	margin-left: auto;
}

.solutions-tiles-figma .solutions-tiles-button-wrap .button-container {
	justify-content: center;
	padding-top: 3rem;
	padding-bottom: 0;
}

.solutions-tiles {
	background-image: url('../images/background-chevron-solutions-tiles.svg');
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 100%;
}

.tiles-columns {
	gap: 1.5rem;
}

.tiles-columns .column {
	background-color: var(--color-green-darker);
	padding: 1.5rem;
	border-radius: 0.75rem;
}

.tiles-columns .column img {
	max-width: 2.5rem;
}

.mcf-feature-section:not(.features-comparison-section) .mcf-section-intro {
	max-width: 48rem;
}

.mcf-feature-section.mcf-feature-count-5 .mcf-section-intro {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.mcf-feature-grid-count-5 {
	justify-content: center;
}

.mcf-feature-section.mcf-feature-count-5 .mcf-feature-card {
	height: 100%;
	box-shadow: none;
}

.mcf-feature-section.mcf-feature-count-5 .mcf-feature-card h5 {
	font-size: var(--text-3xl);
	line-height: 110%;
}

.features-comparison-section .mcf-section-intro p {
	max-width: 47rem;
	margin-right: auto;
	margin-left: auto;
}

.features-table-wrap {
	overflow-x: auto;
	padding-bottom: .25rem;
}

.features-comparison-table {
	width: 100%;
	min-width: 56rem;
	border-collapse: separate;
	border-spacing: 0 .75rem;
	color: var(--color-navy);
}

.features-comparison-table th,
.features-comparison-table td {
	padding: 1.5rem;
	background-color: var(--color-white);
	text-align: left;
	vertical-align: top;
}

.features-comparison-table thead th {
	padding-top: 0;
	padding-bottom: 1rem;
	background-color: transparent;
	font-family: "antarctican-mono", sans-serif;
	font-size: var(--text-base);
	font-weight: var(--font-weight-medium);
	letter-spacing: var(--tracking-wider);
	text-transform: uppercase;
}

.features-comparison-table tbody th,
.features-comparison-table tbody td {
	background-color: var(--color-grey);
}

.features-comparison-table tbody th:first-child {
	border-radius: var(--radius-xl) 0 0 var(--radius-xl);
	font-weight: var(--font-weight-semibold);
}

.features-comparison-table tbody td:last-child {
	border-radius: 0 var(--radius-xl) var(--radius-xl) 0;
}

.faqs .padding-equalize {
	gap: 0;
}

.faq-intro {
	max-width: 31rem;
}

.faqs .faq-drawer {
	margin-bottom: 1rem;
	border-radius: var(--radius-xl);
	background-color: var(--color-grey);
	color: var(--color-navy);
}

.faqs .faq-drawer__title {
	position: relative;
	display: block;
	padding: 1.5rem 4rem 1.5rem 1.5rem;
	color: var(--color-navy);
	cursor: pointer;
	font-size: var(--text-lg);
	font-weight: var(--font-weight-semibold);
	line-height: var(--leading-normal);
}

.faqs .faq-drawer__title:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: .75rem;
	height: .75rem;
	border-right: .125rem solid var(--color-navy);
	border-bottom: .125rem solid var(--color-navy);
	transform: translateY(-65%) rotate(45deg);
	transition: transform 200ms ease;
}

.faqs .faq-drawer__trigger:checked + .faq-drawer__title:after {
	transform: translateY(-35%) rotate(225deg);
}

.faqs .faq-drawer__content {
	padding: 0 1.5rem 1.5rem;
}

.team-section .mcf-section-intro {
	max-width: 64rem;
	margin-right: auto;
	margin-left: auto;
}

.team-card-image {
	overflow: hidden;
	margin-bottom: 1.5rem;
	border-radius: var(--radius-xl);
	background-color: var(--color-grey);
}

.team-card-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 397 / 400;
	object-fit: cover;
}

.team-card-name {
	margin-top: 0;
	margin-bottom: .25rem;
}

.team-card-title {
	margin-top: 0;
	color: var(--color-navy);
}

.legal-hero {
	padding-bottom: 4rem;
}

.legal-intro h1 {
	margin-top: 0;
}

.legal-intro {
	max-width: 48rem;
}

.legal-body {
	padding-top: 0;
}

.legal-toc {
	position: sticky;
	top: 7rem;
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.legal-toc-link {
	display: flex;
	gap: .5rem;
	padding: .75rem 1rem;
	border-radius: var(--radius-xl);
	color: var(--color-navy);
	font-size: var(--text-base);
	font-weight: var(--font-weight-semibold);
	line-height: var(--leading-normal);
	text-decoration: none;
}

.legal-toc-link.is-active,
.legal-toc-link:hover,
.legal-toc-link:focus {
	background-color: var(--color-grey);
	color: var(--color-navy);
}

.legal-content {
	max-width: none;
}

.legal-content-block {
	padding-bottom: 3rem;
	scroll-margin-top: 7rem;
}

.legal-content-block h2 {
	margin-top: 0;
	margin-bottom: 1.5rem;
}

@media screen and (max-width: 47.9375rem) {
	
	.mcf-card,
	.legal-block,
	.form-fallback,
	.intro-form .gform_wrapper,
	.text-form .gform_wrapper {
		padding: 1.5rem;
	}

	.mcf-card-image,
	.column-image {
		margin: -1.5rem -1.5rem 1.25rem;
	}

	.mcf-number-value {
		font-size: var(--text-5xl);
	}

	.mcf-bubble {
		width: 7rem;
		height: 7rem;
	}

	.solutions-tiles-figma {
		padding-top: var(--mcf-section-padding-y-mobile);
		padding-bottom: var(--mcf-section-padding-y-mobile);
	}

	.timeline-item {
		gap: 1.25rem;
	}

	.step-tabs-nav {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		justify-content: stretch;
		overflow-x: visible;
		padding: 0;
	}

	.step-tab-button {
		width: 100%;
		font-size: var(--text-2xl);
		padding: 1.25rem 1rem;
	}

	.step-tabs-underline .step-tabs-nav {
		display: flex;
		flex-wrap: wrap;
		gap: 1.5rem;
		padding: 0;
	}

	.step-tabs-panels {
		padding: 1rem;
	}

	.step-tab-card {
		display: block;
		padding: 1.5rem;
	}

	.step-tab-image,
	.step-tab-content {
		width: 100%;
		flex-basis: auto;
	}

	.step-tab-image {
		margin-bottom: 1.5rem;
	}

	.solutions-tiles-figma .solutions-tiles-bg {
		display: none;
	}

	.solutions-tiles-figma .solutions-tile-cell {
		padding: .5rem 0;
	}

	.solutions-tiles-figma .solutions-tile,
	.solutions-tiles-centered_grid .solutions-tile {
		height: 100%;
		padding: 1.5rem;
	}

	.faq-intro {
		max-width: none;
	}

	.legal-toc {
		position: static;
		margin-bottom: 2rem;
	}

	.legal-content {
		max-width: none;
	}

}

/* BLOG */

.single-post-hero {
	padding-top: calc(var(--mcf-nav-height, 6.875rem) + 3rem);
	padding-bottom: 0;
}

.single-post-breadcrumbs {
	display: flex;
	align-items: center;
	gap: .75rem;
	margin-bottom: 4rem;
	color: var(--color-navy);
	font-size: var(--text-lg);
	line-height: var(--leading-normal);
}

.single-post-breadcrumbs a {
	color: var(--color-navy);
	text-decoration: none;
}

.single-post-breadcrumbs a:hover,
.single-post-breadcrumbs a:focus {
	text-decoration: underline;
	text-underline-offset: .1875rem;
}

.single-post-breadcrumb-separator {
	display: block;
	width: .5rem;
	height: .5rem;
	border-top: .125rem solid currentColor;
	border-right: .125rem solid currentColor;
	transform: rotate(45deg);
}

.single-post-image {
	overflow: hidden;
	border-radius: var(--radius-xl);
	background-color: var(--color-grey);
}

.single-post-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1280 / 654;
	object-fit: cover;
}

.single-post-title {
	max-width: 64rem;
	margin-top: 4rem;
	margin-bottom: 0;
}

.single-post-content {
	padding-top: 4rem;
	padding-bottom: 7rem;
}

.single-post-content-body {
	color: var(--color-navy);
}

.single-post-content-body > :first-child {
	margin-top: 0;
}

.single-post-content-body h2,
.single-post-content-body h3,
.single-post-content-body h4 {
	margin-top: 3rem;
	margin-bottom: 1.25rem;
}

.single-post-content-body h2 {
	font-size: var(--text-4xl);
}

.single-post-content-body h3,
.single-post-content-body h4 {
	font-size: var(--text-3xl);
}

.single-post-content-body img {
	display: block;
	width: 100%;
	height: auto;
	margin: 2.5rem 0 1rem;
	border-radius: var(--radius-xl);
	object-fit: cover;
}

.single-post-content-body .wp-caption {
	width: auto !important;
	max-width: 100%;
	margin: 2.5rem 0;
}

.single-post-content-body .wp-caption img {
	margin: 0 0 1rem;
}

.single-post-content-body .wp-caption-text {
	position: relative;
	margin: 0;
	padding-left: 1rem;
	color: var(--color-navy);
	font-size: var(--text-base);
	line-height: var(--leading-normal);
}

.single-post-content-body .wp-caption-text:before {
	content: '';
	position: absolute;
	top: .125rem;
	bottom: .125rem;
	left: 0;
	width: .125rem;
	background-color: var(--color-navy);
}

@media screen and (max-width: 47.9375rem) {
	.single-post-hero {
		padding-top: calc(var(--mcf-nav-height, 5rem) + 2rem);
	}

	.single-post-breadcrumbs {
		margin-bottom: 2rem;
		font-size: var(--text-base);
	}

	.single-post-title {
		margin-top: 2rem;
		font-size: var(--text-5xl);
	}

	.single-post-content {
		padding-top: 2.5rem;
		padding-bottom: 4rem;
	}
}

.blog-filters {
	padding-bottom: 3rem;
	margin-bottom: 3rem;
	border-bottom: solid .0625rem rgba(11, 22, 35, .12);
}

.blog-filters-search {
	margin-bottom: 2rem;
}

.blog-filters-search input[type="search"] {
	width: 100%;
	height: 4rem;
	padding: 0 1.25rem;
	border: solid .0625rem rgba(11, 22, 35, .16);
	border-radius: var(--radius-xl);
	background-color: var(--color-white);
	color: var(--color-navy);
	outline: none;
	appearance: none;
	-webkit-appearance: none;
}

.blog-filters-search input[type="search"]::placeholder {
	color: rgba(11, 22, 35, .55);
}

.blog-filters-search input[type="search"]:focus,
.blog-filter-group select:focus {
	border-color: var(--color-yellow);
	box-shadow: 0 0 0 .125rem rgba(217, 164, 65, .18);
}

.blog-filters-row {
	gap: 1.5rem;
	justify-content: space-between;
}

.blog-filter-group {
	min-width: 16rem;
}

.blog-filter-group select {
	width: 100%;
	height: 3rem;
	padding: 0 3rem 0 1rem;
	border: solid .0625rem rgba(11, 22, 35, .16);
	border-radius: var(--radius-lg);
	background-color: var(--color-white);
	color: var(--color-navy);
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, var(--color-navy) 50%), linear-gradient(135deg, var(--color-navy) 50%, transparent 50%);
	background-position: calc(100% - 1.125rem) calc(50% - .1875rem), calc(100% - .75rem) calc(50% - .1875rem);
	background-size: .375rem .375rem, .375rem .375rem;
	background-repeat: no-repeat;
}

.blog-sort-group {
	gap: 1rem 1.5rem;
}

.blog-sort-group label {
	margin: 0;
	cursor: pointer;
}

.blog-sort-group input[type="radio"] {
	width: 1rem;
	height: 1rem;
	margin: 0;
	accent-color: var(--color-yellow);
	cursor: pointer;
}

.resources-container#blog-results {
	position: relative;
	min-height: 12rem;
}

.resources-container#blog-results.is-loading {
	opacity: .55;
	pointer-events: none;
	transition: opacity .2s ease;
}

.blog-post-image,
.blog-post-image a {
	border-radius: var(--radius-xl);
	overflow: hidden;
}

.blog-post-image img {
	width: 100%;
	height: auto;
	aspect-ratio: 405 / 228;
	object-fit: cover;
	border-radius: var(--radius-xl);
}

.blog-post-content {
	padding-top: 1.25rem;
}

.blog-pagination-wrap {
	width: 100%;
	margin-top: 1rem;
}

.blog-pagination {
	padding-top: 1rem;
	border-top: solid .0625rem rgba(11, 22, 35, .12);
}

.blog-pagination-buttons {
	gap: .75rem;
}

.blog-pagination a {
	min-width: 5rem;
	padding: .75rem 1rem;
	border: solid .0625rem rgba(11, 22, 35, .14);
	border-radius: var(--radius-4xl);
	background-color: var(--color-grey);
	text-align: center;
	text-decoration: none;
}

@media screen and (max-width: 47.9375rem) {
	.blog-filters {
		padding-bottom: 2rem;
		margin-bottom: 2rem;
	}

	.blog-filters-search {
		margin-bottom: 1rem;
	}

	.blog-filter-group {
		min-width: 100%;
	}

	.blog-pagination {
		gap: 1rem;
	}

	.blog-pagination-buttons {
		width: 100%;
		justify-content: space-between;
	}
}

/* CASE STUDIES */

.arrow-gap {
	gap: 1rem;
}

.case-studies .case-studies-swiper {
	overflow: visible;
}

.case-studies .swiper-slide {
	height: auto;
}

.case-studies .case-study-card {
	background: #ffffff;
	border: 2px solid #d9a441;
	border-radius: 0.75rem;
	overflow: hidden;
	height: 100%;
}

.case-studies .case-study-image img {
	display: block;
	width: 100%;
	height: 18rem;
	object-fit: cover;
}

.case-studies .case-study-content {
	padding: 1.5rem;
}

.case-studies .case-study-name {
	font-weight: 600;
}

.case-studies .case-studies-controls {
	margin-top: 2rem;
}

.case-studies .swiper-pagination {
	position: relative;
	bottom: auto;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5rem;
}

.case-studies .swiper-pagination-bullet {
	width: 0.5rem;
	height: 0.5rem;
	margin: 0 !important;
	background: #d2d2d2;
	opacity: 1;
}

.case-studies .swiper-pagination-bullet-active {
	background: #0b1623;
}

.case-studies .case-studies-arrow {
	width: 3rem;
	height: 3rem;
	border: 0;
	border-radius: 50%;
	background: #eeeeee;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	transition: background 0.2s ease;
}

.case-studies .case-studies-arrow:hover {
	background: #d9d9d9;
}

.case-studies .case-studies-arrow:before {
	content: '';
	display: block;
	width: 1rem;
	height: 1rem;
	border-top: 2px solid #0b1623;
	border-right: 2px solid #0b1623;
	transform: rotate(45deg);
	margin-left: -0.125rem;
}

.case-studies .case-studies-prev:before {
	transform: rotate(-135deg);
	margin-left: 0.125rem;
}

.case-studies .case-studies-arrow.swiper-button-disabled {
	opacity: 0.5;
	cursor: default;
}

/* COLUMNS */

.columns .column-card {
	background: #eeeeee;
	border-radius: 0.75rem;
	padding: 2.25rem;
	padding-bottom: 0rem;
	height: 100%;
}

.columns .column-step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem 1.5rem;
	background: #ffffff;
	border-radius: 0.5rem;
	margin-bottom: 2.25rem;
}

.columns .column-step span {
	font-weight: 600;
	margin-bottom: 0;
}

.columns .column-title {
	margin-bottom: 0.75rem;
}

.columns .column-text p:last-child {
	margin-bottom: 0;
}

/* INDUSTRIES */

.industries .industries-intro h2,
.industries .industries-intro h3 {
	margin-bottom: 1.5rem;
}

.industries .industries-intro p:last-child {
	margin-bottom: 0;
}

.industries .industry-card {
	position: relative;
	display: flex;
	align-items: flex-end;
	aspect-ratio: 405 / 228;
	padding: 1rem;
	border-radius: 0.75rem;
	overflow: hidden;
	text-decoration: none;
	cursor: pointer;
}

.industries .industry-card-image {
	position: absolute;
	inset: 0;
}

.industries .industry-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.industries .industry-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(3, 38, 32, 0.95) 0%, rgba(3, 38, 32, 0.35) 45%, rgba(3, 38, 32, 0) 75%);
	transition: opacity 0.4s ease;
}

.industries .industry-card-title {
	position: relative;
	z-index: 2;
	width: 100%;
}

.industries .industry-card-title h4 {
	color: #ffffff;
}

.industries .industry-card:hover .industry-card-image img {
	transform: scale(1.06);
}

.industries .button-container {
	margin-top: 2.5rem;
}

/* INTRO HOME */

.intro-home {
	height: auto;
}

.intro-home .h1, .intro-home h1 {
	font-size: 12.5rem;
	line-height: .875;
}

.intro-home-top {
	height: 100svh;
}

.intro-home-title {
	position: relative;
	z-index: 2;
}

.intro-home-shift {
	position: relative;
	left: 0;
	right: 0;
	top: auto;
	z-index: 4;
	will-change: transform;
}

.intro-home.is-gsap-ready {
	height: 100vh;
}

.intro-home.is-gsap-ready .intro-home-top {
	height: 100vh;
}

.intro-home.is-gsap-ready .intro-home-shift {
	position: absolute;
	top: 100%;
}

.intro-home-image {
	position: relative;
	width: 100%;
	line-height: 0;
}

.intro-home-image img {
	display: block;
	width: 100%;
	height: auto;
}

.intro-home-bottom {
	position: relative;
	padding-top: 2rem;
	padding-bottom: 5rem;
}

.intro-home-final-title,
.intro-home-text,
.intro-home .button-container {
	position: relative;
}

.intro-home-text {
	float: none;
	margin: 0 auto;
}

.intro-home-text p:first-child {
	margin-top: 1.5rem;
}

.intro-home .button-container {
	gap: 1rem;
	margin-top: 2rem;
}

.intro-home-final-title {
	background-image: url('/wp-content/uploads/2026/04/mountain-texture.webp');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;

	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

@media screen and (max-width: 47.9375rem) {
	.intro-home-top {
		height: 80svh;
	}

	.intro-home.is-gsap-ready,
	.intro-home.is-gsap-ready .intro-home-top {
		height: 100svh;
	}

	.intro-home-bottom {
		padding-top: 1rem;
		padding-bottom: 3rem;
	}

	.intro-home h1, .intro-home .h1 {
		font-size: 6rem;
	}
}

/* INTRO INNER */
.intro-inner, .intro {
	padding-top: 5rem;
}

.intro-inner .intro-line {
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 16.5rem;
	height: 100%;
	background-image: url('../images/intro-line.svg');
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: contain;
}

.intro-inner .intro-line.wide {
	z-index: 2;
	width: 35rem;
	background-image: url('../images/intro-line-wide.svg');
}

.intro-inner-image img {
	border-radius: 0.75rem;
	object-fit: cover;
}

.intro-inner-line-wide .intro-inner-image {
	height: 100%;
}

@media screen and (max-width: 63.9375rem) {
	.intro-inner,
	.intro {
		padding-top: calc(var(--mcf-nav-height, 6.875rem) + 3rem);
	}

	.intro-inner .intro-line,
	.intro-inner .intro-line.wide {
		width: 8.75rem;
	}
}

@media screen and (max-width: 47.9375rem) {
	.intro-inner,
	.intro {
		padding-top: calc(var(--mcf-nav-height, 5rem) + 2.5rem);
	}

	.intro-inner .intro-line,
	.intro-inner .intro-line.wide {
		display: none;
	}
}

/* TESTIMONIALS */

.testimonials-slider .swiper {
	overflow: visible;
}

.testimonials-slider .swiper-slide {
	height: auto;
}

.testimonial-card {
	padding: 2rem;
	border: 0.0625rem solid var(--color-yellow);
	border-radius: 0.75rem;
}

.testimonial-card-content {
	padding-bottom: 1.5rem;
}

.testimonial-card-content h4,
.testimonial-card-content p,
.testimonial-name,
.testimonial-position {
	margin: 0;
}

.testimonial-card-content p + p,
.testimonial-logo {
	margin-top: 0.75rem;
}

.testimonial-card-footer,
.testimonials-arrows,
.testimonials-pagination {
	display: flex;
}

.testimonial-card-footer {
	gap: 1rem;
}

.testimonial-card-image {
	width: 3rem;
	min-width: 3rem;
}

.testimonial-card-image img,
.testimonial-logo img {
	display: block;
}

.testimonial-card-image img {
	width: 100%;
	height: 3rem;
	border-radius: 50%;
	object-fit: cover;
}

.testimonial-name {
	font-weight: 600;
}

.testimonial-logo img {
	max-width: 8rem;
	width: auto;
	height: auto;
}

.testimonials-slider-controls {
	padding-top: 2rem;
}

.testimonials-pagination {
	width: auto !important;
	align-items: center;
	justify-content: flex-start;
}

.testimonials-pagination .swiper-pagination-bullet {
	width: 0.5rem;
	height: 0.5rem;
	margin: 0 0.25rem 0 0 !important;
	background: #d9d9d9;
	opacity: 1;
}

.testimonials-pagination .swiper-pagination-bullet-active {
	background: var(--color-navy);
}

.testimonials-arrows {
	gap: 1rem;
}

.testimonials-button-prev,
.testimonials-button-next {
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #eeeeee;
	color: var(--color-navy);
	cursor: pointer;
}

.testimonials-button-prev.swiper-button-disabled,
.testimonials-button-next.swiper-button-disabled {
	opacity: 0.5;
	cursor: default;
}

@media screen and (max-width: 47.9375em) {
	.testimonials-slider .swiper-slide {
		width: 100%;
	}

	.testimonial-card {
		padding: 1.5rem;
	}

	.testimonials-slider-controls {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}
}

/* FOOTER */

.site-footer {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.site-footer .padding-equalize {
	row-gap: 5rem;
}

.footer-branding {
	max-width: 16.5rem;
}

.footer-branding .logo img {
	display: block;
	width: 16.5rem;
	height: auto;
}

.footer-apps {
	gap: .75rem;
	margin-top: 3rem;
}

.footer-app-button img {
	display: block;
	object-fit: contain;
}

.footer-bottom {
	align-items: center;
}

.footer-legal {
	gap: 1.5rem;
}

.footer-legal p {
	margin: 0;
	color: var(--color-white);
	font-size: var(--text-sm);
	line-height: var(--leading-normal);
	padding-right: 1rem;
    padding-top: .25rem;
}

.footer-utility-menu ul {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-utility-menu li {
	margin: 0;
	padding: 0;
}

.footer-utility-menu a {
	color: var(--color-white);
	font-size: var(--text-sm);
	line-height: var(--leading-normal);
	text-decoration: none;
}

.footer-badges {
	gap: 1rem;
}

.footer-badges img {
	display: block;
	width: auto;
	height: 1.875rem;
	padding-top: 1rem;
}

@media screen and (max-width: 47.9375rem) {
	.site-footer {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}

	.footer-badges {
		justify-content: flex-start;
	}
}

.footer-nav-wrap {
	display: block;
}

.footer-menu-columns {
	width: 100%;
}

.footer-menu-columns .footer-menu-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 10.9375rem));
	align-items: flex-start;
	justify-content: start;
	column-gap: 3rem;
	row-gap: 2rem;
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.footer-menu-columns .footer-menu-list > li {
	min-width: 0;
	margin: 0;
	padding: 0;
}

.footer-menu-columns .footer-menu-list > li > a {
	display: block;
	margin-bottom: 1rem;
	color: var(--color-white);
	text-decoration: none;
	font-weight: var(--font-weight-semibold);
	font-size: var(--text-base);
	line-height: var(--leading-normal);
}

.footer-menu-columns .footer-menu-list > li > .sub-menu {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: .75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-menu-columns .footer-menu-list > li > .sub-menu > li {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.footer-menu-columns .footer-menu-list > li > .sub-menu > li > a {
	display: block;
	color: var(--color-white);
	text-decoration: none;
	font-size: var(--text-sm);
	line-height: var(--leading-normal);
	overflow-wrap: anywhere;
}

.footer-utility-menu .footer-utility-list {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem 1.5rem;
	align-items: center;
	justify-content: flex-start;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media screen and (max-width: 47.9375rem) {
	.footer-menu-columns .footer-menu-list {
		grid-template-columns: 1fr;
		row-gap: 0;
	}

	.footer-menu-columns .footer-menu-list > li {
		width: 100%;
		padding-right: 0;
		margin-bottom: 2rem;
	}
	
	.intro-home h1 {
		font-size: 3rem;
	}
	
	.mobile-width-100 {
		max-width:100% !important;
		width: 100%;
	}
	
	.mobile-padding-equalize {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}
}


/* SECTIONS */

@media screen and (min-width: 64.0625rem) and (max-width: 100rem) {
	
	.intro-video .content-container {
		padding-top: 5rem;
	}
	
	.rotating-wrapper {
		padding: .75rem 0;
	}
	
	.rotating-wrapper h1 {
		max-width: 80%;
	}
	
	.rotating-wrapper p {
		height: 2.4375rem;
		float: left;
		margin-right: 0.3em;
	}
	
	.rotating-wrapper span {
		float: left;
		overflow: hidden;
		position: relative;
		height: 4.59375rem;
		top: .1rem;
	}

	.rotating-wrapper .rotating-inner {
		display: inline-block;
		position: relative;
		white-space: nowrap;
		top: 0;
		left: 0;

	/*animation*/
		-webkit-animation:move 6s;
   		-moz-animation:move 6s;
    	-ms-animation:move 6s;
     	-o-animation:move 6s;
        animation:move 6s;
	/*animation-iteration-count*/
		-webkit-animation-iteration-count:infinite;
   		-moz-animation-iteration-count:infinite;
    	-ms-animation-iteration-count:infinite;
     	-o-animation-iteration-count:infinite;
        animation-iteration-count:infinite;
	/*animation-delay*/
		-webkit-animation-delay:2s;
   		-moz-animation-delay:2s;
    	-ms-animation-delay:2s;
     	-o-animation-delay:2s;
        animation-delay:2s;
	}

	.rotating-wrapper .rotating-inner h2 {
		margin-top: -1.1875rem;
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-webkit-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-moz-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-o-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}
	
	.cards .card {
		padding-left: 6rem;
		padding-right: 6rem;
	}
	
}

@media screen and (min-width: 48rem) {
	
	.tiles-columns .column {
		max-width: calc(33.3333% - 1rem);
	}
	
	.services-accordion .accordion-panel p {
  		opacity: 0;
  		margin: 0 3rem 3rem 3rem;
  		flex-basis: 100%;
	}
	
	.services-accordion .accordion-panel p.h2 {
		margin-left: 3rem;
		margin-bottom: 1rem;
	}

	.services-accordion .accordion-panel p.description {
		height: 10rem;
	}

	.services-accordion #wrapper {
		display: flex;
		flex-flow: row nowrap;
		height: 40rem;
		align-items: stretch;
	}
	
	.services-accordion .accordion-panel {
		flex: 1;
		overflow: hidden;
		display: flex;
		flex-flow: row wrap;
		transition: all 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
		align-items: flex-end;
		align-content: flex-end;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
	}
	
	.services-accordion .accordion-panel:hover {
		background-position: left center;
		flex-grow: 2.8;
	}
	
	.services-accordion .accordion-panel:hover > p {
		transition-delay: 0.8s;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		-o-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	
	.services-accordion .accordion-panel:hover > p.h2 {
		transition-delay: 0.4s!important;
	}
	
	.cards .card {
		height: 100%;
	}
}

@media screen and (max-width: 47.9375rem) {
	
	.services-accordion .accordion-panel p {
		margin: 0;
	}
	
	.frame-border {
		border-width: 1rem;
		border-radius: 2rem;
	}

	.border-2 {
		border-radius: 0rem;
	}
	
	.cards .card {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

}

@media screen and (max-width: 37.5rem) {
	
  .services-accordion #wrapper {
    display: flex;
    flex-flow: column wrap;
    height: auto;
  }
  
  .services-accordion .accordion-panel {
    height: 25rem;
    background-position: center top;
  }
	
}
