/**
 * Single post template.
 */

.single-post {
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	margin-left: auto;
	margin-right: auto;
	max-width: none;
	padding-left: 0;
	padding-right: 0;
	position: relative;
	width: 100%;
}

body:has(.single-post) {
	background-color: var(--wp--preset--color--cream, #faf8f6);
}

body:has(.single-post) .main-navigation-bar {
	--header-nav-bg: var(--wp--preset--color--linen, #e7ded2);
	background-color: var(--header-nav-bg);
}

.single-post .single-post__header-band {
	isolation: isolate;
	margin: 0;
	padding: 0;
	position: relative;
}

.single-post .single-post__header-band > * {
	position: relative;
	z-index: 1;
}

.single-post .single-post__header-band .single-hero {
	margin-bottom: 0;
}

.single-post .single-layout {
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	padding-left: clamp(1.25rem, 5vw, 70px);
	padding-right: clamp(1.25rem, 5vw, 70px);
}

.single-post .single-layout,
.single-post .single-comments-area {
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	padding-bottom: 95px;
	padding-left: clamp(1.25rem, 5vw, 70px);
	padding-right: clamp(1.25rem, 5vw, 70px);
	width: 100%;
}

.single-article {
	margin: 0;
	padding: 0;
}

/* -------------------------------------------------------------------------
   Breadcrumbs
   ------------------------------------------------------------------------- */

.single-breadcrumbs {
	margin: 0;
    padding: 25px 0 0;
}

.single-breadcrumbs__list {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 18px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-breadcrumbs__item {
	align-items: center;
	display: inline-flex;
	gap: 18px;
	margin: 0;
}

.single-breadcrumbs__link,
.single-breadcrumbs__current {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--geist-mono, "Geist Mono", monospace);
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.1;
	text-decoration: none;
	text-transform: uppercase;
}

.single-breadcrumbs__link:hover,
.single-breadcrumbs__link:focus {
	text-decoration: underline;
}

.single-breadcrumbs__sep {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	display: inline-flex;
	flex-shrink: 0;
	line-height: 0;
}

.single-breadcrumbs__sep svg {
	display: block;
	height: 8px;
	width: 15px;
}

/* -------------------------------------------------------------------------
   Hero — Figma Frame 73 @ 370:796 (default) / Recipe Post @ 65:153 (WPRM)
   1440×791: 593px portrait + grain panel + vertical crumbs (bark / Proxima)
   Recipe: mid divider + serves/times + deck + jump/pin (84:4452 / 84:4455)
   ------------------------------------------------------------------------- */

.single-post .single-hero {
	margin-bottom: 0;
}

.single-post .single-hero .single-hero__banner {
	background: var(--wp--preset--color--white, #fff);
	isolation: isolate;
	overflow: hidden;
	position: relative;
	width: 100%;
}

/* Grain shows on the right panel (image covers left). Same tile as blocks / related. */
.single-post .single-hero .single-hero__banner::before {
	background-image: url("../images/popular-posts-grain.png");
	background-position: top left;
	background-repeat: repeat;
	background-size: 860px 1075px;
	content: "";
	inset: 0;
	left: clamp(16rem, 41vw, 593px);
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.single-post .single-hero .single-hero__banner-inner {
	align-items: stretch;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	min-height: clamp(28rem, 55vw, 49.4375rem); /* 791px */
	position: relative;
	width: 100%;
	z-index: 1;
}

@media (min-width: 64rem) {
	.single-post .single-hero .single-hero__banner-inner {
		grid-template-columns: minmax(0, 593px) minmax(0, 1fr);
	}
}

@media (min-width: 90rem) {
	.single-post .single-hero .single-hero__banner-inner {
		grid-template-columns: 593px minmax(0, 1fr);
	}
}

.single-post .single-hero .single-hero__media {
	line-height: 0;
	max-width: none;
	overflow: hidden;
	position: relative;
	width: 100%;
	z-index: 1;
}

.single-post .single-hero .single-hero__image {
	aspect-ratio: 593 / 791;
	display: block;
	height: 100%;
	min-height: clamp(20rem, 55vw, 49.4375rem);
	object-fit: cover;
	width: 100%;
}

/*
 * Aside insets from Figma 370:796 / 65:155 @ 1440:
 * top 64 (crumbs), right 5rem, bottom 64, left 32 (crumbs @ 625).
 * Gap 29px: crumb right edge 649 → content/rule @ 678.
 */
.single-post .single-hero .single-hero__aside {
	align-items: stretch;
	box-sizing: border-box;
	display: flex;
	gap: 1.8125rem; /* 29px */
	min-height: 100%;
	padding: clamp(2rem, 4.44vw, 4rem) 5rem clamp(2rem, 4.44vw, 4rem) clamp(1rem, 2.22vw, 2rem);
	position: relative;
	z-index: 1;
}

.single-post .single-hero .single-hero__aside .archive-hero__breadcrumb--vertical {
	align-self: flex-start;
	flex: 0 0 1.5rem;
	padding-top: 0;
	width: 1.5rem;
}

/* Bottom → top reading (Figma −rotate-90). */
.single-post .single-hero .single-hero__aside .archive-hero__breadcrumb-vertical {
	color: var(--wp--preset--color--bark, #4e4035);
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 0.75rem; /* 12px */
	font-weight: 400;
	letter-spacing: 0.1em; /* 1.2px @ 12 */
	line-height: 1.5; /* 24px */
	transform: rotate(180deg);
}

/* Fills panel between crumbs and right inset → 614px @ 1440 (Line 35). */
.single-post .single-hero .single-hero__content {
	align-items: stretch;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: clamp(1.5rem, 4vw, 2.5rem);
	justify-content: space-between;
	max-width: none;
	min-width: 0;
	position: relative;
	text-align: left;
	width: 100%;
}

.single-post .single-hero .single-hero__intro {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: clamp(0.75rem, 2vw, 1.25rem);
	width: 100%;
}

.single-post .single-hero .single-hero__meta {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	justify-content: flex-start;
	margin: 0;
	padding-left: 0;
	position: relative;
}

/* Date stamp — large diagonal slash (Figma 51:144 / single-post-highlight). */
.single-post .single-hero .single-hero__meta .post-card__date {
	height: 42px;
	left: auto;
	position: relative;
	top: auto;
	width: 44px;
}

.single-post .single-hero .single-hero__meta .post-card__date-month,
.single-post .single-hero .single-hero__meta .post-card__date-day {
	font-size: 18px;
	letter-spacing: -0.36px;
	line-height: 1;
}

.single-post .single-hero .single-hero__meta .post-card__date-month {
	top: 0;
}

.single-post .single-hero .single-hero__meta .post-card__date-day {
	left: 21px;
	top: 24px;
}

.single-post .single-hero .single-hero__meta .post-card__date-line {
	background-color: var(--wp--preset--color--charcoal, #3b3b40);
	height: 0.75px;
	left: 5.5px;
	mask-image: none;
	-webkit-mask-image: none;
	top: 22.1px;
	transform: rotate(-45deg);
	transform-origin: center;
	width: 33.9px;
}

.single-post .single-hero .single-hero__category {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.single-post .single-hero .single-hero__category-link {
	color: inherit;
	text-decoration: none;
}

.single-post .single-hero .single-hero__category-link:hover,
.single-post .single-hero .single-hero__category-link:focus {
	text-decoration: underline;
}

.single-post .single-hero .single-hero__title {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--sainte-colombe, "Sainte Colombe", Georgia, serif);
	font-size: clamp(2rem, 4vw, 2.8125rem);
	font-weight: 300;
	letter-spacing: -0.02em;
	line-height: 1.22;
	margin: 0;
	max-width: 38.5rem;
	text-align: left;
	width: 100%;
}

.single-post .single-hero .single-hero__deck {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	line-height: 1.5;
	margin: 0 0 0 auto;
	max-width: 33.5625rem; /* 537px — right-aligned within content panel */
	text-align: right;
	width: 100%;
}

/* Recipe — Figma Recipe Post @ 65:153: labels → divider → values (Line 35 between). */
.single-post .single-hero--recipe .single-hero__content {
	display: grid;
	gap: 0;
	grid-template-rows: 1fr 1fr;
	justify-content: stretch;
	min-height: 100%;
}

.single-post .single-hero--recipe .single-hero__intro {
	align-self: start;
}

.single-post .single-hero--recipe .single-hero__details {
	align-items: stretch;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	justify-content: space-between;
	min-height: 0;
	width: 100%;
}

.single-post .single-hero--recipe .single-hero__stats {
	display: grid;
	gap: 1.5rem 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	width: 100%;
}

.single-post .single-hero--recipe .single-hero__stat {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.875rem; /* label → value */
	margin: 0;
	min-width: 0;
	text-align: center;
}

/* Desktop: labels row, full-width rule, values row (Figma). */
@media (min-width: 48rem) {
	.single-post .single-hero--recipe .single-hero__stats {
		column-gap: 0;
		grid-template-columns: repeat(var(--single-hero-stat-count, 4), minmax(0, 1fr));
		grid-template-rows: auto auto auto;
		row-gap: 0;
	}

	.single-post .single-hero--recipe .single-hero__stat {
		display: contents;
	}

	.single-post .single-hero--recipe .single-hero__stat-label {
		grid-row: 1;
	}

	.single-post .single-hero--recipe .single-hero__stat-value {
		grid-row: 3;
	}

	.single-post .single-hero--recipe .single-hero__stat:nth-child(1) .single-hero__stat-label,
	.single-post .single-hero--recipe .single-hero__stat:nth-child(1) .single-hero__stat-value {
		grid-column: 1;
	}

	.single-post .single-hero--recipe .single-hero__stat:nth-child(2) .single-hero__stat-label,
	.single-post .single-hero--recipe .single-hero__stat:nth-child(2) .single-hero__stat-value {
		grid-column: 2;
	}

	.single-post .single-hero--recipe .single-hero__stat:nth-child(3) .single-hero__stat-label,
	.single-post .single-hero--recipe .single-hero__stat:nth-child(3) .single-hero__stat-value {
		grid-column: 3;
	}

	.single-post .single-hero--recipe .single-hero__stat:nth-child(4) .single-hero__stat-label,
	.single-post .single-hero--recipe .single-hero__stat:nth-child(4) .single-hero__stat-value {
		grid-column: 4;
	}

	.single-post .single-hero--recipe .single-hero__stat:nth-child(5) .single-hero__stat-label,
	.single-post .single-hero--recipe .single-hero__stat:nth-child(5) .single-hero__stat-value {
		grid-column: 5;
	}

	/* Divider between label row and value row. */
	.single-post .single-hero--recipe .single-hero__stats::after {
		background: var(--wp--preset--color--charcoal, #3b3b40);
		content: "";
		grid-column: 1 / -1;
		grid-row: 2;
		height: 1px;
		margin: 1.375rem 0 0.875rem;
	}
}

.single-post .single-hero--recipe .single-hero__stat-label {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 1rem; /* 16px */
	font-weight: 500;
	letter-spacing: 0.1em; /* 1.6px @ 16 */
	line-height: 1.25;
	margin: 0;
	text-align: center;
	text-transform: uppercase;
}

.single-post .single-hero--recipe .single-hero__stat-value {
	align-items: center;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	display: flex;
	flex-direction: column;
	font-family: var(--wp--preset--font-family--adobe-jenson, "Adobe Jenson Pro", adobe-jenson-pro, Georgia, serif);
	font-size: 1.5rem; /* 24px */
	font-style: italic;
	font-weight: 400;
	gap: 0;
	letter-spacing: 0.08em; /* 1.92px @ 24 */
	line-height: 1;
	margin: 0;
	text-align: center;
}

.single-post .single-hero--recipe .single-hero__stat-line {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.single-post .single-hero--recipe .single-hero__stat-amount,
.single-post .single-hero--recipe .single-hero__stat-unit {
	display: block;
	line-height: 1.2;
}

.single-post .single-hero--recipe .single-hero__stat-value--serves .single-hero__stat-amount {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.single-post .single-hero--recipe .single-hero__deck {
	align-self: stretch;
	margin-left: auto;
	margin-right: 0;
	max-width: 33.5625rem; /* 537px */
	text-align: right;
}

.single-post .single-hero--recipe .single-hero__actions {
	align-items: center;
	align-self: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 1.125rem; /* 18px — 971 → 1190 @ 175 wide */
	justify-content: flex-end;
	margin-top: auto;
	width: 100%;
}

.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippet,
.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippets {
	align-items: center;
	background: transparent;
	display: flex;
	flex-wrap: wrap;
	gap: 1.125rem;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	width: auto;
}

/* Hero jump / pin — Figma 84:4452 / 84:4455 (solid border, Jenson italic). */
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump,
.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link {
	align-items: center;
	background: transparent !important;
	border: 1px solid var(--wp--preset--color--charcoal, #3b3b40) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal, #3b3b40) !important;
	display: inline-flex;
	font-family: var(--wp--preset--font-family--adobe-jenson, "Adobe Jenson Pro", adobe-jenson-pro, Georgia, serif) !important;
	font-size: 1.125rem !important; /* 18px */
	font-style: italic !important;
	font-weight: 400 !important;
	justify-content: center;
	letter-spacing: 0.08em !important; /* 1.44px @ 18 */
	line-height: 1.2 !important;
	min-height: 2.8125rem; /* 45px */
	min-width: 10.9375rem; /* 175px */
	padding: 0.6875rem 1.25rem !important;
	text-decoration: none !important;
	text-transform: none !important;
	transition: background-color 200ms ease, color 200ms ease;
}

.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump::after,
.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode::after,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin::after,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link::after {
	content: none;
	display: none;
}

.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump:hover,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump:focus,
.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode:hover,
.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode:focus,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin:hover,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin:focus,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link:hover,
.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link:focus {
	background: var(--wp--preset--color--charcoal, #3b3b40) !important;
	color: var(--wp--preset--color--cream, #faf8f6) !important;
	text-decoration: none !important;
}

@media (max-width: 63.99rem) {
	.single-post .single-hero .single-hero__banner::before {
		left: 0;
	}

	.single-post .single-hero .single-hero__aside {
		padding: 1.5rem 1.25rem 2rem;
	}

	.single-post .single-hero .single-hero__aside .archive-hero__breadcrumb--vertical {
		display: none;
	}

	.single-post .single-hero .single-hero__deck {
		margin-left: 0;
		max-width: none;
		text-align: left;
	}

	.single-post .single-hero--recipe .single-hero__content {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		grid-template-rows: none;
	}

	.single-post .single-hero--recipe .single-hero__details {
		gap: 1.5rem;
	}

	.single-post .single-hero--recipe .single-hero__deck {
		margin-left: 0;
		text-align: left;
	}

	.single-post .single-hero--recipe .single-hero__actions {
		align-self: stretch;
		justify-content: flex-start;
	}

	.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippet,
	.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippets {
		flex-wrap: nowrap;
		justify-content: flex-start;
		max-width: 100%;
	}

	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link {
		flex: 0 1 10.9375rem;
		min-width: 0;
		white-space: nowrap;
	}
}

@media (max-width: 30rem) {
	.single-post .single-hero--recipe .single-hero__actions,
	.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippet,
	.single-post .single-hero--recipe .single-hero__actions .wprm-recipe-snippets {
		gap: 0.75rem;
		width: 100%;
	}

	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-jump,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-jump-to-recipe-shortcode,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-pin,
	.single-post .single-hero--recipe .single-hero__actions a.wprm-recipe-link {
		flex: 1 1 0;
		font-size: 1rem !important;
		padding: 0.6875rem 0.75rem !important;
	}
}

/* -------------------------------------------------------------------------
   Share rail
   ------------------------------------------------------------------------- */

.single-share {
	display: none;
}

@media (min-width: 64rem) {
	.single-share {
		display: block;
		left: 1.25rem;
		position: absolute;
		top: 6rem;
		z-index: 2;
	}

	/* Sit in the 70px gutter left of the hero image (Frame 15693 inner pad) */
	.single-post .single-share {
		left: clamp(1.25rem, 5vw, 70px);
		top: calc(11px + 30px);
	}

	.single-share__list {
		display: flex;
		flex-direction: column;
		gap: 1rem;
		list-style: none;
		margin: 0;
		padding: 0;
		position: sticky;
		top: 6rem;
	}
}

.single-share__link {
	align-items: center;
	background: transparent;
	border: none;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	cursor: pointer;
	display: inline-flex;
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 1rem;
	justify-content: center;
	line-height: 1;
	padding: 0;
	text-decoration: none;
}

.single-share__link:hover,
.single-share__link:focus {
	opacity: 0.75;
}

.single-share__icon {
	display: block;
	height: auto;
	width: auto;
}

.single-share__link img.single-share__icon[src*="share-pinterest"] {
	height: 16px;
	width: 12px;
}

.single-share__link img.single-share__icon[src*="share-facebook"] {
	height: 16px;
	width: 10px;
}

.single-share__link img.single-share__icon[src*="share-link"] {
	height: 15px;
	width: 19px;
}

/* -------------------------------------------------------------------------
   Two-column layout
   Figma 370:794 @ 1440: content 773 | gap 75 | sidebar 417 (100px / 75px gutters)
   ------------------------------------------------------------------------- */

.single-layout {
	display: grid;
	gap: clamp(2rem, 5vw, 3.75rem);
	grid-template-columns: minmax(0, 1fr);
	margin-bottom: clamp(2.5rem, 6vw, 4.5rem);
	margin-top: 65px;
}

/* ≤1200: full-width content, no sidebar */
@media (max-width: 1200px) {
	.single-layout__sidebar {
		display: none;
	}
}

@media (min-width: 1201px) {
	.single-layout {
		align-items: start;
		column-gap: clamp(1.5rem, 4vw, 75px);
		grid-template-columns: minmax(0, 773px) minmax(0, 417px);
		justify-content: space-between;
	}
}

@media (min-width: 90rem) {
	.single-layout {
		column-gap: 75px;
		grid-template-columns: 773px 417px;
	}
}

.single-layout__main {
	min-width: 0;
	width: 100%;
}

.single-layout__sidebar {
	/* Figma 798:1137 / 370:945 — maple panel 417px, inset ~38px */
	background-color: var(--wp--preset--color--maple, #d2bba4);
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	isolation: isolate;
	min-width: 0;
	/* Visible so brand stamp can overhang top-right */
	overflow: visible;
	padding: 1.75rem 2.0625rem 2.375rem; /* 28 / 33 / 38 — centers ~350px frame in 417 */
	position: relative;
	width: 100%;
}

/* Maple + grain — Figma 370:945 */
.single-layout__sidebar::before {
	background-image: url("../images/popular-posts-grain.png");
	background-position: top left;
	background-repeat: repeat;
	background-size: 860px 1075px;
	border-radius: inherit;
	content: "";
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

/* Brand stamp — sage wax seal, Figma 370:977 (108×112 @ right overhang) */
.single-layout__sidebar::after {
	background-image: url("../images/about-brand-stamp.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 7rem; /* 112px */
	pointer-events: none;
	position: absolute;
	right: -2.125rem; /* overhang ~34px past 417 */
	top: -3.5rem; /* overhang above maple (~56px) */
	width: 6.75rem; /* 108px */
	z-index: 3;
}

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

/* Block area stack — framed about → intro → favorites */
.single-layout__sidebar .block-area-sidebar {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
}

/* -------------------------------------------------------------------------
   Framed about image — Figma 370:963 / Group 12
   Double walnut hairlines on the PHOTO only (not the group / intro copy)
   ------------------------------------------------------------------------- */

.single-layout__sidebar .block-area-sidebar > .wp-block-image,
.single-layout__sidebar .wp-block-image.sidebar-about,
.single-layout__sidebar .wp-block-group.sidebar-about > .wp-block-image,
.single-layout__sidebar .wp-block-group.sidebar-about > figure.wp-block-image {
	background-image:
		url("../images/sidebar-about-frame-v.svg"),
		url("../images/sidebar-about-frame-v.svg"),
		url("../images/sidebar-about-frame-h.svg"),
		url("../images/sidebar-about-frame-h.svg");
	background-position:
		left top,
		right top,
		left top,
		left bottom;
	background-repeat: no-repeat;
	background-size:
		3.536px 100%,
		3.536px 100%,
		100% 3.536px,
		100% 3.536px;
	border: none !important;
	box-shadow: none !important;
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 21.875rem; /* 350px */
	outline: none !important;
	padding: 5px; /* Figma image inset ~5.07px */
	position: relative;
	width: 100%;
}

.single-layout__sidebar .wp-block-group.sidebar-about {
	background-image: none;
	border: none !important;
	box-shadow: none !important;
	margin: 0 auto;
	max-width: 21.875rem;
	outline: none !important;
	padding: 0;
	width: 100%;
}

.single-layout__sidebar .block-area-sidebar > .wp-block-image a,
.single-layout__sidebar .wp-block-image.sidebar-about a,
.single-layout__sidebar .wp-block-group.sidebar-about .wp-block-image a {
	display: block;
	line-height: 0;
	text-decoration: none;
}

.single-layout__sidebar .block-area-sidebar > .wp-block-image img,
.single-layout__sidebar .wp-block-image.sidebar-about img,
.single-layout__sidebar .wp-block-group.sidebar-about .wp-block-image img {
	aspect-ratio: 339.697 / 452.929;
	background-color: #d5d5d5;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box;
	display: block;
	height: auto;
	max-width: 100%;
	object-fit: cover;
	width: 100%;
}

/* Intro copy under framed image — Figma 370:949 */
.single-layout__sidebar .block-area-sidebar > p,
.single-layout__sidebar .block-area-sidebar > .wp-block-paragraph,
.single-layout__sidebar .sidebar-about > p,
.single-layout__sidebar .sidebar-about > .wp-block-paragraph {
	color: inherit;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", Arial, sans-serif);
	font-size: 1rem; /* 16px */
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5; /* 24px */
	margin: 1.625rem auto 2.0625rem; /* ~26px above (from frame), ~33px to divider */
	max-width: 21.25rem; /* 340px */
	text-align: center;
	width: 100%;
	align-self: center;
}

/* Favorites nest inside maple shell — no second maple/grain/pad */
.single-layout__sidebar .sidebar-favorites:not(.has-background) {
	background-color: transparent;
	overflow: visible;
	padding: 0;
}

.single-layout__sidebar .sidebar-favorites:not(.has-background)::before {
	content: none;
}

.single-content {
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 16px;
	line-height: 1.5;
}

.single-content > *:first-child {
	margin-top: 0;
}

.single-content > * + * {
	margin-top: 30px;
}

.single-content h2 {
	font-family: var(--wp--preset--font-family--adobe-jenson, "Adobe Jenson Pro", Georgia, serif);
	font-size: 24px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 1.92px;
	line-height: normal;
	margin: 60px 0 30px;
}

.single-content h2:first-child {
	margin-top: 0;
}

.single-content h3 {
	font-family: var(--wp--preset--font-family--le-monde-livre, "le-monde-livre-std", Georgia, serif);
	font-size: 24px;
	font-weight: 400;
	line-height: 1.2;
    margin: 60px 0 30px;
}

/* Umma's Tip — don't inherit post h3/p spacing inside the callout. */
.single-content .ummas-tip h3,
.single-content .ummas-tip .wp-block-heading,
.single-content .ummas-tip p {
	margin: 0;
}

.single-content .shopthepost-widget {
	background: #fff;
	padding: 5px;
}

.single-content .wp-block-separator {
	background: none !important;
	background-color: transparent !important;
	border: none;
	border-top: 1px solid;
	height: 0;
}

.single-content p {
	margin: 30px 0;
}
.single-content .wp-block-media-text__content p {
	margin: 30px 0 0;
}

@media (max-width: 700px) {
	.wp-block-media-text.custom {
		gap: 0 !important;
	}
}
.single-content a {
	color: var(--wp--preset--color--pine, #4f5838);
	font-weight: 600;
	text-decoration: underline;
}
.single-content p + p {
	margin-top: 1.5rem;
}

/* -------------------------------------------------------------------------
   WPRM jump-to-recipe shortcode — primary dotted button + arrow
   ------------------------------------------------------------------------- */

.single-content a.wprm-jump-to-recipe-shortcode,
.single-content a.wprm-recipe-jump,
.single-content a.wprm-recipe-link {
	align-items: center;
	background: transparent !important;
	border: 1px dotted var(--wp--preset--color--charcoal, #3b3b40) !important;
	border-radius: 0;
	box-shadow: none;
	color: var(--wp--preset--color--charcoal, #3b3b40) !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--wp--preset--font-family--geist-mono, "Geist Mono", monospace);
	font-size: var(--wp--preset--font-size--fourteen, 14px);
	font-weight: 500;
	gap: 20px;
	letter-spacing: 0.15em;
	line-height: 1.2;
	min-height: 50px;
	padding: 14px 20px !important;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
	width: fit-content;
}

.single-content a.wprm-jump-to-recipe-shortcode:hover,
.single-content a.wprm-jump-to-recipe-shortcode:focus,
.single-content a.wprm-recipe-jump:hover,
.single-content a.wprm-recipe-jump:focus,
.single-content a.wprm-recipe-link:hover,
.single-content a.wprm-recipe-link:focus {
	background: var(--wp--preset--color--charcoal, #3b3b40) !important;
	border-color: var(--wp--preset--color--charcoal, #3b3b40) !important;
	color: var(--wp--preset--color--cream, #faf8f6) !important;
	text-decoration: none !important;
}

.single-content a.wprm-jump-to-recipe-shortcode:focus-visible,
.single-content a.wprm-recipe-jump:focus-visible,
.single-content a.wprm-recipe-link:focus-visible {
	outline: 2px solid var(--wp--preset--color--charcoal, #3b3b40);
	outline-offset: 3px;
}

.single-content a.wprm-jump-to-recipe-shortcode::after,
.single-content a.wprm-recipe-jump::after,
.single-content a.wprm-recipe-link::after {
	background-color: currentColor;
	content: "";
	display: block;
	flex-shrink: 0;
	height: 8px;
	mask-image: url("../images/link-button-arrow.svg");
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-image: url("../images/link-button-arrow.svg");
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	width: 31px;
}

/* -------------------------------------------------------------------------
   SBK WPRM card — contents jump links (Figma 84:4462 / 96:2652)
   Words underlined individually; " | " separators sit outside the underline.
   Real markup: .wprm-recipe-jump-to-section-container > a.wprm-recipe-jump-to-section
   ------------------------------------------------------------------------- */

.single-content .sbk-wprm-card__contents {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.single-content .sbk-wprm-card__contents-label {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.12em;
	line-height: 1.25;
	text-transform: uppercase;
}

.single-content .sbk-wprm-card__contents .wprm-recipe-jump-to-section-container {
	align-items: baseline;
	background: transparent !important;
	border: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	gap: 0 !important;
	justify-content: flex-start;
	padding: 0 !important;
	row-gap: 0.35rem;
}

/*
 * Underline via border-bottom (not text-decoration) so ::after pipes
 * are not decorated. Pipe is absolutely positioned past the link box.
 */
.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section {
	align-items: baseline;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid currentColor !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--charcoal, #3b3b40) !important;
	display: inline-block !important;
	flex: 0 0 auto;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif) !important;
	font-size: 16px !important;
	font-style: normal !important;
	font-weight: 400 !important;
	gap: 0 !important;
	letter-spacing: 0 !important;
	line-height: 24px !important;
	padding: 0 !important;
	position: relative;
	text-decoration: none !important;
	text-transform: none !important;
	white-space: nowrap;
}

.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section:not(:last-child) {
	margin-right: 1.75rem;
}

.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section:not(:last-child)::after {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	content: "|";
	display: block !important;
	font-style: normal !important;
	font-weight: 400 !important;
	height: auto !important;
	left: calc(100% + 0.7rem);
	letter-spacing: 0;
	line-height: 24px;
	mask-image: none !important;
	-webkit-mask-image: none !important;
	position: absolute;
	text-decoration: none !important;
	top: 0;
	width: auto !important;
}

.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section:hover,
.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section:focus {
	background: transparent !important;
	border-bottom-color: currentColor !important;
	color: var(--wp--preset--color--charcoal, #3b3b40) !important;
	opacity: 0.75;
	text-decoration: none !important;
}

.single-content .sbk-wprm-card__contents .wprm-recipe-icon,
.single-content .sbk-wprm-card__contents .wprm-recipe-jump-to-section-icon,
.single-content .sbk-wprm-card__contents svg {
	display: none !important;
	height: 0 !important;
	width: 0 !important;
}

/* Kill theme content-link arrows; last link has no pipe */
.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section.wprm-recipe-link::after,
.single-content .sbk-wprm-card__contents a.wprm-recipe-jump::after {
	height: auto !important;
	mask-image: none !important;
	-webkit-mask-image: none !important;
	width: auto !important;
}

.single-content .sbk-wprm-card__contents a.wprm-recipe-jump-to-section:last-child::after {
	content: none !important;
	display: none !important;
}

/* -------------------------------------------------------------------------
   SBK WPRM card — section rules
   Standalone <hr class="sbk-wprm-card__rule"> stay in the markup when a
   section is unused (video/nutrition), which stacks double lines.
   Nested :has() is invalid CSS and was dropping prior hide rules.
   Paint the divider on the following block instead; unused sections
   collapse and take their line with them.
   ------------------------------------------------------------------------- */

.single-content .sbk-wprm-card > .sbk-wprm-card__rule {
	display: none !important;
}

.single-content .sbk-wprm-card > .sbk-wprm-card__meta--details,
.single-content .sbk-wprm-card > .sbk-wprm-card__contents,
.single-content .sbk-wprm-card > .sbk-wprm-card__section {
	background-image: linear-gradient(
		var(--wp--preset--color--charcoal, #3b3b40),
		var(--wp--preset--color--charcoal, #3b3b40)
	);
	background-position: 1.5rem 0;
	background-repeat: no-repeat;
	background-size: calc(100% - 3rem) 1px;
}

@media (min-width: 48rem) {
	.single-content .sbk-wprm-card > .sbk-wprm-card__meta--details,
	.single-content .sbk-wprm-card > .sbk-wprm-card__contents,
	.single-content .sbk-wprm-card > .sbk-wprm-card__section {
		background-position: 55px 0;
		background-size: calc(100% - 110px) 1px;
	}
}

@media (max-width: 600px) {
	.single-content .sbk-wprm-card__header {
		border-bottom: none !important;
	}
}

.single-content .sbk-wprm-card__section:empty,
.single-content .sbk-wprm-card__section--nutrition:not(:has(.wprm-nutrition-label, .wprm-nutrition-label-container, [class*="wprm-nutrition"])),
.single-content .sbk-wprm-card__section--video:not(:has(iframe, video, embed, object, img)),
.single-content .sbk-wprm-card__section--equipment:not(:has(li)),
.single-content .sbk-wprm-card__section--notes:not(:has(.wprm-recipe-notes, p, li)) {
	background-image: none !important;
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* -------------------------------------------------------------------------
   SBK WPRM card — instructions (Figma 84:4462)
   Flex layout so step text fills remaining width (grid was pinning text
   into the narrow number column).
   ------------------------------------------------------------------------- */

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instructions,
.single-content .sbk-wprm-card .wprm-recipe-instructions {
	counter-reset: sbk-step;
	list-style: none !important;
	margin: 0;
	padding: 0;
	width: 100%;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction,
.single-content .sbk-wprm-card .wprm-recipe-instruction {
	align-items: flex-start;
	counter-increment: sbk-step;
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.5rem 1rem;
	list-style: none !important;
	margin: 0 0 1.25rem;
	padding: 0;
	width: 100%;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction:last-child,
.single-content .sbk-wprm-card .wprm-recipe-instruction:last-child {
	margin-bottom: 0;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction::before,
.single-content .sbk-wprm-card .wprm-recipe-instruction::before {
	/* Override WPRM `.wprm-recipe li:before { display: none }`. */
	color: var(--wp--preset--color--charcoal, #3b3b40);
	content: counter(sbk-step, decimal-leading-zero);
	display: block;
	flex: 0 0 2.5rem;
	font-family: var(--wp--preset--font-family--sainte-colombe, "Sainte Colombe", Georgia, serif);
	font-size: 1.5625rem; /* 25px */
	font-weight: 300;
	letter-spacing: -0.02em;
	line-height: 1.2;
	padding-top: 0.15rem;
	text-align: left;
	width: 2.5rem;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction-text,
.single-content .sbk-wprm-card .wprm-recipe-instruction-text {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	flex: 1 1 0;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 16px;
	line-height: 24px;
	margin: 0;
	max-width: none;
	min-width: 0;
	padding-top: 0.25rem;
	width: auto;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction-media,
.single-content .sbk-wprm-card .wprm-recipe-instruction-media {
	flex: 1 1 100%;
	margin-left: calc(2.5rem + 1rem); /* align under text, past number */
	max-width: calc(100% - 2.5rem - 1rem);
	width: 100%;
}

.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction-number,
.single-content .sbk-wprm-card__section--instructions .wprm-recipe-instruction-counter,
.single-content .sbk-wprm-card .wprm-recipe-instruction-number,
.single-content .sbk-wprm-card .wprm-recipe-instruction-counter {
	display: none;
}

.single-content img {
	height: auto;
	max-width: 100%;
}

.single-content .ummas-tip__icon {
	max-width: none;
}

/* -------------------------------------------------------------------------
   Video embeds — full width of post content column, preserved aspect ratio
   ------------------------------------------------------------------------- */

.post-content .wp-block-embed,
.single-content .wp-block-embed {
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

.post-content .wp-block-embed .wp-block-embed__wrapper,
.single-content .wp-block-embed .wp-block-embed__wrapper {
	aspect-ratio: 16 / 9;
	box-sizing: border-box;
	height: auto;
	max-width: 100%;
	position: relative;
	width: 100%;
}

/* Prefer WP aspect classes when present. */
.post-content .wp-embed-aspect-21-9 .wp-block-embed__wrapper,
.single-content .wp-embed-aspect-21-9 .wp-block-embed__wrapper {
	aspect-ratio: 21 / 9;
}

.post-content .wp-embed-aspect-18-9 .wp-block-embed__wrapper,
.single-content .wp-embed-aspect-18-9 .wp-block-embed__wrapper {
	aspect-ratio: 18 / 9;
}

.post-content .wp-embed-aspect-4-3 .wp-block-embed__wrapper,
.single-content .wp-embed-aspect-4-3 .wp-block-embed__wrapper {
	aspect-ratio: 4 / 3;
}

.post-content .wp-embed-aspect-1-1 .wp-block-embed__wrapper,
.single-content .wp-embed-aspect-1-1 .wp-block-embed__wrapper {
	aspect-ratio: 1 / 1;
}

/* Drop core padding-top ::before so height comes only from aspect-ratio. */
.post-content .wp-block-embed .wp-block-embed__wrapper::before,
.single-content .wp-block-embed .wp-block-embed__wrapper::before {
	content: none !important;
	display: none !important;
	padding-top: 0 !important;
}

.post-content .wp-block-embed iframe,
.post-content .wp-block-embed video,
.post-content .wp-block-embed embed,
.post-content .wp-block-embed object,
.single-content .wp-block-embed iframe,
.single-content .wp-block-embed video,
.single-content .wp-block-embed embed,
.single-content .wp-block-embed object {
	border: 0;
	bottom: 0;
	display: block;
	height: 100% !important;
	left: 0;
	max-width: none;
	position: absolute;
	right: 0;
	top: 0;
	width: 100% !important;
}

/* -------------------------------------------------------------------------
   Lists — Figma 933:10849 (disc bullets, Geist 16/1.5, two columns)
   ------------------------------------------------------------------------- */

.single-content .wp-block-list,
.single-content ul.wp-block-list,
.single-content ol.wp-block-list {
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	margin: 0;
	max-width: 100%;
	padding-inline-start: 24px;
	width: 100%;
}

.single-content ul.wp-block-list {
	list-style: none;
	padding-inline-start: 0;
}

.single-content ol.wp-block-list {
	list-style-position: outside;
	list-style-type: decimal;
}

.single-content .wp-block-list li {
	break-inside: avoid;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}

.single-content ul.wp-block-list li {
	padding-inline-start: 24px;
	position: relative;
}

.single-content ul.wp-block-list li::before {
	background-color: currentColor;
	border-radius: 50%;
	content: "";
	height: 4px;
	left: 8px;
	position: absolute;
	top: 0.7em;
	transform: translateY(-50%);
	width: 4px;
}

@media (min-width: 48rem) {
	.single-content ul.wp-block-list {
		column-count: 2;
		column-fill: balance;
		column-gap: clamp(3rem, 14vw, 14.1875rem); /* ~227px at Figma width */
	}
}

@media (max-width: 47.99rem) {
	.single-content ul.wp-block-list {
		column-count: 1;
	}
}

.single-content__signature,
.mtt-signature.single-content__signature {
	--sig-reveal: 0;
	display: block;
	height: auto;
	margin-top: 3.75rem;
	-webkit-mask-image: linear-gradient(
		90deg,
		#000 0%,
		#000 calc(var(--sig-reveal) * 1% - 6%),
		transparent calc(var(--sig-reveal) * 1%)
	);
	mask-image: linear-gradient(
		90deg,
		#000 0%,
		#000 calc(var(--sig-reveal) * 1% - 6%),
		transparent calc(var(--sig-reveal) * 1%)
	);
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	max-width: 15.25rem;
	width: 244px;
}

.single-content__signature.mtt-signature--visible,
.mtt-signature--visible.single-content__signature {
	-webkit-mask-image: none;
	mask-image: none;
}

.single-content__signature svg {
	display: block;
	height: auto;
	width: 100%;
}

.single-content__signature path {
	fill: var(--wp--preset--color--charcoal, #3b3b40);
	stroke: none;
}

@media (prefers-reduced-motion: reduce) {
	.single-content__signature,
	.mtt-signature.single-content__signature {
		-webkit-mask-image: none;
		mask-image: none;
	}
}

/* -------------------------------------------------------------------------
   Sidebar block area / legacy styles
   ------------------------------------------------------------------------- */

.single-sidebar {
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 4vw, 3rem);
}

.single-sidebar__heading {
	font-family: var(--wp--preset--font-family--le-monde-livre, "le-monde-livre-std", Georgia, serif);
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 1rem;
}

.single-sidebar__text {
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 14px;
	line-height: 1.5;
	margin: 0 0 1rem;
}

.single-sidebar__cta {
	border-bottom: 1px solid currentColor;
	color: inherit;
	display: inline-block;
	font-family: var(--wp--preset--font-family--geist-mono, "Geist Mono", monospace);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.15em;
	margin-bottom: 1.25rem;
	padding-bottom: 0.25rem;
	text-decoration: none;
	text-transform: uppercase;
}

.single-sidebar__label {
	font-family: var(--wp--preset--font-family--geist-mono, "Geist Mono", monospace);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.15em;
	margin: 0 0 0.75rem;
	text-transform: uppercase;
}

.single-sidebar__popular-list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-sidebar__popular-link {
	align-items: flex-start;
	color: inherit;
	display: flex;
	gap: 0.75rem;
	text-decoration: none;
}

.single-sidebar__popular-media {
	flex-shrink: 0;
	line-height: 0;
	overflow: hidden;
	width: 4.5rem;
}

.single-sidebar__popular-image {
	aspect-ratio: 1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.single-sidebar__popular-body {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.single-sidebar__popular-title {
	font-family: var(--wp--preset--font-family--le-monde-livre, "le-monde-livre-std", Georgia, serif);
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.2;
}

.single-sidebar__popular-english {
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 13px;
	line-height: 1.3;
}

.single-sidebar__popular-meta {
	font-family: var(--wp--preset--font-family--geist, "Geist", sans-serif);
	font-size: 12px;
	line-height: 1.3;
	opacity: 0.85;
}

/* -------------------------------------------------------------------------
   Previous / next post nav — Figma 370:1330 / 370:1331
   ------------------------------------------------------------------------- */

.single-post-nav {
	box-sizing: border-box;
	margin: clamp(2.5rem, 5vw, 3.5rem) 0 0;
	padding: 0;
	width: 100%;
}

.single-post-nav__inner {
	align-items: stretch;
	display: grid;
	gap: 0;
	grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
	min-height: 12rem; /* ~192px divider */
	width: 100%;
}

.single-post-nav__divider {
	align-self: stretch;
	background-color: currentColor;
	display: block;
	justify-self: center;
	opacity: 0.85;
	width: 1px;
}

.single-post-nav__link {
	box-sizing: border-box;
	color: inherit;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	justify-content: center;
	max-width: 21.4375rem; /* 343px */
	padding: 1.5rem 0;
	text-decoration: none;
	width: 100%;
}

.single-post-nav__link:hover .single-post-nav__title,
.single-post-nav__link:focus-visible .single-post-nav__title {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.single-post-nav__link--prev {
	padding-right: clamp(1rem, 3vw, 2rem);
	text-align: left;
}

.single-post-nav__link--next {
	justify-self: end;
	padding-left: clamp(1rem, 3vw, 2rem);
	text-align: right;
}

.single-post-nav__link--empty {
	pointer-events: none;
}

.single-post-nav__label {
	display: block;
	font-family: var(--wp--preset--font-family--adobe-jenson, "Adobe Jenson Pro", Georgia, serif);
	font-size: 1.5rem; /* 24px */
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.08em; /* 1.92px */
	line-height: 1.5rem; /* 24px */
}

.single-post-nav__title {
	display: block;
	font-family: var(--wp--preset--font-family--sainte-colombe, "Sainte Colombe", Georgia, serif);
	font-size: 1.375rem; /* 22px */
	font-weight: 300;
	letter-spacing: -0.02em; /* -0.44px */
	line-height: 2rem; /* 32px */
}

@media (max-width: 47.9375rem) {
	.single-post-nav__inner {
		gap: 1.5rem;
		grid-template-columns: minmax(0, 1fr);
		min-height: 0;
	}

	.single-post-nav__divider {
		background-color: #000;
		height: 1px;
		justify-self: stretch;
		opacity: 1;
		width: 100%;
	}

	.single-post-nav__inner:has(.single-post-nav__link--empty) .single-post-nav__divider {
		display: none;
	}

	.single-post-nav__link {
		max-width: none;
		padding: 0;
	}

	.single-post-nav__link--prev,
	.single-post-nav__link--next {
		padding-left: 0;
		padding-right: 0;
		text-align: left;
	}

	.single-post-nav__link--next {
		justify-self: stretch;
	}

	.single-post-nav__link--empty {
		display: none;
	}
}

/* -------------------------------------------------------------------------
   Related posts — Figma Frame 73 @ 99:3014 (1440×854)
   Inner: title @ y62; cards @ y135 / x107 / 1226 wide; bottom pad 99
   Cards: 394×620, gap 22; image 356×475; date 29×28; CTA “View recipe”
   ------------------------------------------------------------------------- */

.single-related {
	background-color: var(--wp--preset--color--white, #fff);
	isolation: isolate;
	margin-bottom: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	overflow: hidden;
	position: relative;
	width: 100vw;
}

.single-related::before {
	background-image: url("../images/popular-posts-grain.png");
	background-position: top left;
	background-repeat: repeat;
	background-size: 860px 1075px;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.single-related__inner {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1440px;
	/* 62 top / 107 sides / 99 bottom */
	padding: clamp(2.5rem, 4.3vw, 3.875rem) clamp(1.25rem, 7.43vw, 6.6875rem) clamp(3rem, 6.875vw, 6.1875rem);
	position: relative;
	width: 100%;
	z-index: 1;
}

.single-related__title {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--paso-robles, "Paso Robles", cursive);
	font-size: 2.25rem; /* 36px */
	font-weight: 400;
	letter-spacing: 0;
	line-height: 2.125rem; /* 34px */
	margin: 0 auto 2.4375rem; /* 39px — 135 − 62 − 34 */
	max-width: none;
	text-align: center;
	text-transform: lowercase;
	width: 100%;
}

.single-related__grid {
	-ms-overflow-style: none;
	display: flex;
	flex-wrap: nowrap;
	gap: 1.375rem; /* 22px */
	justify-content: center;
	margin: 0;
	max-width: 76.625rem; /* 1226px */
	overflow-x: auto;
	padding: 0;
	scrollbar-width: none;
	width: 100%;
}

.single-related__grid::-webkit-scrollbar {
	display: none;
}

.single-related .post-card--small,
.single-related .post-card--recipe {
	box-sizing: border-box;
	display: flex;
	flex: 0 0 min(100%, 24.625rem); /* 394px */
	flex-direction: column;
	margin: 0;
	max-width: 24.625rem;
	min-height: 38.75rem; /* 620px */
	min-width: min(100%, 17.5rem);
	padding-left: 2.375rem; /* 38px — date sits in the gutter */
	padding-top: 0;
	width: 24.625rem;
}

.single-related .post-card--small .post-card__date,
.single-related .post-card--recipe .post-card__date {
	height: 28px;
	left: 0;
	top: 0;
	width: 29px;
}

.single-related .post-card--small .post-card__date-month,
.single-related .post-card--small .post-card__date-day,
.single-related .post-card--recipe .post-card__date-month,
.single-related .post-card--recipe .post-card__date-day {
	font-size: 12px;
	letter-spacing: -0.24px;
	line-height: 12px;
}

.single-related .post-card--small .post-card__date-day,
.single-related .post-card--recipe .post-card__date-day {
	left: 14px;
	top: 16px;
}

/* Small diagonal slash — Figma 99:3034 (22.627px @ −45°). */
.single-related .post-card--small .post-card__date-line,
.single-related .post-card--recipe .post-card__date-line {
	height: 0.5px;
	left: 3.7px;
	mask-image: none;
	-webkit-mask-image: none;
	top: 14.75px;
	transform: rotate(-45deg);
	transform-origin: center;
	width: 22.627px;
}

.single-related .post-card--small .post-card__image,
.single-related .post-card--small .post-card__media .image-fit,
.single-related .post-card--recipe .post-card__image,
.single-related .post-card--recipe .post-card__media .image-fit {
	aspect-ratio: 356 / 475;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.single-related .post-card--small .post-card__body,
.single-related .post-card--recipe .post-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 0;
	margin-top: 1.4375rem; /* 23px — image → category */
	padding-left: 0;
}

.single-related .post-card--small .post-card__category,
.single-related .post-card--recipe .post-card__category {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	margin: 0 0 0.1875rem; /* ~3px before title @ 515 */
	text-transform: uppercase;
}

.single-related .post-card--small .post-card__title,
.single-related .post-card--recipe .post-card__title {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--sainte-colombe, "Sainte Colombe", Georgia, serif);
	font-size: 1.375rem; /* 22px */
	font-style: normal;
	font-weight: 300;
	letter-spacing: -0.02em; /* −0.44px */
	line-height: 2rem; /* 32px */
	margin: 0 0 1.1875rem; /* 19px — title → CTA */
}

.single-related .post-card--small .post-card__read-link,
.single-related .post-card--recipe .post-card__read-link {
	margin-top: auto;
	padding-top: 0;
}

@media (max-width: 63.99rem) {
	.single-related__title {
		font-size: clamp(1.75rem, 4vw, 2.25rem);
		line-height: 0.94;
		margin-bottom: 2rem;
	}

	.single-related__grid {
		justify-content: flex-start;
	}
}

@media (min-width: 64rem) {
	.single-related__grid {
		margin-left: auto;
		margin-right: auto;
		overflow-x: visible;
	}
}

@media (max-width: 550px) {
	.single-related .post-card--small,
	.single-related .post-card--recipe {
		padding-left: 0;
	}
}

/* -------------------------------------------------------------------------
   Comments — cream + walnut frame, Figma 370:906 (1245×1109)
   Title @ y95; notes @ 152; fields @ 285; message box 967×124; submit 175×45
   ------------------------------------------------------------------------- */

.single-comments-area {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	margin-top: clamp(2.5rem, 6vw, 7.5rem);
	width: 100%;
}

/* Double walnut SVG frame on cream (matches page — Figma 370:794 / 370:906). */
.single-comments-frame {
	background-color: var(--wp--preset--color--cream, #faf8f6);
	background-image:
		url("../images/archive-card-frame-v.svg"),
		url("../images/archive-card-frame-v.svg"),
		url("../images/archive-card-frame-h.svg"),
		url("../images/archive-card-frame-h.svg");
	background-position:
		left top,
		right top,
		left top,
		left bottom;
	background-repeat: no-repeat;
	background-size:
		5px 100%,
		5px 100%,
		100% 5px,
		100% 5px;
	box-sizing: border-box;
	color: inherit;
	margin: 0 auto;
	max-width: 77.8125rem; /* 1245px */
	padding: 11px;
	position: relative;
	width: 100%;
}

.single-comments-frame__inner {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 60.4375rem; /* 967px — form / message width */
	/* Outer frame pad ~150px → title @ 95 within 1245 */
	padding: clamp(3rem, 6.6vw, 5.25rem) clamp(1rem, 4vw, 8.625rem) clamp(2.5rem, 5vw, 5.6875rem);
	position: relative;
	width: 100%;
	z-index: 1;
}

.single-comments__title {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--paso-robles, "Paso Robles", cursive);
	font-size: 2.25rem; /* 36px */
	font-weight: 400;
	letter-spacing: 0;
	line-height: 2.125rem; /* 34px */
	margin: 0 0 1.4375rem; /* 23px — 152 − 95 − 34 */
	text-align: center;
	text-transform: lowercase;
}

.single-comments__notes {
	color: #000;
	font-family: var(--wp--preset--font-family--adobe-jenson, "adobe-jenson-pro", Georgia, serif);
	font-size: 1.5rem; /* 24px */
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.08em; /* 1.92px */
	line-height: 1.1667;
	margin: 0 auto 50px;
	text-align: center;
}

.single-comments-frame .comment-respond {
	margin: 0;
}

.single-comments__reply-title {
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	margin: 0 0 1rem;
	text-align: center;
}

.single-comments__cancel a {
	color: inherit;
	text-decoration: underline;
}

.single-comments__form {
	align-items: stretch;
	display: flex;
	flex-wrap: wrap;
	gap: 1.4375rem 2.8125rem; /* 23 vertical / 45 between name & email */
	justify-content: flex-start;
	margin: 0;
	max-width: none;
	width: 100%;
}

/* WPRM rating — above name/email (Figma 263:814) */
.single-comments-frame .comment-form-wprm-rating {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem; /* title @ 203 → stars @ 232 (− title line ~16–18px) */
	margin: 0 0 1.5rem;
	order: -1;
	text-align: center;
	width: 100%;
}

.single-comments-frame .comment-form-wprm-rating > label {
	clip: auto;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	display: block;
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 1rem; /* 16px */
	font-weight: 500;
	height: auto;
	letter-spacing: 0.1em; /* 1.6px @ 16 */
	line-height: 1.25;
	margin: 0;
	overflow: visible;
	padding: 0;
	position: static;
	text-transform: uppercase;
	width: auto;
}

/* Keep fieldset legend for screen readers only */
.single-comments-frame .wprm-comment-ratings-container legend {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.single-comments-frame .wprm-rating-stars,
.single-comments-frame .wprm-comment-ratings-container {
	display: inline-flex;
	justify-content: center;
	margin: 0 auto;
}

.single-comments__form > .comment-form-author,
.single-comments__form > .comment-form-email {
	box-sizing: border-box;
	flex: 1 1 calc(50% - 1.40625rem); /* half of 45px gap */
	margin: 0;
	max-width: calc(50% - 1.40625rem);
	min-width: 0;
	order: 0;
}

.single-comments__field label,
.single-comments-frame .comment-form-author label,
.single-comments-frame .comment-form-email label,
.single-comments-frame .comment-form-comment label {
	color: var(--wp--preset--color--charcoal, #3b3b40);
	display: block;
	font-family: var(--wp--preset--font-family--adobe-jenson, "adobe-jenson-pro", Georgia, serif);
	font-size: 1.5rem; /* 24px */
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.08em; /* 1.92px */
	line-height: 1; /* Figma H2 lineHeight 100 */
	margin: 0;
}

/* Name* / Email* @ y285 → underline @ y343 ≈ 34px below 24px label */
.single-comments-frame .comment-form-author label,
.single-comments-frame .comment-form-email label {
	margin-bottom: 2.125rem;
}

/* Message @ y366 → box @ y402 ≈ 12px below 24px label */
.single-comments-frame .comment-form-comment label {
	margin-bottom: 0.75rem;
}

.single-comments-frame input[type="text"],
.single-comments-frame input[type="email"],
.single-comments-frame input[type="url"],
.single-comments-frame textarea {
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin: 0;
	padding: 0.25rem 0;
	width: 100%;
}

.single-comments-frame input[type="text"],
.single-comments-frame input[type="email"],
.single-comments-frame input[type="url"] {
	border-bottom: 1px solid #000; /* Figma Line 44 */
	min-height: 1.75rem;
	padding-bottom: 0.5rem;
}

.single-comments-frame textarea {
	border: 1px solid var(--wp--preset--color--charcoal, #3b3b40);
	min-height: 7.75rem; /* 124px */
	padding: 1rem 1.25rem;
	resize: vertical;
}

.single-comments-frame input:focus,
.single-comments-frame textarea:focus {
	outline: 1px solid var(--wp--preset--color--charcoal, #3b3b40);
	outline-offset: 2px;
}

.single-comments-frame .comment-form-comment {
	flex: 1 1 100%;
	margin: 0;
	order: 1;
	width: 100%;
}

.single-comments__submit-wrap,
.single-comments-frame .form-submit {
	display: flex;
	flex: 1 1 100%;
	justify-content: center;
	margin: 2.4375rem 0 0; /* 39px — box ends ~526, submit @ 565 */
	order: 2;
	text-align: center;
	width: 100%;
}

.single-comments__submit,
.single-comments-frame .form-submit .submit {
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 1px solid var(--wp--preset--color--charcoal, #3b3b40);
	border-radius: 0;
	box-shadow: none;
	color: var(--wp--preset--color--charcoal, #3b3b40);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--adobe-jenson, "adobe-jenson-pro", Georgia, serif);
	font-size: 1.125rem; /* 18px */
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.08em; /* 1.44px */
	line-height: 1;
	min-height: 2.8125rem; /* 45px */
	min-width: 10.9375rem; /* 175px */
	padding: 0.6875rem 1.5rem;
	text-transform: lowercase;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.single-comments__submit:hover,
.single-comments__submit:focus,
.single-comments-frame .form-submit .submit:hover,
.single-comments-frame .form-submit .submit:focus {
	background-color: var(--wp--preset--color--charcoal, #3b3b40);
	color: var(--wp--preset--color--linen, #e7ded2);
}

.single-comments__submit:focus-visible,
.single-comments-frame .form-submit .submit:focus-visible {
	outline: 2px solid var(--wp--preset--color--charcoal, #3b3b40);
	outline-offset: 3px;
}

@media (max-width: 40rem) {
	.single-comments__title {
		font-size: clamp(1.75rem, 5vw, 2.25rem);
		line-height: 0.94;
	}

	.single-comments__notes {
		font-size: clamp(1.125rem, 3.5vw, 1.5rem);
	}

	.single-comments__field label,
	.single-comments-frame .comment-form-author label,
	.single-comments-frame .comment-form-email label,
	.single-comments-frame .comment-form-comment label {
		font-size: clamp(1.125rem, 3.5vw, 1.5rem);
	}

	.single-comments-frame .comment-form-author label,
	.single-comments-frame .comment-form-email label {
		margin-bottom: 1.25rem;
	}

	.single-comments__form > .comment-form-author,
	.single-comments__form > .comment-form-email {
		flex: 1 1 100%;
		max-width: 100%;
	}

	.single-comment__header {
		flex-wrap: wrap;
	}
}

/* —— Comments list — Figma 370:941 / 370:942 / Line 50 —— */

.single-comments-list {
	color: #000;
	list-style: none;
	margin: 3.6875rem 0 0; /* 59px under submit (610 → 669) */
	padding: 0;
	width: 100%;
}

.single-comments-list .comment {
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-comment__body {
	margin: 0;
	padding: 0;
}

/* Divider between comments (Figma Line 50) */
.single-comments-list > .comment:not(:last-of-type) {
	border-bottom: 1px solid #000;
	margin-bottom: 2.125rem; /* 34px — divider → next */
	padding-bottom: 2.0625rem; /* 33px — content → divider */
}

.single-comment__header {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	gap: 1rem;
	justify-content: space-between;
	margin: 0 0 1.5rem; /* blank 24px line before body */
	width: 100%;
}

.single-comment__meta {
	align-items: baseline;
	color: #000;
	display: block;
	flex: 1 1 auto;
	font-size: 1rem;
	line-height: 1.5; /* 24px */
	margin: 0;
	min-width: 0;
}

.single-comment__author {
	color: #000;
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 1rem; /* 16px */
	font-weight: 500;
	letter-spacing: 0.1em; /* 1.6px */
	line-height: 1.5;
	text-transform: uppercase;
}

.single-comment__meta-sep {
	color: #000;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5;
	white-space: pre;
}

.single-comment__date {
	color: #000;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5;
}

.comment-rating {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: 3px; /* star lefts 24px apart, glyph 21px */
	margin: 0;
	margin-left: auto;
}

.comment-rating__star {
	display: inline-flex;
	flex-shrink: 0;
	height: 21px;
	line-height: 0;
	width: 21px;
}

.comment-rating__star.is-empty {
	opacity: 1;
}

.comment-rating__star img {
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.single-comment__content {
	color: #000;
	font-family: var(--wp--preset--font-family--proxima-nova, "Proxima Nova", sans-serif);
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5;
}

.single-comment__content p {
	margin: 0 0 1.5rem;
}

.single-comment__content p:last-child {
	margin-bottom: 0;
}

.single-comment__reply {
	margin-top: 1.5rem; /* 24px after body */
}

.single-comment__reply a,
.single-comment__reply .comment-reply-link {
	color: #000;
	font-family: var(--wp--preset--font-family--adobe-jenson, "adobe-jenson-pro", Georgia, serif);
	font-size: 1.125rem; /* 18px */
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.08em; /* 1.44px */
	line-height: 1.333; /* ~24px */
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.single-comment__reply a:hover,
.single-comment__reply a:focus,
.single-comment__reply .comment-reply-link:hover,
.single-comment__reply .comment-reply-link:focus {
	opacity: 0.75;
}

/* Nested replies */
.single-comments-list .children {
	list-style: none;
	margin: 0;
	padding: 0 0 0 clamp(1rem, 3vw, 2rem);
}

.single-comments-list .children > li,
.single-comments-list .children > .comment,
.single-comments-list .children > .single-comment {
	border-bottom: 0;
	margin-bottom: 0;
	padding-bottom: 0;
}

.single-comments-list .children .single-comment__body {
	border-bottom: 0;
	margin-bottom: 0;
	padding-bottom: 1.5rem;
	padding-top: 35px;
}

/* Inline reply forms inside the list */
.single-comments-list .comment-respond,
.single-comment > .comment-respond {
	border-top: 1px solid var(--wp--preset--color--charcoal, #3b3b40);
	margin: 1.5rem 0 0;
	padding-top: 1.5rem;
}

.single-comments-list .comment-respond .single-comments__notes,
.single-comment > .comment-respond .single-comments__notes {
	display: none;
}

.single-comments-list .nav-links,
.single-comments-list .comment-navigation {
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	margin-top: 2rem;
}

.single-comments-list .nav-links a,
.no-comments {
	color: inherit;
	font-family: var(--wp--preset--font-family--overpass-mono, "Overpass Mono", monospace);
	font-size: 14px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Hide WPRM duplicate rating inside comment text — we render stars above */
.single-comment__content .wprm-comment-rating {
	display: none;
}

/* Legacy class aliases */
.single-comments {
	background: transparent;
	color: inherit;
	margin: 0;
	padding: 0;
}
