/**
 * Modern CSS Reset
 *
Version: 3.3
 * Inspired by Jake Lazaroff (https://jakelazaroff.com/words/my-modern-css-reset/)
 * with WordPress-specific adjustments.
 *
 * @package Base_Theme
 * @since   1.0.0
 */

@layer reset {

	/* Use a better box model. */
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	/* Remove default margin and padding from everything. */
	* {
		margin: 0;
		padding: 0;
	}

	/* Enable animating to/from intrinsic sizing keywords (e.g. height: auto). */
	:root {
		interpolate-size: allow-keywords;
	}

	/* Sensible body defaults. */
	body {
		-webkit-text-size-adjust: 100%;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	/* Media elements: block-level, responsive by default. */
	:where(img, picture, video, canvas, svg) {
		display: block;
		max-inline-size: 100%;
	}

	/* Form controls inherit font and colour from parent. */
	:where(input, button, textarea, select) {
		font: inherit;
		letter-spacing: inherit;
		word-spacing: inherit;
		color: currentColor;
	}

	/* Prevent long words from overflowing containers. */
	:where(p, h1, h2, h3, h4, h5, h6) {
		overflow-wrap: break-word;
	}

	/* Remove default list styles. */
	:where(ol, ul) {
		list-style: none;
	}

}

/* -----------------------------------------------
 * Lists (content area only)
 * --------------------------------------------- */
main :where(ul, ol) {
	padding-left: 1.5em;
	list-style: revert;
}

/* -----------------------------------------------
 * Core Quote block
 * --------------------------------------------- */
.wp-block-quote:not(.is-style-plain) {
	border-inline-start: 2px solid currentColor;
	padding-inline-start: var(--space-l);
}

.wp-block-quote:not(.is-style-plain) > p {
	font-size: var(--font-size-l);
	font-style: italic;
}

/* -----------------------------------------------
 * Swiper sliders
 * --------------------------------------------- */
:where(.swiper) {
	inline-size: 100%;
	max-inline-size: 100%;
	min-inline-size: 0;
	overflow: hidden;
}

:where(.swiper-wrapper, .swiper-slide) {
	min-inline-size: 0;
}

/**
 * Base Theme - Utility classes.
 *
 * Minimal set of reusable helpers. Add project-specific utilities
 * in the child theme.
 *
 * @package Base_Theme
 * @since   1.0.0
 */

/* -----------------------------------------------
 * Screen-reader only (visually hidden)
 * --------------------------------------------- */
.screen-reader-text,
.sr-only {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	word-wrap: normal !important;
}

.screen-reader-text:focus,
.sr-only:focus {
	clip: auto;
	clip-path: none;
	display: block;
	height: auto;
	width: auto;
	position: static;
	overflow: visible;
	background: #fff;
	color: #1d2327;
	padding: 0.75em 1em;
	font-size: 1rem;
	z-index: 100000;
}

/* -----------------------------------------------
 * Skip link
 * --------------------------------------------- */
.skip-link {
	position: absolute;
	top: -100%;
	left: 50%;
	transform: translateX(-50%);
	background: #1d2327;
	color: #fff;
	padding: 0.5em 1em;
	z-index: 100000;
	text-decoration: none;
	border-radius: 0 0 4px 4px;
	transition: top 0.15s ease;
}

.skip-link:focus {
	top: 0;
}

/* -----------------------------------------------
 * Text alignment
 * --------------------------------------------- */
.text-left   { text-align: left; }
.text-center { text-align: center; }
.text-right  { text-align: right; }

/* -----------------------------------------------
 * Sticky within container
 * --------------------------------------------- */
.base-theme-sticky {
	position: sticky;
	top: var(--base-theme-sticky-offset, var(--space-m, 1.25rem));
	align-self: start;
}

/* -----------------------------------------------
 * Reduced motion (accessibility)
 * --------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	html:focus-within {
		scroll-behavior: auto;
	}

	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* -----------------------------------------------
 * Page background transitions
 * --------------------------------------------- */
html.has-page-background-transition body {
	transition: background-color 1.2s cubic-bezier(.4, 0, .2, 1);
}

html.has-page-background-transition body .is-page-background-section {
	background-color: transparent;
}

/* -----------------------------------------------
 * Forced colors / high contrast (accessibility)
 * --------------------------------------------- */
@media (forced-colors: active) {
	:focus-visible,
	.skip-link:focus {
		outline-color: CanvasText;
	}
}

/* -----------------------------------------------
 * Scroll reveal animations
 * --------------------------------------------- */
.has-scroll-animations [data-animate] {
	--animate-duration: 700ms;
	--animate-delay: 0ms;
	--animate-translate-x: 0px;
	--animate-translate-y: 0px;
	--animate-scale: 1;
	opacity: 0;
	transform: translate3d(var(--animate-translate-x), var(--animate-translate-y), 0) scale(var(--animate-scale));
	transition-property: opacity, transform;
	transition-duration: var(--animate-duration);
	transition-delay: var(--animate-delay);
	transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}

.has-scroll-animations [data-animate-duration="400"] {
	--animate-duration: 400ms;
}

.has-scroll-animations [data-animate-duration="900"] {
	--animate-duration: 900ms;
}

.has-scroll-animations [data-animate-duration="1100"] {
	--animate-duration: 1100ms;
}

.has-scroll-animations [data-animate-duration="1300"] {
	--animate-duration: 1300ms;
}

.has-scroll-animations [data-animate-delay="100"] {
	--animate-delay: 100ms;
}

.has-scroll-animations [data-animate-delay="200"] {
	--animate-delay: 200ms;
}

.has-scroll-animations [data-animate-delay="300"] {
	--animate-delay: 300ms;
}

.has-scroll-animations [data-animate-delay="400"] {
	--animate-delay: 400ms;
}

.has-scroll-animations [data-animate-delay="500"] {
	--animate-delay: 500ms;
}

.has-scroll-animations [data-animate-delay="600"] {
	--animate-delay: 600ms;
}

.has-scroll-animations [data-animate-delay="700"] {
	--animate-delay: 700ms;
}

.base-theme-image-reveal {
	display: contents;
}

.has-scroll-animations [data-animate="image-reveal"] {
	opacity: 1;
	transform: none;
	transition-property: none;
	will-change: auto;
}

.has-scroll-animations [data-reveal-animation] img,
.has-scroll-animations img[data-reveal-animation] {
	--image-reveal-duration: 1100ms;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	transition-property: -webkit-clip-path, clip-path;
	transition-duration: var(--image-reveal-duration);
	transition-delay: var(--animate-delay, 0ms);
	transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
	will-change: clip-path;
}

.has-scroll-animations [data-reveal-animation][data-animate-duration="400"] img,
.has-scroll-animations img[data-reveal-animation][data-animate-duration="400"] {
	--image-reveal-duration: 400ms;
}

.has-scroll-animations [data-reveal-animation][data-animate-duration="700"] img,
.has-scroll-animations img[data-reveal-animation][data-animate-duration="700"] {
	--image-reveal-duration: 700ms;
}

.has-scroll-animations [data-reveal-animation][data-animate-duration="900"] img,
.has-scroll-animations img[data-reveal-animation][data-animate-duration="900"] {
	--image-reveal-duration: 900ms;
}

.has-scroll-animations [data-reveal-animation][data-animate-duration="1100"] img,
.has-scroll-animations img[data-reveal-animation][data-animate-duration="1100"] {
	--image-reveal-duration: 1100ms;
}

.has-scroll-animations [data-reveal-animation][data-animate-duration="1300"] img,
.has-scroll-animations img[data-reveal-animation][data-animate-duration="1300"] {
	--image-reveal-duration: 1300ms;
}

.has-scroll-animations [data-reveal-animation].is-animated img,
.has-scroll-animations img[data-reveal-animation].is-animated {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.has-scroll-animations [data-reveal-animation].animation-complete img,
.has-scroll-animations [data-reveal-animation].is-animation-complete img,
.has-scroll-animations img[data-reveal-animation].animation-complete,
.has-scroll-animations img[data-reveal-animation].is-animation-complete {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	transition: none;
	will-change: auto;
}

.has-scroll-animations [data-animate="fade"] {
	transform: none;
	transition-property: opacity;
	will-change: opacity;
}

.has-scroll-animations [data-animate].is-animated {
	opacity: 1;
	transform: none;
}

.has-scroll-animations [data-animate="fade-up"] {
	transform: translateY(20px);
	transition-property: opacity, transform;
	will-change: auto;
}

.has-scroll-animations [data-animate="fade-up"].is-animated {
	transform: translateY(0);
}

.has-scroll-animations [data-animate="fade-down"] {
	--animate-translate-y: -20px;
	transform: translateY(var(--animate-translate-y));
	will-change: auto;
}

.has-scroll-animations [data-animate="fade-left"] {
	--animate-translate-x: 20px;
	transform: translateX(var(--animate-translate-x));
	will-change: auto;
}

.has-scroll-animations [data-animate="fade-right"] {
	--animate-translate-x: -20px;
	transform: translateX(var(--animate-translate-x));
	will-change: auto;
}

.has-scroll-animations [data-animate="zoom-in"] {
	transform: scale(0.95);
	transition-property: opacity, transform;
	will-change: auto;
}

.has-scroll-animations [data-animate="blur-in"] {
	filter: blur(5px);
	transition-property: opacity, transform, filter;
	will-change: opacity, transform, filter;
}

.has-scroll-animations [data-animate="blur-in"].is-animated {
	filter: none;
}

.has-scroll-animations [data-animate="scroll-reveal"] {
	opacity: 1;
	transform: none;
	transition-property: none;
	will-change: auto;
}

.has-scroll-animations [data-animate="scroll-reveal"] .animate-word {
	opacity: var(--animate-word-opacity, 0.55);
	transition: opacity 80ms linear;
	will-change: opacity;
}

.has-scroll-animations [data-animate="scroll-reveal"][data-scroll-reveal-complete="true"] .animate-word {
	will-change: auto;
}

.has-scroll-animations [data-animate="line-reveal"] {
	transform: none;
	will-change: auto;
}

.has-scroll-animations [data-animate="line-reveal"]:not([data-line-reveal-ready="true"]) {
	opacity: 0;
}

.has-scroll-animations [data-animate="line-reveal"][data-line-reveal-ready="true"] {
	opacity: 1;
	transition-property: none;
}

.has-scroll-animations [data-animate="line-reveal"] .animate-line {
	display: block;
	overflow: hidden;
	padding-block-end: 0.16em;
	margin-block-end: -0.16em;
}

.has-scroll-animations [data-animate="line-reveal"] .animate-line__inner {
	display: inline-block;
	transform: translate3d(0, 110%, 0);
	backface-visibility: hidden;
	will-change: transform;
}

.has-scroll-animations [data-animate="line-reveal"].is-animated .animate-line__inner {
	animation: base-theme-line-reveal var(--animate-duration) cubic-bezier(0.22, 1, 0.36, 1) forwards;
	animation-delay: calc(var(--animate-delay) + var(--animate-line-delay, 0ms));
}

.has-scroll-animations [data-animate="line-reveal"].is-animation-complete .animate-line__inner {
	transform: translate3d(0, 0, 0);
	animation: none;
	will-change: auto;
}

@keyframes base-theme-line-reveal {
	to {
		transform: translate3d(0, 0, 0);
	}
}

.has-scroll-animations [data-animate].is-animation-complete {
	will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
	.has-scroll-animations [data-animate] {
		opacity: 1;
		transform: none;
		filter: none;
		transition: none;
		will-change: auto;
	}

	.has-scroll-animations [data-animate="line-reveal"] .animate-line__inner {
		transform: none;
		animation: none;
	}

	.has-scroll-animations [data-animate="scroll-reveal"] .animate-word {
		opacity: 1;
		transition: none;
		will-change: auto;
	}

	[data-reveal-animation] img,
	img[data-reveal-animation] {
		-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
		transition: none;
		will-change: auto;
	}
}

@media (prefers-contrast: more), (forced-colors: active) {
	.has-scroll-animations [data-animate="scroll-reveal"] .animate-word {
		opacity: 1;
		transition: none;
		will-change: auto;
	}
}

.base-theme-video {
	inline-size: 100%;
}

.base-theme-video__frame {
	aspect-ratio: 16 / 9;
	background: #000;
	inline-size: 100%;
	overflow: hidden;
	position: relative;
}

.base-theme-video__iframe,
.base-theme-video__media,
.base-theme-video__poster-button,
.base-theme-video__poster-image {
	block-size: 100%;
	inline-size: 100%;
}

.base-theme-video__iframe {
	border: 0;
	display: block;
}

.base-theme-video__media {
	background: #000;
	display: block;
	object-fit: contain;
}

.base-theme-video__poster-button {
	background: #000;
	border: 0;
	color: #fff;
	cursor: pointer;
	display: block;
	inset: 0;
	padding: 0;
	position: absolute;
}

.base-theme-video__poster-image {
	display: block;
	object-fit: cover;
}

.base-theme-video__play-icon {
	background: rgba(0, 0, 0, 0.62);
	border-radius: 999px;
	block-size: 4.25rem;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.25);
	inline-size: 4.25rem;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	position: absolute;
	transform: translate(-50%, -50%);
}

.base-theme-video__play-icon::before {
	border-block: 0.75rem solid transparent;
	border-inline-start: 1.15rem solid currentColor;
	content: "";
	inset-block-start: 50%;
	inset-inline-start: 50%;
	position: absolute;
	transform: translate(-35%, -50%);
}

.base-theme-video__poster-button:hover .base-theme-video__play-icon,
.base-theme-video__poster-button:focus-visible .base-theme-video__play-icon {
	background: rgba(0, 0, 0, 0.8);
}

.base-theme-pagination {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-block-start: 2rem;
	position: relative;
}

.base-theme-pagination__list {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.base-theme-pagination__item {
	margin: 0;
}

.base-theme-pagination__link {
	align-items: center;
	border: 1px solid currentColor;
	color: inherit;
	display: inline-flex;
	justify-content: center;
	min-block-size: 2.5rem;
	min-inline-size: 2.5rem;
	padding: 0.45rem 0.75rem;
	text-align: center;
	text-decoration: none;
}

.base-theme-pagination__link:hover,
.base-theme-pagination__link:focus-visible {
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.base-theme-pagination__item.is-current .base-theme-pagination__link,
.base-theme-pagination__link.current,
.base-theme-pagination__link[aria-current="page"] {
	background: currentColor;
	color: Canvas;
	pointer-events: none;
}

.base-theme-pagination__item.is-gap .base-theme-pagination__link,
.base-theme-pagination__link.dots {
	border-color: transparent;
	min-inline-size: auto;
	pointer-events: none;
}

.base-theme-pagination__link[aria-disabled="true"],
.base-theme-pagination__link.is-disabled,
.base-theme-pagination.is-loading .base-theme-pagination__load-more-link {
	opacity: 0.62;
	pointer-events: none;
}

.base-theme-pagination--load-more {
	justify-content: center;
}

.base-theme-pagination__load-more-link {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	text-align: center;
}

.base-theme-pagination__status {
	block-size: 1px;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	inline-size: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
}

.base-theme-google-map__canvas {
	inline-size: 100%;
	min-block-size: 20rem;
}

.base-theme-google-map__image-frame {
	aspect-ratio: 16 / 9;
	inline-size: 100%;
	overflow: hidden;
}

.base-theme-google-map__image {
	block-size: 100%;
	display: block;
	inline-size: 100%;
	object-fit: cover;
}

.base-theme-google-map__markers {
	margin-top: 1rem;
	padding-left: 1.25rem;
}

.base-theme-google-map__marker + .base-theme-google-map__marker {
	margin-top: 0.5rem;
}

.base-theme-google-map__marker-label,
.base-theme-google-map__marker-address,
.base-theme-google-map__marker-coordinates {
	display: block;
}

.base-theme-google-map__info-window {
	max-inline-size: 20rem;
}

.base-theme-google-map__info-window-content > :first-child {
	margin-block-start: 0;
}

.base-theme-google-map__info-window-content > :last-child {
	margin-block-end: 0;
}

.base-theme-google-map__info-window-address:not(:first-child) {
	margin-block-start: 0.5rem;
}

.base-social-set__icon {
	block-size: 1em;
	display: inline-block;
	flex: 0 0 auto;
	inline-size: 1em;
	vertical-align: middle;
}

img.base-social-set__icon {
	object-fit: contain;
}

svg.base-social-set__icon {
	fill: currentColor;
}

.base-theme-search-form {
	align-items: stretch;
	display: flex;
}

.base-theme-search-form__field {
	min-inline-size: 0;
}

.base-theme-search-form__submit {
	align-items: center;
	display: inline-flex;
}

.base-theme-search-form__submit-icon,
.base-theme-search-disclosure__trigger-icon {
	block-size: 1em;
	flex: 0 0 auto;
	inline-size: 1em;
}

.base-theme-search-disclosure__trigger {
	align-items: center;
	cursor: pointer;
	display: inline-flex;
	gap: 0.35em;
	list-style: none;
}

.base-theme-search-disclosure__trigger::-webkit-details-marker {
	display: none;
}

.base-theme-search-disclosure:not([open]) > .base-theme-search-disclosure__panel,
.base-theme-search-disclosure__panel[hidden] {
	display: none;
}

.base-theme-accordion {
	display: grid;
	gap: var(--base-theme-accordion-item-gap, 0);
}

.base-theme-accordion__summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: var(--base-theme-accordion-summary-gap, 1rem);
	justify-content: space-between;
	list-style: none;
}

.base-theme-accordion__summary::-webkit-details-marker {
	display: none;
}

.base-theme-accordion__icon {
	margin-inline-start: auto;
}

.base-theme-accordion__panel {
	padding-block-start: var(--base-theme-accordion-panel-gap, 1rem);
}

.base-theme-back-to-top {
	align-items: center;
	color: currentColor;
	display: inline-flex;
	flex-direction: column;
	gap: 0.875rem;
	text-align: center;
	text-decoration: none;
}

.base-theme-back-to-top:hover,
.base-theme-back-to-top:focus-visible {
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.base-theme-back-to-top__icon {
	color: currentColor;
	display: block;
	inline-size: clamp(2rem, 2.2vw, 2.6rem);
	transition: transform 180ms ease;
}

.base-theme-back-to-top__arrow {
	block-size: auto;
	inline-size: 100%;
}

.base-theme-back-to-top__label {
	transition: transform 180ms ease;
}

.base-theme-back-to-top:hover .base-theme-back-to-top__icon,
.base-theme-back-to-top:focus-visible .base-theme-back-to-top__icon {
	transform: translateY(-0.35rem);
}

.base-theme-back-to-top:hover .base-theme-back-to-top__label,
.base-theme-back-to-top:focus-visible .base-theme-back-to-top__label {
	transform: translateY(-0.1rem);
}

@media (prefers-reduced-motion: reduce) {
	.base-theme-back-to-top__icon,
	.base-theme-back-to-top__label {
		transition: none;
	}

	.base-theme-back-to-top:hover .base-theme-back-to-top__icon,
	.base-theme-back-to-top:focus-visible .base-theme-back-to-top__icon,
	.base-theme-back-to-top:hover .base-theme-back-to-top__label,
	.base-theme-back-to-top:focus-visible .base-theme-back-to-top__label {
		transform: none;
	}
}

/* Clip shared parallax media while the parent runtime moves and scales it. */
[data-base-theme-parallax-active-container="true"] {
	overflow: hidden;
	overflow: clip;
}

/* Shared image-pattern layer for managed block and Group backgrounds. */
.base-theme-has-background-pattern {
	position: relative;
	isolation: isolate;
}

.base-theme-has-background-pattern::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	background-image: var(--base-theme-background-pattern-image);
	opacity: var(--base-theme-background-pattern-opacity, 1);
	pointer-events: none;
	content: "";
}

.base-theme-background-pattern--repeat::before {
	background-position: left top;
	background-repeat: repeat;
	background-size: auto;
}

.base-theme-background-pattern--cover::before {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Shared image-overlay layer for blocks with foreground content over media. */
.base-theme-has-image-overlay {
	position: relative;
	isolation: isolate;
}

.base-theme-has-image-overlay::after {
	position: absolute;
	z-index: 0;
	inset: 0;
	border-radius: inherit;
	background: var(--base-theme-image-overlay-colour, rgb(0, 0, 0));
	opacity: var(--base-theme-image-overlay-opacity, 0.45);
	pointer-events: none;
	content: "";
}

.base-theme-has-image-overlay > .block__inner {
	position: relative;
	z-index: 1;
}

.base-theme-image-overlay--from-bottom::after {
	background: linear-gradient(to top, var(--base-theme-image-overlay-colour) 0%, var(--base-theme-image-overlay-transparent-colour) var(--base-theme-image-overlay-reach, 70%));
}

.base-theme-image-overlay--from-top::after {
	background: linear-gradient(to bottom, var(--base-theme-image-overlay-colour) 0%, var(--base-theme-image-overlay-transparent-colour) var(--base-theme-image-overlay-reach, 70%));
}

.base-theme-image-overlay--from-left::after {
	background: linear-gradient(to right, var(--base-theme-image-overlay-colour) 0%, var(--base-theme-image-overlay-transparent-colour) var(--base-theme-image-overlay-reach, 70%));
}

.base-theme-image-overlay--from-right::after {
	background: linear-gradient(to left, var(--base-theme-image-overlay-colour) 0%, var(--base-theme-image-overlay-transparent-colour) var(--base-theme-image-overlay-reach, 70%));
}

/* Typography */
:root {
    --text-wrap-headings: balance;
    --text-wrap-body: pretty;
    --leading-heading: clamp(1em, calc(1em + 0.55rem), 1.5em);
    --leading-body: clamp(1em, calc(1em + 0.55rem), 1.75em);
    --font-headings-letter-spacing: normal;
    --font-body-letter-spacing: normal;
    --font-preheading-letter-spacing: 0.12em;
    --font-headings-color: var(--color-colour-1788509155080-1);
    --font-preheading-color: var(--color-colour-1788509155080-1);
    --font-body-color: var(--color-colour-1788509155080-1);
    --font-preheading-weight: 500;
    --font-preheading-margin-bottom: var(--space-xxs);
    --font-strong-weight: 700;
    --content-flow-gap: var(--space-l);
    --content-heading-to-text-gap: var(--space-m);
    --content-section-gap: var(--space-xxl);
    --content-featured-gap: var(--space-xxl);
    --content-featured-pair-gap: var(--space-m);
    --content-buttons-gap: var(--space-xl);
    --max-content-width-heading-xxs: 14ch;
    --max-content-width-heading-xs: 19ch;
    --max-content-width-heading-s: 25ch;
    --max-content-width-heading-m: 35ch;
    --max-content-width-heading-l: 45ch;
    --max-content-width-heading-xl: 56ch;
    --max-content-width-body-xxs: 32ch;
    --max-content-width-body-xs: 42ch;
    --max-content-width-body-s: 54ch;
    --max-content-width-body-m: 65ch;
    --max-content-width-body-l: 76ch;
    --max-content-width-body-xl: 88ch;
    --max-content-width-heading-full: 100%;
    --max-content-width-body-full: 100%;
    --max-content-width-heading-default: var(--max-content-width-heading-m);
    --max-content-width-body-default: var(--max-content-width-body-m);
    --font-buttons-weight: 400;
    --font-h1-size: clamp(1.9438rem, calc(1.271vw + 1.6578rem), 2.9606rem);
    --font-h1-margin-bottom: 0.5lh;
    --font-h2-size: clamp(1.62rem, calc(0.7516vw + 1.4509rem), 2.2213rem);
    --font-h2-margin-bottom: 0.5lh;
    --font-h3-size: clamp(1.35rem, calc(0.3954vw + 1.261rem), 1.6663rem);
    --font-h3-margin-bottom: 0.5lh;
    --font-h4-size: clamp(1.125rem, calc(0.1563vw + 1.0898rem), 1.25rem);
    --font-h4-margin-bottom: 0.5lh;
    --font-h5-size: 0.9375rem;
    --font-h5-margin-bottom: 0.4lh;
    --font-h6-size: clamp(0.7038rem, calc(-0.0969vw + 0.8031rem), 0.7813rem);
    --font-h6-margin-bottom: 0.35lh;
    --font-body-size: clamp(1rem, calc(0.1563vw + 0.9648rem), 1.125rem);
    --font-size-xxl: clamp(1.728rem, calc(1.1709vw + 1.4646rem), 2.6647rem);
    --font-size-xl: clamp(1.44rem, calc(0.6988vw + 1.2828rem), 1.999rem);
    --font-size-l: clamp(1.2rem, calc(0.3745vw + 1.1157rem), 1.4996rem);
    --font-size-m: clamp(1rem, calc(0.1563vw + 0.9648rem), 1.125rem);
    --font-size-s: clamp(0.8333rem, calc(0.0134vw + 0.8303rem), 0.844rem);
    --font-size-xs: clamp(0.6331rem, calc(-0.0766vw + 0.7116rem), 0.6944rem);
    --font-size-xxs: clamp(0.475rem, calc(-0.1296vw + 0.6079rem), 0.5787rem);
    --font-heading-size-large-hero: clamp(2.5rem, calc(2.3438vw + 1.9727rem), 4.375rem);
}
@media (min-width: 1024px) {
    :root {
        --content-flow-gap: var(--space-l);
        --content-heading-to-text-gap: var(--space-m);
        --content-section-gap: var(--space-xxl);
        --content-featured-gap: var(--space-xxl);
        --content-featured-pair-gap: var(--space-m);
        --content-buttons-gap: var(--space-xl);
    }
}
html {
    font-size: 100%;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    text-wrap: var(--text-wrap-headings);
    letter-spacing: var(--font-headings-letter-spacing);
}
.normal-case {
    text-transform: none;
}
.uppercase {
    text-transform: uppercase;
}
.lowercase {
    text-transform: lowercase;
}
.capitalize {
    text-transform: capitalize;
}
.text-wrap-wrap {
    text-wrap: wrap;
}
.text-wrap-pretty {
    text-wrap: pretty;
}
.text-wrap-balance {
    text-wrap: balance;
}
.text-wrap-inherit {
    text-wrap: inherit;
}
.text-wrap-auto {
    text-wrap: auto;
}
.font-family-headings {
    font-family: var(--font-headings-family, inherit);
}
.font-family-body {
    font-family: var(--font-body-family, inherit);
}
.font-family-preheading {
    font-family: var(--font-preheading-family, inherit);
}
.typography-role-headings {
    font-family: var(--font-headings-family, inherit);
    font-weight: var(--font-headings-weight, inherit);
    line-height: var(--leading-heading);
    letter-spacing: var(--font-headings-letter-spacing);
    text-wrap: var(--text-wrap-headings);
}
.typography-role-headings :where(p, li, dd, dt, td, th, blockquote, figcaption, label, legend, address) {
    line-height: var(--leading-heading);
}
.typography-role-preheading {
    font-family: var(--font-preheading-family, inherit);
    font-weight: var(--font-preheading-weight);
    line-height: var(--leading-body);
    letter-spacing: var(--font-preheading-letter-spacing);
    text-wrap: var(--text-wrap-body);
}
.typography-role-body {
    font-family: var(--font-body-family, inherit);
    font-weight: var(--font-body-weight, inherit);
    line-height: var(--leading-body);
    letter-spacing: var(--font-body-letter-spacing);
    text-wrap: var(--text-wrap-body);
}
body {
    text-wrap: var(--text-wrap-body);
    color: var(--font-body-color);
    letter-spacing: var(--font-body-letter-spacing);
}
strong, b {
    font-weight: var(--font-strong-weight);
}
.preheading {
    font-size: var(--font-size-s);
    line-height: var(--leading-body);
    color: var(--font-preheading-color);
    font-weight: var(--font-preheading-weight);
    margin-bottom: var(--font-preheading-margin-bottom);
    text-transform: uppercase;
    letter-spacing: var(--font-preheading-letter-spacing);
}
.max-content-width-heading-default {
    max-width: var(--max-content-width-heading-default);
}
.max-content-width-heading-xxs {
    max-width: var(--max-content-width-heading-xxs);
}
.max-content-width-heading-xs {
    max-width: var(--max-content-width-heading-xs);
}
.max-content-width-heading-s {
    max-width: var(--max-content-width-heading-s);
}
.max-content-width-heading-m {
    max-width: var(--max-content-width-heading-m);
}
.max-content-width-heading-l {
    max-width: var(--max-content-width-heading-l);
}
.max-content-width-heading-xl {
    max-width: var(--max-content-width-heading-xl);
}
.max-content-width-heading-full {
    max-width: var(--max-content-width-heading-full);
}
.max-content-width-body-default {
    max-width: var(--max-content-width-body-default);
}
.max-content-width-body-xxs {
    max-width: var(--max-content-width-body-xxs);
}
.max-content-width-body-xs {
    max-width: var(--max-content-width-body-xs);
}
.max-content-width-body-s {
    max-width: var(--max-content-width-body-s);
}
.max-content-width-body-m {
    max-width: var(--max-content-width-body-m);
}
.max-content-width-body-l {
    max-width: var(--max-content-width-body-l);
}
.max-content-width-body-xl {
    max-width: var(--max-content-width-body-xl);
}
.max-content-width-body-full {
    max-width: var(--max-content-width-body-full);
}
:where(.entry__header .entry__title), :where(.entry--empty .entry__title), :where(.entry__content :where(h1, .h1, h2, .h2, h3, .h3)) {
    max-width: var(--max-content-width-heading-default);
}
:where(.entry__content :where(h4, .h4, h5, .h5, h6, .h6)) {
    max-width: min(120ch, calc(var(--max-content-width-heading-default) + 10ch));
}
:where(.entry__content :where(p, li, blockquote):not(:where(.block-body-copy :where(p, li, blockquote)))), :where(.entry--empty p), :where(.wp-block .block-body-copy) {
    max-width: var(--max-content-width-body-default);
}
:where(.base-core-block-layout.core-max-content-width-heading-default > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3)) {
    max-width: var(--max-content-width-heading-default);
}
:where(.base-core-block-layout.core-max-content-width-heading-default > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6)) {
    max-width: min(120ch, calc(var(--max-content-width-heading-default) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-xxs > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-xxs);
}
.base-core-block-layout.core-max-content-width-heading-xxs > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-xxs) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-xs > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-xs);
}
.base-core-block-layout.core-max-content-width-heading-xs > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-xs) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-s > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-s);
}
.base-core-block-layout.core-max-content-width-heading-s > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-s) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-m > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-m);
}
.base-core-block-layout.core-max-content-width-heading-m > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-m) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-l > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-l);
}
.base-core-block-layout.core-max-content-width-heading-l > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-l) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-xl > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-xl);
}
.base-core-block-layout.core-max-content-width-heading-xl > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: min(120ch, calc(var(--max-content-width-heading-xl) + 10ch));
}
.base-core-block-layout.core-max-content-width-heading-full > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3) {
    max-width: var(--max-content-width-heading-full);
}
.base-core-block-layout.core-max-content-width-heading-full > .block__inner > :where(h4, .h4, h5, .h5, h6, .h6) {
    max-width: var(--max-content-width-heading-full);
}
:where(.base-core-block-layout.core-max-content-width-body-default > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote)), :where(.base-core-block-layout.core-max-content-width-body-default > .block__inner > :where(ul, ol) > li) {
    max-width: var(--max-content-width-body-default);
}
.base-core-block-layout.core-max-content-width-body-xxs > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-xxs > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-xxs);
}
.base-core-block-layout.core-max-content-width-body-xs > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-xs > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-xs);
}
.base-core-block-layout.core-max-content-width-body-s > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-s > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-s);
}
.base-core-block-layout.core-max-content-width-body-m > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-m > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-m);
}
.base-core-block-layout.core-max-content-width-body-l > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-l > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-l);
}
.base-core-block-layout.core-max-content-width-body-xl > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-xl > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-xl);
}
.base-core-block-layout.core-max-content-width-body-full > .block__inner > :where(p, blockquote, ul, ol, .wp-block-pullquote), .base-core-block-layout.core-max-content-width-body-full > .block__inner > :where(ul, ol) > li {
    max-width: var(--max-content-width-body-full);
}
/* Typography: content flow */
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > p:where(:not(.preheading)) {
    margin-bottom: var(--content-flow-gap);
}
:where(.wp-block .block-body-copy) > p:where(:not(.preheading)) {
    margin-bottom: var(--content-flow-gap);
}
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > :where(ul, ol):where(:not([role="list"])) {
    margin-bottom: var(--content-flow-gap);
    padding-left: 3ch;
}
:where(.wp-block .block-body-copy) > :where(ul, ol, blockquote) {
    margin-bottom: var(--content-flow-gap);
}
:where(.wp-block .block-body-copy) :where(ul, ol):where(:not([role="list"])) {
    padding-left: 3ch;
}
:where(.wp-block .block-body-copy) blockquote > p:last-of-type {
    margin-bottom: 0;
    margin-block-end: 0;
}
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > :where(ul, ol):where(:not([role="list"])) > li + li,
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > :where(ul, ol):where(:not([role="list"])) :where(ul, ol):where(:not([role="list"])) > li + li,
:where(.wp-block .block-body-copy) :where(ul, ol):where(:not([role="list"])) > li + li {
    margin-top: 0.5lh;
}
.entry__content a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]), .wp-block .block-body-copy a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]) {
    color: inherit;
    text-decoration-line: underline;
    transition: color 160ms ease-out, text-decoration-color 160ms ease-out, opacity 160ms ease-out;
}
.entry__content a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]):hover, .entry__content a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]):focus-visible, .wp-block .block-body-copy a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]):hover, .wp-block .block-body-copy a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]):focus-visible {
    opacity: 0.82;
}
.entry__content a:where(:has(> img:only-child), :has(> picture:only-child), :has(> span:only-child > img:only-child)):hover,
.entry__content a:where(:has(> img:only-child), :has(> picture:only-child), :has(> span:only-child > img:only-child)):focus-visible,
.wp-block .block-body-copy a:where(:has(> img:only-child), :has(> picture:only-child), :has(> span:only-child > img:only-child)):hover,
.wp-block .block-body-copy a:where(:has(> img:only-child), :has(> picture:only-child), :has(> span:only-child > img:only-child)):focus-visible {
    opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
    .entry__content a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]), .wp-block .block-body-copy a:not(.btn):not(.button):not(.base-theme-button-link):not(.wp-block-button__link):not(.wp-element-button):not([role="button"]) {
        transition: none;
    }
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link),
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link),
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link) {
    position: relative;
    text-decoration: none;
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child)),
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child)),
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child)) {
    position: static;
    text-decoration: inherit;
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after,
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after,
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    pointer-events: none;
    transition: transform 220ms ease-out, opacity 220ms ease-out;
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child))::after,
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child))::after,
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link):where(.btn, .button, .wp-block-button__link, .wp-element-button, [role='button'], :has(> img:only-child), :has(> picture:only-child), :has(> video:only-child), :has(> canvas:only-child), :has(> svg:only-child), :has(> span:only-child > img:only-child), :has(> span:only-child > svg:only-child))::after {
    content: none;
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after {
    transform: scaleX(0);
    transform-origin: bottom right;
}
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link):hover::after,
.block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link):focus-visible::after {
    transform: scaleX(1);
    transform-origin: bottom left;
}
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after {
    transform: scaleX(0);
    transform-origin: center;
}
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link):hover::after,
.block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link):focus-visible::after {
    transform: scaleX(1);
}
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after {
    transform: scaleX(1);
    opacity: 0;
}
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link):hover::after,
.block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link):focus-visible::after {
    opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
    .block-link-hover-underline-from-left a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after,
    .block-link-hover-underline-from-center a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after,
    .block-link-hover-underline-fade a:not(.is-link-hover-excluded):not(.base-theme-button-link)::after {
        transition: none;
    }
}
button, input[type='submit'], .btn {
    font-weight: var(--font-buttons-weight);
}
h1, .h1 {
    font-size: var(--font-h1-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h1-margin-bottom);
}
h2, .h2 {
    font-size: var(--font-h2-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h2-margin-bottom);
}
h3, .h3 {
    font-size: var(--font-h3-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h3-margin-bottom);
}
h4, .h4 {
    font-size: var(--font-h4-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h4-margin-bottom);
}
h5, .h5 {
    font-size: var(--font-h5-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h5-margin-bottom);
}
h6, .h6 {
    font-size: var(--font-h6-size);
    line-height: var(--leading-heading);
    margin-bottom: var(--font-h6-margin-bottom);
}
.heading-size-large-hero {
    font-size: var(--font-heading-size-large-hero);
    line-height: var(--leading-heading);
}
.text-xxl {
    font-size: var(--font-size-xxl);
    line-height: var(--leading-body);
}
.has-body-xxl-font-size {
    font-size: var(--font-size-xxl) !important;
}
.text-xl {
    font-size: var(--font-size-xl);
    line-height: var(--leading-body);
}
.has-body-xl-font-size {
    font-size: var(--font-size-xl) !important;
}
.text-l {
    font-size: var(--font-size-l);
    line-height: var(--leading-body);
}
.has-body-l-font-size {
    font-size: var(--font-size-l) !important;
}
.text-m {
    font-size: var(--font-size-m);
    line-height: var(--leading-body);
}
.has-body-m-font-size {
    font-size: var(--font-size-m) !important;
}
.text-s {
    font-size: var(--font-size-s);
    line-height: var(--leading-body);
}
.has-body-s-font-size {
    font-size: var(--font-size-s) !important;
}
.text-xs {
    font-size: var(--font-size-xs);
    line-height: var(--leading-body);
}
.has-body-xs-font-size {
    font-size: var(--font-size-xs) !important;
}
.text-xxs {
    font-size: var(--font-size-xxs);
    line-height: var(--leading-body);
}
.has-body-xxs-font-size {
    font-size: var(--font-size-xxs) !important;
}
.text-heading-h1 {
    font-size: var(--font-h1-size);
    line-height: var(--leading-heading);
}
.has-heading-h1-font-size {
    font-size: var(--font-h1-size) !important;
}
.text-heading-h2 {
    font-size: var(--font-h2-size);
    line-height: var(--leading-heading);
}
.has-heading-h2-font-size {
    font-size: var(--font-h2-size) !important;
}
.text-heading-h3 {
    font-size: var(--font-h3-size);
    line-height: var(--leading-heading);
}
.has-heading-h3-font-size {
    font-size: var(--font-h3-size) !important;
}
.text-heading-h4 {
    font-size: var(--font-h4-size);
    line-height: var(--leading-heading);
}
.has-heading-h4-font-size {
    font-size: var(--font-h4-size) !important;
}
.text-heading-h5 {
    font-size: var(--font-h5-size);
    line-height: var(--leading-heading);
}
.has-heading-h5-font-size {
    font-size: var(--font-h5-size) !important;
}
.text-heading-h6 {
    font-size: var(--font-h6-size);
    line-height: var(--leading-heading);
}
.has-heading-h6-font-size {
    font-size: var(--font-h6-size) !important;
}
.text-heading-large-hero {
    font-size: var(--font-heading-size-large-hero);
    line-height: var(--leading-heading);
}
.has-heading-large-hero-font-size {
    font-size: var(--font-heading-size-large-hero) !important;
}
body {
    font-size: var(--font-body-size);
    line-height: var(--leading-body);
}
:where(p, li, dd, dt, td, th, blockquote, figcaption, label, legend, address) {
    line-height: var(--leading-body);
}
:root {
    --img-min-height: 275px;
    --img-grayscale: 100%;
    --img-ratio-fullwidth: 16 / 9;
    --img-ratio-square: 1 / 1;
    --img-ratio-tallcard: 4 / 5;
    --img-ratio-widecard: 7 / 4;
}

img[data-img-ratio="fullwidth"] { aspect-ratio: var(--img-ratio-fullwidth); }
img[data-img-ratio="square"] { aspect-ratio: var(--img-ratio-square); }
img[data-img-ratio="tallcard"] { aspect-ratio: var(--img-ratio-tallcard); }
img[data-img-ratio="widecard"] { aspect-ratio: var(--img-ratio-widecard); }

img[data-img-grayscale="on"] { filter: grayscale(var(--img-grayscale)); }
img[data-img-grayscale="on"][data-img-hover-fade-colour="on"] { transition: filter 300ms ease; }
.has-scroll-animations [data-reveal-animation] img[data-img-grayscale="on"][data-img-hover-fade-colour="on"],
.has-scroll-animations img[data-reveal-animation][data-img-grayscale="on"][data-img-hover-fade-colour="on"] {
    transition-property: filter, -webkit-clip-path, clip-path;
    transition-duration: 300ms, var(--image-reveal-duration), var(--image-reveal-duration);
    transition-delay: 0ms, var(--animate-delay, 0ms), var(--animate-delay, 0ms);
    transition-timing-function: ease, cubic-bezier(0.76, 0, 0.24, 1), cubic-bezier(0.76, 0, 0.24, 1);
}
.has-scroll-animations [data-reveal-animation].animation-complete img[data-img-grayscale="on"][data-img-hover-fade-colour="on"],
.has-scroll-animations [data-reveal-animation].is-animation-complete img[data-img-grayscale="on"][data-img-hover-fade-colour="on"],
.has-scroll-animations img[data-reveal-animation].animation-complete[data-img-grayscale="on"][data-img-hover-fade-colour="on"],
.has-scroll-animations img[data-reveal-animation].is-animation-complete[data-img-grayscale="on"][data-img-hover-fade-colour="on"] { transition: filter 300ms ease; }
@media (hover: hover) and (pointer: fine) {
    img[data-img-grayscale="on"][data-img-hover-fade-colour="on"]:hover { filter: grayscale(0%); }
}

:root {
    --base-theme-slider-arrow-default-prev-image: none;
    --base-theme-slider-arrow-default-next-image: none;
}

.base-theme-slider-arrow-image {
    display: inline-block;
    inline-size: var(--base-theme-slider-arrow-size, 1em);
    block-size: var(--base-theme-slider-arrow-size, 1em);
    flex: 0 0 auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.base-theme-slider-arrow-image--prev.base-theme-slider-arrow-image-style--default {
    background-image: var(--base-theme-slider-arrow-default-prev-image);
}

.base-theme-slider-arrow-image--next.base-theme-slider-arrow-image-style--default {
    background-image: var(--base-theme-slider-arrow-default-next-image);
}

:root {
    --base-theme-accordion-icon-default-expand-image: none;
    --base-theme-accordion-icon-default-expand-fallback: 1;
    --base-theme-accordion-icon-default-collapse-image: none;
    --base-theme-accordion-icon-default-collapse-fallback: 1;
    --base-theme-accordion-icon-default-collapse-rotation: 180deg;
}

.base-theme-accordion-icon {
    position: relative;
    display: inline-block;
    inline-size: var(--base-theme-accordion-icon-size, 1em);
    block-size: var(--base-theme-accordion-icon-size, 1em);
    flex: 0 0 auto;
    background-image: var(--base-theme-accordion-icon-current-image, none);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: rotate(var(--base-theme-accordion-icon-current-rotation, 0deg));
}
.base-theme-accordion-icon::before {
    content: '';
    position: absolute;
    inset: 22%;
    box-sizing: border-box;
    border-right: 0.125em solid currentColor;
    border-bottom: 0.125em solid currentColor;
    opacity: var(--base-theme-accordion-icon-current-fallback, 0);
    transform: rotate(45deg);
}

.base-theme-accordion-icon-style--default {
    --base-theme-accordion-icon-current-image: var(--base-theme-accordion-icon-default-expand-image);
    --base-theme-accordion-icon-current-fallback: var(--base-theme-accordion-icon-default-expand-fallback);
    --base-theme-accordion-icon-current-rotation: 0deg;
}
details[open] > summary .base-theme-accordion-icon-style--default {
    --base-theme-accordion-icon-current-image: var(--base-theme-accordion-icon-default-collapse-image);
    --base-theme-accordion-icon-current-fallback: var(--base-theme-accordion-icon-default-collapse-fallback);
    --base-theme-accordion-icon-current-rotation: var(--base-theme-accordion-icon-default-collapse-rotation);
}
:root {
    --box-shadow-s: 0 1px 2px rgba(0, 0, 0, 0.08);
    --box-shadow-m: 0 4px 10px rgba(0, 0, 0, 0.12);
    --box-shadow-l: 0 10px 25px rgba(0, 0, 0, 0.14);
    --box-shadow-xl: 0 20px 50px rgba(0, 0, 0, 0.18);
}
:root {
    --border-radius-none: 0px;
    --border-radius-s: 8px;
    --border-radius-m: 16px;
    --border-radius-l: 32px;
    --border-radius-xl: 48px;
    --border-radius-pill: 999px;
}
:root {
    --breakpoint-xxl: 1640px;
    --breakpoint-xl: 1440px;
    --breakpoint-l: 1280px;
    --breakpoint-m: 1024px;
    --breakpoint-s: 768px;
    --breakpoint-xs: 480px;
    --breakpoint-xxs: 360px;
    --container-width-xs: 640px;
    --container-width-s: 840px;
    --container-width-m: 960px;
    --container-width-l: 1200px;
    --container-width-xl: 1360px;
    --container-width-xxl: 1600px;
    --container-width-default: var(--container-width-xl);
    --container-alignment-reference-width: var(--container-width-xl);
    --block-gutter-inline: clamp(16px, 4vw, 48px);
    --container-alignment-reference-edge: max(var(--block-gutter-inline), calc((100vw - var(--container-alignment-reference-width)) / 2));
}
.block__inner {
    margin-inline: auto;
    width: max(0px, calc(100% - (2 * var(--block-gutter-inline))));
}
.block-container-width-xs > .block__inner {
    max-width: var(--container-width-xs);
}
.block-container-width-s > .block__inner {
    max-width: var(--container-width-s);
}
.block-container-width-m > .block__inner {
    max-width: var(--container-width-m);
}
.block-container-width-l > .block__inner {
    max-width: var(--container-width-l);
}
.block-container-width-xl > .block__inner,
:where(.base-managed-block:not(.has-partial-managed-layout), .base-core-block-layout):not(:where(.block-container-width-xs, .block-container-width-s, .block-container-width-m, .block-container-width-l, .block-container-width-xl, .block-container-width-xxl, .block-container-width-full)) > .block__inner {
    max-width: var(--container-width-xl);
}
.block-container-width-xxl > .block__inner {
    max-width: var(--container-width-xxl);
}
.block-container-width-full > .block__inner {
    width: 100%;
    max-width: none;
}
.block__inner > .block-container-width-xs > .block__inner,
.block__inner > .block-container-width-s > .block__inner,
.block__inner > .block-container-width-m > .block__inner,
.block__inner > .block-container-width-l > .block__inner,
.block__inner > .block-container-width-xl > .block__inner,
.block__inner > .block-container-width-xxl > .block__inner,
.block__inner > .block-container-width-full > .block__inner {
    width: 100%;
}
.block__inner > :where(.base-managed-block:not(.has-partial-managed-layout), .base-core-block-layout):not(:where(.block-container-width-xs, .block-container-width-s, .block-container-width-m, .block-container-width-l, .block-container-width-xl, .block-container-width-xxl, .block-container-width-full)) > .block__inner {
    width: 100%;
}
.block-container-align-center > .block__inner,
:where(.base-managed-block:not(.has-partial-managed-layout), .base-core-block-layout):not(:where(.block-container-align-center, .block-container-align-left, .block-container-align-right)) > .block__inner {
    margin-inline: auto;
}
.block-container-align-left > .block__inner {
    margin-inline-start: var(--container-alignment-reference-edge);
    margin-inline-end: auto;
}
.block-container-align-right > .block__inner {
    margin-inline-start: auto;
    margin-inline-end: var(--container-alignment-reference-edge);
}
.block__inner > .block-container-align-left > .block__inner {
    margin-inline-start: 0;
}
.block-container-align-left > .block__inner > .block-container-align-center > .block__inner {
    margin-inline-start: 0;
    margin-inline-end: auto;
}
.block__inner > .block-container-align-right > .block__inner {
    margin-inline-end: 0;
}
.block-container-align-right > .block__inner > .block-container-align-center > .block__inner {
    margin-inline-start: auto;
    margin-inline-end: 0;
}
.block-container-align-left > .block__inner > :where(.base-managed-block:not(.has-partial-managed-layout), .base-core-block-layout):not(:where(.block-container-align-center, .block-container-align-left, .block-container-align-right)) > .block__inner {
    margin-inline-start: 0;
    margin-inline-end: auto;
}
.block-container-align-right > .block__inner > :where(.base-managed-block:not(.has-partial-managed-layout), .base-core-block-layout):not(:where(.block-container-align-center, .block-container-align-left, .block-container-align-right)) > .block__inner {
    margin-inline-start: auto;
    margin-inline-end: 0;
}
.block-content-align-left > .block__inner {
    --block-content-text-alignment: left;
    --block-content-flex-alignment: flex-start;
    text-align: var(--block-content-text-alignment);
}
.block-content-align-center > .block__inner {
    --block-content-text-alignment: center;
    --block-content-flex-alignment: center;
    text-align: var(--block-content-text-alignment);
}
.block-content-align-right > .block__inner {
    --block-content-text-alignment: right;
    --block-content-flex-alignment: flex-end;
    text-align: var(--block-content-text-alignment);
}
@media (min-width: 1024px) {
    .block-visibility-hide-desktop {
        display: none !important;
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .block-visibility-hide-tablet {
        display: none !important;
    }
}
@media (max-width: 767px) {
    .base-theme-sticky {
        position: static;
        top: auto;
        align-self: auto;
    }
    .wp-block-base-theme-columns .columns__row {
        display: block;
    }
    .wp-block-base-theme-columns .wp-block-base-theme-column,
    .wp-block-base-theme-columns .wp-block-base-theme-column.has-custom-width {
        flex: 1 1 auto;
        width: 100%;
        max-width: none;
    }
    .wp-block-base-theme-columns .wp-block-base-theme-column + .wp-block-base-theme-column {
        margin-top: var(--base-columns-gap, var(--space-m, 1.5rem));
    }
    .block-visibility-hide-mobile {
        display: none !important;
    }
}
:root {
    --section-space-top-xxs: 16px;
    --section-space-bottom-xxs: 16px;
    --section-space-top-xs: 32px;
    --section-space-bottom-xs: 32px;
    --section-space-top-s: 48px;
    --section-space-bottom-s: 48px;
    --section-space-top-m: 72px;
    --section-space-bottom-m: 72px;
    --section-space-top-l: 96px;
    --section-space-bottom-l: 96px;
    --section-space-top-xl: 128px;
    --section-space-bottom-xl: 128px;
    --space-xxs: clamp(0.375rem, calc(0.1563vw + 0.3398rem), 0.5rem);
    --space-xs: clamp(0.625rem, calc(0.1563vw + 0.5898rem), 0.75rem);
    --space-s: clamp(0.75rem, calc(0.3125vw + 0.6797rem), 1rem);
    --space-m: clamp(1rem, calc(0.3125vw + 0.9297rem), 1.25rem);
    --space-l: clamp(1.375rem, calc(0.3125vw + 1.3047rem), 1.625rem);
    --space-xl: clamp(1.75rem, calc(0.625vw + 1.6094rem), 2.25rem);
    --space-xxl: clamp(2.375rem, calc(0.7813vw + 2.1992rem), 3rem);
}
@media (min-width: 768px) {
    :root {
        --section-space-top-xxs: 24px;
        --section-space-bottom-xxs: 24px;
        --section-space-top-xs: 40px;
        --section-space-bottom-xs: 40px;
        --section-space-top-s: 56px;
        --section-space-bottom-s: 56px;
        --section-space-top-m: 92px;
        --section-space-bottom-m: 92px;
        --section-space-top-l: 120px;
        --section-space-bottom-l: 120px;
        --section-space-top-xl: 152px;
        --section-space-bottom-xl: 152px;
    }
}
@media (min-width: 1024px) {
    :root {
        --section-space-top-xxs: 32px;
        --section-space-bottom-xxs: 32px;
        --section-space-top-xs: 48px;
        --section-space-bottom-xs: 48px;
        --section-space-top-s: 72px;
        --section-space-bottom-s: 72px;
        --section-space-top-m: 112px;
        --section-space-bottom-m: 112px;
        --section-space-top-l: 144px;
        --section-space-bottom-l: 144px;
        --section-space-top-xl: 184px;
        --section-space-bottom-xl: 184px;
    }
}
.block-section-space-top-xxs {
    padding-top: var(--section-space-top-xxs);
}
.block-section-space-bottom-xxs {
    padding-bottom: var(--section-space-bottom-xxs);
}
.block-section-space-top-xs {
    padding-top: var(--section-space-top-xs);
}
.block-section-space-bottom-xs {
    padding-bottom: var(--section-space-bottom-xs);
}
.block-section-space-top-s {
    padding-top: var(--section-space-top-s);
}
.block-section-space-bottom-s {
    padding-bottom: var(--section-space-bottom-s);
}
.block-section-space-top-m,
.base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none)) {
    padding-top: var(--section-space-top-m);
}
.block-section-space-bottom-m,
.base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-bottom-xxs, .block-section-space-bottom-xs, .block-section-space-bottom-s, .block-section-space-bottom-m, .block-section-space-bottom-l, .block-section-space-bottom-xl, .block-section-space-bottom-none)) {
    padding-bottom: var(--section-space-bottom-m);
}
.block-section-space-top-l {
    padding-top: var(--section-space-top-l);
}
.block-section-space-bottom-l {
    padding-bottom: var(--section-space-bottom-l);
}
.block-section-space-top-xl {
    padding-top: var(--section-space-top-xl);
}
.block-section-space-bottom-xl {
    padding-bottom: var(--section-space-bottom-xl);
}
.block-section-space-top-none {
    padding-top: 0;
}
.block-section-space-bottom-none {
    padding-bottom: 0;
}

.block-media-stack {
    --block-media-stack-gap: var(--space-xl);
}

@media (min-width: 1024px) {
    .block-media-stack {
        --block-media-stack-gap: var(--space-xl);
    }
}

.block-media-stack.block-media-stack > * + * {
    margin-top: var(--block-media-stack-gap);
    margin-block-start: var(--block-media-stack-gap);
}

.block-column-gap.block-column-gap {
    --block-column-gap: var(--space-s);
    gap: var(--block-column-gap);
}

@media (min-width: 1024px) {
    .block-column-gap.block-column-gap {
        --block-column-gap: var(--space-m);
    }
}

.block-card-stack {
    --block-card-stack-gap: var(--space-s);
    display: grid;
    row-gap: var(--block-card-stack-gap);
    gap: var(--block-card-stack-gap);
}

@media (min-width: 1024px) {
    .block-card-stack {
        --block-card-stack-gap: var(--space-m);
    }
}

.block-card-stack.block-card-stack > * {
    margin-top: 0;
    margin-bottom: 0;
    margin-block-start: 0;
    margin-block-end: 0;
}

:root {
    --form-default-input-bg-color: #ffffff;
    --form-default-input-text-color: #1d2327;
    --form-default-input-border-color: #d1d5db;
    --form-default-input-focus-border-color: #00a0d2;
    --form-default-placeholder-color: #636b72;
    --form-default-label-color: #1d2327;
    --form-default-error-color: #dc3545;
    --form-default-border-width: 1px;
    --form-default-border-radius: 6px;
    --form-default-padding-top: 10px;
    --form-default-padding-right: 12px;
    --form-default-padding-bottom: 10px;
    --form-default-padding-left: 12px;
    --form-default-font-size: 16px;
    --form-default-font-family: inherit;
    --form-default-select-arrow-color: #636b72;
    --form-default-select-arrow-url: none;
    --form-default-focus-ring-width: 2px;
    --form-default-focus-ring-color: #00a0d2;
    --form-default-focus-ring-offset: 2px;
    --form-default-textarea-min-height: 140px;
    --form-default-check-size: 18px;
    --form-default-check-border-color: #d1d5db;
    --form-default-check-checked-color: #00a0d2;
    --form-default-check-radius: 4px;
    --form-default-field-gap: 1rem;
}

.base-theme-icon {
    display: inline-block;
    inline-size: 1em;
    block-size: 1em;
    flex: 0 0 auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
.base-theme-icon--custom { background-image: var(--base-theme-icon-url); }
.base-theme-icon--google {
    background-color: currentColor;
    -webkit-mask: var(--base-theme-icon-url) center / contain no-repeat;
    mask: var(--base-theme-icon-url) center / contain no-repeat;
}
.block-content-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: var(--block-content-flex-alignment, flex-start);
    gap: var(--space-s);
}

.block-content-buttons--stacked {
    flex-direction: column;
    align-items: var(--block-content-flex-alignment, flex-start);
}

@media (max-width: 479px) {
    .block-content-buttons {
        flex-direction: column;
        align-items: var(--block-content-flex-alignment, flex-start);
    }
}

.base-theme-button-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    line-height: 1.2;
    text-box: trim-both cap alphabetic;
    overflow: hidden;
    isolation: isolate;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

.base-theme-button-link:where(button) {
    -webkit-appearance: none;
    appearance: none;
    background: none;
    border: 0;
    cursor: pointer;
}

.base-theme-button-link:where(button:disabled),
.base-theme-button-link:where(button[aria-disabled="true"]) {
    cursor: default;
}

.base-theme-button-link:not([data-animate]),
.base-theme-button-link.is-animation-complete {
    transition-property: color, border-color, background-color, background-size, box-shadow, transform;
    transition-delay: 0ms;
}

.base-theme-button-link::before {
    content: "";
    position: absolute;
    inset: 0;
    background: transparent;
    z-index: -1;
    transform: scaleX(0);
    transform-origin: left center;
    pointer-events: none;
    transition-property: transform, opacity;
    transition-delay: 0ms;
    transition-timing-function: inherit;
}

@media (prefers-reduced-motion: reduce) {
    .base-theme-button-link,
    .base-theme-button-link::before,
    .base-theme-button-link::after {
        transition-duration: 0.01ms !important;
    }
    .base-theme-button-link:where(:hover, :focus-visible) {
        transform: none !important;
        box-shadow: none !important;
    }
    .base-theme-button-link:where(:hover, :focus-visible)::after {
        transform: none !important;
    }
}

.base-theme-button-link.has-button-icon-override {
    column-gap: var(--base-theme-button-icon-gap, 8px);
}

.base-theme-button-link.has-button-icon-override::after {
    content: "";
    flex: 0 0 auto;
    inline-size: var(--base-theme-button-icon-size, 16px);
    block-size: var(--base-theme-button-icon-size, 16px);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    pointer-events: none;
    transition-property: transform;
    transition-duration: inherit;
    transition-timing-function: inherit;
}

.base-theme-button-link.has-button-icon-override.base-theme-button-icon--custom::after {
    background-color: transparent;
    background-image: var(--base-theme-button-icon-url);
    -webkit-mask-image: none;
    mask-image: none;
}

.base-theme-button-link.has-button-icon-override.base-theme-button-icon--google::after {
    background: currentColor;
    -webkit-mask-image: var(--base-theme-button-icon-url);
    mask-image: var(--base-theme-button-icon-url);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.base-theme-button-link.has-button-icon-override.base-theme-button-icon-position--left::after { order: -1; }

.base-theme-button-link.has-button-icon-override.base-theme-button-icon-position--right::after { order: 1; }

.base-theme-button-link.has-button-icon-override.is-button-icon-unavailable { column-gap: 0; }

.base-theme-button-link.has-button-icon-override.is-button-icon-unavailable::after { content: none; display: none; }

.base-theme-button-link.has-button-icon-override:focus-visible::after { transform: var(--base-theme-button-icon-hover-transform, none); }

@media (hover: hover) and (pointer: fine) {
    .base-theme-button-link.has-button-icon-override:hover::after { transform: var(--base-theme-button-icon-hover-transform, none); }
}

.has-scroll-animations .base-theme-button-link[data-animate]:not(.is-animation-complete) {
    transition-property: opacity, transform;
    transition-duration: var(--animate-duration);
    transition-delay: var(--animate-delay);
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

.has-scroll-animations .base-theme-button-link[data-animate="fade"]:not(.is-animation-complete) {
    transition-property: opacity;
}

.has-scroll-animations .base-theme-button-link[data-animate="blur-in"]:not(.is-animation-complete) {
    transition-property: opacity, transform, filter;
}

.has-scroll-animations .base-theme-button-link[data-animate="fade-up"]:not(.is-animated):not(.is-animation-complete) {
    transform: translateY(20px);
}

.has-scroll-animations .base-theme-button-link[data-animate="fade-down"]:not(.is-animated):not(.is-animation-complete) {
    transform: translateY(-20px);
}

.has-scroll-animations .base-theme-button-link[data-animate="fade-left"]:not(.is-animated):not(.is-animation-complete) {
    transform: translateX(20px);
}

.has-scroll-animations .base-theme-button-link[data-animate="fade-right"]:not(.is-animated):not(.is-animation-complete) {
    transform: translateX(-20px);
}

.has-scroll-animations .base-theme-button-link[data-animate="zoom-in"]:not(.is-animated):not(.is-animation-complete) {
    transform: scale(0.95);
}

.has-scroll-animations .base-theme-button-link[data-animate="blur-in"]:not(.is-animated):not(.is-animation-complete) {
    filter: blur(5px);
}

.has-scroll-animations .base-theme-button-link[data-animate].is-animated:not(.is-animation-complete) {
    opacity: 1;
    transform: none;
}

.has-scroll-animations .base-theme-button-link[data-animate="blur-in"].is-animated:not(.is-animation-complete) {
    filter: none;
}

:root {
    --color-colour-1788339359844-1: #ffffff;
    --color-white: var(--color-colour-1788339359844-1);
    --color-colour-1788509155080-1: #000000;
    --color-black: var(--color-colour-1788509155080-1);
    --color-primary: #1d2327;
    --color-secondary: #636b72;
    --color-tertiary: #d1d5db;
    --site-body-background-color: #fff;
}
body {
    background-color: var(--base-theme-page-background, var(--site-body-background-color));
}
.block-background-white {
    background-color: var(--color-white);
}
.block-font-colour-white {
    color: var(--color-white);
}
.block-preheadings-colour-white .preheading {
    color: var(--color-white);
}
.block-preheadings-colour-white :where(.wp-block .preheading) {
    color: inherit;
}
.block-headings-colour-white :is(h1, h2, h3, h4, h5, h6) {
    color: var(--color-white);
}
.block-headings-colour-white :where(.wp-block :is(h1, h2, h3, h4, h5, h6)) {
    color: inherit;
}
.text-colour-white {
    color: var(--color-white);
}
.text-colour-white:is(h1, h2, h3, h4, h5, h6) {
    color: var(--color-white);
}
.block-background-black {
    background-color: var(--color-black);
}
.block-font-colour-black {
    color: var(--color-black);
}
.block-preheadings-colour-black .preheading {
    color: var(--color-black);
}
.block-preheadings-colour-black :where(.wp-block .preheading) {
    color: inherit;
}
.block-headings-colour-black :is(h1, h2, h3, h4, h5, h6) {
    color: var(--color-black);
}
.block-headings-colour-black :where(.wp-block :is(h1, h2, h3, h4, h5, h6)) {
    color: inherit;
}
.text-colour-black {
    color: var(--color-black);
}
.text-colour-black:is(h1, h2, h3, h4, h5, h6) {
    color: var(--color-black);
}
/* Style rule: adjacent_same_background_trim_spacing */
.base-managed-block:not(.block-container-width-full) + .base-managed-block.is-same-surface-as-previous:is(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none),
.base-managed-block:not(.block-container-width-full) + .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none)).is-same-surface-as-previous {
    padding-top: 0;
}
/* Style rule: adjacent_no_background_trim_spacing */
.base-managed-block:not([class*="block-background-"]):not(.block-has-section-surface):not(.block-container-width-full) + .base-managed-block:not([class*="block-background-"]):not(.block-has-section-surface):is(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none),
.base-managed-block:not([class*="block-background-"]):not(.block-has-section-surface):not(.block-container-width-full) + .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none)):not([class*="block-background-"]):not(.block-has-section-surface) {
    padding-top: 0;
}
/* Style rule: container_inner_edge_spacing_trim */
.wp-block-base-theme-container > .block__inner > .wp-block:is(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none):first-child,
.wp-block-base-theme-container > .block__inner > .wp-block-base-theme-block-pattern:first-child > .block-pattern__content > .wp-block:is(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none):first-child,
.wp-block-base-theme-container > .block__inner > .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none)):first-child,
.wp-block-base-theme-container > .block__inner > .wp-block-base-theme-block-pattern:first-child > .block-pattern__content > .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-top-xxs, .block-section-space-top-xs, .block-section-space-top-s, .block-section-space-top-m, .block-section-space-top-l, .block-section-space-top-xl, .block-section-space-top-none)):first-child {
    padding-top: 0;
}

.wp-block-base-theme-container > .block__inner > .wp-block:is(.block-section-space-bottom-xxs, .block-section-space-bottom-xs, .block-section-space-bottom-s, .block-section-space-bottom-m, .block-section-space-bottom-l, .block-section-space-bottom-xl, .block-section-space-bottom-none):last-child,
.wp-block-base-theme-container > .block__inner > .wp-block-base-theme-block-pattern:last-child > .block-pattern__content > .wp-block:is(.block-section-space-bottom-xxs, .block-section-space-bottom-xs, .block-section-space-bottom-s, .block-section-space-bottom-m, .block-section-space-bottom-l, .block-section-space-bottom-xl, .block-section-space-bottom-none):last-child,
.wp-block-base-theme-container > .block__inner > .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-bottom-xxs, .block-section-space-bottom-xs, .block-section-space-bottom-s, .block-section-space-bottom-m, .block-section-space-bottom-l, .block-section-space-bottom-xl, .block-section-space-bottom-none)):last-child,
.wp-block-base-theme-container > .block__inner > .wp-block-base-theme-block-pattern:last-child > .block-pattern__content > .base-managed-block:not(.has-partial-managed-layout):not(:where(.block-section-space-bottom-xxs, .block-section-space-bottom-xs, .block-section-space-bottom-s, .block-section-space-bottom-m, .block-section-space-bottom-l, .block-section-space-bottom-xl, .block-section-space-bottom-none)):last-child {
    padding-bottom: 0;
}
/* Style rule: background_edge_default_core_spacing */
.base-core-block-layout.has-managed-layout-edge-before {
    padding-top: var(--section-space-top-m);
}

.site__main > article:last-child > .entry__content > .base-core-block-layout:last-child,
.base-core-block-layout.has-managed-layout-edge-after {
    padding-bottom: var(--section-space-bottom-m);
}
/* Style rule: trailing_prose_margin_trim */
.entry__content > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child,
.entry__content .base-core-block-layout:last-child > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child,
.entry__content .base-core-block-layout:has(+ .base-managed-block) > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child,
.entry__content .base-core-block-layout:has(+ .wp-block-base-theme-block-pattern > .block-pattern__content > .base-managed-block:first-child) > .block__inner > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child,
.wp-block .block-body-copy:last-child > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child {
    margin-bottom: 0;
}
/* Style rule: managed_block_content_stack_rhythm */
.block-content-stack > :where(:not(.preheading)) {
    margin-top: 0;
    margin-bottom: 0;
    margin-block-start: 0;
    margin-block-end: 0;
}

.block-content-stack > :where(:not(.preheading)) + :where(:not(.preheading)) {
    margin-top: var(--content-flow-gap);
    margin-block-start: var(--content-flow-gap);
}

.block-content-stack > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) + :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .block-body-copy, p, ul, ol, blockquote) {
    margin-top: var(--content-heading-to-text-gap);
    margin-block-start: var(--content-heading-to-text-gap);
}

.block-content-stack > :where(.block-body-copy, p, ul, ol, blockquote) + :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) {
    margin-top: var(--content-section-gap);
    margin-block-start: var(--content-section-gap);
}

.block-content-stack > :where(:not(.preheading)) + :where(.block-content-buttons) {
    margin-top: var(--content-buttons-gap);
    margin-block-start: var(--content-buttons-gap);
}

.block-content-stack > :where(.block-body-copy) > :first-child {
    margin-top: 0;
    margin-block-start: 0;
}

.block-content-stack > :where(.block-body-copy) > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, ul, ol):last-child {
    margin-bottom: 0;
    margin-block-end: 0;
}

.block-content-stack > :where(.block-body-copy) > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6):has(+ :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .block-body-copy, p, ul, ol, blockquote)) {
    margin-bottom: 0;
    margin-block-end: 0;
}

.block-content-stack > :where(.block-body-copy) > :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) + :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .block-body-copy, p, ul, ol, blockquote) {
    margin-top: var(--content-heading-to-text-gap);
    margin-block-start: var(--content-heading-to-text-gap);
}

.block-content-stack > :where(.block-body-copy) > :where(p, ul, ol, blockquote):has(+ :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6)) {
    margin-bottom: 0;
    margin-block-end: 0;
}

.block-content-stack > :where(.block-body-copy) > :where(p, ul, ol, blockquote) + :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6) {
    margin-top: var(--content-section-gap);
    margin-block-start: var(--content-section-gap);
}
/* Style rule: core_block_content_flow */
:where(.entry__content, .base-core-block-flow-context) {
    --core-block-flow-gap: var(--content-flow-gap);
    --core-block-flow-gap-featured: var(--content-featured-gap);
    --core-block-flow-gap-featured-pair: var(--content-featured-pair-gap);
    --core-block-flow-gap-section: var(--content-section-gap);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow.base-core-block-flow {
    margin-top: 0;
    margin-bottom: 0;
    margin-block-start: 0;
    margin-block-end: 0;
}

:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell {
    display: flow-root;
}

:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell > :where(h1, h2, h3, h4, h5, h6, p, blockquote, ul, ol):first-child {
    margin-block-start: 0;
}

:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell > :where(h1, h2, h3, h4, h5, h6, p, blockquote, ul, ol):last-child {
    margin-block-end: 0;
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-layout.base-core-block-flow > .block__inner > :first-child {
    margin-top: 0;
    margin-bottom: 0;
    margin-block-start: 0;
    margin-block-end: 0;
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) + .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) {
    margin-block-start: var(--core-block-flow-gap);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > summary + .base-core-block-flow.base-core-block-flow:where(:not(.base-core-block-flow--spacer)) {
    margin-block-start: var(--core-block-flow-gap);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow--heading + .base-core-block-flow--text {
    margin-block-start: var(--content-heading-to-text-gap);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow--text:where(:not(.base-core-block-flow--heading)) + .base-core-block-flow--heading {
    margin-block-start: var(--core-block-flow-gap-section);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) + .base-core-block-flow.base-core-block-flow:where(.base-core-block-flow--featured, .wp-block-group:not(.is-layout-flex):not(.is-layout-grid):has(> .base-core-block-flow--featured:only-child)),
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow.base-core-block-flow:where(.base-core-block-flow--featured, .wp-block-group:not(.is-layout-flex):not(.is-layout-grid):has(> .base-core-block-flow--featured:only-child)) + .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) {
    margin-block-start: var(--core-block-flow-gap-featured);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) + .base-core-block-flow.base-core-block-flow--separator,
:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow.base-core-block-flow--separator + .base-core-block-flow:where(:not(.base-core-block-flow--spacer)) {
    margin-block-start: var(--core-block-flow-gap-section);
}

:where(.entry__content, .base-core-block-flow-context, :where(.entry__content, .base-core-block-flow-context) .base-core-block-flow-shell, :where(.entry__content, .base-core-block-flow-context) .wp-block-group:not(.is-layout-flex):not(.is-layout-grid), :where(.entry__content, .base-core-block-flow-context) .wp-block-column, :where(.entry__content, .base-core-block-flow-context) .wp-block-cover__inner-container, :where(.entry__content, .base-core-block-flow-context) .wp-block-media-text__content, :where(.entry__content, .base-core-block-flow-context) .wp-block-details) > .base-core-block-flow.base-core-block-flow:where(.base-core-block-flow--featured, .wp-block-group:not(.is-layout-flex):not(.is-layout-grid):has(> .base-core-block-flow--featured:only-child)) + .base-core-block-flow.base-core-block-flow:where(.base-core-block-flow--featured, .wp-block-group:not(.is-layout-flex):not(.is-layout-grid):has(> .base-core-block-flow--featured:only-child)) {
    margin-block-start: var(--core-block-flow-gap-featured-pair);
}

:where(.entry__content, .base-core-block-flow-context) .base-core-block-layout > .block__inner > .wp-block-image > .wp-element-caption,
:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow.wp-block-image > .wp-element-caption,
:where(.entry__content, .base-core-block-flow-context) .base-core-block-layout > .block__inner > .wp-block-gallery > :where(.blocks-gallery-caption, .wp-element-caption),
:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow.wp-block-gallery > :where(.blocks-gallery-caption, .wp-element-caption) {
    margin-block-start: var(--space-xxs);
    margin-block-end: 0;
}

:where(.entry__content, .base-core-block-flow-context) .base-core-block-layout > .block__inner > .wp-block-quote > p:last-of-type,
:where(.entry__content, .base-core-block-flow-context) .base-core-block-layout > .block__inner > .wp-block-pullquote blockquote > p:last-of-type,
:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow.wp-block-quote > p:last-of-type,
:where(.entry__content, .base-core-block-flow-context) .base-core-block-flow.wp-block-pullquote blockquote > p:last-of-type {
    margin-bottom: 0;
    margin-block-end: 0;
}
:focus-visible, .skip-link:focus {
    outline: 2px solid #00a0d2;
    outline-offset: 2px;
}
