/**
 * Theme styles that cannot be expressed through theme.json.
 */


 /* Start: Don't edit this part */





 /** Override WP CSS Styles */
 
/**
* Bugfix on layout styling
* wp-post-content.is-constrained is always constraining to contentSize.
* This allows wide and full width to render in FSE.
*/

/* .entry-content,
.wp-block-post-content {
	max-width: 100% !important;
	width: 100%;
} */

/**
* Bugfix on appearance:true setting on themes.json 
* Some elements add margin-top with this wp global style
*/
:where(.wp-site-blocks) > * {
	margin-top: 0 !important;
}

main.has-global-padding {
	padding-right: 0 !important;
	padding-left: 0 !important;
}





/* Layout utility */
.is-layout-medium {
	width: 100%;
	max-width: var(--wp--custom--layout--medium-size);
	margin-inline: auto;
}

.is-card {
	border-radius: var(--wp--preset--border-radius--card);
	padding: var(--wp--preset--spacing--60);
}



/**
* Set Ninja form default styles
*/
/* .nf-form-cont {
	padding-top: var(--wp--preset--spacing--80);
} */
.nf-form-cont label {
	font-family: var(--wp--preset--font-family--montserrat);
}
.nf-form-cont input,
.nf-form-cont textarea {
	padding: var(--wp--preset--spacing--30);
	border-radius: 4px;
	border: 1px solid var(--wp--preset--color--border);
	font-size: 1rem;
	font-family: var(--wp--preset--font-family--source-sans-3);
	color: gray;
}

.nf-form-cont input[type="submit"], 
.nf-form-cont button {
	background-color: var(--wp--preset--color--primary);
	color: white;
	border: none;
	padding-top: var(--wp--preset--spacing--30);
    padding-right: var(--wp--preset--spacing--50);
    padding-bottom: var(--wp--preset--spacing--30);
    padding-left: var(--wp--preset--spacing--50);
	border-radius: 50px;
	font-family: var(--wp--preset--font-family--montserrat);
}

.nf-form-cont input[type="submit"]:hover, 
.nf-form-cont button:hover {
	background: var(--wp--preset--color--primary-dark);
	cursor: pointer;
}

.home .nf-response-msg,
.page .home .nf-response-msg {
	font-weight: bold;
	text-align: center;
}


@media screen and (max-width: 800px) {

	.nf-form-cont {
		padding: var(--wp--preset--spacing--60) 1.5em 0 1.5em;
	}

}


.wp-block-button__link {
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.wp-block-button__link:hover {
    transform: translateY(-1px);
}



/*
* Animate WP accordion 
*/
.wp-block-details::details-content {
	height: 0;
	overflow: clip;
	opacity: 0;
	transition:
		height 250ms ease,
		opacity 200ms ease,
		content-visibility 250ms ease allow-discrete;
}

.wp-block-details[open]::details-content {
	height: auto;
	opacity: 1;
}

@supports (interpolate-size: allow-keywords) {
	:root {
		interpolate-size: allow-keywords;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-details::details-content {
		transition: none;
	}
}

.wp-block-details > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	cursor: pointer;
	list-style: none;
}

.wp-block-details > summary::-webkit-details-marker {
	display: none;
}

.wp-block-details > summary::after {
	content: "+";
	flex-shrink: 0;
	font-size: 1.5rem;
	line-height: 1;
	transition: transform 250ms ease;
}

.wp-block-details[open] > summary::after {
	transform: rotate(45deg);
}

/* End: Don't edit this part */





/**
* Start custom project styles here 
*/

/**
 * Sticky site header.
 */
header.wp-block-template-part:has(> .site-header) {
	position: sticky;
	top: var(--wp-admin--admin-bar--position-offset, 0);
	z-index: 1000;
	isolation: isolate;
}


.site-header__inner {
	min-height: 4rem;
}

.site-header__actions {
	gap: var(--wp--preset--spacing--50);
}

/**
 * The source logo includes transparent canvas above and below the visible mark.
 * This wrapper presents the artwork at a useful header size without altering it.
 */
.site-header__logo {
	flex: 0 0 auto;
	width: 11.5rem;
	height: 4rem;
	margin: 0;
	overflow: hidden;
}

.site-header__logo a,
.site-header__logo img {
	display: block;
}

.site-header__logo a {
	height: 100%;
}

.site-header__logo img {
	width: 100%;
	height: auto;
	max-width: none;
	transform: translateY(-15.65%);
}

.site-header__navigation {
	color: var(--wp--preset--color--foreground);
}

.site-header__navigation .wp-block-navigation__container {
	column-gap: var(--wp--preset--spacing--70);
}

.site-header__navigation .wp-block-navigation-item__content {
	position: relative;
	color: var(--wp--preset--color--primary) !important;
	text-decoration: none;
}

.site-header__navigation .wp-block-navigation-item__content::after {
	position: absolute;
	right: 0;
	bottom: -0.45rem;
	left: 0;
	height: 2px;
	background: var(--wp--preset--color--primary);
	content: "";
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 180ms ease;
}

.site-header__navigation .wp-block-navigation-item__content:hover::after,
.site-header__navigation .wp-block-navigation-item__content:focus-visible::after,
.site-header__navigation .current-menu-item > .wp-block-navigation-item__content::after {
	transform: scaleX(1);
	transform-origin: left;
}

.site-header__navigation .wp-block-navigation__responsive-container-open {
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	color: var(--wp--preset--color--background);
	background: var(--wp--preset--color--primary);
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--preset--border-radius--pill);
}

.site-header__navigation .wp-block-navigation__responsive-container-open:hover,
.site-header__navigation .wp-block-navigation__responsive-container-open:focus-visible {
	color: var(--wp--preset--color--foreground);
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
}

/** Added by Wayne*/
div#modal-2-content.wp-block-navigation__responsive-container-content {
	gap: var(--wp--preset--spacing--60) !important;
}

@media (max-width: 900px) {
	.site-header__inner {
		min-height: 3.25rem;
	}

	.site-header__logo {
		width: 9.35rem;
		height: 3.25rem;
	}

	.site-header__cta {
		display: none;
	}

	.site-header__navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}

	.site-header__navigation .wp-block-navigation__responsive-container-open {
		display: flex !important;
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open {
		inset: 0 0 0 auto;
		display: flex;
		width: min(90vw, 28rem);
		min-height: 100vh;
		min-height: 100dvh;
		padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
		color: var(--wp--preset--color--foreground) !important;
		background: var(--wp--preset--color--surface) !important;
		border-left: 4px solid var(--wp--preset--color--primary);
		border-radius: var(--wp--preset--border-radius--card) 0 0 var(--wp--preset--border-radius--card);
		box-shadow:
			-100vw 0 0 100vw rgba(23, 48, 66, 0.58),
			-1rem 0 2.5rem rgba(23, 48, 66, 0.24);
		animation: arotahi-mobile-menu-in 220ms ease-out both;
		overflow-y: auto;
	}

	.site-header__navigation .wp-block-navigation__responsive-close,
	.site-header__navigation .wp-block-navigation__responsive-dialog {
		width: 100%;
		height: 100%;
	}

	.site-header__navigation .wp-block-navigation__responsive-container-close {
		top: 0;
		right: 0;
		display: grid;
		place-items: center;
		width: 3rem;
		height: 3rem;
		padding: 0;
		color: var(--wp--preset--color--primary);
		background: transparent;
		border: 1px solid var(--wp--preset--color--primary);
		border-radius: var(--wp--preset--border-radius--pill);
	}

	.site-header__navigation .wp-block-navigation__responsive-container-close:hover,
	.site-header__navigation .wp-block-navigation__responsive-container-close:focus-visible {
		color: var(--wp--preset--color--foreground);
		background: var(--wp--preset--color--accent);
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		align-items: stretch;
		justify-content: flex-start;
		height: 100%;
		padding-top: var(--wp--preset--spacing--80);
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		align-items: stretch;
		width: 100%;
		gap: 0;
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		width: 100%;
		padding: var(--wp--preset--spacing--40) 0;
		color: var(--wp--preset--color--background);
		font-family: var(--wp--preset--font-family--montserrat);
		font-size: var(--wp--preset--font-size--lead);
		font-weight: 700;
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after {
		display: none;
	}

	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content,
	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
		color: var(--wp--preset--color--accent);
	}

	div#modal-2-content.wp-block-navigation__responsive-container-content {
		gap: var(--wp--preset--spacing--40) !important;
	}

}

@keyframes arotahi-mobile-menu-in {
	from {
		opacity: 0;
		transform: translateX(2rem);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.site-header__navigation .wp-block-navigation__responsive-container.is-menu-open {
		animation: none;
	}

	.site-header__navigation .wp-block-navigation-item__content::after {
		transition: none;
	}
}





/**
 * Full-height split hero.
 */
.arotahi-split-hero {
	display: grid;
	box-sizing: border-box;
	align-items: center;
}

.arotahi-split-hero__columns {
	width: 100%;
	column-gap: var(--wp--preset--spacing--70);
}

.arotahi-split-hero__image {
	width: 100%;
	max-width: 30rem;
	margin-inline: auto;
}

.arotahi-split-hero__image img {
	display: block;
	width: 100%;
	height: auto;
}

.arotahi-split-hero__guarantees {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--50);
	list-style: none;
}

.arotahi-split-hero__guarantees li {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	white-space: nowrap;
}

.arotahi-split-hero__guarantees li::before {
	display: grid;
	flex: 0 0 1.5rem;
	place-items: center;
	width: 1.5rem;
	height: 1.5rem;
	color: var(--wp--preset--color--foreground);
	font-weight: 700;
	line-height: 1;
	background: var(--wp--preset--color--accent);
	border-radius: var(--wp--preset--border-radius--pill);
	content: "✓";
}

@media (max-width: 781px) {
	.arotahi-split-hero {
		min-height: auto !important;
	}

	.arotahi-split-hero__columns {
		row-gap: var(--wp--preset--spacing--70);
	}

	.arotahi-split-hero__image {
		max-width: 25rem;
	}
}

/**
 * What We Do hero with a surface-to-page fade.
 */
.arotahi-what-we-do-hero {
	background:
		linear-gradient(
			180deg,
			var(--wp--preset--color--surface) 0%,
			var(--wp--preset--color--surface) 48%,
			var(--wp--preset--color--background) 100%
		) !important;
	overflow: clip;
	margin-top: 0 !important;
}

.arotahi-what-we-do-hero__image {
	width: 100%;
	line-height: 0;
}

.arotahi-what-we-do-hero__image img {
	display: block;
	width: 100%;
	height: auto;
}

@media (max-width: 781px) {
	.arotahi-what-we-do-hero {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-bottom: var(--wp--preset--spacing--60) !important;
	}

	.arotahi-what-we-do-hero__image {
		margin-top: var(--wp--preset--spacing--60) !important;
	}
}




/**
* How it Works - Support Grid 
*/
.arotahi-support-grid__items {
		gap: var(--wp--preset--spacing--70) !important;
		margin-bottom: var(--wp--preset--spacing--70);
}



.arotahi-support-grid__card .wp-block-image img {
	margin-bottom: var(--wp--preset--spacing--30);
	width: var(--wp--preset--spacing--80);
}


@media (max-width: 781px) {
	
	.arotahi-support-grid {
		padding-top: 0 !important;
	}

	.arotahi-support-grid__items {
		grid-template-columns: 1fr !important;
		gap: var(--wp--preset--spacing--60) !important;
	}
}



@media (max-width: 968px) {

	.arotahi-faq {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
		gap: 16px;
		padding-top: var(--wp--preset--spacing--20) !important;
		padding-bottom: var(--wp--preset--spacing--40) !important;
	}

}





/**
* Card CTA
*/

.arotahi-card-cta-full .is-card {
	align-items: center;
}

.arotahi-card-cta-full figure {
	justify-content: flex-end;
	display: flex;
}
.arotahi-card-cta-full img {
	width: 200px;
}

@media (max-width: 781px) {

	.arotahi-card-cta-full {
		padding-top: var(--wp--preset--spacing--60) !important;
		padding-bottom: var(--wp--preset--spacing--60) !important;
	}
	
	.arotahi-card-cta-full .is-card {
		grid-template-columns: 1fr !important;
		gap: var(--wp--preset--spacing--60) !important;
		text-align: center;
	}

	.arotahi-card-cta-full figure {
		justify-content: center;
	}

	.arotahi-card-cta-full .wp-block-buttons {
		display: flex;
		justify-content: center;
	}

}





/**
 * About story path.
 */
.arotahi-story-card {
	overflow: hidden;
}

.arotahi-story-card__row {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	align-items: center;
}

.arotahi-story-card__row.is-reversed {
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.arotahi-story-card__row.is-reversed .arotahi-story-card__media {
	grid-column: 2;
	grid-row: 1;
}

.arotahi-story-card__row.is-reversed .arotahi-story-card__content {
	grid-column: 1;
	grid-row: 1;
}

.arotahi-story-card__media,
.arotahi-story-card__media .wp-block-image {
	width: 100%;
	height: 100%;
	margin: 0;
}

.arotahi-story-card__media {
	min-height: 20rem;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--text-inverse) 28%, transparent);
	border-radius: var(--wp--preset--border-radius--card);
}

.arotahi-story-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.arotahi-story-card__row:nth-child(2) img {
	object-position: 72% center;
}

.arotahi-story-card__row:nth-child(3) img {
	object-position: 28% center;
}

.arotahi-story-card__content {
	box-sizing: border-box;
	padding-left: var(--wp--preset--spacing--50);
	border-left: 2px solid var(--wp--preset--color--accent);
}

.arotahi-story-card__content p:not(.has-accent-color) {
	color: color-mix(in srgb, var(--wp--preset--color--text-inverse) 88%, transparent);
}

@media (max-width: 781px) {
	.arotahi-story-card {
		padding: var(--wp--preset--spacing--40) !important;
	}

	.arotahi-story-card__row,
	.arotahi-story-card__row.is-reversed {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: var(--wp--preset--spacing--50) !important;
	}

	.arotahi-story-card__row .arotahi-story-card__media,
	.arotahi-story-card__row.is-reversed .arotahi-story-card__media {
		grid-column: 1;
		grid-row: 1;
	}

	.arotahi-story-card__row .arotahi-story-card__content,
	.arotahi-story-card__row.is-reversed .arotahi-story-card__content {
		grid-column: 1;
		grid-row: 2;
	}

	.arotahi-story-card__media {
		min-height: 0;
		aspect-ratio: 16 / 10;
	}

	.arotahi-story-card__content {
		padding-left: var(--wp--preset--spacing--40);
	}
}

/**
 * Team profiles.
 */
.arotahi-team__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.arotahi-team__card {
	position: relative;
	box-sizing: border-box;
	height: 100%;
	overflow: hidden;
}

.arotahi-team__card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: var(--wp--preset--spacing--10);
	background: var(--wp--preset--color--accent);
	content: "";
}

.arotahi-team__portrait {
	width: min(11rem, 70%);
	margin-inline: auto;
}

.arotahi-team__portrait img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
	border: var(--wp--preset--spacing--10) solid var(--wp--preset--color--surface);
	border-radius: 50%;
}

.arotahi-team__encouragement {
	border-top: 1px solid var(--wp--preset--color--border);
}

@media (max-width: 781px) {
	.arotahi-team {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
	}

	.arotahi-team__grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.arotahi-team__portrait {
		width: min(10rem, 60%);
	}
}





/**
 * Services: Arotahi Approach editorial split.
 */
.arotahi-approach-editorial__list {
	list-style: none;
}

.arotahi-approach-editorial__layout {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: center;
}

.arotahi-approach-editorial__intro {
	padding-right: var(--wp--preset--spacing--50);
}

.arotahi-approach-editorial__image {
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--preset--border-radius--card);
}

.arotahi-approach-editorial__image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.arotahi-approach-editorial__list li {
	display: grid;
	grid-template-columns: var(--wp--preset--spacing--10) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--50) 0;
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--text-inverse) 22%, transparent);
}

.arotahi-approach-editorial__list li::before {
	grid-row: 1 / span 2;
	width: var(--wp--preset--spacing--10);
	height: 100%;
	background: var(--wp--preset--color--accent);
	border-radius: var(--wp--preset--border-radius--pill);
	content: "";
}

.arotahi-approach-editorial__list strong,
.arotahi-approach-editorial__list span {
	grid-column: 2;
}

.arotahi-approach-editorial__list strong {
	font-family: var(--wp--preset--font-family--montserrat);
	font-size: var(--wp--preset--font-size--heading-4);
}

.arotahi-approach-editorial__list span {
	color: color-mix(in srgb, var(--wp--preset--color--text-inverse) 86%, transparent);
}





/**
 * Services: What We Focus On guided journey.
 */
.arotahi-focus-journey__layout {
	display: grid;
	grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
	align-items: stretch;
}

.arotahi-focus-journey__intro {
	padding-right: var(--wp--preset--spacing--50);
}

.arotahi-focus-journey__image {
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--preset--border-radius--card);
}

.arotahi-focus-journey__image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.arotahi-focus-journey__panel {
	position: relative;
	box-sizing: border-box;
	height: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
}

.arotahi-focus-journey__panel::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: var(--wp--preset--spacing--10);
	background: var(--wp--preset--color--accent);
	content: "";
}

.arotahi-focus-journey__list {
	list-style: none;
	counter-reset: arotahi-focus-journey;
}

.arotahi-focus-journey__list li {
	position: relative;
	min-height: 2.5rem;
	padding: 0 0 var(--wp--preset--spacing--50) var(--wp--preset--spacing--70);
	border-left: 1px solid var(--wp--preset--color--border);
	counter-increment: arotahi-focus-journey;
	color: var(--wp--preset--color--primary);
}

.arotahi-focus-journey__list li::before {
	position: absolute;
	top: 0;
	left: -1.25rem;
	display: grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	color: var(--wp--preset--color--text-inverse);
	font-family: var(--wp--preset--font-family--montserrat);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	background: var(--wp--preset--color--primary);
	border-radius: 50%;
	content: "0" counter(arotahi-focus-journey);
}

.arotahi-focus-journey__list li:last-child {
	padding-bottom: 0;
	border-left-color: transparent;
}

@media (max-width: 781px) {
	.arotahi-approach-editorial,
	.arotahi-focus-journey {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
	}

	.arotahi-focus-journey__panel {
		padding: var(--wp--preset--spacing--50) !important;
	}

	.arotahi-approach-editorial__layout,
	.arotahi-focus-journey__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.arotahi-approach-editorial__intro,
	.arotahi-focus-journey__intro {
		padding-right: 0;
	}
}





/**
 * Wide site footer.
 */
.site-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.65fr) minmax(0, 1fr) !important;
	align-items: start;
}

.site-footer__grid > * {
	min-width: 0;
}

.site-footer__logo {
	width: min(100%, 12rem);
	margin: 0 !important;
}

.site-footer__logo img {
	display: block;
	margin: 0;
}

.site-footer__logo img {
	width: 100%;
	height: auto;
}

.site-footer__tagline {
	max-width: 36rem;
}

.site-footer__socials {
	gap: var(--wp--preset--spacing--30);
	margin: 0;
}

.site-footer__socials .wp-social-link,
.site-footer__socials .wp-social-link a {
	color: var(--wp--preset--color--text-inverse);
}

.site-footer__socials .wp-social-link a:hover,
.site-footer__socials .wp-social-link a:focus-visible {
	opacity: 0.72;
}

.site-footer__navigation,
.site-footer__navigation .wp-block-navigation__container {
	width: 100%;
}

.site-footer__navigation .wp-block-navigation__container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer__navigation .wp-block-navigation-item__content,
.site-footer__navigation a,
.site-footer__contact a {
	color: var(--wp--preset--color--text-inverse);
	text-decoration: none;
}

.site-footer__navigation .wp-block-navigation-item__content:hover,
.site-footer__navigation .wp-block-navigation-item__content:focus-visible,
.site-footer__navigation a:hover,
.site-footer__navigation a:focus-visible,
.site-footer__contact a:hover,
.site-footer__contact a:focus-visible {
	color: var(--wp--preset--color--text-inverse);
	opacity: 0.72;
}

.site-footer__contact p {
	margin: 0;
}

.site-footer__contact-item {
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
}

.site-footer__contact-item .wp-block-icon {
	flex: 0 0 1.25rem;
	margin-top: 0.25em;
}

.site-footer__contact strong {
	color: var(--wp--preset--color--text-inverse);
	font-family: var(--wp--preset--font-family--montserrat);
	font-size: var(--wp--preset--font-size--small);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

@media (max-width: 900px) {
	.site-footer__grid {
		grid-template-columns: 1fr !important;
	}

	.site-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 640px) {
	.site-footer__top {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
	}

	.site-footer__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--60) !important;
	}

	.site-footer__brand {
		grid-column: auto;
	}

	.site-footer__bottom > .wp-block-group {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--wp--preset--spacing--20);
	}
}
