:root {
	--sr-header-expanded: 80px;
	--sr-header-compact: 60px;
	--sr-header-height: var(--sr-header-expanded);
	--sr-header-height-compact: var(--sr-header-compact);
	--sr-header-max: var(--sr-width-wide, 1380px);
	--sr-header-gutter: clamp(1.25rem, 3vw, 3rem);
	--sr-header-duration: 260ms;
	--sr-header-ease: cubic-bezier(.22, 1, .36, 1);
	--sr-header-brand-stage-width: 185px;
	--sr-header-brand-stage-height: 34px;
	--sr-header-brand-icon-width: 78px;
	--sr-header-brand-wordmark-width: 96px;
	--sr-header-brand-gap: 11px;
}

@media (min-width:2560px) {
	:root { --sr-header-max:var(--sr-width-max,1760px); }
}

html.sr-navigation-open { overflow: hidden; }

.sr-skip-link {
	position: fixed;
	top: .75rem;
	left: .75rem;
	z-index: 10001;
	padding: .75rem 1rem;
	color: #fff;
	background: var(--wp--preset--color--charcoal, #1c1e1f);
	transform: translateY(-160%);
}

.sr-skip-link:focus { transform: translateY(0); }

header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 1000;
}

body.admin-bar header.wp-block-template-part { top: 32px; }
body.admin-bar .sr-header-panel { --sr-header-admin-offset: 32px; }

.sr-site-header {
	position: relative;
	width: 100%;
	color: var(--wp--preset--color--charcoal, #1c1e1f);
	background: #fff;
	border-bottom: 1px solid var(--sr-line, rgba(28,30,31,.14));
	transition: box-shadow var(--sr-header-duration) var(--sr-header-ease);
}

.sr-site-header.is-condensed,
.sr-site-header[data-state="compact"] {
	box-shadow: 0 8px 26px rgba(28,30,31,.07);
}

.sr-site-header [hidden] { display: none !important; }

.sr-site-header__row {
	position: relative;
	z-index: 4;
	display: grid;
	grid-template-columns: var(--sr-header-brand-stage-width) minmax(0, 1fr) max-content;
	align-items: center;
	gap: clamp(2rem, 5vw, 5.25rem);
	width: min(calc(100% - (2 * var(--sr-header-gutter))), var(--sr-header-max));
	height: var(--sr-header-height);
	margin-inline: auto;
	transition: height var(--sr-header-duration) var(--sr-header-ease);
}

.is-condensed .sr-site-header__row,
[data-state="compact"] .sr-site-header__row { height: var(--sr-header-height-compact); }

.sr-site-header__brand {
	display: flex;
	align-items: center;
	width: var(--sr-header-brand-stage-width);
	height: 44px;
	color: inherit;
}

.sr-site-header__brand-stage {
	position: relative;
	display: block;
	width: var(--sr-header-brand-stage-width);
	height: var(--sr-header-brand-stage-height);
	overflow: hidden;
}

.sr-site-header__brand img {
	position: absolute;
	top: 50%;
	display: block;
	height: auto;
	border-radius: 0;
	transform: translateY(-50%);
	transform-origin: left center;
	transition: opacity var(--sr-header-duration) var(--sr-header-ease), transform var(--sr-header-duration) var(--sr-header-ease);
}

.sr-site-header__brand-icon { left: 0; width: var(--sr-header-brand-icon-width); }

.sr-site-header__brand-wordmark {
	left: calc(var(--sr-header-brand-icon-width) + var(--sr-header-brand-gap));
	width: var(--sr-header-brand-wordmark-width);
	opacity: 1;
}

[data-state="compact"] .sr-site-header__brand-icon { transform: translateY(-50%) scale(.92); }

[data-state="compact"] .sr-site-header__brand-wordmark {
	opacity: 0;
	transform: translate(-12px, -50%) scale(.98);
}

.sr-primary-nav,
.sr-header-utilities,
.sr-mobile-utilities {
	display: flex;
	align-items: center;
}

.sr-primary-nav { gap: clamp(1.7rem, 2.4vw, 2.25rem); }

.sr-primary-nav > a,
.sr-primary-nav__explore {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	min-height: 44px;
	padding: 0;
	color: inherit;
	font: 600 .82rem/1 var(--wp--preset--font-family--plex-mono, "IBM Plex Mono", monospace);
	letter-spacing: .055em;
	text-transform: uppercase;
	text-decoration: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
}

.sr-primary-nav > a::after,
.sr-primary-nav__explore::after {
	position: absolute;
	right: 0;
	bottom: 5px;
	left: 0;
	height: 2px;
	background: var(--wp--preset--color--eucalyptus, #5d6f61);
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 160ms ease;
}

.sr-primary-nav > a:hover::after,
.sr-primary-nav > a:focus-visible::after,
.sr-primary-nav__explore:hover::after,
.sr-primary-nav__explore:focus-visible::after,
.sr-primary-nav__explore[aria-expanded="true"]::after { transform: scaleX(1); }

.sr-primary-nav__explore .sr-icon {
	width: 15px;
	height: 15px;
	transition: transform 160ms ease;
}

.sr-primary-nav__explore[aria-expanded="true"] .sr-icon { transform: rotate(180deg); }

.sr-header-utilities {
	justify-self: end;
	gap: .4rem;
	padding-left: .8rem;
	border-left: 1px solid var(--sr-line, rgba(28,30,31,.14));
}

.sr-header-utilities > a,
.sr-header-utilities > button,
.sr-mobile-utilities > a,
.sr-mobile-utilities > button,
.sr-mobile-drawer__head button,
.sr-header-panel__close {
	position: relative;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	color: inherit;
	text-decoration: none;
	background: transparent;
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	transition: color 160ms ease, background-color 160ms ease;
}

.sr-header-utilities > a:hover,
.sr-header-utilities > button:hover,
.sr-mobile-utilities > a:hover,
.sr-mobile-utilities > button:hover,
.sr-mobile-drawer__head button:hover,
.sr-header-panel__close:hover {
	color: #405347;
	background: rgba(93,111,97,.12);
}

.sr-site-header .sr-icon {
	display: block;
	width: 21px;
	height: 21px;
	flex: 0 0 auto;
}

.sr-header-cart > span {
	position: absolute;
	top: 2px;
	right: 0;
	display: grid;
	place-items: center;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	color: #fff;
	font: 600 .6rem/1 var(--wp--preset--font-family--plex-mono, monospace);
	background: var(--wp--preset--color--red-earth, #a4472d);
	border: 2px solid var(--wp--preset--color--chalk, #f6f4f1);
	border-radius: 999px;
}

.sr-mobile-utilities { display: none; justify-self: end; gap: .15rem; }

.sr-header-panel {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 3;
	width: 100%;
	background: #f1efeb;
	border-bottom: 1px solid var(--sr-line, rgba(28,30,31,.14));
	box-shadow: 0 24px 50px rgba(28,30,31,.13);
	opacity: 0;
	transform: translateY(-7px);
}

.sr-header-panel.is-open {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 190ms ease, transform 190ms ease;
}

.sr-header-panel__inner {
	position: relative;
	width: min(calc(100% - (2 * var(--sr-header-gutter))), var(--sr-header-max));
	margin-inline: auto;
	padding-block: clamp(1.75rem, 3vw, 2.25rem);
}

.sr-explore-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.6rem);
}

.sr-explore-card {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	grid-template-rows: auto auto 1fr;
	align-content: start;
	column-gap: 1rem;
	min-height: 245px;
	padding: clamp(1.4rem, 2.4vw, 2rem);
	color: inherit;
	text-decoration: none;
	background: rgba(255,255,255,.76);
	border: 1px solid var(--sr-line, rgba(28,30,31,.14));
	border-radius: 14px;
	overflow: hidden;
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.sr-explore-card:hover,
.sr-explore-card:focus-visible {
	color: inherit;
	border-color: rgba(93,111,97,.58);
	box-shadow: 0 14px 30px rgba(28,30,31,.07);
	transform: translateY(-2px);
}

.sr-explore-card__icon {
	grid-row: 1 / span 2;
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	color: var(--wp--preset--color--eucalyptus, #5d6f61);
	background: rgba(93,111,97,.1);
	border-radius: 12px;
}

.sr-explore-card__icon .sr-icon { width: 31px; height: 31px; }

.sr-explore-card__eyebrow {
	grid-column: 2;
	color: var(--wp--preset--color--eucalyptus, #5d6f61);
	font: 600 .67rem/1.35 var(--wp--preset--font-family--plex-mono, monospace);
	letter-spacing: .105em;
	text-transform: uppercase;
}

.sr-explore-card strong {
	grid-column: 2;
	margin-top: .25rem;
	font-family: var(--wp--preset--font-family--plex-condensed, "IBM Plex Sans Condensed", sans-serif);
	font-size: clamp(1.65rem, 2.2vw, 2.2rem);
	line-height: 1;
}

.sr-explore-card__body {
	grid-column: 1 / 3;
	align-self: end;
	max-width: 38ch;
	padding-top: 2.2rem;
	color: #565d59;
	font-size: .94rem;
	line-height: 1.5;
}

.sr-explore-card__arrow {
	grid-column: 3;
	grid-row: 1 / span 3;
	align-self: end;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	color: var(--wp--preset--color--eucalyptus, #5d6f61);
	border: 1px solid rgba(93,111,97,.4);
	border-radius: 999px;
}

.sr-explore-card:hover .sr-explore-card__arrow .sr-icon,
.sr-explore-card:focus-visible .sr-explore-card__arrow .sr-icon { transform: translateX(3px); }

.sr-explore-preview {
	position: relative;
	min-height: 245px;
	background: var(--wp--preset--color--charcoal, #1c1e1f);
	border-radius: 14px;
	overflow: hidden;
}

.sr-explore-preview__layer {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: var(--wp--preset--color--chalk, #f6f4f1);
	opacity: 0;
	transition: opacity 180ms ease;
}

.sr-explore-preview__layer.is-active { opacity: 1; }

.sr-explore-preview__layer[data-preview-layer="default"] {
	place-items: end start;
	padding: 1.6rem;
	background:
		linear-gradient(135deg, transparent 42%, rgba(199,216,230,.18) 42% 44%, transparent 44%),
		radial-gradient(circle at 72% 28%, rgba(93,111,97,.8), transparent 32%),
		#242829;
}

.sr-explore-preview__layer[data-preview-layer="default"]::before,
.sr-explore-preview__layer[data-preview-layer="planner"]::before {
	position: absolute;
	inset: 16% 12%;
	border: 1px solid rgba(246,244,241,.2);
	border-radius: 50%;
	content: "";
	transform: rotate(-12deg);
}

.sr-explore-preview__layer[data-preview-layer="default"] span {
	font: 600 .7rem/1.3 var(--wp--preset--font-family--plex-mono, monospace);
	letter-spacing: .12em;
	text-transform: uppercase;
}

.sr-explore-preview__layer[data-preview-layer="guides"] { background: #dfe5df; color: #405347; }
.sr-explore-preview__layer[data-preview-layer="planner"] { background: #25302e; color: #c7d8e6; }
.sr-explore-preview__layer > .sr-icon { width: 96px; height: 96px; stroke-width: 1.1; }

.sr-search-panel .sr-header-panel__inner { padding-right: 4.5rem; }

.sr-header-search-form { max-width: 1050px; }

.sr-header-search-form > label {
	display: block;
	margin-bottom: .7rem;
	font: 600 .74rem/1.35 var(--wp--preset--font-family--plex-mono, monospace);
	letter-spacing: .09em;
	text-transform: uppercase;
}

.sr-header-search-form__row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: .8rem;
	padding: .45rem .5rem .45rem 1rem;
	background: #fff;
	border: 1px solid rgba(28,30,31,.28);
	border-radius: 10px;
}

.sr-header-search-form input {
	width: 100%;
	min-height: 46px;
	padding: .5rem 0;
	font-size: clamp(1rem, 2vw, 1.35rem);
	background: transparent;
	border: 0;
	outline: 0;
}

.sr-header-search-form button[type="submit"] {
	min-height: 46px;
	padding: .7rem 1.25rem;
	color: #fff;
	font: 600 .75rem/1 var(--wp--preset--font-family--plex-mono, monospace);
	letter-spacing: .05em;
	background: var(--wp--preset--color--eucalyptus, #5d6f61);
	border: 0;
	cursor: pointer;
}

.sr-header-search-form > p {
	margin: .65rem 0 0;
	color: #626864;
	font-size: .78rem;
}

.sr-header-panel__close { position: absolute; top: 1.75rem; right: 0; }

.sr-header-scrim {
	position: fixed;
	top: var(--sr-header-height);
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: auto;
	padding: 0;
	background: rgba(28,30,31,.12);
	border: 0;
	border-radius: 0;
	cursor: default;
}

.is-condensed .sr-header-scrim,
[data-state="compact"] .sr-header-scrim { top: var(--sr-header-height-compact); }

.sr-mobile-drawer { display: none; }

.sr-header-noscript {
	display: flex;
	justify-content: center;
	gap: 1.5rem;
	padding: .75rem var(--sr-header-gutter);
	font: 600 .75rem/1.3 var(--wp--preset--font-family--plex-mono, monospace);
	background: #f1efeb;
	border-top: 1px solid var(--sr-line);
}

.sr-search-results {
	padding-block: clamp(3rem, 7vw, 6rem);
}

.sr-search-results .wp-block-query-title { max-width: 18ch; }
.sr-search-results .wp-block-post-template { display: grid; gap: 1px; margin-top: 2.5rem; background: var(--sr-line); }
.sr-search-results .wp-block-post { padding: clamp(1.3rem, 3vw, 2rem); background: #fff; }
.sr-search-results .wp-block-post-title { margin: 0; font-size: clamp(1.45rem, 3vw, 2.2rem); }
.sr-search-results .wp-block-post-excerpt { max-width: 72ch; }

@media (max-width: 1120px) and (min-width: 960px) {
	.sr-site-header__row { gap: 2rem; }
	.sr-primary-nav { gap: 1.35rem; }
	.sr-primary-nav > a,
	.sr-primary-nav__explore { font-size: .75rem; }
	.sr-header-utilities { gap: .1rem; padding-left: .4rem; }
}

@media (max-width: 959px) {
	:root {
		--sr-header-expanded: 72px;
		--sr-header-compact: 58px;
	}
	.sr-site-header__row { grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; }
	.sr-primary-nav,
	.sr-header-utilities { display: none; }
	.sr-mobile-utilities { display: flex; }
	.sr-mobile-utilities > a,
	.sr-mobile-utilities > button { width: 44px; height: 44px; }
	.sr-header-panel { position: fixed; top: calc(var(--sr-header-height) + var(--sr-header-admin-offset, 0px)); }
	.is-condensed .sr-header-panel,
	[data-state="compact"] .sr-header-panel { top: calc(var(--sr-header-height-compact) + var(--sr-header-admin-offset, 0px)); }
	.sr-explore-panel { display: none !important; }
	.sr-search-panel .sr-header-panel__inner { padding: 1.25rem var(--sr-header-gutter); }
	.sr-header-panel__close { top: .75rem; right: var(--sr-header-gutter); }
	.sr-search-panel .sr-header-search-form { padding-right: 2.8rem; }
	.sr-header-search-form__row { gap: .5rem; padding-left: .75rem; }
	.sr-header-search-form button[type="submit"] { padding-inline: .85rem; }

	.sr-mobile-drawer {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 6;
		display: block;
		width: min(92vw, 420px);
		height: 100dvh;
		padding: 1rem clamp(1.1rem, 5vw, 1.6rem) 2rem;
		background: #fff;
		box-shadow: -20px 0 50px rgba(28,30,31,.18);
		overflow-y: auto;
		transform: translateX(100%);
	}

	.sr-mobile-drawer.is-open {
		transform: translateX(0);
		transition: transform 240ms ease;
	}

	.sr-mobile-drawer__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.2rem; }
	.sr-mobile-drawer__head strong { font: 600 .76rem/1 var(--wp--preset--font-family--plex-mono, monospace); letter-spacing: .09em; }
	.sr-mobile-drawer .sr-header-search-form { margin-bottom: 1.5rem; }
	.sr-mobile-drawer .sr-header-search-form__row { grid-template-columns: auto minmax(0,1fr); }
	.sr-mobile-drawer .sr-header-search-form button[type="submit"] { grid-column: 1 / -1; }
	.sr-mobile-drawer nav { border-top: 1px solid var(--sr-line); }
	.sr-mobile-nav__primary,
	.sr-mobile-explore > summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 62px;
		color: inherit;
		font: 600 .83rem/1 var(--wp--preset--font-family--plex-mono, monospace);
		letter-spacing: .05em;
		text-decoration: none;
		border-bottom: 1px solid var(--sr-line);
		cursor: pointer;
		list-style: none;
	}
	.sr-mobile-explore > summary::-webkit-details-marker { display: none; }
	.sr-mobile-explore > summary .sr-icon { transition: transform 160ms ease; }
	.sr-mobile-explore[open] > summary .sr-icon { transform: rotate(180deg); }
	.sr-mobile-explore > div { display: grid; gap: .75rem; padding: 1rem 0; }
	.sr-mobile-explore .sr-explore-card { min-height: 118px; padding: 1rem; }
	.sr-mobile-explore .sr-explore-card__icon { width: 46px; height: 46px; }
	.sr-mobile-explore .sr-explore-card__icon .sr-icon { width: 25px; height: 25px; }
	.sr-mobile-explore .sr-explore-card strong { font-size: 1.45rem; }
	.sr-mobile-explore .sr-explore-card__body { grid-column: 2 / 4; align-self: start; padding-top: .45rem; font-size: .82rem; }
	.sr-mobile-explore .sr-explore-card__arrow { display: none; }
	.sr-header-scrim { top: 0; z-index: 5; background: rgba(28,30,31,.34); }
}

@media (max-width: 782px) {
	body.admin-bar header.wp-block-template-part { top: 46px; }
	body.admin-bar .sr-header-panel { --sr-header-admin-offset: 46px; }
}

@media (max-width: 767px) {
	:root {
		--sr-header-expanded: 64px;
		--sr-header-compact: 56px;
		--sr-header-brand-stage-width: 174px;
		--sr-header-brand-stage-height: 32px;
		--sr-header-brand-icon-width: 73px;
		--sr-header-brand-wordmark-width: 90px;
		--sr-header-brand-gap: 10px;
	}
}

@media (max-width: 390px) {
	.sr-site-header__row { width: calc(100% - 1.5rem); }
	.sr-mobile-utilities > a,
	.sr-mobile-utilities > button { width: 44px; height: 44px; }
	.sr-mobile-utilities { gap: 0; }
}

@media (max-width: 350px) {
	:root { --sr-header-brand-stage-width: 76px; }
	.sr-site-header__brand-wordmark { opacity: 0; }
	.sr-mobile-utilities [data-sr-open="search"] { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.sr-site-header *,
	.sr-site-header *::before,
	.sr-site-header *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}

	[data-state="compact"] .sr-site-header__brand-icon { transform: translateY(-50%); }
	[data-state="compact"] .sr-site-header__brand-wordmark { transform: translateY(-50%); }
}
