/*
Theme Name:         Johan Ernst
Theme URI:          https://github.com/a8cteam51/johan-ernst
Author:             WordPress Special Projects
Author URI:         https://wpspecialprojects.wordpress.com
Description:        A WordPress theme for Johan Ernst.
Version:            1.0.0
Requires at least:  6.4
Requires PHP:       8.0
License:            GNU General Public License v3 or later
License URI:        http://www.gnu.org/licenses/gpl-3.0.html
Text Domain:        johan-ernst
Domain Path:        /languages
*/

/**
 * From https://github.com/hankchizljaw/modern-css-reset
 */

/* Set core body defaults */

body {
	box-sizing: border-box;
	min-height: 100vh;
	margin: 0;
	scroll-behavior: smooth;
	text-rendering: geometricprecision;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Box sizing rules */

*,
*::before,
*::after {
	box-sizing: inherit;
}

/* Remove list styles on ul, ol elements with a class attribute */

/* stylelint-disable no-duplicate-selectors */

nav ul {
	list-style: none;
}

/* stylelint-enable no-duplicate-selectors */

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	        text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	height: auto;
	max-width: 100%;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Remove animations and transitions for people that prefer not to see them */

@media (prefers-reduced-motion: reduce) {

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

/* Wrap pre tag content */

pre {
	overflow-x: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}
/* 600px */
/* 781px - WordPress column breakpoint */
/* 960px */
/* 1200px */
body {

	/* --- Admin bar offset variable --- */
	--admin-bar-offset: 0px;

	/* --- Speed for animations and transitions --- */
	--speed: 0.15s;
	--speed-slower: 0.3s;
	--speed-slowest: 0.5s;

	--menu-transition-speed: 1s;
	--mts-early: calc(var(--menu-transition-speed) / 3);

	/* --- WordPress utilities --- */
	--wp--style--gallery-gap-default: var(--wp--preset--spacing--3);
}
@media (max-width: 37.5em) {
body {
		--wp--style--root--padding-left: var(--wp--preset--spacing--2);
		--wp--style--root--padding-right: var(--wp--preset--spacing--2);
}
	}
body {

	/* --- Modal width --- */
	--modal-max-width: 898px;
}
@media (min-width: 1441px) {
body {
		--modal-max-width: 63vw;

		/* font-sizes */
		--wp--preset--font-size--1: clamp(0.813rem, 0rem + 0.903vi, 8.125rem);
		--wp--preset--font-size--2: clamp(1rem, 0rem + 1.111vi, 10rem);
		--wp--preset--font-size--3: clamp(1.25rem, 0rem + 1.389vi, 12.5rem);
		--wp--preset--font-size--4: clamp(1.563rem, 0rem + 1.736vi, 15.625rem);
		--wp--preset--font-size--5: clamp(1.938rem, 0rem + 2.153vi, 19.375rem);
		--wp--preset--font-size--6: clamp(2.438rem, 0rem + 2.708vi, 24.375rem);
		--wp--preset--font-size--7: clamp(3.063rem, 0rem + 3.403vi, 30.625rem);
		--wp--preset--font-size--8: clamp(3.813rem, 0rem + 4.236vi, 38.125rem);
		--wp--preset--font-size--9: clamp(5.938rem, 0rem + 6.597vi, 59.375rem);

		/* spacing */
		--wp--preset--spacing--050: clamp(0.25rem, 0rem + 0.278vi, 2.5rem);
		--wp--preset--spacing--1: clamp(0.5rem, 0rem + 0.556vi, 5rem);
		--wp--preset--spacing--1-5: clamp(0.75rem, 0rem + 0.833vi, 7.5rem);
		--wp--preset--spacing--2: clamp(1rem, 0rem + 1.111vi, 10rem);
		--wp--preset--spacing--3: clamp(1.5rem, 0rem + 1.667vi, 15rem);
		--wp--preset--spacing--4: clamp(2rem, 0rem + 2.222vi, 20rem);
		--wp--preset--spacing--5: clamp(2.5rem, 0rem + 2.778vi, 25rem);
		--wp--preset--spacing--6: clamp(3rem, 0rem + 3.333vi, 30rem);
		--wp--preset--spacing--7: clamp(3.5rem, 0rem + 3.889vi, 35rem);
		--wp--preset--spacing--8: clamp(4rem, 0rem + 4.444vi, 40rem);
		--wp--preset--spacing--9: clamp(4.5rem, 0rem + 5vi, 45rem);
		--wp--preset--spacing--10: clamp(5rem, 0rem + 5.556vi, 50rem);
		--wp--preset--spacing--11: clamp(5.5rem, 0rem + 6.111vi, 55rem);
		--wp--preset--spacing--12: clamp(6rem, 0rem + 6.667vi, 60rem);
		--wp--preset--spacing--13: clamp(6.5rem, 0rem + 7.222vi, 65rem);
		--wp--preset--spacing--14: clamp(7rem, 0rem + 7.778vi, 70rem);
		--wp--preset--spacing--20: clamp(10rem, 0rem + 11.111vi, 100rem);

		/* Widths */
		--wp--style--global--content-size: clamp(41.75rem, 0rem + 46.389vi, 417.5rem);
		--wp--style--global--wide-size: clamp(69.75rem, 0rem + 77.5vi, 697.5rem);
}
	}
/* ----------------------------------------------
# Admin bar
---------------------------------------------- */
.admin-bar {
	--admin-bar-offset: 32px;
}
@media (max-width: 782px) {
.admin-bar {
		--admin-bar-offset: 46px;
}
	}
.has-open-menu,
.has-open-modal {
	overflow: hidden;
}
.home {
	display: grid;
}
.home .wp-site-blocks,.error404 .wp-site-blocks {
		background-image: url(./assets/img/night-sky-2000x1333-001.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}
.has-map-block {
	height: calc(100vh - var(--admin-bar-offset));
	min-height: auto;
	overflow-y: hidden;
}
.has-map-block .wp-site-blocks {
		display: grid;
		grid-template-rows: auto 1fr auto;
		height: 100%;
	}
:is(.has-map-block .wp-site-blocks)  > * {
			position: relative;
		}
.has-map-block .site-header {
		z-index: 2;
	}
.has-map-block .site-footer {
		z-index: 1;
	}
/* ----------------------------------------------
# Site header
---------------------------------------------- */
.site-header {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--4) 0;
	position: sticky;
	top: var(--admin-bar-offset);
	width: 100%;
	z-index: 5;
	transition: all var(--speed) ease-in-out;
	transition-delay: calc(var(--speed-slower) - var(--speed));
}
.has-map-block .site-header {
		top: 0;
	}
.single-exploration .site-header {
		background-color: transparent;
		color: var(--wp--preset--color--base);
		position: fixed;
		top: var(--admin-bar-offset);
	}
:is(.single-exploration .site-header)::after {
			opacity: 0;
		}
.post-header-not-in-view:is(.single-exploration .site-header) {
			background-color: var(--wp--preset--color--base);
			box-shadow: 0px 4px 24px 0px #00000026;
			color: var(--wp--preset--color--contrast);
			transition: all var(--speed) ease-in-out;
		}
.post-header-not-in-view:is(.single-exploration .site-header) .header-home-link,.post-header-not-in-view:is(.single-exploration .site-header) .header-overlay-toggle {
				border-color: var(--wp--preset--color--gray);
			}
.post-header-not-in-view:is(.single-exploration .site-header)::after {
				opacity: 1;
			}
:is(.single-exploration .site-header) .header-home-link,:is(.single-exploration .site-header) .header-overlay-toggle {
			border-color: rgba(255, 255, 255, 0.5);
		}
.has-open-menu .site-header {
		color: var(--wp--preset--color--contrast);
		transition: all var(--speed) ease-in-out;
		transition-delay: 0;
	}
:is(.has-open-menu .site-header) .header-home-link,:is(.has-open-menu .site-header) .header-overlay-toggle {
			border-color: var(--wp--preset--color--gray);
		}
.home .site-header,.error404 .site-header {
		background-color: transparent;
		color: var(--wp--preset--color--base);
	}
.has-open-menu :is(.home .site-header,.error404 .site-header) {
			color: var(--wp--preset--color--contrast);
		}
.site-header .site-header-inner {
		display: grid;
		grid-template-columns: 1fr max-content 1fr;
		position: relative;
		z-index: 6;
	}
:is(.site-header .site-header-inner)::before {
			content: "";
			width: var(--wp--preset--spacing--5);
		}
@media (max-width: 37.5em) {
.site-header .site-header-inner {
			gap: var(--wp--preset--spacing--3);
			grid-template-columns: max-content 1fr max-content;
	}
		}
:is(.home :is(.site-header .site-header-inner))::before {
				display: none;
			}
.site-header .wp-block-site-logo {
		height: var(--wp--preset--spacing--4);
	}
@media (max-width: 37.5em) {
.site-header .wp-block-site-logo {
			text-align: center;
	}
		}
:is(.site-header .wp-block-site-logo)  > * {
			color: inherit;
			font-size: unset;
			height: 100%;
			margin: 0;
		}
:is(.site-header .wp-block-site-logo) svg {
			height: 100%;
			width: 100%;
		}
.site-header .header-overlay-toggle {
		align-items: center;
		background-color: transparent;
		border: 1px solid var(--wp--preset--color--gray);
		border-radius: 20em;
		color: currentcolor;
		cursor: pointer;
		display: flex;
		font-family: var(--wp--preset--font-family--roboto-mono);
		font-size: var(--wp--preset--font-size--2);
		font-weight: 500;
		height: var(--wp--preset--spacing--5);
		justify-self: end;
		line-height: 1;
		text-transform: uppercase;
		padding: var(--wp--preset--spacing--1) var(--wp--preset--spacing--6) var(--wp--preset--spacing--1) var(--wp--preset--spacing--2);
		width: max-content;
		transition: all var(--speed) ease-in-out;
	}
@media (max-width: 37.5em) {
.site-header .header-overlay-toggle {
			display: grid;
			height: var(--wp--preset--spacing--5);
			padding: 0;
			place-content: center;
			width: var(--wp--preset--spacing--5);
	}
		}
:is(.site-header .header-overlay-toggle):hover {
			background-color: var(--wp--preset--color--orange);
			border-color: var(--wp--preset--color--orange) !important;
			color: var(--wp--preset--color--contrast);
		}
:is(.site-header .header-overlay-toggle)::before {
			content: "Menu";
		}
@media (max-width: 37.5em) {
:is(.site-header .header-overlay-toggle)::before {
				display: none;
		}
			}
[aria-expanded="true"]:is(.site-header .header-overlay-toggle)::before {
				content: "Close";
			}
/* progress bar */
.single-exploration :is(.site-header:after),.single-post :is(.site-header:after) {
			content: "";
			background-color: var(--wp--preset--color--orange);
			height: var(--wp--preset--spacing--050);
			position: absolute;
			bottom: 0;
			width: calc(var(--scroll-position) / (var(--document-height) - var(--viewport-height)) * 100%);
		}
:is(.has-open-menu .site-header)::after {
			display: none;
		}
/* --- Header navigation overlay --- */
.header-navigation-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 5;
}
.header-navigation-overlay.toggle-block-hidden {
		display: block;
		overflow: hidden;
	}
.header-navigation-overlay-inner {
	display: grid;
	grid-template-columns: 1fr;
	height: 100%;
	max-width: none !important;
}
@media (min-width: 48.8126em) {
.header-navigation-overlay-inner {
		grid-template-columns: 1fr 1fr;
}
	}
.header-navigation-overlay-inner .header-navigation-overlay-image {
		display: none;
		margin-top: calc(var(--site-header-height) + var(--admin-bar-offset) + var(--wp--preset--spacing--3));
		margin-bottom: var(--wp--preset--spacing--5);
		position: relative;
	}
@media (min-width: 48.8126em) {
.header-navigation-overlay-inner .header-navigation-overlay-image {
			display: flex;
	}
		}
:is(.header-navigation-overlay-inner .header-navigation-overlay-image) .wp-block-image {
			margin: 0;
			opacity: 0;
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			transition: opacity var(--speed-slower) ease-in-out;
		}
:is(:is(.header-navigation-overlay-inner .header-navigation-overlay-image) .wp-block-image) img {
				height: 100%;
				object-fit: cover;
				width: 100%;
			}
:is(:is(.header-navigation-overlay-inner .header-navigation-overlay-image) .wp-block-image):nth-of-type(1) {
				opacity: 1;
			}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(1):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(2) {
		opacity: 1;
	}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(2):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(3) {
		opacity: 1;
	}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(3):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(4) {
		opacity: 1;
	}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(4):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(5) {
		opacity: 1;
	}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(5):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(6) {
		opacity: 1;
	}
.header-navigation-overlay-inner:has(.header-primary-navigation .wp-block-navigation-item:nth-of-type(6):hover) .header-navigation-overlay-image .wp-block-image:nth-of-type(7) {
		opacity: 1;
	}
.menu-overlay-content {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--8);
	height: 100vh;
	margin: 0 !important;
	overflow-y: scroll;
	padding-top: calc(var(--site-header-height) + var(--admin-bar-offset) + var(--wp--preset--spacing--3));
	text-wrap: pretty;
	width: 100%;
	max-width: none !important;
	scrollbar-width: none;
}
.menu-overlay-content::-webkit-scrollbar {
		display: none;
	}
@media (min-width: 48.8126em) {
.menu-overlay-content {
		padding-right: var(--wp--preset--spacing--3);
}
	}
.header-primary-navigation {
	counter-reset: nav-number;
	width: 100%;
}
.header-primary-navigation .wp-block-navigation__container {
		gap: 0;
	}
.header-primary-navigation .wp-block-navigation-item:first-of-type .wp-block-navigation-item__content {
		padding-top: 0;
	}
.header-primary-navigation .wp-block-navigation-item__content {
		counter-increment: nav-number;
		display: flex;
		gap: var(--wp--preset--spacing--2-5);
		padding: var(--wp--preset--spacing--2) 0;
		position: relative;
		-webkit-text-decoration: none !important;
		text-decoration: none !important;
	}
@media (max-width: 37.5em) {
.header-primary-navigation .wp-block-navigation-item__content {
			font-size: var(--wp--preset--spacing--4) !important;
	}
		}
:is(.header-primary-navigation .wp-block-navigation-item__content)::before {
			content: counter(nav-number, decimal-leading-zero);
			font-family: var(--wp--preset--font-family--roboto-mono);
			font-size: var(--wp--preset--font-size--1);
			font-weight: 500;
			line-height: 1;
			transition: color var(--speed) ease-in-out;
		}
:is(.header-primary-navigation .wp-block-navigation-item__content):hover {
			text-decoration: none !important;
			-webkit-text-decoration: transparent !important;
			        text-decoration: transparent !important;
		}
:is(.header-primary-navigation .wp-block-navigation-item__content):hover::before {
				color: var(--wp--preset--color--orange);
			}
:is(.header-primary-navigation .wp-block-navigation-item__content) .wp-block-navigation-item__label {
			position: relative;
		}
:is(:is(.header-primary-navigation .wp-block-navigation-item__content) .wp-block-navigation-item__label)::after {
				background: var(--wp--preset--color--orange);
				content: "";
				display: block;
				height: 2px;
				left: -0.05em;
				opacity: 0;
				position: absolute;
				bottom: 0.15em;
				transform: scaleX(0);
				transform-origin: center right;
				width: calc(100% + 0.1em);
				transition: opacity var(--speed) ease-in-out;
				z-index: -1;
			}
:is(.header-primary-navigation .wp-block-navigation-item__content):hover .wp-block-navigation-item__label {
			text-decoration-color: transparent !important;
		}
:is(:is(.header-primary-navigation .wp-block-navigation-item__content):hover .wp-block-navigation-item__label)::after {
				opacity: 1;
				transform: scaleX(1);
				transform-origin: center left;
				transition: transform 0.3s cubic-bezier(0.55, 0, 0.1, 1);
			}
.menu-bottom {
	margin-top: auto;
	width: 100%;
}
.header-secondary-navigation {
	margin-bottom: var(--wp--preset--spacing--5);
}
.header-secondary-navigation .wp-block-navigation__container {
		width: 100%;
	}
@media (min-width: 48.8126em) and (max-width: 60em) {
.header-secondary-navigation .wp-block-navigation__container {
			display: grid;
			gap: var(--wp--preset--spacing--3);
			grid-template-columns: 1fr 1fr;
	}
		}
@media (max-width: 37.5em) {
.header-secondary-navigation .wp-block-navigation__container {
			gap: var(--wp--preset--spacing--3);
	}
		}
@media (max-width: 420px) {
.header-secondary-navigation .wp-block-navigation__container {
			display: grid;
			gap: var(--wp--preset--spacing--3);
			grid-template-columns: 1fr 1fr;
	}
		}
/* ----------------------------------------------
# Site content
---------------------------------------------- */
.site-content {
	background-color: var(--wp--preset--color--base);
	border-radius: 0 0 var(--wp--preset--spacing--5) var(--wp--preset--spacing--5);
	margin-top: 0;
	padding-bottom: var(--wp--preset--spacing--10);
	position: relative;
	z-index: 1;
}
/* ----------------------------------------------
# Site footer
---------------------------------------------- */
.site-footer {
	position: sticky;
	bottom: 0;
}
@media (max-width: 48.8125em) {
.site-footer {
		position: relative;
}
	}
.site-footer-inner-wrap {
	position: relative;
}
.site-footer-inner-wrap::before {
		content: "";
		background-color: inherit;
		position: absolute;
		bottom: 100%;
		left: 0;
		height: 50%;
		width: 100%;
	}
@media (max-width: 48.8125em) {
.footer-content.footer-content {
		display: grid;
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--7);
}
	}
.footer-content.footer-content  > .wp-block-navigation {
		width: 100%;
		max-width: max-content;
	}
.footer-content.footer-content .wp-block-navigation__container {
		display: grid;
		gap: var(--wp--preset--spacing--1) var(--wp--preset--spacing--3);
		grid-template: repeat(3, 1fr) / 1fr max-content;
		grid-auto-flow: column;
	}
:is(.footer-content.footer-content .wp-block-navigation__container) .wp-block-navigation-item {
			white-space: nowrap;
		}
:is(:is(.footer-content.footer-content .wp-block-navigation__container) .wp-block-navigation-item)::before {
				content: "["
			}
:is(:is(.footer-content.footer-content .wp-block-navigation__container) .wp-block-navigation-item)::after {
				content: "]"
			}
.footer-site-logo {
	margin-top: clamp(var(--wp--preset--spacing--5), 20vh, 10.75rem);
}
:is(.footer-site-logo .wp-block-site-logo)  > * {
			height: 100%;
			width: 100%;
		}
.footer-details.footer-details {
	align-items: flex-start;
	gap: 0.5ch;
}
@media (max-width: 60em) {
.footer-details.footer-details {
		display: block;
}

		.footer-details.footer-details  > * {
			display: inline;
			padding: 0 0.5ch 0 0;
		}
	}
/* ---------------------------------------------
  Elements
--------------------------------------------- */
/* --- Selection --- */
::selection {
	background-color: var(--wp--preset--color--orange);
	color: var(--wp--preset--color--base);
}
.has-orange-background-color :is(::selection) {
		background-color: var(--wp--preset--color--base);
		color: var(--wp--preset--color--contrast);
	}
/* --- Anchors --- */
:is(a):not(.wp-element-button) {
	-webkit-text-decoration: underline;
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--orange);
	text-decoration-thickness: max(0.05em, 1px);
	text-underline-offset: 0.1em;
	transition: text-decoration-color var(--speed) linear;
}
:is(a):not(.wp-element-button):hover {
		text-decoration-color: transparent;
	}
.has-orange-background-color :is(a):not(.wp-element-button),.has-green-background-color :is(a):not(.wp-element-button) {
		text-decoration-color: currentcolor;
	}
:is(.has-orange-background-color :is(a):not(.wp-element-button),.has-green-background-color :is(a):not(.wp-element-button)):hover {
			text-decoration-color: transparent;
		}
figcaption {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	text-wrap: pretty;
	max-width: var(--wp--style--global--content-size);
}
.alignright figcaption {
		text-align: right !important;
		margin-right: 0;
	}
.alignleft figcaption {
		text-align: left !important;
		margin-left: 0;
	}
.wp-block-gallery > figcaption {
	margin: 0 auto !important;
}
/* --- Buttons --- */
.wp-block-button .wp-block-button__link {
	border: 1px solid transparent;
	border-radius: 20em;
	font-family: var(--wp--preset--font-family--roboto-mono);
	font-size: var(--wp--preset--font-size--1);
	font-weight: 500;
	text-transform: uppercase;
	padding: var(--wp--preset--spacing--2) var(--wp--preset--spacing--3);
	transition: all var(--speed) ease-in-out;
}
:is(.wp-block-button .wp-block-button__link):hover {
		background-color: var(--wp--preset--color--orange) !important;
		border-color: var(--wp--preset--color--orange) !important;
		color: var(--wp--preset--color--contrast) !important;
	}
/* --- Outline button --- */
.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border-color: currentcolor;
	color: currentcolor;
}
.is-offsite .wp-block-button__link {
	align-items: center;
	display: flex;
	gap: var(--wp--preset--spacing--1);
}
:is(.is-offsite .wp-block-button__link)::after {
		content: "";
		background-color: currentcolor;
		height: 1.25em;
		-webkit-mask-image: url(./assets/img/icon-arrow-offsite.svg);
		        mask-image: url(./assets/img/icon-arrow-offsite.svg);
		-webkit-mask-repeat: no-repeat;
		        mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		        mask-size: contain;
		width: 1.25em;
	}
/* ---------------------------------------------
  Blocks
--------------------------------------------- */
.wp-block-navigation.wp-block-navigation a:where(:not(.wp-element-button)),
.wp-block-post-title a,
.wp-block-query-pagination a,
.post-author a,
a[href^="mailto:"] {
	-webkit-text-decoration: underline;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-decoration-thickness: max(0.05em, 1px);
	text-underline-offset: 0.1em;
}
:is(.wp-block-navigation.wp-block-navigation a:where(:not(.wp-element-button)),.wp-block-post-title a,.wp-block-query-pagination a,.post-author a,a[href^="mailto:"]):hover {
		text-decoration-thickness: max(0.05em, 1px);
		text-underline-offset: 0.1em;
		text-decoration-color: var(--wp--preset--color--orange);
	}
.has-orange-background-color :is(.wp-block-navigation.wp-block-navigation a:where(:not(.wp-element-button)),.wp-block-post-title a,.wp-block-query-pagination a,.post-author a,a[href^="mailto:"]):hover {
			text-decoration-color: currentcolor;
		}
/* --- Pretty titles --- */
.wp-block-post-title,
.wp-block-heading {
	text-wrap: pretty;
}
/* --- Post terms --- */
.wp-block-post-terms a {
		text-decoration-color: transparent;
	}
:is(.wp-block-post-terms a):hover {
			text-decoration-color: var(--wp--preset--color--orange);
		}
/* --- Share buttons --- */
.share-post {
	align-items: center;
	border: 1px solid var(--wp--preset--color--contrast);
	border-radius: 20em;
	display: flex;
	flex-direction: column;
	font-size: var(--wp--preset--font-size--2);
	padding: var(--wp--preset--font-size--2) 0;
	width: var(--wp--preset--spacing--8);
}
.share-post .share-title {
		transform: rotate(-90deg);
		max-width: max-content;
	}
.share-post .wp-block-outermost-social-sharing {
		margin: 0;
	}
:is(:is(.share-post .wp-block-outermost-social-sharing) .wp-block-outermost-social-sharing-link):hover {
				transform: none;
			}
:is(:is(.share-post .wp-block-outermost-social-sharing) .wp-block-outermost-social-sharing-link) .wp-block-outermost-social-sharing-link-anchor {
				border-radius: 100%;
				padding: var(--wp--preset--spacing--2);
				transition: all var(--speed) ease-in-out;
			}
:is(:is(:is(.share-post .wp-block-outermost-social-sharing) .wp-block-outermost-social-sharing-link) .wp-block-outermost-social-sharing-link-anchor):hover {
					background-color: var(--wp--preset--color--orange);
					color: var(--wp--preset--color--base);
				}
:is(:is(:is(.share-post .wp-block-outermost-social-sharing) .wp-block-outermost-social-sharing-link) .wp-block-outermost-social-sharing-link-anchor) svg {
					height: var(--wp--preset--spacing--2);
					width: var(--wp--preset--spacing--2);
				}
.share-post .outermost-social-sharing-link-copy .message {
		background-color: var(--wp--preset--color--orange);
		border-radius: 10em;
		color: var(--wp--preset--color--base);
		font-family: var(--wp--preset--font-family--roboto-mono);
		font-size: var(--wp--preset--font-size--1);
		padding: var(--wp--preset--spacing--050) var(--wp--preset--spacing--1);
	}
/* --- Image and gallery blocks --- */
.alignfull:is(.wp-block-gallery,.wp-block-image) {
		margin-left: 0;
		margin-right: 0;
	}
.wp-block-gallery.is-style-grid-offset {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: var(--wp--preset--spacing--6) var(--wp--preset--spacing--3);
}
@media (max-width: 37.5em) {
.wp-block-gallery.is-style-grid-offset {
		margin-left: calc(var(--wp--style--root--padding-left) * -1);
		margin-right: calc(var(--wp--style--root--padding-right) * -1);
		width: calc(100% + var(--wp--style--root--padding-left) + var(--wp--style--root--padding-right));
}
	}
@media (max-width: 48.8125em) {
.wp-block-gallery.is-style-grid-offset {
		gap: var(--wp--preset--spacing--3);
}
	}
.wp-block-gallery.is-style-grid-offset .wp-block-image.wp-block-image {
		width: 100% !important;
	}
:is(.wp-block-gallery.is-style-grid-offset .wp-block-image.wp-block-image) figcaption {
			background: transparent;
			color: inherit;
			display: block;
			font-size: var(--wp--preset--font-size--1);
			font-weight: 500;
			max-height: none;
			margin-top: var(--wp--preset--spacing--050);
			padding: 0;
			position: static;
			text-transform: uppercase;
		}
.wp-block-gallery.is-style-grid-offset .wp-block-image:first-of-type {
		grid-column: 1 / span 5;
	}
@media (min-width: 48.8126em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:first-of-type {
			grid-column: 1 / span 4;
	}
		}
@media (min-width: 60.001em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:first-of-type {
			grid-column: 2 / span 3;
	}
		}
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(2) {
		margin-top: var(--wp--preset--spacing--9) !important;
		grid-column: 6 / span 7;
	}
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(3) {
		margin-top: var(--wp--preset--spacing--4) !important;
		grid-column: 2 / span 6;
	}
@media (max-width: 37.5em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(3) {
			margin-left: calc(var(--wp--preset--spacing--3) * -1) !important;
			width: calc(100% + var(--wp--preset--spacing--3)) !important;
			max-width: calc(100% + var(--wp--preset--spacing--3)) !important;
	}
		}
@media (min-width: 60.001em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(3) {
			grid-column: 3 / span 4;
	}
		}
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(4) {
		grid-column: 8 / span 4;
	}
@media (max-width: 37.5em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(4) {
			margin-right: calc(var(--wp--preset--spacing--3) * -1) !important;
			width: calc(100% + var(--wp--preset--spacing--3)) !important;
			max-width: calc(100% + var(--wp--preset--spacing--3)) !important;
	}
		}
@media (min-width: 60.001em) {
.wp-block-gallery.is-style-grid-offset .wp-block-image:nth-of-type(4) {
			grid-column: 8 / span 3;
	}
		}
/* --- Marquee style - Group block --- */
.is-style-marquee {
	--marquee-gap: var(--wp--preset--spacing--13);
	display: flex;
	gap: var( --marquee-gap );
	overflow: hidden;
	position: relative;
	-webkit-user-select: none;
	        user-select: none;
}
.is-style-marquee  > * {
		animation: marquee 35s linear infinite;
		flex-shrink: 0;
		display: flex;
		gap: var(--marquee-gap);
		justify-content: space-around;
		margin: 0;
		min-width: 100%;
	}
.is-style-marquee:hover  > * {
			animation-play-state: paused;
		}
@media (prefers-reduced-motion: reduce) {
		.is-style-marquee  > * {
			animation-play-state: paused !important;
		}
}
@keyframes marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(calc(-100% - var(--marquee-gap)));
	}
}
/* --- Query block --- */
.wp-block-query .wp-block-post-featured-image:hover ~ .wp-block-post-title a {
		text-decoration-color: var(--wp--preset--color--orange);
	}
/* --- Pagination --- */
.wp-block-query-pagination .wp-block-query-pagination-numbers {
		display: flex;
		gap: var(--wp--preset--spacing--1);
	}
:is(.wp-block-query-pagination .wp-block-query-pagination-numbers)  > * {
			border-radius: 20em;
			display: grid;
			height: var(--wp--preset--spacing--5);
			place-content: center;
			min-width: var(--wp--preset--spacing--5);
		}
:is(:is(.wp-block-query-pagination .wp-block-query-pagination-numbers) > *):hover {
				background-color: var(--wp--preset--color--orange);
			}
:is(.wp-block-query-pagination .wp-block-query-pagination-numbers) .current {
			background-color: var(--wp--preset--color--orange);
		}
/* --- Core/quote --- */
.wp-block-quote.wp-block-quote {
	max-width: 30.5rem;

	/* add pseudo opening quote mark before content */
}
.wp-block-quote.wp-block-quote:before {
		content: "";
		background-color: var(--wp--preset--color--orange);
		height: 2em;
		float: left;
		margin: 0.6em 0.75em 0 0;
		-webkit-mask-image: url(./assets/img/icon-opening-quote.svg);
		        mask-image: url(./assets/img/icon-opening-quote.svg);
		-webkit-mask-repeat: no-repeat;
		        mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		        mask-size: contain;
		width: 2em;
	}
/* --- Carousel block --- */
.wp-block-splide-carousel {
	background-color: var(--wp--preset--color--orange);
	display: grid;
	gap: var(--wp--preset--spacing--3);
	grid-template-columns: repeat(12, 1fr);
	margin-top: var(--wp--preset--spacing--14);
	margin-bottom: var(--wp--preset--spacing--14);
	padding: var(--wp--preset--spacing--11) 0 var(--wp--preset--spacing--11) var(--wp--style--root--padding-left);
}
@media (max-width: 37.5em) {
.wp-block-splide-carousel {
		grid-template-columns: repeat(4, 1fr);
}
	}
.wp-block-splide-carousel .splide__arrows {
		grid-column: 1 / span 2;
	}
@media (max-width: 37.5em) {
.wp-block-splide-carousel .splide__arrows {
			grid-row: 2;
	}
		}
.wp-block-splide-carousel .wp-block-splide-carousel__track {
		grid-column: 3 / span 10;
	}
@media (max-width: 37.5em) {
.wp-block-splide-carousel .wp-block-splide-carousel__track {
			grid-column: 1 / -1;
	}
		}
.wp-block-splide-carousel .splide__arrows {
		align-self: flex-end;
		border: 1px solid var(--wp--preset--color--contrast);
		border-radius: 10em;
		display: grid;
		gap: var(--wp--preset--spacing--2);
		height: max-content;
		grid-template-columns: max-content max-content;
		padding: var(--wp--preset--spacing--1) 0;
		width: max-content;
	}
.wp-block-splide-carousel .splide__arrow {
		background-color: transparent;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		border-radius: 10em;
		height: var(--wp--preset--spacing--4) !important;
		position: static;
		transform: none;
		width: var(--wp--preset--spacing--6) !important;
	}
.splide__arrow--prev:is(.wp-block-splide-carousel .splide__arrow) {
			background-image: url(./assets/img/icon-arrow-left.svg);
		}
.splide__arrow--next:is(.wp-block-splide-carousel .splide__arrow) {
			background-image: url(./assets/img/icon-arrow-right.svg);
		}
:is(.wp-block-splide-carousel .splide__arrow) svg {
			display: none;
		}
:is(.wp-block-splide-carousel .splide__arrow):hover {
			filter: invert(1);
		}
.wp-block-splide-carousel .wp-block-splide-carousel__list {
		gap: var(--wp--preset--spacing--3);
		min-height: 300px;
		max-height: 55vh;
	}
.wp-block-splide-carousel .splide__slide {
		width: max-content !important;
	}
@media (max-width: 37.5em) {
.wp-block-splide-carousel .splide__slide {
			width: 100% !important;
	}
		}
:is(.wp-block-splide-carousel .splide__slide) .wp-block-image {
			height: 100%;
			margin: auto;
			width: 100%;
			transition: aspect-ratio 0.5s ease-in-out;
		}
:is(:is(.wp-block-splide-carousel .splide__slide) .wp-block-image) img {
				height: 100%;
				object-fit: cover;
				width: 100%;
				transition: all 0.5s ease-in-out;
			}
.wp-block-splide-carousel .splide__pagination {
		display: none !important;
	}
/* --- Is style carousel // Gallery block --- */
.gallery-carousel-wrap {
	background-color: var(--wp--preset--color--orange);
	display: grid;
	gap: var(--wp--preset--spacing--3);
	grid-template-columns: repeat(12, 1fr);
	margin-top: var(--wp--preset--spacing--14);
	margin-bottom: var(--wp--preset--spacing--14);
	padding-top: var(--wp--preset--spacing--11);
	padding-bottom: var(--wp--preset--spacing--11);
	padding-right: 0 !important;
}
@media (max-width: 37.5em) {
.gallery-carousel-wrap {
		grid-template-columns: repeat(4, 1fr);
		padding: var(--wp--preset--spacing--6) 0;
}
	}
.wp-block-gallery.is-style-carousel {
	--slide-gap: 24px;
	display: flex !important;
	flex-wrap: nowrap !important;
	grid-column: 3 / span 10;
	min-height: 300px;
	height: 400px;
	max-height: 55vh;
	margin-bottom: 0;
	overflow: hidden !important;
	position: relative !important;
	touch-action: pan-y !important;
	-webkit-user-select: none !important;
	        user-select: none !important;
  }
@media (max-width: 37.5em) {
.wp-block-gallery.is-style-carousel {
		grid-column: 1 / -1;
		min-height: 0;
		height: 55vh;
		max-height: none;
  }
	}
.wp-block-gallery.is-style-carousel  > figure,.wp-block-gallery.is-style-carousel  > .wp-block-image,.wp-block-gallery.is-style-carousel  > .blocks-gallery-item {
		height: 100% !important;
		position: absolute !important;
		top: 0 !important;
		width: var(--reduced-width) !important;
		transition: all var(--speed-slower) ease-in-out !important;
	}
.wp-block-gallery.is-style-carousel img {
		height: 100% !important;
		object-fit: cover !important;
		object-position: left center !important;
		width: 100% !important;
	}
@media (max-width: 37.5em) {
.wp-block-gallery.is-style-carousel img {
			object-fit: contain !important;
	}
		}
.wp-block-gallery.is-style-carousel.children-grow .current-item {
			width: var(--full-width) !important;
		}
.gallery-carousel-nav-buttons {
	align-self: flex-end;
	border: 1px solid var(--wp--preset--color--contrast);
	border-radius: 10em;
	display: grid;
	gap: var(--wp--preset--spacing--2);
	grid-column: 1 / span 2;
	grid-row: 1;
	grid-template-columns: max-content max-content;
	height: max-content;
	padding: var(--wp--preset--spacing--1) 0;
	width: max-content;
}
@media (max-width: 37.5em) {
.gallery-carousel-nav-buttons {
		grid-row: 2;
		margin: 0 0 0 var(--wp--style--root--padding-left);
}
	}
.gallery-carousel-nav-buttons .gallery-carousel-nav-button  {
		background-color: transparent;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		border: none;
		border-radius: 10em;
		cursor: pointer;
		height: var(--wp--preset--spacing--4) !important;
		width: var(--wp--preset--spacing--6) !important;
		transition: filter var(--speed) ease-in-out;
	}
.prev-button:is(.gallery-carousel-nav-buttons .gallery-carousel-nav-button) {
			background-image: url(./assets/img/icon-arrow-left.svg);
		}
.next-button:is(.gallery-carousel-nav-buttons .gallery-carousel-nav-button) {
			background-image: url(./assets/img/icon-arrow-right.svg);
		}
:is(.gallery-carousel-nav-buttons .gallery-carousel-nav-button):hover {
			filter: invert(1);
		}
/* --- Excerpt block --- */
.wp-block-post-excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 3; /* Clamp to 3 lines */
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* ---------------------------------------------
  Parts/components
--------------------------------------------- */
/* --- Query grid --- */
@media (max-width: 60em) {
.wp-block-post-template-is-layout-grid {
		grid-template-columns: 1fr 1fr !important;
}
	}
@media (max-width: 37.5em) {
.wp-block-post-template-is-layout-grid {
		grid-template-columns: 1fr !important;
}
	}
/* --- Related posts --- */
@media (max-width: 48.8125em) {

		.related-posts .wp-block-post-template {
			gap: var(--wp--preset--spacing--2);
			grid-template-columns: repeat(3, 320px) !important;
			margin-left: calc(var(--wp--style--root--padding-left) * -1);
			margin-right: calc(var(--wp--style--root--padding-right) * -1);
			overflow-x: auto;
			padding-left: var(--wp--style--root--padding-left);
			scrollbar-width: none;
			width: calc(100% + var(--wp--style--root--padding-left) + var(--wp--style--root--padding-right));
			max-width: calc(100% + var(--wp--style--root--padding-left) + var(--wp--style--root--padding-right));
			scrollbar-width: none;
		}

			:is(.related-posts .wp-block-post-template)::-webkit-scrollbar {
				display: none;
			}
	}
@media (max-width: 37.5em) {

		.related-posts .wp-block-post-template {
			grid-template-columns: repeat(3, 75vw) !important;
		}
	}
/* --- Exploration card --- */
.exploration-card {
	aspect-ratio: 3 / 4;
	color: var(--wp--preset--color--base);
	display: grid;
	grid-template-rows: max-content max-content 1fr;
	padding: var(--wp--preset--spacing--6) var(--wp--preset--spacing--3) var(--wp--preset--spacing--3);
	position: relative;
}
.home .exploration-card {
		background-color: var(--wp--preset--color--contrast);
		color: var(--wp--preset--color--base);
	}
.exploration-type-rewild :is(.home .exploration-card) {
			border: 1px solid var(--wp--preset--color--dark-gray);
		}
.exploration-card  > * {
		position: relative;
		z-index: 1;
	}
.exploration-card .exploration-term {
		display: none;
	}
.exploration-type-rewild .exploration-card {
		border: 1px solid var(--wp--preset--color--gray);
		color: inherit;
		grid-template-rows: max-content max-content 1fr;
		position: relative;
	}
:is(.exploration-type-rewild .exploration-card)::before {
			content: "";
			background-image: url(./assets/img/icon-rewild.svg);
			background-repeat: no-repeat;
			background-size: contain;
			border-radius: 100%;
			display: block;
			height: calc(var(--wp--preset--spacing--5) - 1.5px);
			width: calc(var(--wp--preset--spacing--5) - 1.5px);
			outline: 1px solid var(--wp--preset--color--dark-gray);
			outline-offset: 0.5px;
			position: absolute;
			top: var(--wp--preset--spacing--2-5);
			right: var(--wp--preset--spacing--2-5);
		}
.home :is(.exploration-type-rewild .exploration-card) {
			color: var(--wp--preset--color--base);
		}
:is(.exploration-type-rewild .exploration-card) .exploration-term {
			display: block;
		}
:is(:is(.exploration-type-rewild .exploration-card) .exploration-term) a {
				pointer-events: none;
			}
:is(.exploration-type-rewild .exploration-card) .wp-block-group:has(.taxonomy-location) {
			display: none;
		}
:is(.exploration-type-rewild .exploration-card) .location-term,:is(.exploration-type-rewild .exploration-card) .wp-block-post-excerpt {
			display: none;
		}
:is(.exploration-type-rewild .exploration-card) .wp-block-post-featured-image {
			overflow: auto;
			position: static;
			width: 100%;
		}
:is(:is(.exploration-type-rewild .exploration-card) .wp-block-post-featured-image)::after {
				display: none;
			}
.exploration-card .wp-block-post-featured-image {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 0;
	}
:is(.exploration-card .wp-block-post-featured-image)::after {
			content: "";
			background-color: rgba(0, 0, 0, 0.22);
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			z-index: 0;
		}
:is(.exploration-card .wp-block-post-featured-image) img {
			object-fit: cover;
			object-position: center;
			height: 100%;
			width: 100%;
		}
/* --- Exploration stats section  --- */
:is(.exploration-stats-section,.activism-partners-section)  > .wp-block-columns {
		display: grid;
		gap: var(--wp--preset--spacing--3);
		grid-template-columns: 1fr;
		margin-left: var(--wp--style--root--padding-left);
		margin-right: var(--wp--style--root--padding-right);
		padding-left: 0;
		padding-right: 0;
	}
@media (min-width: 60.001em) {
:is(.exploration-stats-section,.activism-partners-section)  > .wp-block-columns {
			grid-template-columns: repeat(12, 1fr);
	}
		}
@media (min-width: 60.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns)  > .wp-block-column:first-of-type {
				grid-column: 1 / span 5;
		}
			}
@media (min-width: 75.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns)  > .wp-block-column:first-of-type {
				grid-column: 1 / span 4;
		}
			}
@media (min-width: 60.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns)  > .wp-block-column:last-of-type {
				grid-column: 7 / span 6;
		}
			}
@media (min-width: 75.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns)  > .wp-block-column:last-of-type {
				grid-column: 6 / span 7;
		}
			}
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns) .wp-block-columns {
			display: grid;
		}
@media (max-width: 48.8125em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns) .wp-block-columns {
				grid-template-columns: 1fr;
		}
			}
@media (min-width: 48.8126em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns) .wp-block-columns {
				grid-template-columns: repeat(2, 1fr);
		}
			}
@media (min-width: 60.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns) .wp-block-columns {
				grid-template-columns: 1fr;
		}
			}
@media (min-width: 75.001em) {
:is(:is(.exploration-stats-section,.activism-partners-section) > .wp-block-columns) .wp-block-columns {
				display: flex;
		}
			}
:is(.exploration-stats-section,.activism-partners-section) .wp-block-johan-ernst-counting {
		font-size: 8.5rem;
	}
@media (min-width: 1441px) {
:is(.exploration-stats-section,.activism-partners-section) .wp-block-johan-ernst-counting {
			font-size: clamp(8.5rem, 0rem + 9.444vi, 85rem);
	}
		}
.partner .wp-block-post-featured-image a {
		outline: 1px solid transparent;
		transition: outline-color var(--speed) ease-in-out;
	}
:is(.partner .wp-block-post-featured-image a):hover {
			outline: 1px solid var(--wp--preset--color--orange);
		}
/* --- Honors row --- */
.honors-row.honors-row {
	align-items: center;
	display: grid;
	gap: var(--wp--preset--spacing--3);
	padding: var(--wp--preset--spacing--4) var(--wp--style--root--padding-right) var(--wp--preset--spacing--4) var(--wp--style--root--padding-left);
	grid-template-columns: repeat(12, 1fr);
	position: relative;
	transition: background-color var(--speed) ease-in-out;
}
.honors-row.honors-row .wp-block-image {
		z-index: 1;
	}
@media (max-width: 37.5em) {
.honors-row.honors-row {
		gap: var(--wp--preset--spacing--050) var(--wp--preset--spacing--3);
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: max-content max-content max-content;
}

		.honors-row.honors-row .wp-block-image {
			grid-column: 1;
			grid-row: span 3;
		}

		.honors-row.honors-row .title {
			grid-column: 2 / span 3;
		}

		.honors-row.honors-row .org {
			align-self: flex-start;
			grid-column: 2 / span 3;
			grid-row: 2;
		}

		.honors-row.honors-row .date {
			grid-row: 3;
			grid-column: 2 / span 3;
		}
	}
@media (min-width: 37.501em) {
.honors-row.honors-row {
		gap: var(--wp--preset--spacing--050) var(--wp--preset--spacing--3);
		grid-template-columns: repeat(6, 1fr);
		grid-template-rows: max-content 1fr;
}

		.honors-row.honors-row .wp-block-image {
			grid-column: 1;
			grid-row: span 2;
		}

		.honors-row.honors-row .title {
			grid-column: 2 / span 3;
		}

		.honors-row.honors-row .org {
			align-self: flex-start;
			grid-column: 2 / span 3;
			grid-row: 2;
		}

		.honors-row.honors-row .date {
			grid-column: 5 / span 2;
		}
	}
@media (max-width: 60em) {

		.honors-row.honors-row .wp-block-image {
			aspect-ratio: 1 / 1;
			border-radius: 50%;
			overflow: clip;
		}

			:is(.honors-row.honors-row .wp-block-image) img {
				height: 100%;
				object-fit: cover;
				object-position: center;
			}
	}
@media (min-width: 48.8126em) {
.honors-row.honors-row {
		grid-template-columns: repeat(12, 1fr);
}

		.honors-row.honors-row .title {
			grid-column: 3 / span 3;
			grid-row: 1;
		}

		.honors-row.honors-row .org {
			align-self: center;
			grid-column: 6 / span 4;
			grid-row: 1;
		}

		.honors-row.honors-row .date {
			grid-column: 10 / span 3;
			grid-row: 1;
		}

		.honors-row.honors-row .wp-block-image {
			grid-column: 1 / span 2;
			grid-row: 1;
		}

	}
@media (min-width: 60.001em) {

		.honors-row.honors-row .title {
			grid-column: 1 / span 3;
		}

		.honors-row.honors-row .org {
			grid-column: 7 / span 3;
		}

		.honors-row.honors-row .date {
			grid-column: 11 / span 2;
		}

		.honors-row.honors-row .wp-block-image {
			grid-column: 4 / span 3;
			opacity: 0;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			transition: opacity var(--speed) ease-in-out;
		}

		.honors-row.honors-row:hover {
			background-color: var(--wp--preset--color--orange);
		}

			.honors-row.honors-row:hover .wp-block-image {
				opacity: 1;
			}
	}
/* --- Page topper style --- */
.is-style-small {
	font-family: var(--wp--preset--font-family--roboto-mono);
	font-size: var(--wp--preset--font-size--3);
	font-weight: 500;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}
.is-style-small:where(:not(.has-text-align-left):not(.has-text-align-right)) {
		text-align: center;
	}
.is-style-small-no-brackets {
	font-family: var(--wp--preset--font-family--roboto-mono);
	font-size: var(--wp--preset--font-size--3);
	font-weight: 500;
	line-height: 1;
	text-transform: uppercase;
}
.is-style-small-no-brackets:where(:not(.has-text-align-left):not(.has-text-align-right)) {
		text-align: center;
	}
/* --- Archive filters --- */
.wp-block-johan-ernst-exploration-filter {
	align-items: center;
	display: grid;
	gap: var(--wp--preset--spacing--3);
	grid-template-columns: repeat(12, 1fr);
	line-height: 1;
	margin-bottom: var(--wp--preset--spacing--5);
}
@media (max-width: 60em) {
.wp-block-johan-ernst-exploration-filter {
		grid-template-columns: repeat(6, 1fr);
}
	}
@media (max-width: 37.5em) {
.wp-block-johan-ernst-exploration-filter {
		grid-template-columns: repeat(4, 1fr);
}
	}
.wp-block-johan-ernst-exploration-filter .filters-title {
		font-family: var(--wp--preset--font-family--roboto-mono);
		font-size: var(--wp--preset--font-size--2);
		font-weight: 500;
		grid-column: span 2;
		justify-self: flex-start;
		margin: 0 !important;
		text-align: center;
		text-transform: uppercase;
	}
.wp-block-johan-ernst-exploration-filter .exploration-location-filter {
		font-size: var(--wp--preset--font-size--2);
		grid-column: span 2;
		justify-self: flex-end;
		margin: 0 calc(var(--wp--preset--spacing--2-5) * -1) 0 0 !important;
		padding-right: var(--wp--preset--spacing--2-5);
		position: relative;
	}
:is(.wp-block-johan-ernst-exploration-filter .exploration-location-filter):focus-within {
			color: var(--wp--preset--color--orange);
		}
:is(.wp-block-johan-ernst-exploration-filter .exploration-location-filter)::after {
			background-color: currentcolor;
			content: "";
			height: 1em;
			-webkit-mask-image: url(./assets/img/icon-chevron.svg);
			        mask-image: url(./assets/img/icon-chevron.svg);
			-webkit-mask-position: center;
			        mask-position: center;
			-webkit-mask-repeat: no-repeat;
			        mask-repeat: no-repeat;
			-webkit-mask-size: 0.5em;
			        mask-size: 0.5em;
			position: absolute;
			right: 0;
			top: 50%;
			transform: translateY(-50%);
			width: 1em;
		}
:is(.wp-block-johan-ernst-exploration-filter .exploration-location-filter) select {
			appearance: none;
			background-color: var(--wp--preset--color--base);
			border: none;
			color: inherit;
			cursor: pointer;
			font-family: var(--wp--preset--font-family--roboto-mono);
			font-size: var(--wp--preset--font-size--2);
			font-weight: 500;
			text-align: right;
			text-transform: uppercase;
		}
:is(:is(.wp-block-johan-ernst-exploration-filter .exploration-location-filter) select):focus {
				outline: none;
			}
/* --- js-make-card-anchored --- */
.js-make-card-anchored {
	cursor: pointer;
}
.js-make-card-anchored:hover h2 a {
			text-decoration-color: var(--wp--preset--color--orange);
		}
/* ---------------------------------------------
  Post modals
--------------------------------------------- */
.post-modal {
	--modal-top-offset: 20%;
	--close-button-offset: var(--wp--preset--spacing--4);
	background-color: transparent;
	border: none;
	font-family: var(--wp--preset--font-family--recia);
	max-height: calc( 100% - var(--modal-top-offset));
	max-width: var(--modal-max-width);
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	width: 100%;
	transition: top var(--speed-slower) ease-in-out;
	transition-delay: 0.2s;
}
.post-modal.type-partner {
		--modal-top-offset: 0px;
		--close-button-offset: var(--wp--preset--spacing--13);
		overflow-y: auto;
	}
.post-modal.type-partner::-webkit-scrollbar {
			display: none;
		}
.post-modal::backdrop {
		background-color: rgba(0, 0, 0, 0.55);
	}
.post-modal[open] {
		display: flex;
		flex-direction: column;
	}
.post-modal .close {
		all: unset;
		background-color: var(--wp--preset--color--base);
		border: 1px solid var(--wp--preset--color--contrast);
		border-radius: 100%;
		color: var(--wp--preset--color--contrast);
		cursor: pointer;
		height: var(--wp--preset--spacing--5);
		position: absolute;
		right: var(--wp--style--root--padding-right);
		top: var(--close-button-offset);
		width: var(--wp--preset--spacing--5);
		transition: all var(--speed) ease-in-out;
		z-index: 5;
	}
:is(.post-modal .close)::before {
			background-color: var(--wp--preset--color--contrast);
			content: "";
			display: block;
			margin: auto;
			-webkit-mask-image: url(./assets/img/icon-close.svg);
			        mask-image: url(./assets/img/icon-close.svg);
			-webkit-mask-repeat: no-repeat;
			        mask-repeat: no-repeat;
			-webkit-mask-size: contain;
			        mask-size: contain;
			height: var(--wp--preset--spacing--3);
			width: var(--wp--preset--spacing--3);
		}
:is(.post-modal .close):hover {
			background-color: var(--wp--preset--color--orange);
			border-color: var(--wp--preset--color--orange) !important;
			color: var(--wp--preset--color--contrast);
		}
.post-modal .post-wrapper {
		background-color: var(--wp--preset--color--base);
		overflow-y: auto;
		padding: var(--wp--preset--spacing--9) calc(var(--wp--style--root--padding-right) * 2) 0 calc(var(--wp--style--root--padding-left) * 2);
		scrollbar-width: none;
	}
.type-partner :is(.post-modal .post-wrapper) {
			margin: var(--wp--preset--spacing--8) auto;
			overflow-y: initial;
			padding-bottom: var(--wp--preset--spacing--8);
			padding-left: var(--wp--style--root--padding-left);
			padding-right: var(--wp--style--root--padding-right);
			width: 100%;
		}
:is(.post-modal .post-wrapper)::-webkit-scrollbar {
			display: none;
		}
:is(:is(.post-modal .post-wrapper) .post-content) .wp-block-group.has-background:last-child {
				margin-bottom: calc(var(--wp--preset--spacing--3) * -1);
			}
:is(.post-modal .post-wrapper) .alignwide {
			margin-left: calc(var(--wp--style--root--padding-left) * -1);
			margin-right: calc(var(--wp--style--root--padding-right) * -1);
		}
:is(.post-modal .post-wrapper) .alignfull {
			margin-left: calc(var(--wp--style--root--padding-left) * -2);
			margin-right: calc(var(--wp--style--root--padding-right) * -2);
		}
:is(.post-modal .post-wrapper) .wp-block-quote {
			margin: var(--wp--preset--spacing--5) auto;
		}
.post-modal .wp-block-post-title {
		font-size: var(--wp--preset--font-size--8);
		margin: var(--wp--preset--spacing--1) 0 var(--wp--preset--spacing--4);
	}
.type-partner :is(.post-modal .wp-block-post-title) {
			font-size: var(--wp--preset--font-size--6);
		}
.post-modal .wp-block-post-featured-image {
		aspect-ratio: 16 / 9;
		margin-bottom: var(--wp--preset--spacing--4);
	}
:is(.post-modal .wp-block-post-featured-image) img {
			height: 100%;
			object-fit: cover;
			width: 100%;
		}
.post-modal .wp-block-video,.post-modal .wp-block-image {
		margin-top: var(--wp--preset--spacing--4);
		margin-bottom: var(--wp--preset--spacing--4);
		margin-left: calc(var(--wp--style--root--padding-left)* -1);
		margin-right: calc(var(--wp--style--root--padding-right)* -1);
	}
.type-partner :is(.post-modal .wp-block-video,.post-modal .wp-block-image) {
			margin-left: 0;
			margin-right: 0;
		}
:is(.type-partner :is(.post-modal .wp-block-video,.post-modal .wp-block-image)) img {
				width: 100%;
			}
:is(.post-modal .wp-block-video,.post-modal .wp-block-image) video {
			max-width: 100%;
		}
:is(.post-modal .wp-block-video,.post-modal .wp-block-image) img {
			margin-left: auto;
			margin-right: auto;
		}
.post-modal .wp-block-buttons {
		gap: var(--wp--preset--spacing--2);
	}
:is(.post-modal .wp-block-buttons) strong {
			font-weight: inherit;
		}
.post-modal .has-global-padding {
		padding-right: var(--wp--preset--spacing--4);
		padding-left: var(--wp--preset--spacing--4);
	}
.post-modal figcaption {
		font-family: var(--wp--preset--font-family--roboto-mono);
		font-size: var(--wp--preset--font-size--1);
		font-weight: 500;
		margin-top: var(--wp--preset--spacing--2);
	}
.post-modal h2 + p {
		margin-top: var(--wp--preset--spacing--1);
	}
:is(.post-modal h2 + p)  ~ p {
			margin-top: var(--wp--preset--spacing--2);
		}
.post-modal .rewild-callout {
		background-color: var(--wp--preset--color--green);
		color: var(--wp--preset--color--contrast);
		margin-top: var(--wp--preset--spacing--8);
		margin-left:  calc(var(--wp--style--root--padding-left) * -2);
		margin-right: calc(var(--wp--style--root--padding-right) * -2);
		padding: var(--wp--preset--spacing--7) calc(var(--wp--style--root--padding-right) * 2) var(--wp--preset--spacing--14) calc(var(--wp--style--root--padding-left) * 2);
	}
:is(.post-modal .rewild-callout) h2 {
			margin: 0;
		}
:is(.post-modal .rewild-callout) a {
			text-decoration-color: currentcolor;
		}
:is(:is(.post-modal .rewild-callout) a):hover {
				text-decoration-color: transparent;
			}
:is(.post-modal .rewild-callout) .wp-block-buttons {
			margin-top: var(--wp--preset--spacing--4);
		}
:is(:is(.post-modal .rewild-callout) .wp-block-buttons) .wp-block-button__link {
				color: var(--wp--preset--color--contrast);
				align-items: center;
				display: flex;
				gap: var(--wp--preset--spacing--1);
				max-width: max-content;
			}
/* ---------------------------------------------
  Press archive items
--------------------------------------------- */
.press-meta-row  > *:last-child::before {
		content: "•";
		color: var(--wp--preset--color--orange);
		margin: 0 var(--wp--preset--spacing--1);
	}
/* --- Loop template adjustment for simple cards --- */
.is-simple-cards {
	gap: var(--wp--preset--spacing--6) var(--wp--preset--spacing--3);
}
/* ----------------------------------------------
# Explorations
---------------------------------------------- */
/* --- hero || cover block --- */
.single-hero {
	--hero-padding-top: 15rem;
	--hero-offset: calc(var(--hero-padding-top) + var(--admin-bar-offset));
	margin-top: 0;
	min-height: 94rem;
	padding-top: var(--hero-padding-top);
}
@media (max-width: 48.8125em) {
.single-hero {
		--hero-padding-top: calc(var(--site-header-height) + var(--wp--preset--spacing--6));
		min-height: 100vh !important;
}
	}
.single-hero .wp-block-cover__inner-container {
		position: sticky;
		top: var(--hero-offset);
		opacity: 0;
		animation: fadeIn 1s ease-out forwards;
	}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@media (max-width: 60em) {
.single .post-header {
			margin-bottom: var(--wp--preset--spacing--6) !important;
	}
		}
.single .post-content-wrap {
		position: relative;
	}
.single .share-post {
		background-color: var(--wp--preset--color--base);
		position: absolute;
		left: var(--wp--style--root--padding-left);
	}
@media (max-width: 60em) {

		.single .share-post {
			display: none;
		}
	}
.single .wp-block-post-content {
		min-height: 60vh;
	}
:is(.single .wp-block-post-content)  > p:first-of-type {
			font-size: var(--wp--preset--font-size--4);
			font-weight: 500;
			letter-spacing: -0.01em;
		}
/* --- Spotify embed --- */
.spotify-embed  > * {
		margin-left: auto;
		margin-right: auto;
		max-width: var(--wp--style--global--content-size);
	}
.spotify-embed .wp-block-embed {
		margin-bottom: 0;
	}
:is(.spotify-embed .wp-block-embed) iframe {
			height: 75vh;
		}
/* --- Post footer --- */
.post-footer > .wp-block-group {
	gap: var(--wp--preset--spacing--2);
}
:is(.post-footer > .wp-block-group) .wp-block-group {
		gap: var(--wp--preset--spacing--1) var(--wp--preset--spacing--3);
	}
@media (max-width: 48.8125em) {
:is(:is(.post-footer > .wp-block-group) .wp-block-group):last-of-type {
				justify-content: space-between;
				width: 100%;
		}

				:is(:is(.post-footer > .wp-block-group) .wp-block-group):last-of-type .wp-block-post-date {
					order: 1;
				}
			}
/* ----------------------------------------------
# Page styles
---------------------------------------------- */
.page .site-content {
		min-height: 60vh;
	}
.page .wp-block-post-content > p:not(.is-style-small):first-of-type,.page .wp-block-post-content > p:is(.is-style-small):first-of-type ~ p:nth-of-type(2) {
		font-size: var(--wp--preset--font-size--4);
		font-weight: 500;
		letter-spacing: -0.01em;
	}
.error404 .site-content {
		background-image: url(./assets/img/night-sky-2000x1333-001.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		margin-top: calc(var(--site-header-height) * -1);
		min-height: 100vh;
		display: grid;
		place-content: center;
		padding-top: calc(var(--site-header-height) + var(--wp--preset--spacing--6));
	}
/* ----------------------------------------------
# Homepage components
---------------------------------------------- */
.home {
	background-color: var(--wp--preset--color--contrast);
}
.home .wp-site-blocks {
		min-height: 100vh;
	}
:is(.home .wp-site-blocks)::before {
			content: "";
			background-color: rgba(0, 0, 0, 0.6);
			height: 100%;
			left: 0;
			opacity: 0;
			position: fixed;
			top: 0;
			width: 100%;
			transition: opacity var(--speed) ease-in-out;
		}
:is(.home .wp-site-blocks):has(.button-linear[aria-expanded="true"])::before {
				opacity: 0.7;
			}
:is(.home .wp-site-blocks):has(.button-linear[aria-expanded="true"]) .map,:is(.home .wp-site-blocks):has(.button-linear[aria-expanded="true"]) .explorations {
				animation-name: fade-out;
				animation-duration: var(--speed);
			}
:is(.home .wp-site-blocks):has(.button-linear[aria-expanded="true"]) .map-zoom-controls {
				color: var(--wp--preset--color--dark-gray);
			}
:is(:is(.home .wp-site-blocks):has(.button-linear[aria-expanded="true"]) .map-zoom-controls) button {
					pointer-events: none;
				}
.home main {
		display: grid;
		grid-template:
			"header" var(--site-header-height)
			"linear-cards" 1fr
			"footer-controls" max-content
			/ 1fr;
		height: 100%;
		margin-top: 0;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
/* --- Map --- */
.wp-block-johan-ernst-map,
.wp-block-johan-ernst-map-instructions {
	font-family: var(--wp--preset--font-family--roboto-mono);
	height: calc(100% - var(--admin-bar-offset));
	margin: 0 !important;
	position: fixed;
	top: var(--admin-bar-offset);
	left: calc(50% - 50vw);
	width: 100%;
	transition: opacity var(--speed) ease-in-out;
}
.wp-block-johan-ernst-map {
	z-index: 0;

	/* We can't leverage the dialog::backdrop pseudo-element because we don't want to blur the header. */
}
.has-open-modal .wp-block-johan-ernst-map::before {
		content: "";
		-webkit-backdrop-filter: blur(10px);
		        backdrop-filter: blur(10px);
		height: 100%;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 100; /* Needs to be higher than the number of markers. */
	}
.wp-block-johan-ernst-map .introduction {
		-webkit-backdrop-filter: blur(2px);
		        backdrop-filter: blur(2px);
		background-color: rgba(0, 0, 0, 0.1);
		pointer-events: all;
		display: flex;
		flex-direction: column;
		height: 100%;
		position: absolute;
		width: 100%;
		z-index: 2;
	}
:is(.wp-block-johan-ernst-map .introduction) .loading-audio-toggle {
			pointer-events: auto;
			position: relative;
			margin: var(--wp--preset--spacing--2) auto var(--wp--preset--spacing--5);
			z-index: 3;
		}
:is(.wp-block-johan-ernst-map .introduction) p {
			color: var(--wp--preset--color--base);
			font-weight: 400;
			width: 50%;
			font-size: var(--wp--preset--font-size--2);
			margin: auto;
			text-align: center;
			text-transform: uppercase;
			text-wrap: pretty;
		}
:is(:is(.wp-block-johan-ernst-map .introduction) .loading-audio-controls) p {
				font-size: var(--wp--preset--font-size--1);
			}
.wp-block-johan-ernst-map .map,.wp-block-johan-ernst-map .map > div,.wp-block-johan-ernst-map .map > div > div {
		height: 100%;
	}
.wp-block-johan-ernst-map .map > div > div {
		display: flex;
	}
.wp-block-johan-ernst-map .scene-container {
		margin: auto;
	}
.wp-block-johan-ernst-map .explorations {
		color: var(--wp--preset--color--base);
		display: grid;
		font-size: var(--wp--preset--font-size--2);
		font-weight: 500;
		max-height: calc(100vh - (var(--site-header-height) * 2));
		justify-content: center;
		overflow-y: auto;
		position: absolute;
		right: var(--wp--style--root--padding-right);
		text-align: right;
		top: 50%;
		transform: translateY(-50%);
		scrollbar-width: none;
	}
:is(.wp-block-johan-ernst-map .explorations)::-webkit-scrollbar {
			display: none;
		}
:is(.wp-block-johan-ernst-map .explorations)  > * {
			flex-shrink: 0;
		}
:is(.wp-block-johan-ernst-map .explorations):has(.posts:not([hidden])) {
			color: var(--wp--preset--color--gray);
		}
@media (max-width: 37.5em) {
.wp-block-johan-ernst-map .explorations {
			display: none;
	}
		}
:is(.wp-block-johan-ernst-map .explorations) h2 {
			color: var(--wp--preset--color--gray);
			font-size: var(--wp--preset--font-size--2);
			margin: 0;
			text-transform: uppercase;
		}
:is(.wp-block-johan-ernst-map .explorations)  > ul {
			margin: var(--wp--preset--spacing--4) 0;
			display: grid;
			gap: var(--wp--preset--spacing--1);
		}
:is(.wp-block-johan-ernst-map .explorations) ul {
			list-style: none;
		}
:is(.wp-block-johan-ernst-map .explorations) li {
			margin: 0;
			padding: 0;
		}
:is(:is(.wp-block-johan-ernst-map .explorations) li):has(.posts:not([hidden])) {
				color: var(--wp--preset--color--base);
			}
:is(.wp-block-johan-ernst-map .explorations) li:has(a[href="https://johanernst.com/exploration/?locationId=39"]) {
			order: 1;
		}
:is(.wp-block-johan-ernst-map .explorations) a {
			-webkit-text-decoration: none;
			text-decoration: none;
			position: relative;
		}
:is(:is(.wp-block-johan-ernst-map .explorations) a)::after {
				content: "";
				background: var(--wp--preset--color--orange);
				height: 0.05em;
				pointer-events: none;
				position: absolute;
				bottom: 0.1em;
				left: 0;
				transform-origin: 100% 50%;
				transform: scale3d(0, 1, 1);
				transition: transform var(--speed-slower) ease-in-out;
				width: 100%;
			}
:is(:is(.wp-block-johan-ernst-map .explorations) a):hover::after {
					transform-origin: 0% 50%;
   			 		transform: scale3d(1, 1, 1);
				}
:is(.wp-block-johan-ernst-map .explorations) .location {
			text-transform: uppercase;
		}
:is(:is(.wp-block-johan-ernst-map .explorations) .location)::after {
				left: 1ch;
				width: calc(100% - 2ch);
			}
:is(.wp-block-johan-ernst-map .explorations) .posts {
			border-right: 1px solid rgba(255, 255, 255, 0.5);
			font-family: var(--wp--preset--font-family--recia);
			font-weight: 400;
			line-height: 2;
			margin: var(--wp--preset--spacing--1) calc(var(--wp--preset--spacing--050) / 2) var(--wp--preset--spacing--1) 0;
			padding: var(--wp--preset--spacing--1) 0;
		}
:is(:is(.wp-block-johan-ernst-map .explorations) .posts) li {
				padding-right: var(--wp--preset--spacing--3);
				position: relative;
			}
:is(:is(:is(.wp-block-johan-ernst-map .explorations) .posts) li)::after {
					content: "";
					border: var(--wp--preset--spacing--050) solid var(--wp--preset--color--contrast);
					border-radius: 100%;
					background-color: var(--wp--preset--color--base);
					height: var(--wp--preset--spacing--1-5);
					position: absolute;
					right: 0;
					top: 50%;
					transform: translate(calc(50% + 0.5px), -50%);
					width: var(--wp--preset--spacing--1-5);
				}
.wp-block-johan-ernst-map .map-marker {
		display: flex;
		cursor: pointer;
		opacity: 1;
		pointer-events: auto; /* This allows the markers to be clickable. */
		transition: opacity .75s ease-in;
	}
:is(.wp-block-johan-ernst-map .map-marker):hover {
			z-index: 100 !important;
		}
:is(:is(.wp-block-johan-ernst-map .map-marker):hover .map-marker__details)  > *:not(h2) {
					opacity: 1;
				}
:is(:is(.wp-block-johan-ernst-map .map-marker):hover .map-marker__details)  > h2 {
					transition-delay: 0.325s;
					opacity: 1;
				}
:is(.wp-block-johan-ernst-map .map-marker) svg {
			height: var(--wp--preset--spacing--2-5);
			width: var(--wp--preset--spacing--2-5);
		}
.exploration:is(.wp-block-johan-ernst-map .map-marker),.route:is(.wp-block-johan-ernst-map .map-marker) {
			margin-top: calc((var(--wp--preset--spacing--3) * -1) + var(--wp--preset--spacing--050));
		}
:is(.exploration:is(.wp-block-johan-ernst-map .map-marker),.route:is(.wp-block-johan-ernst-map .map-marker)) svg {
				height: var(--wp--preset--spacing--6);
				width: var(--wp--preset--spacing--3);
			}
.fade:is(.wp-block-johan-ernst-map .map-marker) {
			opacity: 0;
			pointer-events: none;
			transition-timing-function: ease-out;
		}
.wp-block-johan-ernst-map .map-marker__details {
		align-items: center;
		display: flex;
		height: 100%;
		justify-content: center;
		left: 50%;
		overflow: clip;
		position: absolute;
		transform: translateX(-50%);
		width: 100%;
	}
:is(.wp-block-johan-ernst-map .map-marker__details) > * {
			transition-property: opacity;
			opacity: 0;
		}
:is(.wp-block-johan-ernst-map .map-marker__details) h2 {
			color: var(--wp--preset--color--base);
			font-size: var(--wp--preset--font-size--2);
			text-align: center;
			text-transform: uppercase;
			opacity: 0;
		}
.wp-block-johan-ernst-map .exploration .map-marker__details,.wp-block-johan-ernst-map .route .map-marker__details {
		background-color: var(--wp--preset--color--base);
		background-image: none;
		border-radius: 100%;
		border: calc(var(--wp--preset--spacing--1) + 0.5px) solid var(--wp--preset--color--orange);
		bottom: calc(var(--wp--preset--spacing--3) - var(--wp--preset--spacing--050));
		height: calc(var(--wp--preset--spacing--3) + 2px);
		padding: 0;
		transition-duration: 0.35s;
		transition-timing-function: ease-in-out;
		transition-property: background-image, border-width, height, width, padding;
		width: calc(var(--wp--preset--spacing--3) + 2px);
	}
:is(.wp-block-johan-ernst-map .exploration .map-marker__details,.wp-block-johan-ernst-map .route .map-marker__details)::after {
			content: "";
			background-color: transparent;
			background-image: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22));
			background-size: cover;
			border-radius: 100%;
			height: 100%;
			opacity: 0;
			position: absolute;
			width: 100%;
			z-index: -1;
			transition: opacity 0.3s ease-in-out;
			transition-delay: 0.1s;
		}
.wp-block-johan-ernst-map .exploration:hover .map-marker__details {
		border-width: 8px;
		padding: var(--wp--preset--spacing--2);
		height: 185px;
		width: 185px;
	}
:is(.wp-block-johan-ernst-map .exploration:hover .map-marker__details)::after {
			background-image: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22)), var(--thumbnail);
			opacity: 1;
		}
.wp-block-johan-ernst-map .rewild .map-marker__details {
		background: var(--wp--preset--color--base);
		border-radius: 100%;
		bottom: 100%;
		height: 0;
		overflow-y: visible;
		transition-duration: 0.35s;
		transition-timing-function: linear;
		transition-property: border-width, border-radius, bottom, height, width;
		width: 2px;
	}
:is(.wp-block-johan-ernst-map .rewild .map-marker__details)::before,:is(.wp-block-johan-ernst-map .rewild .map-marker__details)::after {
			content: "";
			height: 0;
			left: 50%;
			position: absolute;
			top: 100%;
			transform: translateX(-50%);
			transition: height 0.35s linear;
		}
:is(.wp-block-johan-ernst-map .rewild .map-marker__details)::before {
			background-color: var(--wp--preset--color--base);
			width: 2px;
		}
/* The `::after` pseudo-element helps improve the hover experience. */
/* Without it, the hover state is lost when the cursor moves from marker to details. */
:is(.wp-block-johan-ernst-map .rewild .map-marker__details)::after {
			width: calc(100% - var(--wp--preset--spacing--3));
		}
:is(.wp-block-johan-ernst-map .rewild .map-marker__details) h2 {
			align-items: center;
			color: var(--wp--preset--color--contrast);
			display: grid;
			gap: var(--wp--preset--spacing--1);
			grid-template-columns: max-content 1fr;
			margin: 0;
		}
:is(:is(.wp-block-johan-ernst-map .rewild .map-marker__details) h2)::before {
				content: "";
				background-image: url(./assets/img/icon-rewild.svg);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				height: var(--wp--preset--spacing--5);
				width: var(--wp--preset--spacing--5);
			}
.wp-block-johan-ernst-map .rewild .map-marker__details.calc-width,.wp-block-johan-ernst-map .rewild:hover .map-marker__details {
		border-radius: 20em;
		bottom: calc(100% + 22px);
		height: var(--wp--preset--spacing--7);
		overflow: visible;
		padding: var(--wp--preset--spacing--1) var(--wp--preset--spacing--2) var(--wp--preset--spacing--1) var(--wp--preset--spacing--1);
		white-space: nowrap;
		width: var(--width, -moz-fit-content);
		width: var(--width, fit-content);
	}
:is(.wp-block-johan-ernst-map .rewild .map-marker__details.calc-width,.wp-block-johan-ernst-map .rewild:hover .map-marker__details)::before,:is(.wp-block-johan-ernst-map .rewild .map-marker__details.calc-width,.wp-block-johan-ernst-map .rewild:hover .map-marker__details)::after {
			height: 23px;
		}
:is(.wp-block-johan-ernst-map .rewild .map-marker__details.calc-width,.wp-block-johan-ernst-map .rewild:hover .map-marker__details) h2 {
			transition-delay: 0.3s;
		}
.wp-block-johan-ernst-map .route .map-marker__details {
		transition: background-color 0.1s 0.25s, border-radius 0.35s, border-width 0.35s, height 0.35s, width 0.35s, padding 0.35s;
		transition-timing-function: linear;
	}
:is(.wp-block-johan-ernst-map .route .map-marker__details) h2 {
			align-items: center;
			color: var(--wp--preset--color--contrast);
			display: grid;
			gap: var(--wp--preset--spacing--1);
			grid-template-columns: max-content 1fr;
			margin: 0;
		}
:is(:is(.wp-block-johan-ernst-map .route .map-marker__details) h2)::before {
				background-image: var(--thumbnail);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				border-radius: 100%;
				content: "";
				height: var(--wp--preset--spacing--5);
				width: var(--wp--preset--spacing--5);
			}
.wp-block-johan-ernst-map .route .map-marker__details.calc-width,.wp-block-johan-ernst-map .route:hover .map-marker__details,.wp-block-johan-ernst-map .route.animating .map-marker__details {
		background-color: var(--wp--preset--color--orange);
		border-radius: 20em;
		height: var(--wp--preset--spacing--7);
		overflow: visible;
		padding: var(--wp--preset--spacing--1) var(--wp--preset--spacing--2) var(--wp--preset--spacing--1) 0;
		transition: background-color 0.1s, border-radius 0.35s, border-width 0.35s, height 0.35s, width 0.35s, padding 0.35s;
		white-space: nowrap;
		width: var(--width, -moz-fit-content);
		width: var(--width, fit-content);
	}
:is(.wp-block-johan-ernst-map .route .map-marker__details.calc-width,.wp-block-johan-ernst-map .route:hover .map-marker__details,.wp-block-johan-ernst-map .route.animating .map-marker__details) h2 {
			opacity: 1;
			transition-delay: 0.3s;
		}
.wp-block-johan-ernst-map .route-end {
		background-color: var(--wp--preset--color--base);
		border: 4px solid var(--wp--preset--color--orange);
		border-radius: 100%;
		display: none;
		height: 16px;
		width: 16px;
	}
.show:is(.wp-block-johan-ernst-map .route-end) {
			display: block;
		}
.wp-block-johan-ernst-map svg[hidden] {
		display: none;
	}
.wp-block-johan-ernst-map-instructions {
	-webkit-backdrop-filter: blur(2px);
	        backdrop-filter: blur(2px);
	background-color: rgba(0, 0, 0, 0.1);
	display: grid;
	margin: 0;
	opacity: 0;
	place-items: center;
	z-index: 3;
}
.wp-block-johan-ernst-map-instructions.display {
		animation: fade-in 2s forwards;
		display: none;
	}
.wp-block-johan-ernst-map-instructions .close-button {
		all: unset;
		border: 1px solid var(--wp--preset--color--base);
		border-radius: 100%;
		color: var(--wp--preset--color--base);
		cursor: pointer;
		height: var(--wp--preset--spacing--5);
		position: absolute;
		right: var(--wp--style--root--padding-right);
		top: var(--wp--preset--spacing--4);
		width: var(--wp--preset--spacing--5);
	}
:is(.wp-block-johan-ernst-map-instructions .close-button)::before {
			background-color: var(--wp--preset--color--contrast);
			content: "";
			display: block;
			margin: auto;
			-webkit-mask-image: url(./assets/img/icon-close.svg);
			        mask-image: url(./assets/img/icon-close.svg);
			-webkit-mask-repeat: no-repeat;
			        mask-repeat: no-repeat;
			-webkit-mask-size: contain;
			        mask-size: contain;
			height: var(--wp--preset--spacing--3);
			width: var(--wp--preset--spacing--3);
		}
.wp-block-johan-ernst-map-instructions .step {
		background-color: rgba(255, 255, 255, 0.5);
		border: 3px solid #fff;
		border-radius: 100%;
		display: flex;
		align-self: center;
		justify-self: center;
		height: 8em;
		margin: auto;
		position: absolute;
		width: 8em;
	}
.wp-block-johan-ernst-map-instructions .step-one.fade-out {
		animation: fade-out 1s forwards;
	}
.wp-block-johan-ernst-map-instructions .step-two {
		opacity: 0;
	}
.fade-in:is(.wp-block-johan-ernst-map-instructions .step-two) {
			animation: fade-in 1s forwards;
		}
.wp-block-johan-ernst-map-instructions p {
		font-size: var(--wp--preset--font-size--2);
		margin: auto;
		text-align: center;
		text-transform: uppercase;
	}
.site-header-home,
.site-header-home ~ .site-footer,
.map,
.explorations,
.map-zoom-controls,
.exploration-toggle {
	opacity: 0;
}
/* Assume the initial loading modal is displayed and prevent accidental
 clicks on UI elements in the background. */
.home .wp-site-blocks {
	pointer-events: none;
}
.home.map-loaded.introduction-dismissed .wp-site-blocks {
		pointer-events: initial;
	}
.home.map-loaded.introduction-dismissed .site-header,.home.map-loaded.introduction-dismissed .site-footer,.home.map-loaded.introduction-dismissed .map,.home.map-loaded.introduction-dismissed .explorations,.home.map-loaded.introduction-dismissed .map-zoom-controls,.home.map-loaded.introduction-dismissed .exploration-toggle {
		animation: fade-in 2s forwards;
	}
.home.map-loaded.introduction-dismissed .introduction {
		animation: fade-out 2s forwards;
	}
@keyframes fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}
@keyframes fade-out {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}
.footer-controls {
	grid-area: footer-controls;
	margin-block-start: 0;
	display: flex;
	justify-content: space-between;
}
.has-open-modal .footer-controls {
		filter: blur(10px);
	}
@media (max-width: 48.8125em) {
.footer-controls {
		justify-content: center;
}

		.footer-controls .map-zoom-controls {
			display: none;
		}
	}
/* --- Linear navigation carousel --- */
.loading-audio-toggle,
.map-zoom-controls,
.exploration-toggle {
	align-items: center;
	align-self: flex-end;
	justify-items: center;
	border: 1px solid currentcolor;
	border-radius: 20em;
	color: var(--wp--preset--color--base);
	display: grid;
	gap: var(--wp--preset--spacing--050);
	grid-template-columns: max-content max-content;
	margin: 0 var(--wp--style--root--padding-right) var(--wp--preset--spacing--5) var(--wp--style--root--padding-left);
	overflow: clip;
	padding: var(--wp--preset--spacing--050);
	max-width: max-content;
	z-index: 1;
	transition: border-color var(--speed) ease-in-out;
}
:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button {
		all: unset;
		border-radius: 20em;
		color: inherit;
		cursor: pointer;
		font-family: var(--wp--preset--font-family--roboto-mono);
		font-size: var(--wp--preset--spacing--1-5);
		font-weight: 500;
		text-transform: uppercase;
		height: var(--wp--preset--spacing--4);
		line-height: 1.5;
		padding: 0 var(--wp--preset--spacing--2);
		transition: all var(--speed) ease-in-out;
	}
[aria-pressed="true"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button),[aria-expanded="true"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button) {
			background-color: var(--wp--preset--color--base);
			color: var(--wp--preset--color--contrast);
		}
:is([aria-pressed="true"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button),[aria-expanded="true"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button)):hover {
				background-color: var(--wp--preset--color--orange);
			}
:is([aria-pressed="false"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button),[aria-expanded="false"]:is(:is(.loading-audio-toggle,.map-zoom-controls,.exploration-toggle) button)):hover {
				background-color: var(--wp--preset--color--orange);
				color: var(--wp--preset--color--contrast);
			}
@media (max-width: 48.8125em) {
.loading-audio-toggle,
.map-zoom-controls,
.exploration-toggle {
		justify-self: center;
}
	}
.map-zoom-controls button:hover {
		background-color: var(--wp--preset--color--orange);
		color: var(--wp--preset--color--contrast);
	}
/* --- Sound icon styles --- */
.button-sound-toggle {
	background-color: transparent;
	border: 1px solid var(--wp--preset--color--gray);
	border-radius: 100%;
	color: currentcolor;
	cursor: pointer;
	display: grid;
	place-content: center;
	height: var(--wp--preset--spacing--5);
	width: var(--wp--preset--spacing--5);
}
.button-sound-toggle::after {
		background-color: currentcolor;
		content: "";
		-webkit-mask-image: url(./assets/img/icon-audio.svg);
		        mask-image: url(./assets/img/icon-audio.svg);
		-webkit-mask-position: left center;
		        mask-position: left center;
		-webkit-mask-repeat: repeat-x;
		        mask-repeat: repeat-x;
		-webkit-mask-size: 68%;
		        mask-size: 68%;
		height: var(--wp--preset--spacing--1);
		width: var(--wp--preset--spacing--2);
	}
.button-sound-toggle[aria-pressed="true"] {
		background-color: var(--wp--preset--color--base);
		border-color: var(--wp--preset--color--base);
		color: var(--wp--preset--color--contrast);
	}
.button-sound-toggle[aria-pressed="true"]::after {
			animation: moveBackground 1.5s linear infinite;
		}
.button-sound-toggle:hover {
		background-color: var(--wp--preset--color--orange);
		border-color: var(--wp--preset--color--orange) !important;
		color: var(--wp--preset--color--contrast);
		transition: all var(--speed) ease-in-out;
	}
@keyframes moveBackground {
	0% {
		-webkit-mask-position: left center;
		        mask-position: left center;
	}
	100% {
		-webkit-mask-position: -200% center;
		        mask-position: -200% center;
	}
}
/* --- Linear cards --- */
.linear-scroll-cards {
	align-items: center;
	display: grid;
	grid-area: linear-cards;
	margin: var(--wp--preset--spacing--3) 0 !important;
	padding: 0 !important;
	transition: opacity var(--speed-slower) ease-in-out;
}
.linear-scroll-cards.linear-scroll-hidden {
		display: block;
		opacity: 0;
		pointer-events: none;
		z-index: -1;
	}
.linear-scroll-cards  > div {
		margin: 0 !important;
		padding: 0 !important;
	}
:is(.linear-scroll-cards > div) .exploration-card {
			height: 55vh;
		}
@media (max-width: 37.5em) {
:is(.linear-scroll-cards > div) .exploration-card {
				height: calc(100vh - 256px);
		}
			}
.is-style-carousel {
	position: relative;
	padding-right: 0 !important;
	padding-left: 0 !important;
}
/* --- query-linear-explorations --- */
.linear-scroll-cards .wp-block-query {
	width: 100%;
}
.query-linear-explorations {
	display: flex;
	gap: 0;
	overflow-x: scroll;
	padding: var(--wp--preset--spacing--4) var(--wp--style--root--padding-left);
	white-space: nowrap;
	will-change: transform;
	width: 100vw;
}
.query-linear-explorations li {
		margin: 0 !important;
		white-space: normal;
	}
:is(.query-linear-explorations li)  + li {
			padding-left: var(--wp--preset--spacing--3);
		}
.query-linear-explorations::-webkit-scrollbar {
  		height: 2px;
	}
.query-linear-explorations::-webkit-scrollbar-track {
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.5));
		margin-left: var(--wp--style--root--padding-left);
		margin-right: var(--wp--style--root--padding-right);
		width: calc(100% - var(--wp--style--root--padding-left) - var(--wp--style--root--padding-right));
	}
.query-linear-explorations::-webkit-scrollbar-thumb {
		background-color: var(--wp--preset--color--base);
	}
.query-linear-explorations::-webkit-scrollbar-thumb:hover {
		background-color: var(--wp--preset--color--orange);
	}
/* ---------------------------------------------
  Animations and interactions based on .in-view
--------------------------------------------- */
.children-have-effects > *,
.has-effect,
.image-children-have-effects > :is(.wp-block-image, .wp-block-embed) {
	opacity: 0;
	transform: translateY(var(--wp--preset--spacing--4));
	transition-property: opacity, transform;
	transition-duration: 0.75s, 0.5s;
	transition-timing-function: ease-in-out;
}
.in-view:is(.children-have-effects > *,.has-effect,.image-children-have-effects > :is(.wp-block-image,.wp-block-embed)) {
		opacity: 1;
		transform: none;
	}
:is(.single .in-view:is(.children-have-effects > *,.has-effect,.image-children-have-effects > :is(.wp-block-image,.wp-block-embed)),.page .in-view:is(.children-have-effects > *,.has-effect,.image-children-have-effects > :is(.wp-block-image,.wp-block-embed)))  + .in-view {
				transition-delay: 0.25s;
			}
:is(:is(.single .in-view:is(.children-have-effects > *,.has-effect,.image-children-have-effects > :is(.wp-block-image,.wp-block-embed)),.page .in-view:is(.children-have-effects > *,.has-effect,.image-children-have-effects > :is(.wp-block-image,.wp-block-embed))) + .in-view)  + .in-view {
					transition-delay: 0.5s;
				}
:is(.image-children-have-effects > .wp-block-gallery:not(.children))  > * {
		opacity: 0;
		transform: translateY(var(--wp--preset--spacing--4));
		transition-property: opacity, transform;
		transition-duration: 0.75s, 0.5s;
		transition-timing-function: ease-in-out;
	}
.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > * {
		opacity: 1;
		transform: none;
	}
:is(.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > *)  + * {
			transition-delay: 0.25s;
		}
:is(:is(.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > *) + *)  + * {
				transition-delay: 0.5s;
			}
:is(:is(:is(.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > *) + *) + *)  + * {
					transition-delay: 0.75s;
				}
:is(:is(:is(:is(.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > *) + *) + *) + *)  + * {
						transition-delay: 1s;
					}
:is(:is(:is(:is(:is(.in-view:is(.image-children-have-effects > .wp-block-gallery:not(.children)) > *) + *) + *) + *) + *)  + * {
							transition-delay: 1.25s;
						}
/* ---------------------------------------------
  Header animations
--------------------------------------------- */
/* --- Menu toggle --- */
.header-overlay-toggle {
	position: relative;
}
.header-overlay-toggle span,.header-overlay-toggle span::before,.header-overlay-toggle span::after {
		background-color: currentcolor;
		display: block;
		height: 100%;
		position: absolute;
		width: calc(var(--wp--preset--spacing--050) / 2);
		transform: translateX(50%);
	}
.header-overlay-toggle span {
		height: calc(var(--wp--preset--spacing--2) * 1.125);
		pointer-events: none;
	}
@media (max-width: 37.5em) {
.header-overlay-toggle span {
			left: 50%;
			transform: translateX(-50%);
	}
		}
@media (min-width: 37.501em) {
.header-overlay-toggle span {
			right: calc(var(--wp--preset--spacing--2) + var(--wp--preset--spacing--1-5));
	}
		}
:is(.header-overlay-toggle span)::before,:is(.header-overlay-toggle span)::after {
			content: "";
			opacity: 1;
		}
:is(.header-overlay-toggle span)::before {
			transform: translateX(-250%);
		}
:is(.header-overlay-toggle span)::after {
			transform: translateX(250%);
		}
.header-overlay-toggle[aria-expanded="true"] span {
			animation-name: menuLineCenter;
		}
:is(.header-overlay-toggle[aria-expanded="true"] span)::before {
				animation-name: menuLineLeft;
			}
:is(.header-overlay-toggle[aria-expanded="true"] span)::after {
				animation-name: menuLineRight;
			}
.header-overlay-toggle[aria-expanded="true"] span,.header-overlay-toggle[aria-expanded="true"] span::before,.header-overlay-toggle[aria-expanded="true"] span::after {
			animation-duration: var(--menu-transition-speed);
			animation-fill-mode: both;
		}
.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span {
			animation-name: menuLineCenterReverse;
		}
:is(.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span)::before {
				animation-name: menuLineLeftReverse;
			}
:is(.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span)::after {
				animation-name: menuLineRightReverse;
			}
.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span,.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span::before,.header-overlay-toggle.toggle-block-has-toggled[aria-expanded="false"] span::after {
			animation-duration: var(--menu-transition-speed);
			animation-fill-mode: both;
		}
@keyframes menuLineCenter {
	0% {
		background-color: currentcolor;
	}

	40% {
		background-color: currentcolor;
	}

	60% {
		background-color: transparent;
	}

	100% {
		background-color: transparent;
	}
}
@keyframes menuLineLeft {
	0% {
		transform: translateX(-250%);
	}

	40% {
		transform: translateX(0);
	}

	60% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(0) rotate(45deg);
	}
}
@keyframes menuLineRight {
	0% {
		transform: translateX(250%);
	}

	40% {
		transform: translateX(0);
	}

	60% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(0) rotate(-45deg);
	}
}
/* Reverse animations for closing */
@keyframes menuLineCenterReverse {
	100% {
		background-color: currentcolor
	}

	60% {
		background-color: currentcolor
	}

	40% {
		background-color: transparent;
	}

	0% {
		background-color: transparent;
	}
}
@keyframes menuLineLeftReverse {
	100% {
		transform: translateX(-250%);
	}

	60% {
		transform: translateX(0);
	}

	40% {
		transform: translateX(0);
	}

	0% {
		transform: translateX(0) rotate(45deg);
	}
}
@keyframes menuLineRightReverse {
	100% {
		transform: translateX(250%);
	}

	60% {
		transform: translateX(0);
	}

	40% {
		transform: translateX(0);
	}

	0% {
		transform: translateX(0) rotate(-45deg);
	}
}
/* --- Header navigation --- */
.header-navigation-overlay {
	height: 0;
	transition: height var(--speed-slower) cubic-bezier(0.25, 0.2, 0.25, 0.9);
}
.has-open-menu .header-navigation-overlay {
		transition: height var(--menu-transition-speed) cubic-bezier(0.25, 0.2, 0.25, 0.9);
		height: 100vh;
	}
.has-open-menu :is(.header-primary-navigation li) {
		animation-delay: var(--mts-early);
		animation-duration: var(--speed-slower);
		animation-fill-mode: forwards;
		animation-name: fadeAndSlideUp;
		animation-timing-function: ease-out;
		opacity: 0;
		padding-top: 0;
	}
:is(.header-primary-navigation li):nth-child(2) {
		animation-delay: calc(var(--mts-early) * 1.2);
	}
:is(.header-primary-navigation li):nth-child(3) {
		animation-delay: calc(var(--mts-early) * 1.4);
	}
:is(.header-primary-navigation li):nth-child(4) {
		animation-delay: calc(var(--mts-early) * 1.6);
	}
:is(.header-primary-navigation li):nth-child(5) {
		animation-delay: calc(var(--mts-early) * 1.8);
	}
:is(.header-primary-navigation li):nth-child(6) {
		animation-delay: calc(var(--mts-early) * 2);
	}
.menu-bottom,
.header-navigation-overlay-image {
	opacity: 0;
}
.has-open-menu :is(.menu-bottom,.header-navigation-overlay-image) {
		opacity: 1;
		transition: opacity var(--speed) ease-in-out;
		transition-delay: calc(var(--menu-transition-speed) - var(--speed));
	}
.has-open-menu .header-navigation-overlay-image {
		transition: opacity var(--speed-slower) ease-in-out;
		transition-delay: calc(var(--menu-transition-speed) - var(--speed));
	}
.post-modal {
	opacity: 0;
	top: 100%;
	animation: fadeAndMoveUp var(--speed-slower) ease-in-out 0.1s backwards;
}
.post-modal[open] {
		animation: fadeAndMoveUp var(--speed-slower) ease-in-out 0.1s forwards;
	}
.post-modal.type-partner {
		animation-name: slightFadeAndMoveUp;
	}
@keyframes fadeAndSlideUp {

	0% {
		opacity: 0;
		transform: translateY(-0.25em);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes fadeAndMoveUp {

	0% {
		opacity: 0;
		top: 100%;
	}

	100% {
		opacity: 1;
		top: var(--modal-top-offset);
	}
}
@keyframes slightFadeAndMoveUp {

	0% {
		opacity: 0;
		top: var(--wp--preset--spacing--3);
	}

	100% {
		opacity: 1;
		top: var(--modal-top-offset);
	}
}
