/*
Theme Name: Backyard History
Theme URI: https://backyardhistory.ca/
Author: Backyard History
Description: A clean editorial block theme for Backyard History articles, books, and podcast content.
Version: 0.3.48
Requires at least: 6.7
Tested up to: 7.0
Requires PHP: 8.0
Text Domain: backyard-history
*/

/* Self-hosted font files are distributed under the SIL Open Font License. */
@font-face {
	font-family: "Chivo";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("assets/fonts/chivo/chivo-variable.ttf") format("truetype");
}

@font-face {
	font-family: "Chivo";
	font-style: italic;
	font-weight: 400 900;
	font-display: swap;
	src: url("assets/fonts/chivo/chivo-italic-variable.ttf") format("truetype");
}

@font-face {
	font-family: "EB Garamond";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/eb-garamond/eb-garamond-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "EB Garamond";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/eb-garamond/eb-garamond-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "EB Garamond";
	font-style: italic;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/eb-garamond/eb-garamond-italic-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "EB Garamond";
	font-style: italic;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/eb-garamond/eb-garamond-italic-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Cabin";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/cabin/cabin-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Cabin";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/cabin/cabin-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Cabin";
	font-style: italic;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/cabin/cabin-italic-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Cabin";
	font-style: italic;
	font-weight: 400 700;
	font-display: swap;
	src: url("assets/fonts/cabin/cabin-italic-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Fjalla One";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("assets/fonts/fjalla-one/fjalla-one-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Fjalla One";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("assets/fonts/fjalla-one/fjalla-one-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:where(html) {
	scroll-behavior: smooth;
}

body {
	text-wrap: pretty;
}

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 0.1875rem solid currentColor;
	outline-offset: 0.1875rem;
}

.skip-link {
	background: var(--wp--preset--color--soft-surface);
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--utility);
	font-weight: 700;
	left: 1rem;
	padding: 0.75rem 1rem;
	position: fixed;
	top: 1rem;
	transform: translateY(-200%);
	z-index: 100000;
}

.bh-style-swatch {
	border: 1px solid var(--wp--preset--color--border);
	min-height: 7rem;
	padding: 1rem;
}

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

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

.bh-promo {
	background: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--utility);
	font-size: calc(var(--wp--preset--font-size--small) + 0.25rem);
	line-height: 1.4;
}

.bh-promo__inner {
	align-items: center;
	display: flex;
	gap: 0.5rem 1rem;
	justify-content: center;
	margin-inline: auto;
	max-width: var(--wp--style--global--wide-size);
	min-height: 2.75rem;
	padding: 0.5rem var(--wp--preset--spacing--gutter);
	text-align: center;
}

.bh-promo a {
	color: inherit;
	font-weight: 700;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.2em;
}

html.bh-visitor-popup-open {
	overflow: hidden;
}

.bh-visitor-popup {
	background: transparent;
	border: 0;
	box-sizing: border-box;
	color: var(--wp--preset--color--body);
	max-height: calc(100dvh - var(--wp--custom--visitor-popup--viewport-gap));
	max-width: min(var(--wp--custom--visitor-popup--max-width), calc(100vw - var(--wp--custom--visitor-popup--viewport-gap)));
	overflow: visible;
	padding: 0;
	width: 100%;
}

.bh-visitor-popup::backdrop {
	background: rgb(27 27 27 / 78%);
}

.bh-visitor-popup__panel {
	background: var(--wp--preset--color--white);
	border-top: 0.25rem solid var(--wp--preset--color--brand-red);
	box-shadow: 0 1.5rem 4rem rgb(27 27 27 / 35%);
	max-height: calc(100dvh - var(--wp--custom--visitor-popup--viewport-gap));
	overflow: auto;
	position: relative;
}

.bh-visitor-popup__close {
	align-items: center;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--ink);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--ink);
	cursor: pointer;
	display: flex;
	height: 2.75rem;
	justify-content: center;
	padding: 0;
	position: absolute;
	right: var(--wp--preset--spacing--sm);
	top: var(--wp--preset--spacing--sm);
	width: 2.75rem;
	z-index: 1;
}

.bh-visitor-popup__close:hover,
.bh-visitor-popup__close:focus-visible {
	background: var(--wp--preset--color--maritime-blue);
	border-color: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
}

.bh-visitor-popup__close svg {
	fill: currentColor;
}

.bh-visitor-popup__image {
	aspect-ratio: 16 / 9;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.bh-visitor-popup__content {
	padding: clamp(1.5rem, 4vw, 2.5rem);
	text-align: center;
}

.bh-visitor-popup__content > * {
	margin-block: 0;
}

.bh-visitor-popup__content .bh-kicker {
	margin-bottom: var(--wp--preset--spacing--sm);
}

.bh-visitor-popup__content h2 {
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.75rem, 5vw, 2.75rem);
	line-height: 1.08;
}

.bh-visitor-popup__content h2:focus {
	outline: none;
}

.bh-visitor-popup__content h2 + p {
	font-size: var(--wp--preset--font-size--lead);
	margin-top: var(--wp--preset--spacing--base);
}

.bh-visitor-popup__button {
	background: var(--wp--preset--color--brand-red);
	border: 1px solid var(--wp--preset--color--brand-red);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--white);
	display: inline-block;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-top: var(--wp--preset--spacing--lg);
	padding: 0.75rem 1.5rem;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.bh-visitor-popup__button:hover,
.bh-visitor-popup__button:focus-visible {
	background: var(--wp--preset--color--maritime-blue);
	border-color: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
}

@media (prefers-reduced-motion: no-preference) {
	.bh-visitor-popup[open] .bh-visitor-popup__panel {
		animation: bh-visitor-popup-enter 180ms ease-out;
	}

	@keyframes bh-visitor-popup-enter {
		from {
			opacity: 0;
			transform: translateY(0.75rem);
		}
	}
}

.bh-site-header {
	background: var(--wp--preset--color--white);
	border-bottom: 0.1875rem solid var(--wp--preset--color--brand-red);
}

.bh-site-header .wp-block-site-title {
	font-family: var(--wp--preset--font-family--wordmark);
	font-size: clamp(2rem, 3.25vw, 3rem);
	font-weight: 400;
	flex: 0 1 auto;
	letter-spacing: -0.02em;
	line-height: 1;
	margin: 0;
}

.bh-site-header .wp-block-site-title a {
	color: var(--wp--preset--color--brand-red);
	text-decoration: none;
}

.bh-site-header .wp-block-navigation-item__content {
	text-underline-offset: 0.25em;
}

.bh-site-header .wp-block-navigation__container {
	gap: 0.85rem;
}

.bh-site-header .wp-block-navigation {
	flex: 1 1 auto;
	max-width: 100%;
	min-width: 0;
}

.bh-site-header__inner {
	gap: 1rem;
	min-width: 0;
}

.bh-site-header .current-menu-item > .wp-block-navigation-item__content,
.bh-site-header .wp-block-navigation-item__content[aria-current="page"],
.bh-site-header .wp-block-navigation-item__content:hover,
.bh-site-header .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--brand-red);
	text-decoration: underline;
	text-decoration-thickness: 0.1em;
}

.bh-site-main,
.woocommerce-shop main.wp-block-group {
	--bh-page-top-space: clamp(1.5rem, 3vw, 3rem);

	margin-block-start: 0 !important;
	min-height: 55vh;
	padding-top: var(--bh-page-top-space) !important;
}

.bh-site-main > :first-child,
.woocommerce-shop main.wp-block-group > :first-child {
	margin-block-start: 0;
}

.bh-home-main {
	padding-top: 0 !important;
}

.bh-home-hero {
	padding-block: var(--bh-page-top-space, clamp(1.5rem, 3vw, 3rem)) calc(var(--wp--preset--spacing--section) / 2) !important;
}

.bh-home-hero--closing {
	margin-block-start: var(--wp--preset--spacing--section);
	padding: var(--wp--preset--spacing--xl) !important;
}

.bh-home-hero__media-actions {
	margin-block-start: var(--wp--preset--spacing--xl);
}

.bh-home-hero--closing + .bh-newsletter--compact {
	margin-block-start: 0 !important;
}

.bh-home-hero__title {
	font-size: clamp(2rem, 5vw, 3rem);
	line-height: 1.02;
}

.bh-kicker,
.is-style-kicker {
	color: var(--wp--preset--color--brand-red);
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.3;
	text-transform: uppercase;
}

.bh-article-header {
	padding-block: 0 clamp(1rem, 2.5vw, 2rem);
}

.bh-article-title {
	/* max-width: 18ch; */
}

.bh-article-deck {
	color: var(--wp--preset--color--body);
	font-size: var(--wp--preset--font-size--lead);
	line-height: 1.48;
	max-width: 40rem;
}

.bh-meta-row {
	align-items: center;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-wrap: wrap;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	gap: 0.5rem 1rem;
}

.bh-meta-row a {
	color: inherit;
}

.single-article .wp-block-post-content {
	font-size: var(--wp--preset--font-size--article);
	line-height: 1.7;
}

.single-article .wp-block-post-content > :where(p, ul, ol) {
	margin-block: 0 1.5em;
}

.single-article .wp-block-post-content > p:first-of-type::first-letter {
	color: var(--wp--preset--color--brand-red);
	float: left;
	font-size: 4.15em;
	font-weight: 700;
	line-height: 0.78;
	margin: 0.1em 0.12em 0 0;
}

.single-article .wp-block-post-content figure {
	box-sizing: border-box;
	margin-block: clamp(2rem, 5vw, 3.5rem);
	max-width: 100%;
	overflow-x: clip;
}

.single-article .wp-block-post-content :where(.wp-block-image, .wp-caption, figure) {
	max-width: 100%;
}

.single-article .wp-block-post-content :where(img, picture, video, iframe) {
	display: block;
	height: auto;
	max-width: 100%;
}

.single-article .wp-block-post-content :where(.alignwide, .alignfull) {
	box-sizing: border-box;
	max-width: min(100%, var(--wp--style--global--wide-size)) !important;
}

figcaption,
.wp-element-caption {
	border-bottom: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1.45;
	margin-top: 0.75rem;
	padding-bottom: 0.75rem;
	text-align: left;
}

.wp-block-quote {
	margin-block: clamp(2rem, 5vw, 4rem);
}

.wp-block-quote cite {
	display: block;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-style: normal;
	letter-spacing: 0.04em;
	margin-top: 1rem;
}

.bh-editorial-rule,
.is-style-editorial-rule {
	/* border-top: 0.1875rem solid var(--wp--preset--color--brand-red); */
	/* padding-top: var(--wp--preset--spacing--lg); */
}

.bh-author-layout {
	gap: clamp(2rem, 5vw, 4rem);
}

.bh-author-copy {
	max-width: 48rem;
}

.bh-author-copy p {
	margin-block: 0 1.35em;
}

.bh-author-portrait {
	margin: 0;
}

.bh-author-portrait img {
	border-top: 0.1875rem solid var(--wp--preset--color--brand-red);
	display: block;
	height: auto;
	width: 100%;
}

.bh-feature-page {
	padding-bottom: var(--wp--preset--spacing--section);
}

.bh-feature-page__content {
	width: 100%;
}

.bh-feature-frame,
.bh-map-frame {
	margin-top: var(--wp--preset--spacing--xl);
	width: 100%;
}

.bh-feature-frame iframe,
.bh-map-frame iframe {
	border: 0;
	display: block;
	width: 100%;
}

.bh-feature-frame--map iframe,
.bh-map-frame iframe {
	aspect-ratio: 16 / 9;
	min-height: clamp(32rem, 68vh, 45rem);
}

.bh-feature-frame--podcast iframe {
	min-height: 30rem;
}

.bh-article-search {
	margin-block: var(--wp--preset--spacing--xl);
}

.bh-article-browser {
	width: 100%;
}

.bh-article-browser .bh-article-search {
	margin-bottom: 1rem;
}

.bh-article-browser__results {
	transition: opacity 160ms ease;
}

.bh-article-browser__status {
	box-sizing: border-box;
	min-height: 2.75rem;
	padding-top: 0.35rem;
}

.bh-article-browser__status .bh-search-summary {
	margin-top: 0;
}

.bh-article-browser__results:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-red);
	outline-offset: 0.35rem;
}

.bh-article-browser.is-loading {
	cursor: progress;
}

.bh-article-browser.is-loading .bh-article-browser__results {
	opacity: 0.55;
}

.bh-article-search label {
	color: var(--wp--preset--color--ink);
	display: block;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.bh-article-search__controls {
	display: flex;
	gap: 0.75rem;
}

.bh-article-search input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
}

/* Replace the browser's shaded search-clear control with a solid brand mark. */
.bh-article-search input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
	background: var(--wp--preset--color--maritime-blue);
	clip-path: polygon(0 12%, 12% 0, 50% 38%, 88% 0, 100% 12%, 62% 50%, 100% 88%, 88% 100%, 50% 62%, 12% 100%, 0 88%, 38% 50%);
	cursor: pointer;
	display: block;
	height: 1rem;
	margin-inline-end: 0.125rem;
	opacity: 1;
	width: 1rem;
}

.bh-article-search button {
	background: var(--wp--preset--color--maritime-blue);
	border: 1px solid var(--wp--preset--color--maritime-blue);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--white);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	letter-spacing: 0.08em;
	min-height: 2.75rem;
	padding-inline: 1.5rem;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.bh-article-search button:hover,
.bh-article-search button:focus-visible {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
}

.bh-search-summary {
	color: var(--wp--preset--color--muted);
	display: block;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	margin-top: 0.75rem;
}

.bh-search-highlight {
	background: color-mix(in srgb, var(--wp--preset--color--brand-red) 18%, transparent);
	border-radius: 0.125rem;
	color: inherit;
	padding-inline: 0.125em;
}

.bh-interac-payment-instructions {
	background: color-mix(in srgb, var(--wp--preset--color--brand-red) 18%, transparent);
	color: var(--wp--preset--color--ink);
	padding: var(--wp--preset--spacing--lg);
}

.bh-interac-payment-instructions:empty {
	display: none;
}

.bh-interac-payment-instructions > :first-child {
	margin-top: 0;
}

.bh-interac-payment-instructions > :last-child {
	margin-bottom: 0;
}

.bh-category-filter {
	background:
		repeating-linear-gradient(0deg, rgb(27 27 27 / 2%) 0, rgb(27 27 27 / 2%) 1px, transparent 1px, transparent 4px),
		var(--wp--preset--color--soft-surface);
	box-sizing: border-box;
	margin-block: 0;
}

.bh-category-filter__summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	justify-content: space-between;
	letter-spacing: 0.12em;
	list-style: none;
	padding: 0.8rem 1rem;
	text-transform: uppercase;
}

.bh-category-filter__summary::-webkit-details-marker {
	display: none;
}

.bh-category-filter__summary::marker {
	content: "";
}

.bh-category-filter__summary:hover,
.bh-category-filter__summary:focus-visible {
	text-decoration: underline;
	text-decoration-thickness: 0.1em;
	text-underline-offset: 0.22em;
}

.bh-category-filter[open] .bh-category-filter__summary {
	border-bottom: 1px solid var(--wp--preset--color--ink);
}

.bh-category-filter__heading {
	align-items: center;
	display: inline-flex;
	gap: 0.55rem;
}

.bh-category-filter__chevron {
	display: block;
	flex: 0 0 auto;
	height: 1.2rem;
	width: 1.2rem;
}

.bh-category-filter__chevron {
	fill: none;
	stroke: currentColor;
	stroke-linecap: square;
	stroke-linejoin: miter;
	stroke-width: 2;
	transition: transform 160ms ease;
}

.bh-category-filter[open] .bh-category-filter__chevron {
	transform: rotate(180deg);
}

.bh-category-filter__content {
	padding: var(--wp--preset--spacing--base) var(--wp--preset--spacing--lg);
}

.bh-category-filter__list {
	line-height: 1.85;
	row-gap: 0.1rem;
}

.bh-category-filter__list,
.bh-card-categories {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.35;
	list-style: none;
	margin: 0;
	padding: 0;
	text-transform: uppercase;
}

.bh-category-filter__list li {
	align-items: baseline;
	display: inline-flex;
}

.bh-category-filter__list li:not(:last-child)::after {
	content: "•";
	font-size: 1.6em;
	line-height: 0;
	padding-inline: 0.65em;
	vertical-align: -0.08em;
}

.bh-category-filter__list a,
.bh-card-categories__label {
	color: inherit;
	text-decoration: none;
}

.bh-category-filter__list a:hover,
.bh-category-filter__list a:focus-visible,
.bh-category-filter__list a.is-selected,
.bh-category-filter__list a[aria-current="true"],
.bh-card-categories__label:is(a):hover,
.bh-card-categories__label:is(a):focus-visible,
.bh-card-categories__label.is-selected {
	text-decoration: underline;
	text-decoration-thickness: 0.1em;
	text-underline-offset: 0.22em;
}

.bh-article-search--compact {
	margin-block: var(--wp--preset--spacing--lg) 0;
	max-width: 22rem;
}

.bh-article-search--compact .bh-article-search__controls {
	gap: 0;
}

.bh-article-search--compact input[type="search"] {
	background: color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	/* border: 1px solid color-mix(in srgb, var(--wp--preset--color--white) 55%, transparent); */
	border-radius: var(--wp--custom--radius--small) 0 0 var(--wp--custom--radius--small);
	min-height: 2.5rem;
}

.bh-article-search--compact button {
	align-items: center;
	background: var(--wp--preset--color--maritime-blue);
	/* border-color: color-mix(in srgb, var(--wp--preset--color--white) 55%, transparent); */
	border-left: 0;
	border-radius: 0 var(--wp--custom--radius--small) var(--wp--custom--radius--small) 0;
	color: var(--wp--preset--color--white);
	display: inline-flex;
	flex: 0 0 2.5rem;
	font-size: 1rem;
	justify-content: center;
	min-height: 2.5rem;
	padding-inline: 0;
	width: 2.5rem;
}

.bh-article-search--compact button:hover,
.bh-article-search--compact button:focus-visible {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
	color: var(--wp--preset--color--white);
}

.bh-article-search--compact svg {
	display: block;
	fill: currentColor;
}

.bh-article-search--compact .bh-article-search__button-label {
	display: none;
}

.bh-card {
	border-top: 0.1875rem solid var(--wp--preset--color--brand-red);
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-top: 0.5rem;
	text-align: left;
}

.bh-article-grid {
	display: grid;
	gap: var(--wp--preset--spacing--xl);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bh-card > * {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.bh-card .wp-block-post-featured-image {
	align-items: center;
	aspect-ratio: 4 / 3;
	background: var(--wp--preset--color--soft-surface);
	display: flex;
	justify-content: center;
	overflow: hidden;
	width: 100%;
}

.bh-card .wp-block-post-featured-image a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.bh-card .wp-block-post-featured-image img {
	display: block;
	height: auto;
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

.bh-card .wp-block-post-date,
.bh-card .wp-block-post-terms {
	align-self: flex-start;
	text-align: left;
}

.bh-article-grid .bh-card .wp-block-post-title {
	margin-block: 0.5em 0;
}

.bh-card .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}

.bh-card .wp-block-post-title a:hover {
	color: var(--wp--preset--color--brand-red);
}

.bh-card-categories {
	align-self: flex-start;
	box-sizing: border-box;
	display: block;
	margin-block: 0;
	margin-top: var(--wp--preset--spacing--sm);
	max-width: 100%;
	padding: 0;
	width: fit-content;
}

.bh-card-categories__paper {
	background:
		repeating-linear-gradient(0deg, rgb(27 27 27 / 2%) 0, rgb(27 27 27 / 2%) 1px, transparent 1px, transparent 4px),
		var(--wp--preset--color--soft-surface);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	padding: 0.35rem 0.45rem;
}

.bh-card-categories__segment {
	white-space: nowrap;
}

.bh-card-categories__separator {
	font-size: 1.5em;
	vertical-align: -0.08em;
}

.bh-meta-row .bh-card-categories--article-meta {
	margin-top: 0;
}

.bh-similar-articles {
	border-top: 0.1875rem solid var(--wp--preset--color--ink);
	margin-block: var(--wp--preset--spacing--3-xl) var(--wp--preset--spacing--4-xl);
	padding-top: var(--wp--preset--spacing--lg);
}

.bh-similar-articles__header {
	margin-bottom: var(--wp--preset--spacing--xl);
}

.bh-similar-articles__header > * {
	margin-block: 0;
}

.bh-similar-articles__header > * + * {
	margin-top: var(--wp--preset--spacing--xs);
}

.bh-similar-articles__grid {
	align-items: stretch;
	display: grid;
	gap: var(--wp--preset--spacing--lg);
	grid-auto-rows: auto;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bh-card--compact {
	border-top-width: 0.125rem;
	gap: var(--wp--preset--spacing--sm);
	padding-top: var(--wp--preset--spacing--sm);
}

.bh-similar-articles__grid > .bh-card--compact {
	box-sizing: border-box;
	height: auto;
	min-height: 0;
}

.bh-card--compact__image {
	align-items: center;
	aspect-ratio: 16 / 10;
	background: var(--wp--preset--color--soft-surface);
	display: flex;
	justify-content: center;
	margin: 0;
	overflow: hidden;
	width: 100%;
}

.bh-card--compact__image a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.bh-card--compact__image img {
	display: block;
	height: auto;
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

.bh-card--compact__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: var(--wp--preset--spacing--xs);
	min-width: 0;
}

.bh-card--compact__body > * {
	margin-block: 0;
}

.bh-card--compact h3 {
	font-size: clamp(1.1rem, 2vw, 1.35rem);
	letter-spacing: -0.02em;
	line-height: 1.12;
}

.bh-card--compact h3 a {
	color: inherit;
	text-decoration: none;
}

.bh-card--compact h3 a:hover {
	color: var(--wp--preset--color--brand-red);
}

.bh-card--compact p {
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.5;
}

.bh-card-categories--matched {
	font-size: 0.72rem;
	margin-top: auto;
}

.wp-block-button .wp-block-button__link {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	min-height: 2.75rem;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.wp-block-button:not(.is-style-outline, .bh-button--purchase) .wp-block-button__link:not(.has-background):hover,
.wp-block-button:not(.is-style-outline, .bh-button--purchase) .wp-block-button__link:not(.has-background):focus-visible {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
	color: var(--wp--preset--color--white);
}

/* Reserve red-filled buttons for the site's principal purchase action. */
.bh-button--purchase .wp-block-button__link {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
	color: var(--wp--preset--color--white);
}

.bh-button--purchase .wp-block-button__link:hover,
.bh-button--purchase .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--maritime-blue);
	border-color: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--maritime-blue);
	border-color: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
}

:where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--ink);
	font: inherit;
	min-height: 2.75rem;
	padding: 0.75rem;
}

textarea {
	min-height: 9rem;
	resize: vertical;
}

.bh-newspaper-ad {
	background:
		repeating-linear-gradient(0deg, rgb(27 27 27 / 2%) 0, rgb(27 27 27 / 2%) 1px, transparent 1px, transparent 4px),
		var(--wp--preset--color--soft-surface);
	border: 1px solid var(--wp--preset--color--ink);
	box-sizing: border-box;
	margin-block: var(--wp--preset--spacing--section) 0;
	padding: var(--wp--preset--spacing--xl);
	position: relative;
}

.bh-newspaper-ad--lead {
	border-top: 0;
	margin-block-start: var(--bh-page-top-space, clamp(1.5rem, 3vw, 3rem));
}

.bh-newspaper-ad.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none;
	width: 100%;
}

.bh-newspaper-ad__edition {
	border-bottom: 1px solid var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	letter-spacing: 0.14em;
	margin-block: 0 var(--wp--preset--spacing--sm);
	padding-block: 0.25rem;
	text-transform: uppercase;
}

.bh-newspaper-ad__edition span {
	display: inline-block;
	font-size: 1.6em;
	line-height: 0;
	padding-inline: 0.65em;
	vertical-align: -0.08em;
}

.bh-newspaper-ad__title {
	border-block: 0.25rem double var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--wordmark);
	font-size: clamp(1.55rem, 8.4vw, 7rem);
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 0.95;
	margin-block: 0;
	padding-block: var(--wp--preset--spacing--sm);
	text-transform: uppercase;
	white-space: nowrap;
}

.bh-newspaper-ad__copy {
	display: grid;
	gap: var(--wp--preset--spacing--xl);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bh-newspaper-ad__copy p {
	font-size: var(--wp--preset--font-size--lead);
	line-height: 1.38;
	margin-block: 0;
	text-align: justify;
}

.bh-newspaper-ad__copy p + p {
	border-left: 1px solid var(--wp--preset--color--ink);
	padding-left: var(--wp--preset--spacing--xl);
}

.bh-newspaper-ad__copy p:first-child::first-letter {
	float: left;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: 3.5rem;
	font-weight: 400;
	line-height: 0.76;
	margin: 0.11em 0.1em 0 0;
}

.bh-newsletter {
	box-sizing: border-box;
}

.bh-newsletter__inner {
	align-items: center;
	display: grid;
	gap: var(--wp--preset--spacing--xl);
	grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.8fr);
}

.bh-newsletter__copy > * {
	margin-block: 0;
}

.bh-newsletter__copy > * + * {
	margin-top: var(--wp--preset--spacing--sm);
}

.bh-newsletter__copy h2 {
	font-size: var(--wp--preset--font-size--h-3);
}

.bh-newsletter__form label {
	display: block;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	letter-spacing: 0.04em;
	margin-bottom: var(--wp--preset--spacing--xs);
}

.bh-newsletter__label {
	margin-block: 0;
}

.bh-newsletter__controls {
	display: flex;
}

.bh-newsletter__controls input[type="email"] {
	border-radius: var(--wp--custom--radius--small) 0 0 var(--wp--custom--radius--small);
	flex: 1 1 auto;
	min-width: 0;
}

.bh-newsletter__controls button {
	background: var(--wp--preset--color--maritime-blue);
	border: 1px solid var(--wp--preset--color--maritime-blue);
	border-left: 0;
	border-radius: 0 var(--wp--custom--radius--small) var(--wp--custom--radius--small) 0;
	color: var(--wp--preset--color--white);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--meta);
	font-weight: 700;
	letter-spacing: 0.06em;
	min-height: 2.75rem;
	padding-inline: 1.25rem;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.bh-newsletter__controls button:hover,
.bh-newsletter__controls button:focus-visible {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
}

.bh-newsletter__controls button:disabled {
	cursor: wait;
	opacity: 0.7;
}

.bh-newsletter__consent,
.bh-newsletter__status {
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.45;
	margin-block: var(--wp--preset--spacing--xs) 0;
}

.bh-newsletter__status:empty {
	display: none;
}

.bh-newsletter__trap {
	height: 1px;
	left: -10000px;
	overflow: hidden;
	position: absolute;
	top: auto;
	width: 1px;
}

.bh-newsletter--full {
	background: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
	margin-top: var(--wp--preset--spacing--section);
	padding-block: var(--wp--preset--spacing--3-xl);
}

.bh-newsletter--full .bh-newsletter__inner {
	margin-inline: auto;
	max-width: var(--wp--style--global--wide-size);
	padding-inline: var(--wp--preset--spacing--gutter);
}

.bh-newsletter--full :where(h2, .bh-kicker) {
	color: var(--wp--preset--color--white);
}

.bh-newsletter--full .bh-newsletter__consent {
	color: color-mix(in srgb, var(--wp--preset--color--white) 80%, transparent);
}

.bh-newsletter--full .bh-newsletter__status {
	color: var(--wp--preset--color--white);
}

.bh-newsletter--compact {
	background: var(--wp--preset--color--soft-surface);
	border-top: 0.1875rem solid var(--wp--preset--color--brand-red);
	margin-bottom: var(--wp--preset--spacing--section);
	padding: var(--wp--preset--spacing--xl);
}

.bh-newsletter--compact .bh-newsletter__inner {
	grid-template-columns: minmax(0, 0.9fr) minmax(18rem, 1.1fr);
}

.bh-newsletter-toast {
	background: var(--wp--preset--color--maritime-blue);
	border-left: 0.25rem solid var(--wp--preset--color--brand-red);
	border-radius: 0;
	bottom: var(--wp--preset--spacing--lg);
	box-shadow: 0 0.75rem 2.5rem rgb(0 0 0 / 22%);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--utility);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.45;
	max-width: min(26rem, calc(100vw - 2rem));
	opacity: 0;
	padding: var(--wp--preset--spacing--lg);
	pointer-events: none;
	position: fixed;
	right: var(--wp--preset--spacing--lg);
	transform: translateY(calc(100% + var(--wp--preset--spacing--xl)));
	transition: opacity 180ms ease, transform 180ms ease;
	z-index: 100000;
}

.bh-newsletter-toast.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.bh-site-footer {
	background: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--utility);
}

.bh-site-footer a {
	color: inherit;
}

.bh-site-footer .bh-footer-links .current-menu-item > .wp-block-navigation-item__content,
.bh-site-footer .bh-footer-links .wp-block-navigation-item__content[aria-current="page"],
.bh-site-footer .bh-footer-links .wp-block-navigation-item__content:hover,
.bh-site-footer .bh-footer-links .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--white);
	text-decoration: underline;
	text-decoration-thickness: 0.1em;
	text-underline-offset: 0.25em;
}

.bh-footer-links {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--lg);
}

.bh-footer-links .bh-article-search--compact {
	align-self: flex-end;
	margin-block: 0;
	margin-left: auto;
	margin-right: 0 !important;
	width: min(100%, 22rem);
}

.bh-site-footer .bh-article-search--compact input[type="search"] {
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	border-right: 0;
}

.bh-site-footer .bh-article-search--compact button {
	background: color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	border-left: 0;
	color: var(--wp--preset--color--maritime-blue);
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.bh-site-footer .bh-article-search--compact button:hover,
.bh-site-footer .bh-article-search--compact button:focus-visible {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
	box-shadow: none;
	color: var(--wp--preset--color--white);
}

.bh-site-footer .bh-article-search--compact button:focus-visible {
	outline-color: var(--wp--preset--color--white);
}

.bh-footer-tagline {
	font-size: 1rem;
	margin-top: 0.75rem;
}

.bh-footer-social.wp-block-social-links {
	gap: var(--wp--preset--spacing--sm);
	justify-content: flex-start;
	margin-inline: 0 !important;
	padding: 0;
}

.bh-footer-social .wp-social-link {
	background: transparent;
	color: var(--wp--preset--color--white);
}

.bh-footer-social .wp-social-link a {
	padding: 0.2rem;
}

.bh-footer-social .wp-social-link:hover {
	opacity: 0.75;
	transform: none;
}

/* Keep classic and block-based WooCommerce product grids visually aligned. */
.woocommerce ul.products,
.woocommerce .wc-block-grid__products,
.woocommerce .wc-block-product-template {
	column-gap: 1.25rem;
	row-gap: 2.5rem;
}

.woocommerce-shop main.wp-block-group {
	padding-bottom: var(--wp--preset--spacing--section);
}

.woocommerce ul.products li.product,
.wc-block-grid__product,
.wc-block-product-template .wc-block-product {
	border-top: 0.1875rem solid var(--wp--preset--color--brand-red);
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-top: 1rem;
}

.woocommerce ul.products li.product .price,
.wc-block-components-product-price,
.wc-block-grid__product-price {
	font-size: var(--wp--preset--font-size--medium);
}

/* Keep catalog prices at the intended size over WooCommerce's card defaults. */
.wc-block-product-template .wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product-template .wc-block-product .wc-block-components-product-price,
.wc-block-product-template .wc-block-product .woocommerce-Price-amount,
.woocommerce ul.products li.product .price .woocommerce-Price-amount {
	font-size: var(--wp--preset--font-size--medium);
}

.woocommerce .woocommerce-ordering select,
select.orderby,
.wc-block-sort-select__select {
	font-size: var(--wp--preset--font-size--medium);
}

.woocommerce ul.products li.product .button,
.wc-block-grid__product .wp-block-button,
.wc-block-product-template .wc-block-product .wp-block-button {
	margin-top: auto;
}

.wc-block-checkout__add-note textarea::placeholder,
#order_comments::placeholder {
	color: #6b6b6b;
	opacity: 1;
}

/* Keep purchase-intent controls red while ordinary actions use maritime blue. */
:is(
	.woocommerce ul.products li.product .button,
	.wc-block-components-product-button .wp-block-button__link,
	.single-product .single_add_to_cart_button,
	.wc-block-cart__submit-button,
	.wc-block-mini-cart__footer-checkout,
	.wc-block-mini-cart__shopping-button,
	.woocommerce a.checkout-button,
	.woocommerce #place_order,
	.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button
) {
	background: var(--wp--preset--color--brand-red);
	border-color: var(--wp--preset--color--brand-red);
	color: var(--wp--preset--color--white);
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

:is(
	.woocommerce ul.products li.product .button,
	.wc-block-components-product-button .wp-block-button__link,
	.single-product .single_add_to_cart_button,
	.wc-block-cart__submit-button,
	.wc-block-mini-cart__footer-checkout,
	.wc-block-mini-cart__shopping-button,
	.woocommerce a.checkout-button,
	.woocommerce #place_order,
	.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button
):is(:hover, :focus-visible) {
	background: var(--wp--preset--color--maritime-blue);
	border-color: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
}

/* Align related-product actions across each row, regardless of title length. */
.single-product .wp-block-woocommerce-product-collection[data-collection="woocommerce/product-collection/related"] .wc-block-product-template {
	align-items: stretch;
}

.single-product .wp-block-woocommerce-product-collection[data-collection="woocommerce/product-collection/related"] .wc-block-product {
	height: auto;
}

.single-product .wp-block-woocommerce-product-collection[data-collection="woocommerce/product-collection/related"] .wc-block-components-product-button {
	margin-top: auto;
}

/* Override WooCommerce's inline badge colours; its cart state controls visibility. */
.wc-block-mini-cart__badge:not([hidden]) {
	background-color: var(--wp--preset--color--brand-red) !important;
	color: var(--wp--preset--color--white) !important;
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
	background: var(--wp--preset--color--brand-red);
	color: var(--wp--preset--color--white);
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity span {
	color: var(--wp--preset--color--white);
}

/* Keep the mini-cart controls compact without inheriting the theme's field height. */
:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-quantity-selector {
	display: grid;
	grid-template-columns: 2rem minmax(2.5rem, 1fr) 2rem;
	height: 2.25rem;
	width: 7rem;
}

:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input,
:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-quantity-selector button.wc-block-components-quantity-selector__button {
	box-sizing: border-box;
	font-size: var(--wp--preset--font-size--body);
	height: 100%;
	line-height: 1;
	min-height: 0;
	min-width: 0;
	padding: 0;
	width: auto;
}

:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-quantity-selector button.wc-block-components-quantity-selector__button {
	align-items: center;
	display: flex;
	justify-content: center;
}

:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-product-metadata,
:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-product-metadata .wc-block-components-product-metadata__description > p,
:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-totals-item__description {
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.45;
}

:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-product-metadata .wc-block-components-product-details,
:is(.wc-block-mini-cart__drawer, .wc-block-cart) .wc-block-components-product-metadata .wc-block-components-product-metadata__variation-data {
	font-size: var(--wp--preset--font-size--caption);
	line-height: 1.4;
}

/*
 * Mini-cart, cart, and checkout line items otherwise repeat the product-page
 * short description. Keep variation and extension metadata (such as a
 * selected shirt size) visible.
 */
.wc-block-mini-cart__drawer .wc-block-components-product-metadata__description,
.wp-block-woocommerce-cart .wc-block-components-product-metadata__description,
.wp-block-woocommerce-checkout .wc-block-components-product-metadata__description {
	display: none;
}

/* Keep regular cart copy comfortably readable for the site's older audience. */
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__button,
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices,
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
.wp-block-woocommerce-cart .wc-block-components-product-metadata,
.wp-block-woocommerce-cart .wc-block-components-product-details,
.wp-block-woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-metadata__description > p,
.wp-block-woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-metadata__variation-data,
.wp-block-woocommerce-cart .wc-block-components-totals-item__description,
.wp-block-woocommerce-cart .wc-block-components-radio-control__description,
.wp-block-woocommerce-cart .wc-block-components-radio-control__label,
.wp-block-woocommerce-cart .wc-block-components-radio-control__secondary-description,
.wp-block-woocommerce-cart .wc-block-components-radio-control__secondary-label,
.wp-block-woocommerce-cart .wc-block-components-shipping-placeholder__value,
.wp-block-woocommerce-cart .wc-block-components-totals-shipping__via {
	font-size: var(--wp--preset--font-size--body);
}

/*
 * WooCommerce assigns its small and extra-small presets to most supporting
 * checkout copy. Use the site's fluid body size for comfortable reading while
 * retaining the larger heading and final-total treatments.
 */
.wp-block-woocommerce-checkout .wc-block-components-express-payment-continue-rule,
.wp-block-woocommerce-checkout .wc-block-components-address-card,
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit,
.wp-block-woocommerce-checkout .wc-block-components-address-form__address_2-toggle,
.wp-block-woocommerce-checkout .wc-block-components-checkbox label,
.wp-block-woocommerce-checkout .wc-block-components-checkbox__label,
.wp-block-woocommerce-checkout .wc-block-components-textarea,
.wp-block-woocommerce-checkout .wc-block-checkout__guest-checkout-notice,
.wp-block-woocommerce-checkout .wc-block-checkout__login-prompt,
.wp-block-woocommerce-checkout .wc-block-checkout__terms,
.wp-block-woocommerce-checkout .wc-block-checkout__actions .wc-block-checkout__actions_row,
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__description,
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkout-step__description-payments-aligned,
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-content,
.wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title,
.wp-block-woocommerce-checkout .wc-block-checkout__shipping-method-option-price,
.wp-block-woocommerce-checkout .wc-block-checkout__shipping-method-option-title,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__description,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__label,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-description,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-label,
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package,
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package-title,
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package-items,
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__no-shipping-address-message,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name,
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata,
.wp-block-woocommerce-checkout .wc-block-components-product-metadata__variation-data,
.wp-block-woocommerce-checkout .wc-block-components-totals-item__description,
.wp-block-woocommerce-checkout .wc-block-components-shipping-placeholder__value,
.wp-block-woocommerce-checkout .wc-block-components-totals-shipping__via {
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.45;
}

.single-product .woocommerce-variation-add-to-cart .stock,
.single-product .woocommerce-variation-availability .stock {
	font-size: var(--wp--preset--font-size--body);
}

.single-product form.cart table.variations th.label,
.single-product form.cart table.variations td.value {
	vertical-align: middle;
}

.single-product form.cart table.variations select {
	box-sizing: border-box;
	height: 2.75rem;
	line-height: 1.25;
	min-height: 0;
	padding-block: 0.5rem;
}

.bh-site-footer .wp-block-site-title {
	font-family: var(--wp--preset--font-family--wordmark);
	font-size: var(--wp--preset--font-size--display);
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1;
	text-transform: uppercase;
}

@media (max-width: 781px) {
	.bh-author-portrait img {
		border-top: 0;
	}

	.bh-newspaper-ad__copy {
		grid-template-columns: 1fr;
	}

	.bh-newspaper-ad__copy p {
		text-align: left;
	}

	.bh-newspaper-ad__copy p + p {
		border-left: 0;
		padding-left: 0;
	}

	.bh-newsletter__inner,
	.bh-newsletter--compact .bh-newsletter__inner {
		grid-template-columns: 1fr;
	}

	.bh-article-grid,
	.bh-similar-articles__grid {
		grid-template-columns: 1fr;
	}

	.bh-card--compact {
		display: grid;
		gap: var(--wp--preset--spacing--base);
		grid-template-columns: minmax(6rem, 9rem) minmax(0, 1fr);
	}

	.bh-card--compact.bh-card--no-image {
		display: flex;
	}

	.bh-promo__inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.125rem;
		text-align: left;
	}

	.bh-site-header__inner {
		justify-content: flex-end !important;
		padding-block: 1.25rem !important;
	}

	.bh-site-header .wp-block-site-title {
		margin-right: auto;
	}

	.bh-site-header .wp-block-navigation {
		flex: 0 0 auto;
		order: 3;
	}

	.bh-site-header .wc-block-mini-cart {
		flex: 0 0 auto;
		order: 2;
	}

	.bh-site-footer__inner {
		align-items: flex-start !important;
		flex-direction: column;
		justify-content: flex-start !important;
	}

	.bh-footer-links {
		align-items: flex-start;
		width: 100%;
	}

	.bh-footer-links .wp-block-navigation,
	.bh-footer-links .wp-block-navigation__container {
		justify-content: flex-start;
		width: 100%;
	}

	.bh-footer-links .bh-article-search--compact {
		align-self: stretch;
		margin-left: 0;
		max-width: none;
		width: 100%;
	}

	.bh-footer-links .bh-article-search__controls,
	.bh-newsletter__controls {
		flex-direction: column;
		width: 100%;
	}

	.bh-footer-links .bh-article-search--compact input[type="search"],
	.bh-newsletter__controls input[type="email"] {
		border-radius: var(--wp--custom--radius--small) var(--wp--custom--radius--small) 0 0;
		box-sizing: border-box;
		width: 100%;
	}

	.bh-footer-links .bh-article-search--compact button,
	.bh-newsletter__controls button {
		border-radius: 0 0 var(--wp--custom--radius--small) var(--wp--custom--radius--small);
		border-top: 0;
		flex-basis: auto;
		width: 100%;
	}

	.bh-newsletter__controls button {
		border-left: 1px solid var(--wp--preset--color--brand-red);
	}

	.bh-footer-links .bh-article-search--compact .bh-article-search__controls {
		gap: 0.75rem;
	}

	.bh-footer-links .bh-article-search--compact input[type="search"],
	.bh-footer-links .bh-article-search--compact button {
		border-radius: var(--wp--custom--radius--small);
	}

	.bh-footer-links .bh-article-search--compact input[type="search"] {
		border: 1px solid color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	}

	.bh-footer-links .bh-article-search--compact button {
		border: 1px solid color-mix(in srgb, var(--wp--preset--color--white) 95%, transparent);
	}

	.bh-footer-links .bh-article-search--compact .bh-article-search__button-icon {
		display: none;
	}

	.bh-footer-links .bh-article-search--compact .bh-article-search__button-label {
		display: inline;
	}

	.bh-article-header {
		padding-block: 0 1rem;
	}

	.bh-feature-frame--map iframe,
	.bh-map-frame iframe {
		min-height: 28rem;
	}

	.bh-article-search:not(.bh-article-search--compact) .bh-article-search__controls {
		flex-direction: column;
	}

	.bh-article-search:not(.bh-article-search--compact) button {
		width: 100%;
	}
}

@media (max-width: 520px) {
	.bh-newsletter-toast {
		bottom: var(--wp--preset--spacing--base);
		left: var(--wp--preset--spacing--base);
		right: var(--wp--preset--spacing--base);
	}

	.bh-feature-frame--map iframe,
	.bh-map-frame iframe {
		min-height: 24rem;
	}

	.bh-card--compact {
		display: flex;
	}
}

/* Site-wide search-aware header. JavaScript adds the root class. */
html.bh-smart-header-active {
	scroll-padding-top: calc(var(--bh-smart-header-height, 0px) + var(--wp-admin--admin-bar--height, 0px) + 1rem);
}

html.bh-smart-header-active .bh-site-header {
	position: relative;
	transition: box-shadow 180ms ease, transform 180ms ease;
	z-index: 1000;
}

html.bh-smart-header-active .bh-site-header.is-smart-header-stuck {
	box-shadow: 0 0.35rem 1rem rgb(27 27 27 / 12%);
	left: 0;
	position: fixed;
	right: 0;
	top: var(--wp-admin--admin-bar--height, 0px);
	width: 100%;
}

html.bh-smart-header-active .bh-site-header.is-smart-header-stuck.is-smart-header-hidden {
	box-shadow: none;
	transform: translateY(-100%);
}

.bh-smart-header-spacer {
	height: 0;
	margin-block: 0 !important;
	pointer-events: none;
}

.bh-site-header__inner {
	position: relative;
}

.bh-header-search {
	flex: 0 0 2.5rem;
	margin: 0;
	max-width: none;
	min-width: 0;
	position: relative;
	z-index: 3;
}

.bh-header-search .bh-article-search__controls {
	align-items: stretch;
	gap: 0;
	height: 2.5rem;
	overflow: visible;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: height 220ms ease, width 220ms ease;
	width: 2.5rem;
}

.bh-header-search input[type="search"] {
	background: var(--wp--preset--color--white);
	border-left-width: 0;
	border-right-width: 0;
	flex: 1 1 auto;
	height: 100%;
	min-height: 0;
	min-width: 0;
	opacity: 0;
	overflow: hidden;
	padding-inline: 0;
	pointer-events: none;
	transition: border-width 220ms ease, opacity 160ms ease, padding 220ms ease;
	width: 0;
}

.bh-header-search button {
	flex: 0 0 2.5rem;
	height: 100%;
	min-height: 2.5rem;
	transition: background-color 160ms ease, border-color 160ms ease, border-radius 220ms ease, height 220ms ease, min-height 220ms ease;
	width: 2.5rem;
}

.bh-header-search:not(.is-search-open) button {
	border-left: 1px solid var(--wp--preset--color--brand-red);
	border-radius: var(--wp--custom--radius--small);
}

.bh-header-search.is-search-open .bh-article-search__controls {
	height: 2.75rem;
	width: min(
		var(--bh-header-search-expanded-width, 42rem),
		calc(100vw - (2 * var(--wp--preset--spacing--gutter)))
	);
}

.bh-header-search.is-search-open input[type="search"] {
	border-left-width: 1px;
	border-right-width: 1px;
	opacity: 1;
	pointer-events: auto;
	padding-inline: 0.75rem;
}

.bh-article-search input[type="search"]:focus,
.bh-article-search input[type="search"]:focus-visible {
	box-shadow: none;
	outline: none;
}

@media (min-width: 600px) {
	.bh-site-header__inner {
		display: grid !important;
		grid-template-areas: "brand navigation cart search";
		grid-template-columns: auto minmax(0, 1fr) auto 2.5rem;
	}

	.bh-site-header .wp-block-site-title {
		grid-area: brand;
	}

	.bh-site-header .wp-block-navigation {
		grid-area: navigation;
	}

	.bh-site-header .wc-block-mini-cart {
		grid-area: cart;
	}

	.bh-header-search {
		grid-area: search;
	}

	.bh-site-header .wp-block-navigation {
		transition: opacity 160ms ease, visibility 160ms ease;
	}

	.bh-site-header.is-header-search-open .wp-block-navigation {
		opacity: 0;
		pointer-events: none;
		visibility: hidden;
	}
}

@media (max-width: 599.98px) {
	.bh-site-header .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
		background: rgb(39 41 61 / 72%) !important;
		inset: 0;
		overflow: hidden;
		padding: 0;
	}

	.bh-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
		background: var(--wp--preset--color--white);
		box-shadow: -0.75rem 0 2rem rgb(0 0 0 / 28%);
		box-sizing: border-box;
		height: 100%;
		margin: 0 0 0 auto;
		max-width: 13.75rem;
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: var(--wp--preset--spacing--lg);
		width: min(13.75rem, calc(100vw - 2rem));
	}

	.bh-site-header .wc-block-mini-cart {
		order: 1;
	}

	.bh-header-search {
		order: 2;
	}

	.bh-site-header .wp-block-navigation {
		order: 3;
	}

	.bh-site-header__inner > :is(.wp-block-site-title, .wc-block-mini-cart) {
		transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
	}

	.bh-site-header.is-header-search-open .bh-site-header__inner > :is(.wp-block-site-title, .wc-block-mini-cart) {
		opacity: 0;
		pointer-events: none;
		transform: translateY(-0.35rem);
		visibility: hidden;
	}
}

@media (max-width: 600px) {
	html.bh-smart-header-active body.admin-bar .bh-site-header.is-smart-header-stuck {
		top: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	:where(html) {
		scroll-behavior: auto;
	}

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

.bh-preorder-badge {
	display: inline-block;
	margin-block-end: 0.5rem;
	padding: 0.3rem 0.65rem;
	background: var(--wp--preset--color--maritime-blue);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
}

.bh-preorder-notice {
	margin-block: 1rem;
}
