/*!
 * Theme Name:        BTR
 * Theme URI:         https://github.com/vatu-team/btr/
 * Author:            Vatu
 * Author URI:        https://vatu.dev
 * Description:       BTR branded WordPress theme.
 * Version:           1.0.0
 * Requires at least: 6.3
 * Tested up to:      6.3
 * Requires PHP:      8.2
 * License:           GNU General Public License v3 or later
 * License URI:       http://www.gnu.org/licenses/gpl-3.0.html
 * Text Domain:       btr
 * Tags:              Full Site Editing, Block Editor Patterns
 *
 * This theme, like WordPress, is licensed under the GPL.
 * Use it to make something cool, have fun, and share what you've learned
 * with others.
 */

/* Reset
 * ========================================================================== */

* {
	box-sizing: border-box;
}

img {
	max-width: 100%; /* [1] */
	height: auto; /* [1] */
	vertical-align: middle; /* [2] */
	font-style: italic; /* [3] */
	background-repeat: no-repeat; /* [4] */
	background-size: cover; /* [4] */
	shape-margin: 0.75rem; /* [5] */
}

/* Typography
 * ========================================================================== */

body {
	-webkit-font-smoothing: antialiased;
	text-underline-offset: 2px;
}

[style*="text-decoration:"] a {
	text-decoration: inherit;
}

b,
strong {
	font-weight: var(--wp--custom--font-weight--medium);
}

/* Elements
   ========================================================================== */

.wp-element-button {
	display: inline-flex;
	gap: 0;
	position: relative;
	white-space: nowrap;
}

.wp-element-button:focus {
	border-color: var(--wp--preset--color--accent-matcha);
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent-matcha);
}

.wp-element-button:before,
.wp-element-button:after {
	content: "";
	display: block;
	order: 1;
	width: 1em;
	height: 1em;
	margin-left: 0.5em;
	background-color: currentColor;
	transition: all ease-in-out 200ms;
	mask-size: cover;
}

.wp-element-button:before {
	mask-image: url("assets/svg/ui-caret.svg");
}

.wp-element-button:after {
	position: absolute;
	right: 22.5px;
	opacity: 0;
	mask-image: url("assets/svg/ui-arrow.svg");
	transform: translateX(0);
}

.wp-element-button:hover:before,
.wp-element-button:focus:before {
	opacity: 0;
	transform: translateX(4px);
}

.wp-element-button:hover:after,
.wp-element-button:focus:after {
	opacity: 1;
	transform: translateX(4px);
}

.site-header {
	position: relative;
	z-index: 2;
}

.site-main {
	position: relative;
	z-index: 1;
}

.site-header,
.site-footer {
	margin: 0;
}

.site-footer a {
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 4px;
	transition: text-decoration-color 0.2s ease-in-out;
}

.site-footer a:hover {
	text-decoration-color: var(--wp--preset--color--ui-border-ghost);
}

.site-footer a:focus {
	text-decoration: none;
	outline: 2px solid var(--wp--preset--color--accent-matcha);
}

.wp-block-post-content > .wp-block-group {
	margin: 0;
}

/* Breakpoint Reset
   ========================================================================== */

@media (min-width: 600px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(
			.is-menu-open
		) {
		display: none;
	}
}

@media (min-width: 781px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none;
	}

	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(
			.is-menu-open
		) {
		display: flex;
	}
}

/* Navigation
   ========================================================================== */

.wp-block-navigation-item__content {
	padding-top: 12px;
	padding-bottom: 12px;
}

.wp-block-page-list,
.wp-block-navigation__container {
	width: 100%;
}

.wp-block-navigation:not(.has-background)
	.wp-block-navigation__submenu-container {
	border: 0;
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	display: flex;
	align-content: center;
	gap: 8px;
	line-height: 1.1;
}

.wp-block-navigation__responsive-container-close {
	margin-top: 10px;
}

.wp-block-navigation__responsive-container-open:after,
.wp-block-navigation__responsive-container-close:after {
	content: "";
	display: inline-flex;
	background-color: currentColor;
	width: 1em;
	height: 1em;
	mask-size: cover;
}

.wp-block-navigation__responsive-container-open:after {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M0.75 6.00002L11.25 6.00001M0.75 9.75L11.25 9.75M0.75 2.25L11.25 2.25' stroke='%23FAFFF2'/%3E%3C/svg%3E");
}

.wp-block-navigation__responsive-container-close:after {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cpath d='M28 28L4 4M4 28L28 4' stroke='%23003322' stroke-width='2'/%3E%3C/svg%3E");
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
	width: 20px;
	height: 18px;
	margin-left: 4px;
	margin-right: -4px;
	margin-bottom: 1px;
	padding: 4px;
	line-height: 1;
}

.wp-block-navigation .wp-block-navigation__submenu-icon svg {
	display: none;
}

.wp-block-navigation__submenu-icon:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background-color: currentColor;
	mask-size: cover;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M1.5 3.75L6 8.25L10.5 3.75' stroke='%23FAFFF2'/%3E%3C/svg%3E");
}

.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__responsive-container-content
	.wp-block-navigation__submenu-icon {
	display: block;
}

.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__responsive-container-content
	.has-child
	.wp-block-navigation__submenu-container {
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__responsive-container-content
	.wp-block-navigation-item {
	flex-direction: row;
	flex-wrap: wrap;
}

.is-menu-open .wp-block-page-list > .wp-block-navigation-item,
.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	width: 100%;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--wp--preset--color--hero-forest-tint);
}

.is-menu-open .wp-block-page-list > .wp-block-navigation-item:last-of-type,
.is-menu-open
	.wp-block-navigation__container
	> .wp-block-navigation-item:last-of-type {
	border-bottom: 0;
}

@media (max-width: 781px) {
	.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container {
		max-height: 0;
		overflow: hidden !important;
		transition: all 0.2s ease-in-out;
		margin: 0;
		opacity: 0;
	}

	.wp-block-navigation
		.wp-block-navigation-submenu__toggle[aria-expanded="true"]
		+ .wp-block-navigation__submenu-container {
		max-height: 1000px;
		margin: var(--wp--preset--spacing--space-md) 0 0;
		opacity: 1 !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__responsive-container-content
		.has-child
		.wp-block-navigation__submenu-container {
		border-left: 1px solid var(--wp--preset--color--accent-matcha);
		padding: 0 0 0 var(--wp--preset--spacing--space-md);
		flex-direction: column;
		gap: var(--wp--preset--spacing--space-sm);
		opacity: 0;
	}

	.wp-block-navigation
		.wp-block-navigation-submenu__toggle[aria-expanded="true"]
		+ .wp-block-navigation__submenu-container {
		display: flex;
	}
}

@media (min-width: 782px) {
	.wp-block-navigation .wp-block-page-list {
		row-gap: 0;
	}

	.wp-block-navigation .has-child .wp-block-navigation__submenu-container {
		background: transparent !important;
		color: var(--wp--preset--color--hero-forest) !important;
		transform: translateY(16px);
		opacity: 0;
		transition: all 0.3s ease-in-out;
		min-width: 240px !important;
		padding: 0;
	}

	.wp-block-navigation
		[aria-expanded="true"]
		+ .wp-block-navigation__submenu-container {
		opacity: 1;
		transform: translateY(0);
	}

	.has-child
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item__content {
		display: block;
		padding: 12px var(--wp--preset--spacing--space-md);
		background-color: var(--wp--preset--color--neutral-ivory-tint);
		transition: all 0.3s ease-in-out;
		text-underline-offset: 4px;
		text-decoration: underline;
		text-decoration-color: transparent;
	}

	.has-child
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item__content:hover {
		text-decoration-color: var(--wp--preset--color--ui-border-ghost-dark);
	}

	.has-child
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item:first-of-type
		.wp-block-navigation-item__content {
		padding-top: var(--wp--preset--spacing--space-sm);
	}

	.has-child
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item:last-of-type
		.wp-block-navigation-item__content {
		padding-bottom: var(--wp--preset--spacing--space-sm);
	}
}

@keyframes overlay-menu__fade-in-animation {
	0% {
		opacity: 0;
		transform: translateY(0);
	}

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

/* Query
   ========================================================================== */

.wp-block-post-featured-image {
	overflow: hidden;
}

.wp-post-image {
	transition: transform 0.2s ease-in-out;
	background: var(--wp--preset--color--accent-lichen);
}

.wp-block-post:hover .wp-post-image {
	transform: scale(1.05);
}

.wp-block-post-title a {
	text-decoration-color: transparent;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
	transition: text-decoration-color 0.2s ease-in-out;
}

.wp-block-post .wp-block-post-title a:hover {
	text-decoration-color: currentColor;
}

/* Pagination
	   ====================================================================== */

.wp-block-query-pagination {
	gap: var(--wp--preset--spacing--space-xs);
}

.wp-block-query-pagination .page-numbers {
	padding: var(--wp--preset--spacing--space-xs);
	color: currentColor;
	transition: all 0.2s ease-in-out;
	border-bottom: 1px solid transparent;
}

.wp-block-query-pagination .page-numbers.current {
	color: var(--wp--preset--color--accent-matcha);
	border-bottom-color: currentColor;
}

.wp-block-query-pagination .page-numbers:hover {
	border-bottom-color: var(--wp--preset--color--accent-matcha);
}

.wp-block-query-pagination .page-numbers:focus {
	color: var(--wp--preset--color--accent-matcha);
	border-color: transparent;
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent-matcha);
}

.wp-block-query-pagination-next,
.wp-block-query-pagination-previous {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 16px;
	border: 1px solid var(--wp--preset--color--ui-border-ghost-dark);
	border-radius: 99px;
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}

.wp-block-query-pagination-next:hover,
.wp-block-query-pagination-previous:hover {
	border-color: var(--wp--preset--color--ui-border-hover);
}

.wp-block-query-pagination-next:focus,
.wp-block-query-pagination-previous:focus {
	border-color: var(--wp--preset--color--accent-matcha);
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent-matcha);
}

.wp-block-query-pagination-next .wp-block-query-pagination-next-arrow,
.wp-block-query-pagination-previous .wp-block-query-pagination-previous-arrow {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	height: 24px;
	width: 24px;
	text-indent: -9999px;
	text-align: unset;
	white-space: nowrap;
	overflow: hidden;
	font-size: 0;
	letter-spacing: -1em;
}

.wp-block-query-pagination-previous-arrow:before,
.wp-block-query-pagination-next-arrow:before {
	content: "";
	background: url("assets/svg/ui-caret.svg") no-repeat center;
	background-size: contain;
	font-size: 24px;
	height: 100%;
	width: 100%;
}

.wp-block-query-pagination-previous-arrow:before {
	transform: rotate(180deg);
}

/* Blocks
   ========================================================================== */

.wp-block-template-part {
	margin: 0;
}

.wp-block-site-logo {
	flex-shrink: 0;
}

@media (max-width: 781px) {
	.wp-block-site-logo {
		max-width: 82px;
	}
}

.wp-block-button .wp-block-button__link:where(.is-style-outline),
.wp-block-button:where(.is-style-outline) > .wp-block-button__link {
	border-width: 1px;
	padding: 16px 20px;
	border-color: var(--wp--preset--color--ui-border-ghost-dark);
	transition: border-color 0.2s ease-in-out;
}

.wp-block-button .wp-block-button__link:where(.is-style-outline):hover,
.wp-block-button:where(.is-style-outline) > .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--ui-border-hover) !important;
}

.wp-block-button .wp-block-button__link:where(.is-style-outline):focus,
.wp-block-button:where(.is-style-outline) > .wp-block-button__link:focus {
	border-color: var(--wp--preset--color--accent-matcha) !important;
}

.wp-block-separator {
	border-top-width: 1px;
}

.wp-block-post-excerpt p {
	margin: inherit;
}

/* Custom Blocks
   ========================================================================== */

.wp-block-btr-tab-link {
	position: relative;
	white-space: nowrap;
	padding: 0 var(--wp--preset--spacing--space-sm);
}

.wp-block-btr-tab-link:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: transparent;
}

.wp-block-btr-tab-link.is-active:after {
	background-color: var(--wp--preset--color--accent-matcha);
}

/* Block Styles
   ========================================================================== */

.is-style-intro-text {
	font-size: var(--wp--preset--font-size--body-xl);
	line-height: 1.33;
	-webkit-font-smoothing: antialiased;
}

.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 20px;
	text-decoration: underline;
	color: var(--wp--preset--color--accent-matcha);
	text-underline-offset: 8px;
	-webkit-font-smoothing: antialiased;
}

.is-style-italic {
	font-family: var(--wp--preset--font-family--noto-serif-display);
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 20px;
	color: var(--wp--preset--color--neutral-ivory);
	text-underline-offset: 8px;
	-webkit-font-smoothing: antialiased;
	font-style: italic;
}

.is-style-card {
	background-color: var(--wp--preset--color--white);
	border-top: 4px solid var(--wp--preset--color--accent-matcha);
	padding: var(--wp--preset--spacing--space-lg)
		var(--wp--preset--spacing--space-md);
	box-shadow: var(--wp--preset--shadow--drop-shadow-light);
	transition: box-shadow 0.3s ease-in-out;
}

.is-style-card:hover {
	box-shadow: var(--wp--preset--shadow--form);
}

.is-style-outline-italic .wp-element-button,
.is-style-outline-light .wp-element-button {
	border: 1px solid var(--wp--preset--color--ui-border-ghost);
	background: transparent;
	color: var(--wp--preset--color--neutral-ivory);
	transition: border-color 0.2s ease-in-out;
}

.is-style-outline-italic .wp-element-button:hover,
.is-style-outline-light .wp-element-button:hover {
	border-color: var(--wp--preset--color--accent-matcha-transparent);
}

.is-style-fill-italic .wp-element-button,
.is-style-outline-italic .wp-element-button {
	font-family: var(--wp--preset--font-family--noto-serif-display);
	font-style: italic;
}

.is-style-link .wp-element-button {
	padding: 0;
	background: transparent;
	color: var(--wp--preset--color--accent-matcha);
}

.is-style-link .wp-element-button:after {
	right: 2px;
}

.is-style-expand .wp-element-button {
	border: 1px solid var(--wp--preset--color--ui-border-ghost-dark);
	padding: 16px;
	content: "";
	background: transparent;
	text-indent: -9999px;
	letter-spacing: -1em;
	text-align: unset;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 99px;
	color: transparent;
	font-size: 0;
	transition: border-color 0.2s ease-in-out;
}

.is-style-expand .wp-element-button:hover {
	border-color: var(--wp--preset--color--ui-border-hover);
}

.is-style-expand .wp-element-button:before {
	opacity: 1;
	margin: 0;
	mask-image: url("assets/svg/ui-caret.svg");
	transform: rotate(90deg);
	background-color: var(--wp--preset--color--hero-forest);
	height: var(--wp--preset--font-size--button-xl);
	width: var(--wp--preset--font-size--button-xl);
}

.is-style-expand .wp-element-button:after {
	display: none;
}

.is-style-expand .wp-element-button:hover:before {
	transform: rotate(90deg);
}

.is-style-expand .wp-element-button.is-expanded:before {
	transform: rotate(-90deg);
}

.is-style-plain .wp-element-button {
	border: 1px solid transparent;
	background: transparent;
}

.is-style-plain .wp-element-button:before,
.is-style-plain .wp-element-button:after,
.is-style-fill-italic .wp-element-button:before,
.is-style-fill-italic .wp-element-button:after,
.is-style-outline-italic .wp-element-button:before,
.is-style-outline-italic .wp-element-button:after {
	display: none;
}

.is-style-tabs {
	overflow-x: scroll;
	scroll-snap-type: x mandatory;
	padding: 2px;
}

.is-style-tabs .wp-block-button {
	flex: 1;
	scroll-snap-align: start;
	color: var(--wp--preset--color--ui-border-hover);
	border-top: 1px solid var(--wp--preset--color--ui-border-ghost-dark);
}

@media (max-width: 781px) {
	.is-style-tabs .wp-block-button {
		min-width: 40%;
	}
}

@media (max-width: 600px) {
	.is-style-tabs .wp-block-button {
		min-width: 66%;
	}
}

.is-style-tabs .wp-block-button .wp-block-button__link {
	width: 100%;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	justify-content: center;
	transition: all 0.2s ease-in-out;
	color: inherit;
}

.is-style-tabs .wp-block-button:hover {
	color: var(--wp--preset--color--hero-forest);
	border-top-color: var(--wp--preset--color--ui-border-hover);
}

.blog .is-style-tabs .wp-block-button:not([class*="u-icon"]) {
	color: var(--wp--preset--color--accent-matcha);
	border-top-color: currentColor;
}

.post-type-archive-insight .is-style-tabs .u-icon-insight {
	color: var(--wp--preset--color--accent-matcha);
	border-top-color: currentColor;
}

.post-type-archive-guide .is-style-tabs .u-icon-guide {
	color: var(--wp--preset--color--accent-matcha);
	border-top-color: currentColor;
}

.post-type-archive-whitepaper .is-style-tabs .u-icon-whitepaper {
	color: var(--wp--preset--color--accent-matcha);
	border-top-color: currentColor;
}

.post-type-archive-event .is-style-tabs .u-icon-event {
	color: var(--wp--preset--color--accent-matcha);
	border-top-color: currentColor;
}

.is-style-checklist {
	padding-left: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--space-xs);
}

.is-style-checklist li {
	list-style: none;
	display: flex;
	align-items: center;
	align-content: center;
	gap: var(--wp--preset--spacing--space-xs);
}

.is-style-checklist li:before {
	content: "";
	background: url("assets/svg/brand-check.svg");
	background-repeat: no-repeat;
	background-size: cover;
	display: inline-flex;
	height: 40px;
	width: 40px;
}

.is-style-links {
	list-style: none;
	padding: 0;
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(min(36vw, 300px), 1fr));
	gap: var(--wp--preset--spacing--gap-col);
}

.is-style-links a {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--gap-row);
	padding: var(--wp--preset--spacing--space-md);
	border: 1px solid var(--wp--preset--color--ui-border-ghost-dark);
	text-decoration: none;
}

.is-style-links a:hover {
	border-color: var(--wp--preset--color--ui-border-hover);
}

.is-style-links a:focus {
	border-color: var(--wp--preset--color--accent-matcha);
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent-matcha);
}

.is-style-links a:after {
	content: "";
	display: block;
	background: url("assets/svg/ui-arrow.svg");
	background-size: cover;
	height: 32px;
	width: 32px;
	align-self: flex-end;
}

.is-style-links ul {
	display: none;
}

.is-style-share .wp-block-social-link .wp-block-social-link-anchor {
	border: 1px solid var(--wp--preset--color--ui-border-ghost-dark);
	padding: var(--wp--preset--spacing--space-xs);
	border-radius: 99px;
	transition: all 0.2s ease-in-out;
}

.is-style-share .wp-block-social-link .wp-block-social-link-anchor:hover {
	border: 1px solid var(--wp--preset--color--ui-border-hover);
}

.is-style-share .wp-block-social-link .wp-block-social-link-anchor:focus {
	border: 1px solid var(--wp--preset--color--accent-matcha);
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent-matcha);
}

.is-style-share .wp-block-social-link .wp-block-social-link-anchor:visited {
	border: 1px solid currentColor;
}

.is-style-share .wp-block-social-link:hover {
	transform: none;
}

@media (max-width: 781px) {
	.is-style-testimonial {
		padding: var(--wp--preset--spacing--space-xl) !important;
	}

	.wp-block-social-links.is-style-share {
		flex-direction: row;
	}
}

/* Plugins
   ========================================================================== */

.wp-block-safe-svg-svg-icon {
	display: flex;
	max-width: 100%;
}

/* Components
   ========================================================================== */

.journey {
	position: relative;
}

.journey > * {
	position: relative;
	z-index: 1;
}

.journey:before {
	content: "";
	display: block;
	height: calc(100% - (var(--wp--preset--spacing--space-xl) * 2));
	width: 1px;
	position: absolute;
	inset: 0;
	margin: auto;
	background-color: var(--wp--preset--color--ui-border-ghost-dark);
}

.journey > *:first-child,
.journey > *:last-child {
	position: relative;
}

.journey > *:first-child:before,
.journey > *:last-child:before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 8px;
	background-color: var(--wp--preset--color--ui-border-ghost-dark);
	position: absolute;
	left: 0;
	right: 0;
	top: calc(var(--wp--preset--spacing--space-xl) - 10px);
	margin: auto;
}

.journey > *:last-child:before {
	top: calc(100% - var(--wp--preset--spacing--space-xl));
}

@media (max-width: 781px) {
	.journey:before {
		inset: 0 auto 0 var(--wp--preset--spacing--space-lg);
	}

	.journey > *:first-child:before,
	.journey > *:last-child:before {
		left: calc(var(--wp--preset--spacing--space-lg) - 5px);
		right: auto;
	}

	.journey > p {
		text-align: left;
	}

	.journey .wp-block-columns:nth-of-type(odd) {
		flex-direction: row-reverse;
	}

	.journey .wp-block-columns:nth-of-type(odd) .wp-block-column:nth-of-type(1),
	.journey .wp-block-columns:nth-of-type(even) .wp-block-column:nth-of-type(3) {
		flex-basis: 100% !important;
	}

	.journey .wp-block-column:nth-of-type(2) {
		flex-basis: calc(var(--wp--preset--spacing--space-xl) * 2) !important;
	}

	.journey .wp-block-column:nth-of-type(2) svg {
		width: 48px !important;
		height: 48px !important;
	}

	.journey .wp-block-column:nth-of-type(2) .safe-svg-inside {
		width: var(--wp--preset--spacing--space-2-xl) !important;
		height: var(--wp--preset--spacing--space-2-xl) !important;
	}

	.journey .wp-block-columns:nth-of-type(odd) .wp-block-column:nth-of-type(3),
	.journey .wp-block-columns:nth-of-type(even) .wp-block-column:nth-of-type(1) {
		flex-basis: 0 !important;
	}
}

@media (max-width: 781px) {
	.icon-grid .is-style-card {
		flex-wrap: nowrap;
	}

	.icon-grid .safe-svg-inside,
	.icon-grid svg {
		max-width: 56px;
		max-height: 56px;
	}

	.icon-grid .safe-svg-inside {
		margin-right: var(--wp--preset--spacing--gap-col);
	}
}

.btr-post-type-icon {
	display: flex;
	align-items: center;
}

.btr-post-type-icon svg {
	height: 1em;
	width: 1em;
}

/* Utility: Visibility
 * ========================================================================== */

.u-expandable {
	transition: all 0.3s ease-in-out;
	overflow: hidden;
}

.u-expandable.is-collapsed {
	margin-top: 0;
	max-height: 0;
	opacity: 0;
}

.u-expandable.is-expanded {
	max-height: 1000px;
	opacity: 1;
}

.u-hide-subsequent > li:not(:first-child) {
	display: none;
}

.u-hide {
	display: none !important;
}

@media (max-width: 781px) {
	.u-hide-mobile {
		display: none !important;
	}
}

@media (min-width: 782px) {
	.u-hide-desktop {
		display: none !important;
	}
}

/* Utility: Dimensions
 * ========================================================================== */

.u-height-100 {
	height: 100% !important;
}

/* Utility: Opacity
 * ========================================================================== */

.u-opacity-50 {
	opacity: 0.56;
}

.u-opacity-60 {
	opacity: 0.64;
}

/* Utility: Position
 * ========================================================================== */
.u-position-relative {
	position: relative;
}

.is-position-sticky {
	top: var(--wp--preset--spacing--gap-row);
}

/* Utility: Alignment
 * ========================================================================== */
.u-align-center {
	margin-left: auto !important;
	margin-right: auto !important;
}

.u-align-left {
	margin-right: auto !important;
}

.u-align-right {
	margin-left: auto !important;
}

.u-align-full {
	width: 100%;
}

@media (max-width: 781px) {
	.u-align-full-mobile {
		width: 100%;
	}

	.u-align-left-mobile {
		text-align: left;
		margin-right: auto !important;
	}
}

/* Utility: Flex
 * ========================================================================== */

@media (max-width: 781px) {
	.u-flex-wrap-mobile {
		flex-wrap: wrap !important;
	}

	.u-row-reverse-mobile {
		flex-direction: row-reverse !important;
	}

	.u-column-reverse-mobile {
		flex-direction: column-reverse !important;
	}
}

/* Utility: Text
 * ========================================================================== */

.u-nowrap {
	white-space: nowrap;
}

.u-nowrap .wp-element-button {
	white-space: nowrap !important;
}

/* Utility: Icons
 * ========================================================================== */

[class*="u-icon-"] .wp-element-button:before {
	content: "";
	display: inline-flex;
	mask-position: center;
	mask-size: contain;
	mask-repeat: no-repeat;
	background: currentColor;
	width: 1em;
	height: 1em;
	order: 0;
	margin: 0 0.5em 0 0;
	transition: none;
}

[class*="u-icon-"] .wp-element-button:hover:before,
[class*="u-icon-"] .wp-element-button:focus:before {
	opacity: 1;
	transform: none;
}

.u-icon-event .wp-element-button:before {
	mask-image: url("assets/svg/ui-event.svg");
}

.u-icon-guide .wp-element-button:before {
	mask-image: url("assets/svg/ui-guide.svg");
}

.u-icon-insight .wp-element-button:before {
	mask-image: url("assets/svg/ui-insight.svg");
}

.u-icon-whitepaper .wp-element-button:before {
	mask-image: url("assets/svg/ui-whitepaper.svg");
}

.u-icon-login .wp-element-button:before {
	mask-image: url("assets/svg/ui-person.svg");
	order: 1;
	margin: 0 0 0 0.5em;
}

.u-icon-login .wp-element-button:hover:before {
	transform: none;
}

.u-icon-login .wp-element-button:after {
	display: none;
}

/* Utility: Effects
 * ========================================================================== */

.u-background-ripple,
.u-background-ripple-down,
.u-background-ripple-down-left,
.u-background-ripple-down-left-dark,
.u-background-ripple-down-right-dark {
	position: relative;
	overflow: hidden;
}

.u-background-ripple:before,
.u-background-ripple-down:before,
.u-background-ripple-down-left:before,
.u-background-ripple-down-left-dark:before,
.u-background-ripple-down-right-dark:before {
	content: "";
	display: block;
	background-image: url("assets/svg/ripple.svg");
	background-size: cover;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	left: 0;
	bottom: -1%;
	width: 100%;
	min-height: 100%;
	mask-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75));
}

.u-background-ripple > *,
.u-background-ripple-down > *,
.u-background-ripple-down-left > *,
.u-background-ripple-down-left-dark > *,
.u-background-ripple-down-right-dark > * {
	position: relative;
	z-index: 2;
}

.u-background-ripple-down:before {
	background-image: url("assets/svg/ripple-footer.svg");
	width: 110%;
	mask-image: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0.5) 0,
		rgba(0, 0, 0, 0.25) 33%,
		rgba(0, 0, 0, 0) 66%
	);
}

.u-background-ripple-down-left:before {
	transform: rotate(180deg);
}

.u-background-ripple-down-left-dark:before {
	background-image: url("assets/svg/ripple-footer-dark.svg");
	mask-image: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0.5) 0,
		rgba(0, 0, 0, 0.25) 33%,
		rgba(0, 0, 0, 0) 66%
	);
}

.u-background-ripple-down-right-dark:before {
	background-image: url("assets/svg/ripple-footer-dark.svg");
	transform: rotateY(180deg);
	mask-image: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0.5) 0,
		rgba(0, 0, 0, 0.25) 33%,
		rgba(0, 0, 0, 0) 66%
	);
}

.u-radial-gradient-overlay {
	position: relative;
	background: var(--wp--preset--color--hero-forest);
}

.u-radial-gradient-overlay > div {
	position: relative;
	z-index: 1;
}

.u-radial-gradient-overlay > img {
	z-index: 0;
	transition: transform 0.6s ease-out;
}

.u-radial-gradient-overlay:before {
	content: "";
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
	background: radial-gradient(rgba(20, 26, 24, 1), rgba(20, 26, 24, 0) 100%);
	opacity: 0.56;
}

.u-radial-gradient-overlay:hover > img {
	transform: scale(1.05);
}

.u-form-background-image {
	position: relative;
	overflow: hidden;
}

.u-form-background-image > * {
	position: relative;
	z-index: 1;
}

.u-form-background-image:before {
	content: "";
	display: block;
	position: absolute;
	width: 45vw;
	height: 100%;
	right: 0;
	bottom: 0;
	top: 0;
	background-image: url("assets/img/lets-talk.webp");
	background-size: auto 105%;
	background-position: bottom left;
}

@media (max-width: 781px) {
	.u-form-background-image:before {
		display: none;
	}
}

.u-text-reveal {
	overflow: hidden;
}

.u-text-reveal br {
	display: none;
}

.u-text-reveal .has-inline-color {
	display: block;
	overflow: hidden;
	line-height: 1.1;
}

.u-text-reveal.has-animation .has-inline-color {
	transform: translate(0, 100%);
	opacity: 0.01;
}

.u-text-reveal.animate .has-inline-color {
	animation: reveal 1s cubic-bezier(0, 1, 1, 1) forwards;
	animation-delay: 0.2s;
}

.u-text-reveal .has-inline-color ~ .has-inline-color {
	animation-delay: 0.6s;
	animation-duration: 0.8s;
}

@keyframes reveal {
	0% {
		transform: translate(0, 100%);
		opacity: 0.01;
	}
	100% {
		transform: translate(0, 0);
		opacity: 1;
	}
}

/* SVG Mask Gradient
 ========================================================================== */

.has-svg-mask.u-background-ripple:before,
.has-svg-mask.u-background-ripple-down:before,
.has-svg-mask.u-background-ripple-down-left:before,
.has-svg-mask.u-background-ripple-down-left-dark:before,
.has-svg-mask.u-background-ripple-down-right-dark:before {
	display: none;
}

.has-svg-mask {
	position: relative;
}

.u-svg-mask {
	position: absolute;
	inset: 0;
	max-width: 100% !important;
	mask-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
}

.u-svg-mask:before {
	content: "";
	display: block;
	position: absolute;
	inset: -1% 0;
	pointer-events: none;
	background-size: 400% 400%;
	background-position-y: center;
	background-repeat: repeat;
	mask-image: url("assets/svg/ripple.svg");
	mask-size: cover;
	animation: slide-background 15s linear infinite;
	background-image: repeating-linear-gradient(
		127deg,
		#f2ffe5 0%,
		#fafff229 10%,
		#fafff229 20%,
		#f2ffe5 30%,
		#f2ffe5 40%,
		#f2ffe5 50%,
		#fafff229 60%,
		#fafff229 70%,
		#fafff229 80%,
		#f2ffe5 90%,
		#f2ffe5 100%
	);
}

.u-background-ripple-down .u-svg-mask:before {
	mask-image: url("assets/svg/ripple-footer.svg");
}

.u-background-ripple-down .u-svg-mask,
.u-background-ripple-down-left .u-svg-mask {
	mask-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
}

.u-background-ripple-down-left .u-svg-mask:before {
	transform: rotate(180deg);
	animation: slide-background-reverse 15s linear infinite;
}

.u-background-ripple-up-left .u-svg-mask:before {
	transform: scale(-1, 1);
}

.u-background-ripple-down-left-dark .u-svg-mask,
.u-background-ripple-down-right-dark .u-svg-mask {
	mask-image: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0.5) 0,
		rgba(0, 0, 0, 0.25) 33%,
		rgba(0, 0, 0, 0) 66%
	);
}

.u-background-ripple-down-left-dark .u-svg-mask:before,
.u-background-ripple-down-right-dark .u-svg-mask:before {
	mask-image: url("assets/svg/ripple-footer-dark.svg");
	background-image: repeating-linear-gradient(
		127deg,
		#008035 0%,
		#c8deb1 10%,
		#c8deb1 20%,
		#008035 30%,
		#008035 40%,
		#008035 50%,
		#c8deb1 60%,
		#c8deb1 70%,
		#c8deb1 80%,
		#008035 90%,
		#008035 100%
	);
}

.u-background-ripple-down-right-dark .u-svg-mask:before {
	transform: rotateY(180deg);
	animation: slide-background-reverse 15s linear infinite;
}

@keyframes slide-background {
	from {
		background-position-x: 100%;
	}

	to {
		background-position-x: 0;
	}
}

@keyframes slide-background-reverse {
	from {
		background-position-x: 0;
	}

	to {
		background-position-x: 100%;
	}
}

/* Recaptcha - Globally hide badge.
 ========================================================================== */

.grecaptcha-badge {
	display: none !important;
}

/* Bespoke pages
 ========================================================================== */

 .bespoke-site-header .wp-block-navigation-item__label{
	color: var(--wp--preset--color--neutral-ivory);
 }


/* Footer menu links */
.bespoke-site-footer
	.wp-block-column
	.is-vertical.wp-block-group-is-layout-flex
	> p {
	font-family: var(--wp--preset--font-family--noto-serif-display);
	font-style: italic;
}

/* Custom detail/accordion */
details > summary {
	list-style-type: none;
}

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

details > summary::after {
	content: url("assets/svg/icon-plus.svg");
	float: right;
}

details[open] > summary::after {
	content: url("assets/svg/icon-minus.svg");
}

details {
	border-top: 1px solid var(--wp--preset--color--hero-celadon);
	padding: var(--wp--preset--spacing--space-md) 0 0;
}

details[open] > summary {
	margin-bottom: var(--wp--preset--spacing--space-md);
}

/* Bespoke block quote */
.is-style-bespoke {
	text-transform: uppercase;
	margin-inline-start: 0;
	margin-inline-end: 0;
}

.is-style-bespoke:before {
	content: url("assets/svg/icon-double-quote.svg");
}

/* Gravity form background image*/
.site-bespoke .u-form-background-image:before {
	background-image: url(assets/img/creased-silk-dark-forest.webp);
}

/* Bespoke cover block - inner blocks */
.bespoke-cover-spacing .wp-block-cover__inner-container .wp-block-group {
	padding: 0 var(--wp--preset--spacing--space-md);
}

@media (min-width: 601px) {
	.bespoke-cover-spacing .wp-block-cover__inner-container .wp-block-group {
		padding: 0 var(--wp--preset--spacing--space-6-xl);
	}
}


/* Override extra padding on media-text block */

@media(max-width: 781px) {
	.site-bespoke .wp-block-media-text__content {
		padding: var(--wp--preset--spacing--gap-col) 0;
	}
	.hide-on-mobile {
		display: none;
	}
}

@media (min-width: 601px) {
	.site-bespoke .wp-block-media-text.has-media-on-the-right > .wp-block-media-text__content
	{
		padding-left: 0;
		height: 100%;
	}
}

